【问题标题】:How do you auto format code in Visual Studio?如何在 Visual Studio 中自动格式化代码?
【发布时间】:2011-08-10 23:41:52
【问题描述】:

我知道 Visual Studio 可以自动格式化以使我的方法和循环正确缩进,但我找不到设置。

【问题讨论】:

  • 从顶部菜单:编辑 --> 高级 --> 格式化文档
  • 2019 年怎么样?
  • 在vs2019中还是一样
  • 您的意思是“如何通过几次击键来格式化代码块”?这似乎是流行的答案所指的(而不是“你如何自动格式化”......当你输入/粘贴/等时)。
  • 对于 Visual Studio 2017 。使用快捷键 Ctrl + Alt + Enter

标签: visual-studio indentation


【解决方案1】:

格式化选择:Ctrl+K, Ctrl+F

格式化文档:Ctrl+K, Ctrl+D

请参阅pre-defined keyboard shortcuts。 (这两个是Edit.FormatSelectionEdit.FormatDocument。)

macOS 的注意事项

在 macOS 上,使用 CMD ⌘ 键而不是 Ctrl

  • 格式化选择:CMD ⌘+K, CMD ⌘+F
  • 要格式化文档: CMD ⌘+K, CMD ⌘+D

【讨论】:

  • vs 2010 似乎是 ctrl + k, ctrl + d
  • 在 Visual Studio 2013 中使用 Ctr + K、Ctrl + D 来格式化文档。
  • 在VS2010中,如果你有Format document is not available...的错误信息,请阅读:stackoverflow.com/q/8812741/1016891
  • 这些对于 VS2013 来说是准确的
  • 我不知道为什么微软一直在改变这些。为了将来参考,它可以在 Edit -> Advanced -> Format Document 谁知道,他们可能会在下一次迭代中重命名该菜单。
【解决方案2】:

适用于 Visual Studio 2010/2013/2015/2017/2019

  • 格式化文档(Ctrl+K,Ctrl+D),即长按Ctrl,长按K 然后点击 D 因为它是一个序列
  • 格式选择(Ctrl+K,Ctrl+F

工具栏Edit -> Advanced(如果您看不到Advanced,请在解决方案资源管理器中选择一个代码文件并重试)

当我设置为 C# 编码时,您的快捷方式可能与我的显示方式不同,但通过工具栏导航可以找到您的快捷方式。

如果它不起作用,请在您的代码中查找错误,例如缺少阻止自动格式化工作的括号

【讨论】:

  • 如果你发现它不起作用,检查你的括号{},(),当它对我不起作用时,那是因为文件中的某处有左括号。跨度>
  • 有什么方法可以不使用键序列而只使用键组合?
  • @UpulieHan 我认为您可以编辑快捷方式工具 > 选项 > 环境 > 键盘 > 搜索“Edit.FormatDocument”... Ctrl+Alt+;对我来说似乎是一个可用的组合:)
  • 如果您尝试自动格式化 HTML 代码,则此命令将不起作用,请查看 stackoverflow.com/questions/41329393/…
【解决方案3】:

我安装了一个名为“保存时格式化文档”的扩展程序,每次保存时都会格式化整个文档。

要在 Visual Studio 2015 或 Visual Studio 2017 中安装它,只需在工具上点击“扩展和更新...”:

然后只需转到左侧面板的“在线”并搜索“保存时格式化文档”:

【讨论】:

【解决方案4】:

按照以下步骤操作:

  • 转到菜单工具
  • 转到选项
  • 转到文本编辑器选项
  • 单击您选择的语言。我以 C# 为例。

见下图:

【讨论】:

  • 一旦我这样做了?我看不到任何这些设置处理自动缩进?
  • @MrJalapeno 我完全不知道 6 年前我在这里回答了什么问题,但 34 人发现它很有用。对困惑感到抱歉。我可能误解了这个问题,在这种情况下我的答案适用,因为我的答案中有与格式相关的选项。事后看来,可以肯定地说 OP 正在寻找 ctrl+k、ctrl+d。
【解决方案5】:
  1. 转到菜单工具扩展和更新并在搜索中输入“生产力”:

  2. 安装“生产力电动工具 2015”

  3. 重新启动 Visual Studio。

  4. 转到菜单 ToolsOptionsProductivity Power ToolsPower Commands 并选中“Format document on保存”:

注意:在 VS2022 中我们没有电源命令。

  • 如果有人想要“保存时格式化文档”和“保存时使用删除和排序”安装 VS2022 的 Mads Kristensen 扩展https://marketplace.visualstudio.com/items?itemName=MadsKristensen.CodeCleanupOnSave
  • 安装此扩展后,它会自动“在保存时格式化文档”、“在保存时使用删除和排序”和“应用文件标题首选项”。
  • 如果我们想要自定义默认设置,请单击“配置代码清理”菜单项以添加/删除任何可用的修复程序。

