在使用Visual Studio代码时,如何自定义制表符到空格的转换因子?
例如,现在在HTML中,每次按TAB键会产生两个空格,但在TypeScript中会产生4个空格。
在使用Visual Studio代码时,如何自定义制表符到空格的转换因子?
例如,现在在HTML中,每次按TAB键会产生两个空格,但在TypeScript中会产生4个空格。
当前回答
评论如下:
有没有办法改变每一种语言的tabSize ?例如,当在同一个工作区中编辑多个不同语言的文件时(如Ruby, JavaScript, CSS等)- Ruby将是2个空格,但CSS将是4个…通常
这就是为什么,VSCode 1.63(2021年11月),你有:
多种语言特定的编辑器设置 现在,您可以一次为多种语言配置特定于语言的编辑器设置。 下面的例子展示了如何同时自定义javascript和typescript语言的设置: “[javascript](打印稿)":{ “编辑器。maxTokenizationLineLength”:2500 }
在你的情况下:
"[ruby][html]": {
"editor.insertSpaces": true,
"editor.tabSize": 2
},
"[csharp][typescript]": {
"editor.insertSpaces": true,
"editor.tabSize": 4
},
你也可以在终端中改变制表符的大小,使用VSCode 1.75(2023年1月)。
其他回答
我们可以用EditorConfig和它的EditorConfig for VS Code扩展来控制文件类型的选项卡大小。然后,我们可以对每种文件类型使用Alt + Shift + F。
安装
用CTRL + P打开VS Code命令面板并粘贴如下:
ext install EditorConfig
示例配置
editorconfig。
[*]
indent_style = space
[*.{js,ts,json}]
indent_size = 2
[*.java]
indent_size = 4
[*.go]
indent_style = tab
settings.json
EditorConfig覆盖任何设置。Json为编辑器配置。不需要更改editor.detectIndentation。
评论如下:
有没有办法改变每一种语言的tabSize ?例如,当在同一个工作区中编辑多个不同语言的文件时(如Ruby, JavaScript, CSS等)- Ruby将是2个空格,但CSS将是4个…通常
这就是为什么,VSCode 1.63(2021年11月),你有:
多种语言特定的编辑器设置 现在,您可以一次为多种语言配置特定于语言的编辑器设置。 下面的例子展示了如何同时自定义javascript和typescript语言的设置: “[javascript](打印稿)":{ “编辑器。maxTokenizationLineLength”:2500 }
在你的情况下:
"[ruby][html]": {
"editor.insertSpaces": true,
"editor.tabSize": 2
},
"[csharp][typescript]": {
"editor.insertSpaces": true,
"editor.tabSize": 4
},
你也可以在终端中改变制表符的大小,使用VSCode 1.75(2023年1月)。
一个更简单的方法是使用Visual Studio Code提供的内置通配符过滤器@lang:。
步骤
点击设置图标(左下) 选择设置 在搜索设置输入框中输入@lang:javascript tabsize
这将过滤所有的设置,只留下javascript的tabSize选项。输入您想要的tab因子,它将应用于该语言。
请注意 要将这些设置应用到用户配置文件,请确保选择了user选项卡。如果选择Workspace选项卡,VSCode将在你的项目文件夹中创建一个带有设置的. VSCode文件夹。json文件;这意味着您所做的任何更改都只应用于当前工作空间(项目文件夹) 你可以将它用于任何其他语言,例如@lang:php tabsize
我不得不像之前的答案一样做了很多设置编辑,所以我不知道在做了很多修改后它能正常工作。
在我关闭并打开我的IDE之前没有任何工作,但我所做的最后三件事是禁用lonefy。html.format vscode-js-css-html-formatter。”enable": true,并重新启动Visual Studio。
{
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"workbench.colorTheme": "Default Light+",
"[html]": {
"editor.defaultFormatter": "vscode.html-language-features",
"editor.tabSize": 2,
"editor.detectIndentation": false,
"editor.insertSpaces": true
},
"typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": true,
"editor.tabSize": 2,
"typescript.format.insertSpaceAfterConstructor": true,
"files.autoSave": "afterDelay",
"html.format.indentHandlebars": true,
"html.format.indentInnerHtml": true,
"html.format.enable": true,
"editor.detectIndentation": false,
"editor.insertSpaces": true,
}
如果这篇文章中接受的答案不奏效,试试这个:
我在编辑器中安装了用于Visual Studio Code的EditorConfig,它一直覆盖我的用户设置,这些设置被设置为使用空格缩进文件。每次我在编辑器选项卡之间切换时,我的文件都会自动用选项卡缩进,即使我已经将缩进转换为空格!!
在我卸载了这个扩展后,缩进不再改变切换编辑器选项卡之间,我可以更舒适地工作,而不是必须手动转换选项卡到空格每次我切换文件-这是痛苦的。