如何在Sublime Text 2中修改php标签的配色方案

时间:2013-02-07 10:39:15

标签: sublimetext2 color-scheme

在sublime文本的某些主题中,某些标记(如脚本或php)中区域的背景颜色与其余代码的颜色不同。例如,像iPlastic或twilight主题中那样。

例如:http://imageshack.us/photo/my-images/541/screenshot20130207at342.png/

我希望在Tomorrow色彩方案中实现相同的效果,默认情况下没有这个。我知道我必须编辑.tmTheme文件,但我不确定我应该放入的代码。

非常感谢任何帮助。

谢谢!

2 个答案:

答案 0 :(得分:4)

您应该在.tmTheme文件中添加以下内容:

<dict>
    <key>name</key>
    <string>Embedded source</string>
    <key>scope</key>
    <string>text source</string>
    <key>settings</key>
    <dict>
        <key>background</key>
        <string>#FCFCFC</string>
    </dict>
</dict>

当然,您可以设置您喜欢的颜色。

答案 1 :(得分:0)

使用Sublime打开要编辑的.tmTheme文件,首先使用其他名称(但具有相同的扩展名)保存它。然后寻找:

<string>text source</string>

这仅存在于.tmTheme文件的部分中!在您提到的文件iPlastic.tmTheme文件中,您可以在此条目中找到它:

    <dict>
        <key>name</key>
        <string>Embedded source</string>
        <key>scope</key>
        <string>text source</string>
        <key>settings</key>
        <dict>
            <key>background</key>
            <string>#FAFAFAFC</string>
            <key>foreground</key>
            <string>#000000</string>
        </dict>
    </dict>

如果.tmTheme文件是用JSON而不是这个笨拙的XML编写的,那么条目将如下所示:

{
    "name": "Embedded source",
    "scope": "text source",
    "settings": {
        "background": "#FAFAFAFC",
        "foreground": "#000000"
    }
},

在这种情况下,背景值几乎是白色(在所有三个通道中都是0xFA),但是有点透明(0xFC不透明度)。结果取决于您在文件开头找到的background值,在本例中为#EEEEEEEB(请注意缺少namescope):

    <dict>
        <key>settings</key>
        <dict>
            <key>background</key>
            <string>#EEEEEEEB</string>

据我所知,0xEB不透明度在此处被忽略,因为默认背景为#EE。具有0xFC不透明度的#FA#EE合成为#F9(这是有意义的)。

现在,如果您希望强制 text source范围的背景为某个值,则必须更改<dict>条目它存在,如果不存在,添加

另一方面,如果您希望text source范围等于的背景,那么您需要做的只是删除< / strong>其<dict>条目。

请记住,像#AABBCC这样的3字节值是100%不透明的,即它具有0xFF不透明度,即它相当于4字节值#AABBCCFF

另请注意,您可以将修改后的.tmTheme文件放在下面,例如PHP的{​​{1}}子目录,而不是Packages子目录。这对PHP来说特别有用,其中默认背景是Color Scheme - Default,而内部的那个是<?php...?>范围之一(这是一个工件)用于继承HTML文件类型设置的技巧)。除非您的PHP文件包含大量HTML(或text source以外的任何内容),否则您可能希望在<?php...?>下面放置一个PHP的背景值等于默认背景值的主题对于其他文件类型,以及仅适用于PHP文件的不同默认背景值。