0

我有一个问题,在我的崇高文本 2 中,javascript 的语法突出显示了这个代码

this.init = function(){};
this.init : function(){},

用浅蓝色画“this”,用绿色画“init”…

但在这种情况下......

this.init = null;
this.init : null,

没有发生...我想在所有使用情况下突出显示“this.*”...

例如

this.init = function()
this.init : function()
this.init : true
this.init = true

我怎样才能做到这一点???

4

2 回答 2

6

Sublime 中 javascript 的默认语法高亮不是很好。

我使用 JavascriptNext:https ://github.com/Benvie/JavaScriptNext.tmLanguage

它改进了默认语法高亮,还增加了对未来 ES6 语法的支持。

在您的特定情况下,if 值的颜色更加一致,尽管 : 语法的属性值不太一致。但我认为这没关系,因为它实际上不是有效的语法。

比较

于 2013-08-30T01:20:36.093 回答
0

添加到ben336 的答案中,我使用我的Neon Color Scheme和一些不同的 JavaScript 语言定义(包括JavaScriptNext )测试了您的代码,这实际上看起来是最好的:

带有霓虹灯主题的 this.init

init方法的范围很有趣(source.js当然都是)-

this.init = function(); // meta.property.js variable.other.property.js
this.init : function(); // meta.function.js meta.function.json.js entity.name.function.js
this.init : true; // meta.function.js constant.other.object.key.js string.unquoted.label.js
this.init = true; // meta.function.js meta.property.js variable.other.property.js

由于最后 3 个是有function范围的,它们应该被涂成亮绿色,但第三个有string范围,最后一个有variable.other范围,所以他们选择了这些颜色。

如果您愿意,我可以尝试调整主题的function范围选择器以一致地为最后 3 个着色 - 只需打开一个问题或在此处告诉我,我会看看我能做什么。

于 2013-08-30T15:47:47.377 回答