Jon*_*oss 13 syntax-highlighting visual-studio-code
我不知道这是怎么发生的。我对主题所做的一切似乎都不起作用。在重新启动 VS Code 之前,我选择了“Dark Modern”主题,并且 Python 文档字符串与其他字符串的颜色完全相同。重新启动后,仍然选择“黑暗现代”主题,但现在文档字符串是丑陋的深绿色。在主题之间切换不会恢复原始颜色。手动修改主题json文件没有任何作用,而且这种令人讨厌的颜色并不在任何主题文件中。禁用和/或重新启用扩展不会产生任何影响,但禁用 Python 扩展会从语法突出显示中删除多种颜色,但不会删除深绿色。是否使用 venv 没有任何影响。
知道发生了什么或如何解决这个问题吗?
编辑:我找到了罪魁祸首。这家伙决定只改变主题颜色。任务仍然是将其恢复到更改之前的状态。
编辑2:VS Code似乎没有办法区分块注释和文档字符串。在 Python 语言中,它们之间存在语义上的、非语法上的差异。在某种程度上,如果 VS Code 团队不更新他们处理这种语义差异的方式,这个问题是无法治愈的:它将错误地突出显示文档字符串并相同地阻止注释,因此答案是在错误的行为之间进行选择。
sta*_*all 11
注意:正如问题帖子中提到的,此更改是在 PR所有颜色主题中进行的:将注释文档字符串也视为注释 #182162,并且已提出 PR 请求在Revert Python docstring color #184938处恢复更改,该更改标记为处于 2023 年 7 月发布里程碑(现已完成实施)。
首先找出您的主题对字符串使用的颜色,您可以通过编写字符串文字然后使用命令来完成此操作Developer: Inspect Editor Tokens and Scopes,然后将以下内容添加到您的settings.json 文件中:
"editor.tokenColorCustomizations": {
"[Theme Name Here]": { // TODO trigger suggestions inside the [] if you need help finding your theme's name/ID
"textMateRules": [
{
"scope": "string.quoted.docstring", // use string.quoted.docstring.multi.python if you only want it to apply for python.
"settings": {
"foreground": "#FF0000", // TODO
}
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
在撰写本文时,存在有关各种设置 json 文件的架构加载的错误,这会导致trigger suggestions功能破坏。如果该trigger suggestions功能不起作用,这里是主题别名列表:
如果这些不起作用,您可以尝试使用星号"[*]"或完全删除主题范围(但要知道,为所有主题硬编码一个主题的颜色将无法实现所有主题的所需行为):
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"name": "Docstrings",
"scope": "string.quoted.docstring",
"settings": {
"foreground": "#CE9178"
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1991 次 |
| 最近记录: |