在Sublime文本中突出显示JavaScript的字典键

时间:2014-03-22 16:54:01

标签: javascript syntax-highlighting associative-array sublimetext sublimetext3

是否可以使用Sublime文本获得用JavaScript编写的关联数组的键的特定语法高亮?

以下屏幕截图将说明问题(使用Cobalt主题):

object keys do not have dedicated color

正如您所看到的,该段代码的语法突出显示非常差。 我想获得对象键的专用颜色。这可能吗?

通过点表示法设置对象字段的语法高亮也不能令人满意:

enter image description here

即使在这种情况下,语法高亮也非常明显:对象,成员字段和右值都具有相同的颜色。

我尝试编辑主题的XML,但无法找到密钥是否实际被识别。一些基于正则表达式的语法高亮怎么办?这可用吗?

1 个答案:

答案 0 :(得分:3)

查看JavaScriptNext - ES6 Syntax语言定义,可通过Package Control获取。它具有比Sublime附带的JavaScript语法更多的范围,允许对语法高亮进行更精细的控制。下面是应用了JSN的代码片段(颜色方案为Neon):

query数组中,密钥的完整范围为constant.other.object.key.js string.unquoted.label.js,而值的范围为variable.other.readwrite.js(两者显然也是source.js)。对于exports行,exportssupport.keyword.node.js.add.get属性为meta.property.js variable.other.property.js,值为{{1} }}

如果你要进行任何配色方案定制,我强烈建议使用两种工具。第一个是ScopeAlways,可以切换为始终在状态栏中的光标下显示当前范围。另一个是facelessuser的ColorSchemeEditor,它提供了一个用于编辑variable.other.readwrite.js文件的GUI。您应该能够安装它(二进制文件将自动下载),方法是转到命令行上的.tmTheme文件夹(通过选择Packages打开文件夹)并运行以下命令:

Preferences -> Browse Packages...

重新启动Sublime,在某些时候它会提示您下载适用于您平台的二进制文件。如果您想从源代码构建它,或者如果其他方式不起作用,我已经写了guide here

祝你好运!