是否可以通过编程方式访问 VSCode 主题属性?比如,一个人可以使用 VS Code API 来更改主题颜色吗?
Is it possible to access VS Codes theme properties programatically? Like, can a person use the VS Code API to change a theme color?
以编程方式访问 VSCode 主题属性
是否可以通过编程和动态方式 get
& set
V.S 的颜色。代码 主题属性 使用V.S。代码 API?
下面的代码片段演示了使用 VSCode API 及其方法 getConfiguration()
,更改设置。我希望像这个片段这样的东西可以通过编程改变主题颜色来工作,但无济于事。
const workbenchConfig = vscode.workspace.getConfiguration('workspace');
const themeColor = workbenchConfig.get(`colorTheme.${themeProperty}`);
console.log(themeColor)
// The argument colorTheme.${someColor} would is obviously replaced with the
// theme's property that I want to access.
我想访问与 workbench.ColorCustomizations
设置访问相同的对象,使用上面的代码片段。我的想法是我可以在相同范围内设置主题颜色,即由 workbench.colorCustomizations
设置使用,但我的尝试没有成功。
这个话题已经有一段时间了。这取决于您想在哪里以及如何使用它。在网络视图中,您可以将主题颜色作为 Theme Color reference 中列出的 css 变量访问,并在您的网络视图中使用它们。
在 API 中您可以获得一些 workbench 颜色,例如:
const wb_color = new vscode.ThemeColor ( 'activityBar.background' )
虽然这可能用途有限。您还可以使用
获得 window 的主题种类(例如浅色、深色、高对比度)
const theme = window.activeColorTheme.kind
我不知道以编程方式设置颜色的正确方法。也许在这个问题下有一些骇人听闻的解决方案,在这里处理这个问题:
https://github.com/Microsoft/vscode/issues/32813
以编程方式访问 VSCode 主题属性
是否可以通过编程和动态方式 get
& set
V.S 的颜色。代码 主题属性 使用V.S。代码 API?
下面的代码片段演示了使用 VSCode API 及其方法 getConfiguration()
,更改设置。我希望像这个片段这样的东西可以通过编程改变主题颜色来工作,但无济于事。
const workbenchConfig = vscode.workspace.getConfiguration('workspace');
const themeColor = workbenchConfig.get(`colorTheme.${themeProperty}`);
console.log(themeColor)
// The argument colorTheme.${someColor} would is obviously replaced with the
// theme's property that I want to access.
我想访问与 workbench.ColorCustomizations
设置访问相同的对象,使用上面的代码片段。我的想法是我可以在相同范围内设置主题颜色,即由 workbench.colorCustomizations
设置使用,但我的尝试没有成功。
这个话题已经有一段时间了。这取决于您想在哪里以及如何使用它。在网络视图中,您可以将主题颜色作为 Theme Color reference 中列出的 css 变量访问,并在您的网络视图中使用它们。
在 API 中您可以获得一些 workbench 颜色,例如:
const wb_color = new vscode.ThemeColor ( 'activityBar.background' )
虽然这可能用途有限。您还可以使用
获得 window 的主题种类(例如浅色、深色、高对比度)const theme = window.activeColorTheme.kind
我不知道以编程方式设置颜色的正确方法。也许在这个问题下有一些骇人听闻的解决方案,在这里处理这个问题: https://github.com/Microsoft/vscode/issues/32813