如何更改Visual Studio代码中的缩进?

HMR*_*HMR 272 formatting visual-studio-code

对于每个打字稿文件,visual studio代码使用8个空格的自动缩进.这对我来说有点太多了,但我无法找到改变它的地方.

也许它可以作为设置使用,但名称不同,因为我找不到与缩进相关的任何内容.

ell*_*t-j 498

在右下角的工具栏中,您将看到如下所示的项目: 在此输入图像描述 单击它后,您将获得使用空格或制表符缩进的选项.选择缩进类型后,您可以选择更改缩进的大小.在上面的示例中,缩进设置为每个缩进4个空格字符.如果选择了tab作为缩进字符,那么您将看到Tab Size而不是Spaces

如果您希望将此应用于所有文件而不是基于个人文件,请根据您的需要覆盖用户设置工作区设置中Editor: Tab SizeEditor: Insert Spaces设置

  • 更改`editor.tabSpaces`确实_not_更改所有文件中的间距.它只会为将来创建的文件更改它.在一个操作中修复所有文件仍然没有解决方案. (30认同)
  • 哇.介意.有时事情只是隐藏在视线之内 (3认同)
  • 这是超直观的。我已经设置了缩进以使用空格。为什么需要单击空格选项进入第二个隐藏菜单来设置空格数?我使用的所有其他编辑器都是在状态栏中单击缩进详细信息,并且有多个空格选项。在VS Code中,我需要在Stack Overflow上进行查找,因为我想要的菜单隐藏在我不想更改的选项后面。 (2认同)
  • 每次我创建新文件时,它似乎总是恢复到默认的 4 个空间?!?! (2认同)

Xin*_*Xin 402

您可以在全局User级别或Workspace级别更改此设置。

打开设置:使用快捷方式Ctrl ,或点击File> Preferences>Settings如下图所示。

VS Code 菜单上的设置

然后,进行以下 2 项更改:(tabSize在搜索栏中键入)

  1. 取消选中的复选框 Detect Indentation
  2. 将标签大小更改为 2/4(虽然我强烈认为 2 对 JS 来说是正确的 :))

在此处输入图片说明

  • 对于那些想知道的人来说,这将自动重新格式化项目中的所有文件,而不仅仅是您创建的新文件。您可能需要重新启动 vs code 才能使更改生效。 (5认同)

Mar*_*der 99

根据编程语言更改缩进,请遵循以下方法之一:

要么

  • Ctrl+ Shift+P
  • 首选项:配置语言特定设置...(命令ID: workbench.action.configureLanguageBasedSettings)
  • 选择编程语言
  • 添加上面的代码.

另请参阅:VS Code Docs


RMu*_*esi 52

editor.detectIndentation除了Elliot-J的答案之外,您可能还想将其设置为false.

如果VSCode 检测到文件具有不同的选项卡或空格缩进模式,则会覆盖每个文件的设置editor.tabSizeeditor.insertSpaces设置.如果将现有文件添加到项目中,或者使用Angular Cli等代码生成器添加文件,则可能会遇到此问题.上述设置可防止VSCode执行此操作.


Suj*_*ala 34

代码格式快捷方式:

Windows上的VSCode - Shift + Alt + F.

MacOS上的VSCode - Shift + Option + F.

Ubuntu上的VSCode - Ctrl + Shift + I.

如果需要,您还可以使用首选项设置自定义此快捷方式

用键盘选择列 Ctrl + Shift + Alt + Arrow

  • `Shift + Alt + F` 将文件中的所有缩进从 8 个空格更改为默认的 4 个空格。正是我一直在寻找的:) (3认同)

Avi*_*viw 18

在我的情况下," EditorConfig for VS Code "扩展是覆盖VSCode设置.如果已安装,请检查项目根文件夹中的.editorconfig文件.

这是一个配置示例."indent_size"设置选项卡的空格数.

# editorconfig.org
root = true

[*]
indent_style = space
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.md]
trim_trailing_whitespace = false
Run Code Online (Sandbox Code Playgroud)


cas*_*234 13

如何将 VS Code 中所有文件的 4 个空格缩进转换为 2 个空格

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

如何将 VS Code 中所有文件中的 2 个空格缩进为 4 个空格

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

注意:您必须先打开 PERL 正则表达式。这是如何:

  • 打开设置并转到 JSON 文件
  • 将以下内容添加到 JSON 文件中 "search.usePCRE2": true

希望有人看到这个。

  • 特别是对于 VS Code,还有一个用于将 4 个空格转换为 2 个空格的扩展。 (2认同)

JGa*_*rdo 10

为那些在 VS Code 中搜索“更改缩进”的人提供图片的简化解释

第 1 步:单击首选项 > 设置

在此处输入图片说明

第 2 步:您要查找的设置是“检测缩进”,开始输入。单击“编辑器:标签大小”

在此处输入图片说明

第 3 步:向下滚动到“编辑器:标签大小”并输入 2(或您需要的任何内容)。

在此处输入图片说明



更改会自动保存

在此处输入图片说明

我的更改示例

在此处输入图片说明


小智 9

要将所有现有文件和新文件的空间标识设置为 2,只需将其放入您的 settingns.json(在 json 的根目录中):

"[typescript]": {
        "editor.defaultFormatter": "vscode.typescript-language-features",
        "editor.tabSize": 2,
        "editor.insertSpaces": true,
        "editor.detectIndentation":false
 }
Run Code Online (Sandbox Code Playgroud)

您可以添加配置的语言类型:

"[javascript]": {
    "editor.tabSize": 2,
    "editor.insertSpaces": true,
    "editor.detectIndentation":false
} 
Run Code Online (Sandbox Code Playgroud)


Hex*_*dus 6

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

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

在此处输入图片说明


sha*_*ker 5

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

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

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

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

问题:HTML 格式化程序不知道如何处理 Django 模板标签,并取消了我精心应用的大部分嵌套。

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


Ana*_*aja 5

第一步:settingns.json在vscode中打开

第 2 步:为编程语言添加如下行(示例如下)

对于打字稿和 javascript

"editor.detectIndentation": false,
"[typescript]": {
        "editor.defaultFormatter": "vscode.typescript-language-features",
        "editor.tabSize": 2,
        "editor.insertSpaces": true,
        "editor.detectIndentation":false
 },
"[javascript]": {
    "editor.tabSize": 2,
    "editor.insertSpaces": true,
    "editor.detectIndentation":false
}
Run Code Online (Sandbox Code Playgroud)