15

我在Egghead.io上观看了一些关于 AngularJS 的视频。视频的创建者使用 Webstorm(而且,我相信,为他们工作)。我注意到的一个特点是他可以在不同的范围或引号内设置不同的语法高亮。因此,在如下代码中(来自 AngularJS 指令)

return {
    template: '<div>something</div>',
    //         ^^^ these guys ^^^
}

...他可以得到引号的内部以突出显示为 HTML。

我使用Sublime Text 2,并且非常喜欢它。是否有现有的 Sublime 功能/插件可以处理这样的情况?如果不是,那么使用 Sublime Text 2 API 在技术上是否可行?

4

2 回答 2

9

我不认为它是内置的,但它肯定是可能的。我一直在用 graphviz 做一些工作,并想做类似的事情。可以使用类似 html 的语法生成标签。无论如何,我玩弄了该.tmLanguage文件并添加了一个新模式以匹配 html 类条目有效的上下文(我寻找label = <)。我用于捕获的模式不是那么好,但对我来说效果很好。这给了我以下内容,我认为这与您正在寻找的内容相似。

演示

我对 AngularJS 一无所知,所以我无法为您提供任何具体的帮助,但这当然是可能的。请注意,在下图中,最后一个<table></table>只是为了显示突出显示不会在那里发生。

编辑:

忘记在原始帖子中包含此内容,但这是我更新的 tmLangauage 文件。第一个模式是我添加的(链接)。我使用PlistJsonConverter从 JSON 转到 plist,然后将文件保存为.tmLanguage. 希望这可以帮助。

于 2013-03-15T20:33:48.183 回答
0

@skuroda 是对的,我用一个附加插件实现了@skuroda 的代码,以便在 AngularJS 指令 JS 文件中轻松编辑 HTML。结果是在指令 JS 文件中突出显示 HTML 语法,以及在编辑模板时删除与字符串相关的分隔符的附加功能...... Sublime AngularJS HTML 模板插件

于 2015-06-27T22:38:15.943 回答