我想要的颜色源代码,我想要的。例如,如果我有这样的代码
<script>
var x = 1;
function yu() {
document.getElementById("e").innerHTML = "O";
}
</script>
我想给整个函数(第3,4,5行)上色,或者只给一行或单词上色。我不想让sublime文本根据单词的类型给每个单词上色。
如果它不能在卓越的文本中完成,你知道其他源代码编辑器或IDE可以做到这一点吗?
发布于 2016-05-10 06:49:20
您可以编写满足您的条件的自定义syntax
,并将其设置为您希望影响的任何文件类型的默认语法。
以下是影响扩展名为.MyExtension
的文件的基本语法示例
保存以下代码@:
Packages/MySyntaxFiles/MyCustomSyntax.sublime-syntax
%YAML 1.2
---
name: MyCustomSyntax
file_extensions: [ MyExtension ]
scope: source.MyScopeName
contexts:
main:
- match: '\bfunction.*?{'
push: function
- match: '\b<.+?>\b'
scope: entity.name.tag
function:
- meta_scope: entity.name.function
- include: braces
braces:
- match: '{'
push: braces
- match: '}'
pop: true
注意:此示例满足您提供的代码示例的最低要求。您可能需要详细说明此模板,以使其完全满足您的实际使用要求。
资源:
使用此选项可查找可能要复制的作用域
使用此选项打开现有的sublime-syntax
文件以供参考
浏览包含的tmTheme
文件以查看常用作用域。
为了实现最大程度的定制:创建您自己的tmTheme
文件以匹配您的语法和作用域。
您需要有RegEx
的基本知识才能定义作用域匹配。
RegExr有一个很棒的Reference
部分,它涵盖了大部分基础知识,还有一个测试区,这样你就可以在学习的过程中尝试一下。
https://stackoverflow.com/questions/37113039
复制相似问题