对于每个typescript文件,visual studio代码使用8个空格的自动缩进。这对我来说有点太贵了,但我找不到换的地方。

也许它可以作为一个设置,但在不同的名称下,因为我找不到任何与缩进有关的东西。

更新

我目前正在使用更漂亮的代码格式化器,它解决了所有的格式问题,自动格式化保存(如果没有语法错误)


当前回答

如果你正在使用格式化器,检查tabWidth,这是我的情况下的问题。它表示制表符中使用的空格数。

其他回答

在首选项中设置缩进并不总是解决方案。大多数情况下,缩进是正确的,除非你碰巧从其他来源复制了一些代码,或者你的同事为你做了一些东西,并有不同的设置。然后你想要快速地将缩进从2转换为4,或者反过来。

这就是这个vscode扩展为你做的

如何在VS Code中把所有文件中的4个空格缩进到2个空格

打开文件搜索 打开正则表达式 输入:({2})(?: {2}) (\ b |(?!=[,'";\.:\*\\\/\{\}\[\]\(\)])) 在搜索领域 在replace字段中输入:$1

如何在VS Code中把所有文件中的2个空格缩进到4个空格

打开文件搜索 打开正则表达式 输入:({2})(\ b |(?!=[,'";\.:\\*\\\/{\}\[\]\(\)])) 在搜索领域 在replace字段中输入:$1$1

注意:您必须首先打开PERL Regex。这是如何做到的:

打开设置,转到JSON文件 将以下内容添加到JSON文件“search”中。usePCRE2”:真正的

希望有人能看到。

我喜欢这些缩进设置,你可以根据需要修改它们。

你可以打开VScode设置。输入CTRL+SHIFT+P并粘贴到json设置下面

setting.json

"[javascript]": {
    "editor.defaultFormatter": "vscode.typescript-language-features",
    "editor.formatOnSave": true,
    "editor.tabSize": 4,
    "editor.insertSpaces": false,
    "editor.detectIndentation": false,
    "editor.wrappingIndent": "deepIndent", 
    "editor.autoIndent": "full"
},
"[typescript]": {
    "editor.defaultFormatter": "vscode.typescript-language-features",
    "editor.formatOnSave": true,
    "editor.tabSize": 4,
    "editor.insertSpaces": false,
    "editor.detectIndentation": false,
    "editor.wrappingIndent": "deepIndent", 
    "editor.autoIndent": "full"
}

如果你正在使用格式化器,检查tabWidth,这是我的情况下的问题。它表示制表符中使用的空格数。

问题:接受的答案实际上没有修复当前文档中的缩进。

解决方案:运行Format Document,根据当前(新)设置重新处理文档。

问题:我的项目中的HTML文档是“Django HTML”而不是“HTML”的类型,没有可用的格式化器。

解决方法:将它们转换为语法“HTML”,格式化它们,然后再切换回“Django HTML”。

问题:HTML格式化器不知道如何处理Django模板标记,并且取消了我精心应用的嵌套。

解决方案:安装Indent 4-2扩展,它严格执行缩进,而不考虑当前的语言语法(这是我在本例中想要的)。