Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何将语法突出显示添加到升华文本2_Ruby_Sublimetext2 - Fatal编程技术网

Ruby 如何将语法突出显示添加到升华文本2

Ruby 如何将语法突出显示添加到升华文本2,ruby,sublimetext2,Ruby,Sublimetext2,给定字符串“text text#{interpolation}”升华文本2用一种颜色高亮显示整个字符串。我想突出显示插入的文本,以便容易挑选。当我在插入的部分按下ctrl-shift-alt-p时,Sublime告诉我名称空间:source.ruby string.quoted.double.ruby source.ruby.embedded.source 我想知道我应该在哪里定义一个规则来突出显示它(我认为是在tmLanguage文件中),该规则将采用什么格式,以及如何为它指定颜色。如果深入查

给定字符串
“text text#{interpolation}”
升华文本2用一种颜色高亮显示整个字符串。我想突出显示插入的文本,以便容易挑选。当我在插入的部分按下ctrl-shift-alt-p时,Sublime告诉我名称空间:
source.ruby string.quoted.double.ruby source.ruby.embedded.source


我想知道我应该在哪里定义一个规则来突出显示它(我认为是在tmLanguage文件中),该规则将采用什么格式,以及如何为它指定颜色。

如果深入查看包含的
Dawn.tmTheme
文件(唯一正确突出显示的包含主题之一)您会发现
字符串嵌入源代码的这些突出显示规则,出于某些原因,一些主题完全忽略了这一点:

<dict>
    <key>name</key>
    <string>String embedded-source</string>
    <key>scope</key>
    <string>string source</string>
    <key>settings</key>
    <dict>
        <key>background</key>
        <string>#6F8BBA26</string>
        <key>fontStyle</key>
        <string></string>
        <key>foreground</key>
        <string>#080808</string>
    </dict>
</dict>

名称
字符串嵌入源
范围
字符串源
设置
背景
#6F8BBA26
方式
前景
#080808

这会更好,因为它实际上会将插值中的代码作为普通代码高亮显示,而不是全部相同的颜色

<dict>
   <key>name</key>
      <string>Embedded Ruby Punctuation</string>
   <key>scope</key>
      <string>string punctuation.section.embedded.ruby</string>
   <key>settings</key>
   <dict>
      <key>foreground</key>
      <string>#F92672</string>
   </dict>
</dict>
<dict>
   <key>name</key>
      <string>Embedded Ruby Source</string>
   <key>scope</key>
      <string>string source.ruby.embedded.source</string>
   <key>settings</key>
   <dict>
      <key>foreground</key>
      <string>#FFFBF7</string>
   </dict>
</dict>

名称
嵌入式红宝石标点符号
范围
字符串标点符号.section.embedded.ruby
设置
前景
#F92672
名称
嵌入式Ruby源
范围
字符串source.ruby.embedded.source
设置
前景
#FFFBF7

+1对于ctrl-shift-alt-p技巧,非常有用tmLanguage文件设置语法。例如,它告诉sublime,
“#{
}
之间的任何内容都是该语法的“字符串嵌入源代码”。主题文件将告诉sublime对所有“字符串嵌入源代码”实例使用特定的颜色/背景。我将其复制到我使用的主题中,然后编辑颜色的十六进制,直到有一个我喜欢的。非常感谢。