![]() |
1
2
语法突出显示颜色的含义分为两部分:
将文本分区为标记第一部分由VSCode中内置的语法描述决定。VSCode使用基于 TextMate grammars JavaScript.tmLanguage.json ),但在这种形式下,经过了几个后处理阶段,几乎无法阅读。没有文档说明这些语法文件的意图。它们倾向于至少大致遵循相关的语言规范,但也有许多特殊的偏差。
编辑2020-07-24:从VSCode 1.47开始(可能更早一点),命令被称为“ 开发人员:检查编辑器标记和作用域 ". 例子:
上面,我们可以看到
在VSCode中,范围标签序列最接近于令牌的“含义”。
接下来,是将范围标签序列映射到颜色和字体样式的过程。这是由主题完成的。在我的例子中,我使用的是在中的VSCode源中定义的visualstudio Light
light_vs.json
. 如果
基本上说,任何一个范围标签都以关键字.control“应该是蓝色的。但是其他的碎片可能会覆盖这个;这个 rules 有点复杂。为什么是蓝色?这是一个武断的审美选择。
为什么
自定义颜色
你没有问,但一个明显的后续问题是如何定制这些颜色,例如
|
![]() |
taalas · 扩展VS代码语法突出显示 7 年前 |
![]() |
DMrFrost · 如何在Atom中为.vue文件启用语法高亮显示? 8 年前 |
![]() |
jabe · 如何在Vim中使已注释的html变成不同的颜色? 10 年前 |
![]() |
Zach · 标记语法高亮显示未按预期工作 10 年前 |