【讨论】:

  • 如果它在打字时工作会很好,就像 VB.NET 一样:
  • 必须习惯于在实际更改文件之前格式化您编辑的每个新文档并提交更改,否则提交看起来很嘈杂
  • 安装了 Visual Studio 2019 的扩展,我在 HTML Copy 后没有看到 powerCommands。
  • 它适用于我,Microsoft Visual Studio Community 2019 版本 16.5.2
【解决方案6】:

您可以通过转到工具选项环境键盘来定义新的键绑定:

【讨论】:

  • 谢谢。对我来说 VS2005 方案中的 Ctrl E + D :)
【解决方案7】:

在 mac 上:Shift + Option + F

在 ubuntu 上:Ctrl + Shift + I

【讨论】:

  • 这与这里的其他所有内容不同,在 2021 年(Ubuntu)仍然对我有用。
  • 我很高兴为您提供帮助 =)
【解决方案8】:

在 Visual Studio 2017、2019、2022 中

文档格式为Ctrl + E, D

但是...如果您想将“格式化文档”按钮添加到工具栏,请执行以下操作:

  • 右键单击工具栏。
  • 选择“自定义..”
  • 选择“命令”选项卡。
  • 选择“工具栏”单选按钮。
  • 从单选按钮旁边的下拉菜单中选择“文本编辑器”(或您希望该按钮出现的任何工具栏)

现在...

  • 单击添加命令按钮。
  • 类别:编辑
  • 命令:文档格式
  • 单击确定

