【发布时间】:2019-07-14 04:59:40
【问题描述】:
我用 Anaconda 安装了 Visual Studio Code,并且想要自定义语法高亮。我正在使用默认的深色主题,这很好,但 python 内置函数和方法的颜色不是。
我找到了“开发人员:从当前设置生成颜色主题”并试图找到更改的地方。 (我不确定更改语法高亮颜色是否是正确的文件)
我该怎么办?
【问题讨论】:
我用 Anaconda 安装了 Visual Studio Code,并且想要自定义语法高亮。我正在使用默认的深色主题,这很好,但 python 内置函数和方法的颜色不是。
我找到了“开发人员:从当前设置生成颜色主题”并试图找到更改的地方。 (我不确定更改语法高亮颜色是否是正确的文件)
我该怎么办?
【问题讨论】:
在 Visual Studio Code 中,您可以使用内置的颜色主题,安装由社区创建并上传到 Marketplace 的新颜色主题或编辑所有已存在的颜色主题。如果您只想自定义特定颜色的语法,例如函数名,需要修改settings.json文件。
为此,请转到 File > Preferences > Settings > Workbench > Appearance 并在 Color Customizations 部分中单击 在 settings.json 中编辑
现在您需要通过在此文件中添加代码并保存它来指定您想要自定义的确切内容。
此代码会将函数名称的颜色变为橙色:
"editor.tokenColorCustomizations": {
"functions": "#FF9900"
如果您想更改其他一些设置,例如变量、字符串、数字遵循以下模式:
"editor.tokenColorCustomizations": {
"what_you_want_to_customize" : "hex_value_of_color"
如果你想在调用方法时改变颜色,你需要指定范围(在同一个 settings.json 文件中):
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": "meta.function-call",
"settings": {
"foreground": "#FF9900"
}
}
现在,当您在某些对象中调用函数时,它会显示为橙色。
这是 pandas.DataFrame() 的样子:
如果您在对象中创建自己的方法,它也将是您选择的颜色。
这就是结合这两个设置时的样子。
我只是在创建函数时将颜色更改为红色,在调用函数时将颜色更改为橙色以便更好地解释。
还有official docs 供进一步阅读,还有更多settings to make it custom looks (text, bars, buttons)。
【讨论】:
{ 开头并以 } 结尾,我提供的 sn-ps 示例(或您自己的规则)前后用逗号(,)与其他人分隔 - 一般来说它仍然是 .json 格式。
Stockbroker 答案的正确形式。 (已更正缺少的括号。)
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": "meta.function-call.generic.python",
"settings": {
"foreground": "#FF0000"
}
}
]
},
【讨论】:
我使用这个答案使用VSCodium(VSCode sans Microsoft)为 Python 创建了 carbon.now.sh “One Dark”主题的副本
settings.json 文件中这段代码的主题结果:
"workbench.colorCustomizations":
{
"editor.background": "#282C34"
},
"editor.tokenColorCustomizations":
{
"textMateRules":
[
{
"scope": "meta.function-call",
"settings":
{
"foreground": "#5BB6C1"
}
},
{
"scope": "string.quoted.single.python",
"settings":
{
"foreground": "#94BC79"
}
},
{
"scope": "source.python",
"settings":
{
"foreground": "#DE6D77",
}
}
]
}
这是我要复制的代码示例,使用 carbon.now.sh 生成:
上面的主题设置帮助我在 VSCodium / VSCode 中为我 working for Frappe. 的项目复制它
与 CodeSnap 扩展结合使用时,您可以创建与 Carbon.now.sh 相同的外观,但离线:
这简化了我在创建文档、包含多个代码 sn-ps 的视频时的工作效率。另外,我可以输入一次有用的代码,而不必将其复制粘贴到其他地方,或者只需获取现有代码的风格化图像 sn-p。
【讨论】: