我有一个插件使用add_regions命令为某些区域绘制下划线。
我还有自定义tmLanguage
和tmTheme
,因此我可以控制我设置的范围的字体样式/前景色等。
现在,我试图让我的下划线成为一种特定的颜色(而不是默认的白色ST3颜色)......我知道这是可能的,因为ST3中的拼写检查有一个红色波浪线下划线。
我已经在我的tmTheme和我的插件的add_regions命令中更改了范围/设置/键等,但似乎没有任何内容。
任何方向都会非常有用!
答案 0 :(得分:1)
您只需在tmTheme
文件中设置虚拟范围,其中foreground
设置的值与您想要下划线的颜色相同。然后将该范围名称传递给add_regions
函数调用。
黄色下划线示例......
在tmTheme
文件中:
...
<dict>
<key>name</key>
<string>Yellow Underline</string>
<key>scope</key>
<string>underline.yellow.text</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFFF00</string>
</dict>
</dict>
...
在你的插件中:
# ...
# set regions variable above
view.add_regions('key', regions, 'underline.yellow.text', '', sublime.DRAW_STIPPLED_UNDERLINE | sublime.DRAW_NO_FILL | sublime.DRAW_NO_OUTLINE)
# ...
钽哒!你现在应该有黄色下划线:)