【讨论】:

    【解决方案9】:

    我曾经使用这些组合。我在保存文档时自动化了这个过程。你可以试试我的扩展Format Document on Save

    【讨论】:

    • 感谢您在 VS 设置中做一些本应是复选框的事情!
    【解决方案10】:

    如果您显示 HTML 源代码编辑 工具栏,还有一个“格式化整个文档”按钮。

    【讨论】:

    • 这是一个非常奇怪的地方。我一直在寻找这个。
    • 我有 VS13,该工具栏没有可用的“格式化文档”按钮。
    • 使用 Microsoft Visual Studio Community 2015 版本 14.0.23107.0 D14REL 在提到的工具栏上有一个“格式化整个文档”按钮。
    • 谢谢。如果我们可以通过添加或删除按钮>>自定义将它添加到其他工具栏就好了
    【解决方案11】:

    接受的答案中提供的解决方案不适用于Microsoft Visual Studio 2012

    对于 Visual Studio 2012,快捷方式是:

    • 对于突出显示的代码块: Ctrl + K, Ctrl + F
    • 对于文档范围的格式: Ctrl + K, Ctrl + D

    【讨论】:

    • 其实并没有错。 CTRL + K,F 和 CTRL + E,F 都做同样的事情。如果您转到 EDIT -> Advanced,您实际上会看到列出为 CTRL + E,D 和 CTRL + E,F 的快捷方式。也可以使用 CTRL + K,C 或 CTRL + E,C 进行注释。 - 使用安装了所有最新更新的 VS2012 Premium。
    • @Alan006 很有趣。我安装的 VS2012 Pro 说 Ctrl+ e,f/Ctrl + e,d 不是命令。
    • 我认为这可能与您在首次启动时最初选择的环境/开发设置有关。他们都为我工作,所以我不会抱怨:D
    • @Alan006 是对的,VS2010 及更高版本的默认环境使用“Visual Basic”的键盘布局(检查工具 -> 选项 -> 键盘)。 “Visual C# 2005”的键盘绑定略有不同。
    【解决方案12】:

    在 Visual Studio 2019 中,“代码清理”(RunDefaultCodeCleanup)更高级(取自ReSharper): Ctrl + K, Ctrl + E

    Options dialog box: Text EditorC#Code StyleFormatting

    Visual Studio 中的自动格式化设置

    【讨论】:

      【解决方案13】:

      在菜单工具选项文本编辑器,然后进入格式化常规 您希望格式化的任何语言的部分都可以找到General。选中所有三个格式复选框。

      在菜单下工具选项文本编辑器,然后转到您使用的任何语言的TABS部分希望格式化你会发现缩进。选择Smart,只要您使用其中一个关闭元素,它就会激活自动格式化; ) } 在该块内。

      不需要按键。

      【讨论】:

      • 这并没有改善“已经搞砸”的代码,而 VB.NET 这样做。
      【解决方案14】:

      选择要自动缩进的文本。

      点击菜单编辑高级 → *格式选择,或按Ctrl + K, Ctrl + F。格式选择将您编程所用语言的智能缩进规则应用于所选文本。

      步骤(1):Ctrl + A

      步骤(2):Ctrl + K

      步骤(3):Ctrl + F

      【讨论】:

        【解决方案15】:

        您可以通过单击最后一个工具栏按钮右侧的小下拉箭头将按钮添加到工具栏,选择“添加或删除按钮”,然后单击要为其添加勾号的按钮。您选择的按钮将出现在您的工具栏上...

        然后您只需选择文本并单击“增加缩进”或“减少缩进”按钮。我仅在 Visual Studio 2013 上对此进行了测试。

        【讨论】:

          【解决方案16】:

          在较新的版本中,文档范围格式化的快捷方式是:Shift + Alt + F

          【讨论】:

            【解决方案17】:

            右键:

            它适用于 Visual Studio 2015,可能是更早的版本。

            【讨论】:

              【解决方案18】:

              原来的问题是“我找不到设置”。

              简单的答案是:查看顶部菜单,然后

              编辑 --> 高级 --> 格式化文档

              您还将看到当前为该功能分配的按键。没有什么特别要记住的。如果您在不同的操作系统上使用多个开发人员环境,这真的很有帮助。

              【讨论】:

                【解决方案19】:

                Visual Studio 2019

                1. 格式化文档,当您按住 Ctrl按钮时,先按K,然后按D知识库>
                2. 格式选择,当您按住 Ctrl按钮时,先按K,然后按F知识库>

                或者直接点击Edit => Advanced => Format Document / Format Selection

                【讨论】:

                  【解决方案20】:

                  选择数据并右键单击,您将找到此选项。 格式文档格式选择

                  【讨论】:

                  • 这个线程是关于 Visual Studio 的。您的评论谈到了 Visual Studio Code
                  【解决方案21】:

                  为了进一步 StarwfanaticEwan 的答案,您可以自定义您的 IDE 以将 any 按钮添加到 any 工具栏 - 这样您就可以添加 Format 按钮(与 HTML 源代码编辑工具栏一样)到任何其他工具栏(例如带有所有其他编辑控件的文本编辑,例如增加/减少缩进)。

                  单击工具栏右侧的箭头 → 添加或删除按钮自定义... → 命令选项卡 → 按钮。

                  文档格式选择格式都在编辑组下。

                  (在 Visual Studio 2010 和 Visual Studio 2013 中测试)

                  【讨论】:

                    【解决方案22】:

                    在 Windows 中是 Shift + Alt + F

                    但您始终可以通过以下操作进行仔细检查。

                    1. 转到菜单查看命令面板或按Ctrl + Shift + P知识库>
                    2. 搜索格式化文档
                    3. 您可以按它来自动格式化代码或其前面的热键。

                    【讨论】:

                      【解决方案23】:

                      使用Continuous Formatting 扩展名(商业,由我开发),代码会在您键入时自动格式化。

                      【讨论】:

                      • 很好,应该默认包含在VS中,但是价格太高了。对于 19 欧元,我会说“太棒了!”。
                      【解决方案24】:

                      Visual Studio 扩展 - CodeMaid 非常好。

                      【讨论】:

                      • 未找到扩展程序
                      • 有了这个扩展,你甚至可以右键文件夹,清理里面所有文件中的所有代码,非常方便。
                      【解决方案25】:

                      如果它仍然无法正常工作,那么您可以选择整个文档,复制并粘贴它,它会重新格式化。

                      所以...

                      • Ctrl + A
                      • Ctrl + C
                      • Ctrl + V

                      这是我发现的唯一可以在 Mac 上的 Visual Studio Community Edition 中使用的东西。

                      【讨论】:

                        【解决方案26】:

                        在 Visual Studio 2015 和 2017 中用于 C# 代码。

                        1. 滚动到文件末尾
                        2. 删除最后一个“大括号”,}
                        3. 等到它上面的行显示错误
                        4. 替换“大括号”,} 菲尼。 :)

                        【讨论】:

                          【解决方案27】:

                          您也可以使用 CodeMaid 扩展。

                          您可以从 Visual Studio Market Place 获取扩展。
                          这是扩展程序的链接。 CodeMaid

                          【讨论】:

                          • 您能详细说明一下吗?请通过editing your answer 回复,而不是在 cmets 中(without "Edit:"、"Update:" 或类似的 - 答案应该看起来像是今天写的)。
                          【解决方案28】:

                          如果您负担得起(或者如果您有资格获得 30 天免费试用)JetBrains' ReSharper 可以重新格式化整个项目目录。

                          只需安装→右键单击目录→从上下文菜单中选择清理代码

                          【讨论】:

                            【解决方案29】:

                            您也可以尝试右键菜单(上下文菜单)选项来格式化编码文档的选择。看看下面的截图:

                            【讨论】:

                              【解决方案30】:

                              在 Windows 中,使用以下命令:

                              键盘快捷键 Ctrl + E, D

                              菜单编辑高级格式化文档

                              【讨论】:

                                猜你喜欢
                                • 2018-02-19
                                • 2018-09-05
                                • 2017-11-05
                                • 2023-03-14
                                • 1970-01-01
                                • 2021-03-02
                                • 2018-03-12
                                • 1970-01-01
                                相关资源
                                最近更新 更多