【问题标题】:Turn off auto formatting in Visual Studio在 Visual Studio 中关闭自动格式化
【发布时间】:2010-10-18 17:50:40
【问题描述】:

与 Visual Studio 的默认设置相比,我更喜欢我自己的代码格式样式。我在工具→选项中关闭了自动格式化选项。在大多数情况下,它都有效。

但是,在使用任何内置重构之后,Visual Studio 会使用其默认设置破坏我的设置。如何让 VS 不这样做?

【问题讨论】:

    标签: visual-studio visual-studio-2008 formatting code-formatting


    【解决方案1】:

    我在aspx 页面中编写 VB 时遇到了这个问题。

    解决方案是转到“工具 > 选项 > 文本编辑器 > 基本 > VB 特定”并关闭“漂亮列表”。


    注意 - 在 Visual Studio 2015 中,可以在以下位置找到:

    工具 > 选项 > 文本编辑器 > 基本 > 高级

    【讨论】:

    • 我希望我可以轻松地将这些复选框绑定到任何快捷键。
    • 谢谢,这对我有用。 “漂亮”非常糟糕,函数参数“隐藏在”函数名称下方,当表格垂直对齐是任何从事通信工作的人都可以告诉您最容易理解的方式时,这是一个莫名其妙的选择。
    • 我只是要停下来欣赏拥有text editor -> basic -> advanced.. 的选项树层次结构的美感。'哦,是的,你想要高级部分'?这是基本的
    • @fostandy,我知道你可能知道这一点,但 basic 是语言的名称,而不是选项部分,因为 C# 也列在那里。
    【解决方案2】:

    禁用漂亮的列表。这是重新格式化您正在做的事情的选项。我对它有同样的不适,并且在这样做之后,我的代码保持我想要的方式并且它不会回到以前的设置。

    【讨论】:

    • 在我的 VS2010 Premium 中没有这个选项
    • 在 VS2017 中修复它
    • 在 VS 2013 中没有解决我的 C++ 问题。而且我确信在我更换机器之前它没有损坏
    【解决方案3】:

    正如@TheMatrixRecoder 所建议的那样,我为我找到了一些东西,所以也许这会对其他人有所帮助。

    Unitick 这些选项可防止在您在行尾放置分号或按回车时烦人的自动格式化。

    【讨论】:

    • 从 2021 年的 VS 2019 开始,这是正确的解决方案
    【解决方案4】:

    您可能已经安装了Power Tool

    在这种情况下,您可以从“工具”>“选项”>“生产力工具”>“PowerCommands”>“常规”将其关闭

    【讨论】:

      【解决方案5】:

      就我而言,它是 ReSharper。

      测试是否 ReSharper

      堆栈溢出:How can I disable ReSharper in Visual Studio and enable it again?

      防止 ReSharper 重新格式化代码

      堆栈溢出:Is there a way to mark up code to tell ReSharper not to format it?

      2017-03-01 更新

      最后还是 ReSharper:

      2020 年 12 月 18 日更新

      在最新版本的 ReSharper 上,有更多选项:取消勾选此页面上的所有内容,并确保所有下拉菜单都设置为等同于 None

      ReSharper“打字辅助”就像一个 3 岁的孩子试图“帮助”建造一座卡片城堡。一个简单的退格键或回车键将(很差地)重新格式化整个代码块,要求将其撤消或痛苦地格式化回原始代码。

      如果这还不够,这会增加打字时的延迟,所以有时感觉就像是在滑雪。

      【讨论】:

      • 同意,大括号总是在错误的位置,每次你击中分号时,它都会用沉重的靴子踩踏代码。不酷。
      【解决方案6】:

      帮助我防止自动格式化的 VS2015 设置:

      (和工具>选项>文本编辑器>基本>高级,就像Tango91建议的那样)

      【讨论】:

        【解决方案7】:

        不能关闭分号或右大括号的重新格式化。我觉得微软会冒昧地告诉任何人如何格式化代码,这让我很生气。我见过的最难以辨认的代码是在那里工作的时候。

        我希望相邻的作业垂直对齐; VS 将它们重新格式化为等号两侧的一个空格,而不管左侧变量的长度如何。这是不能容忍的。并且在编辑器选项上关闭它会被忽略;鉴于上面的开瓶器之类的 cmets,我确信这是故意的。

        一致性只有在导致理想结果时才是一种美德。这不是一个。

        【讨论】:

          【解决方案8】:

          在 VS2017 中,您可以在设置菜单中选择编码语言后更改它。在“格式化”子菜单中有一个名为“新行”的选项。

          【讨论】:

            【解决方案9】:

            我看到这里的许多答案都针对特定情况解决了问题。

            对于我的情况,我不断发现 IDE 会自动格式化 ASP 页面中的 JavaScript 代码。

            要禁用,我取消选中此框:

            此外,我发现使用工具栏中的搜索查询 (CTRL+Q) 并仅搜索文本 format on paste 非常有帮助。正如您在滚动条中看到的那样,有很多选项可供检查!

            【讨论】:

              【解决方案10】:

              我怀疑您是否可以在重构后禁用重新格式化。重构会更改代码,因为它只是文本,我怀疑您想要的是它只是将未格式化的文本转储到您的源代码中。把VS坚持的代码风格设置成你喜欢和遵循的风格会不会容易一点?

              【讨论】:

              • 有时编码风格不可算法化。有时它是故意不一致的,因为有人为一个编码风格不一致的项目做出贡献,并希望遵守正在编辑的特定代码段的编码风格。
              【解决方案11】:

              按照工具->选项->文本编辑器->CSS->格式化 选择“紧凑规则”并取消选中“层次缩进”

              【讨论】:

              • 文本编辑器 -> CSS 或 HTML -> 制表符 -> 缩进 -> (o) 无
              【解决方案12】:

              可能是 Clang 格式的情况。 以前,整个文件在文件保存时会自动格式化,这让我抓狂(对于未启用 Clang 格式的存储库)。

              将“工具 -> 选项 -> LLVM/Clang -> ClangFormat -> 保存时格式化 -> 启用”设置为 False 后,这种行为就消失了。

              【讨论】:

                【解决方案13】:

                每次我在 Visual Studio 2015、2017 的 cshtml 文件中粘贴任何内容时,我都感到很生气。我尝试了不同的设置,最终找到了正确的设置: 选项 => 文本编辑器 => HTML => 高级 => 粘贴(粘贴时格式化)=> False

                【讨论】:

                  【解决方案14】:

                  您可以调整代码格式的设置。我总是关闭所有额外的换行符,然后它就可以很好地格式化代码。

                  如果您尽可能地根据自己的喜好调整设置,那么无论何时使用重构都应该让您的工作量最少。

                  【讨论】:

                    【解决方案15】:

                    除了 Tango 对实际解决方案的回答之外,可能还有一些人实际上希望与自动格式保持同步,但又不想让它搞砸您的相关更改。我建议您修改文件以激活自动格式化,签入这些更改,然后继续进行您希望进行的实际更改。

                    这样您的代码可以保持最新,但您的签入将是相关的。

                    【讨论】:

                      【解决方案16】:

                      您可能需要检查工具-> 选项-> Xaml 样式器-> 保存时格式化 xaml

                      【讨论】:

                        猜你喜欢
                        • 1970-01-01
                        • 2016-10-29
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 2011-11-04
                        • 2015-09-03
                        相关资源
                        最近更新 更多