use*_*555 7 visual-studio-code vscode-extensions
您好我正在尝试为VS Code制作自定义主题,并希望在编辑后立即看到样式更改,目前我需要重新启动编辑器以查看效率不高的更改.
有没有办法为主题/扩展开发启用"热重载"之类的东西?
编辑:来自 vscode 1.31.0 的热重载适用于 [扩展开发主机(启动F5extensionHost 时)中的主题。
热重载在 settings.json Ctrl + 中工作,。主题准备好后,只需移动内容。
"workbench.colorCustomizations": {},
"editor.tokenColorCustomizations": {
"textMateRules": []
},
Run Code Online (Sandbox Code Playgroud)
主题/扩展的“热重载”,
不是特别的,但是有一个 Reload Window 命令,它非常快。
这是VSCode 建议的解决方案。
您可以按Ctrl+ Shift+P命令面板并输入Reload Window,
从菜单中打开键盘快捷键或:或定义键绑定Ctrl+ K,Ctrl+ S,
使用搜索,添加您需要的组合键找到刷新窗口命令
正如Alex和也已经建议VSCode的主题文章,
以灵活的方式编辑一个主题,是与您要调整到设定值传送线。或者创建新的,在那里更容易,因为您可以利用 IntelliSense 和“实时”更新,这不是真正的实时更新,而是在设置文件保存(并非所有设置都是实时的,例如editor.foreground不会自动更新)
一次您对更改或新条目感到满意,将包含它们的行从设置传输到主题文件并重新加载。
设置文件中的设置具有优先权,将覆盖主题文件中的值(如果它们存在)。
Theme 文件中通常有两个部分,一个定义Workbench 颜色,
在 Theme 文件中,这些设置在colorsKey下。例如:
"colors": {
"editor.background": "#000000",
"editor.something": "#ffffff"
}
Run Code Online (Sandbox Code Playgroud)
但是要在用户设置中调整它们,它们必须进入workbench.colorCustomizationsKey。例如:
"workbench.colorCustomizations": {
"editor.background": "#000000",
}
Run Code Online (Sandbox Code Playgroud)
然后有语法高亮颜色,
这些可能在tokenColorsKey下的 Array 中的 Theme 文件中,或者引用到外部文件。
调整例如字符串颜色和样式:
{
"name": "String",
"scope": "string",
"settings": {
"fontStyle": "",
"foreground": "#E6DB74"
}
},
Run Code Online (Sandbox Code Playgroud)
把它放在用户设置editor.tokenColorCustomizations里面textMateRules:
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"name": "String",
"scope": "string",
"settings": {
"fontStyle": "",
"foreground": "#E6DB74"
}
},
]
},
Run Code Online (Sandbox Code Playgroud)
(*) 尾随逗号
注意尾随逗号。它们可能会令人讨厌。最后一个条目不能有它,当您上下复制项目时,很容易错过一个。
作为一点帮助,您可以利用这样一个事实,即如果您将其留在那里,设置会原谅您。从某些角度来看,考虑到该设置只会暂时驻留在设置中,如果它已经存在于主题文件中并且您要放置行/块,则不从设置中删除逗号可能不太容易出错调整后返回主题文件。这就是为什么我在上面的示例中根据 JSON 规则包含逗号的原因。
(*) JSON 中
的错误如果您在 JSON 中出错,然后保存并重新加载 VSCode 仍然存在 JSON 中的错误,则不会显示修改并且主题看起来与重新加载之前相同。看起来 VSCode 仍在使用发生错误之前的主题文件的缓存版本。
这很令人困惑。预期行为将回退到默认主题。
如果您随后打开主题选择器,您的主题仍将被列为已选择,但如果您选择另一个主题,然后再次尝试选择您的主题(一个有错误),VSCode 将忽略此操作,保留另一个主题。此行为可能会进一步混淆,预期会显示错误或不允许进行选择。
我想出的最好的办法是建立一个快捷方式:
code -n c:\projectdir
Run Code Online (Sandbox Code Playgroud)
并给它一个键盘快捷键,如 Ctrl + F1。
然后,编辑后,保存文件,按 Ctrl + F1,将打开一个新的 VS Code,其中包含新加载的主题。如果您打开多种不同语言的文件,您将获得良好的预览。然后您可以再次关闭该窗口,并继续编辑您的主题。冲洗,重复。
| 归档时间: |
|
| 查看次数: |
1100 次 |
| 最近记录: |