【问题标题】:How to make custom character background in Sublime Text 3如何在 Sublime Text 3 中制作自定义字符背景
【发布时间】:2017-02-01 23:10:08
【问题描述】:

tl;dr:如何在 Sublime Text 3 中使用 bg 颜色突出显示与 RegEx 匹配的文本? 我说的是这样的效果:http://imgur.com/a/gwftx

长读: 我创建了一个自定义主题 (.tmTheme) 和语法突出显示 (.tmLanguages),它们根据 Sublime Text 3 的许多复杂正则表达式更改文本颜色,例如:http://i.imgur.com/uh40VCG.png

但是,我想更改给定字符串的背景颜色——在本例中为“任意两个或多个空格”。怎么做?

我只发现效果与 YAML 中的块相关联(在包中的 syntax_test_block_yaml 中),但我并没有在主题/语法中看到任何可以连接到此特定文本效果的内容。我不够流利,甚至不知道从哪里开始寻找。

【问题讨论】:

  • 您的配色方案(例如Packages\Color Scheme - Default\Monokai.tmTheme)需要为范围选择器使用background 设置。在您的示例图像中,它来自名为 invalid 的预定义范围,您可以在该配色方案中看到它。您的 tmLanguage 需要将该范围(或您指定的其他范围)应用到您希望以这种方式着色的区域。
  • 哦,现在看起来很简单——谢谢!

标签: syntax themes sublimetext3


【解决方案1】:

感谢 OdatNurd,我能够做我想做的事——基本上,在 .tmLanguage 中创建了一个新对象,称为“toomanyspaces”,匹配两个或多个空格。然后在我使用的主题中,我添加了以下内容:

<dict>
    <key>name</key>
    <string>toomanyspaces</string>
    <key>scope</key>
    <string>toomanyspaces</string>
    <key>settings</key>
    <dict>
        <key>background</key>
        <string>#F92672</string>
        <key>fontStyle</key>
        <string></string>
        <key>foreground</key>
        <string>#F8F8F0</string>
    </dict>
</dict>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-06
    • 1970-01-01
    • 2017-04-01
    • 1970-01-01
    相关资源
    最近更新 更多