这个问题是否在禁用所有扩展时发生?:是
- VS Code 版本:1.80.0
- OS 版本:Windows 10 22H2 19045.3086
重现步骤:
- 更改主题文件中 "punctuation.definition.bracket.curly.begin.jsdoc" 和 "punctuation.definition.bracket.curly.end.jsdoc" 作用域的 JSDoc 注解括号的颜色。
- 重新加载窗口或重启编辑器。你会发现没有区别。括号的颜色与所有代码相同。主题 JSDoc 颜色不影响全局颜色,看起来很丑。
- 如果你通过 "Inspect Editor Tokens And Scopes" 功能检查颜色,你会看到检查器显示正确的颜色,但编辑器显示的是截图中的全局颜色。注解括号的颜色必须与 "string" 和 "object" 单词的颜色相同,就像我在主题中将它们设置为一样:
{
"name": "JSDoc Instance and brackets",
"scope": [
"entity.name.type.instance.jsdoc",
"punctuation.definition.bracket.curly.begin.jsdoc",
"punctuation.definition.bracket.curly.end.jsdoc",
],
"settings": {
"foreground": "#8e4a91"
}
}
7条答案
按热度按时间kuhbmx9i1#
看起来像是括号配对颜色化。
你能尝试禁用它并检查主题覆盖是否正确应用吗?
gywdnpxw2#
是的,这是真的。如果我禁用这个设置,主题会按照预期工作,但是代码中没有配对的颜色化。
hujrc8aj3#
是的,这是为了澄清该功能是否在注解中起作用。
@hediet 是否应该在注解中高亮显示成对的内容,是否有方法可以控制它?
/assign hediet -mjbvz
2w2cym1i4#
我猜扩展为这些标记提供了一个语法。这个语法可以标记这些标记,使它们忽略括号。
这也发生在默认的js语法中:
如果你对此有强烈的感觉,我们可以将这些标记从括号匹配中排除。
3pvhb19x5#
这不是一个扩展!括号对颜色化是内置的!
lskq00tm6#
如果你对此有强烈的看法,我们可以将这些标记从括号配对匹配中排除。
依我之见,这是一个明智的决定,因为注解不是代码,所以无需在注解中进行配对着色。
ulydmbyx7#
JSDoc是代码的一部分,尤其是当它被用作(部分)替代TS时。如果能为
{
和}
包围的类型设置默认注解颜色会更好,这应该涵盖了大多数常规情况。但是,对于类型值的突出显示(不考虑包围的嵌套层级,从头开始)会更好,因为它可以用于泛型、具有嵌套对象和回调函数的类型。对于这些情况,从...中看到会很好。