首页 文章

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

提问于
浏览
101

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

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

8 回答

  • 0

    要更改缩进 based on programming language ,请按以下方法之一:

    • 将此添加到您的设置(Ctrl,):
      (TypeScript特定设置的示例):
    "[typescript]": {
        "editor.tabSize": 2
    }
    

    要么

    • Ctrl Shift P.

    • 首选项:配置语言特定设置...(命令ID: workbench.action.configureLanguageBasedSettings

    • 选择编程语言

    • 如上添加代码 .

    See also: VS Code Docs

  • 195

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

    如果您希望将此应用于所有文件而不是基于个人文件,请根据您的需要覆盖 User SettingsWorkspace Settings 中的 editor.tabSizeeditor.insertSpaces 设置

  • 45

    我想将现有HTML文件的缩进从4个空格更改为2个空格 .

    我单击状态栏中的“Spaces:4”按钮,然后在下一个对话框中将它们更改为两个 .

    我使用'vim'扩展名 . 没有vim,我不会如何重新缩进

    要重新缩进我当前的文件,我使用了这个:

    gg
    
    =
    
    G
    
  • 9

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

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

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

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

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

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

  • 12

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

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

  • 2

    添加:是的,您可以使用右下方的UI来配置空间设置 . 但是,如果现有代码未格式化为新间距,则可以右键单击文件中的任意位置,然后单击 Format Document . 我花了一段时间来弄明白,直到我偶然发现this issue .

    Format Document menu

  • 3

    代码格式快捷方式:

    Windows上的VSCode - Shift Alt F.

    MacOS上的VSCode - Shift选项F.

    Ubuntu上的VSCode - Ctrl Shift I

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

  • 33

    在我的情况下,“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
    

相关问题