代码之家  ›  专栏  ›  技术社区  ›  Maciej

如何在按区域包围时关闭自动格式化(VS2008)

  •  1
  • Maciej  · 技术社区  · 16 年前

    我不喜欢vs格式化代码的方式,所以,我取消了文本编辑器/c/formatting中的所有3个选项。
    我还选中了“忽略声明语句中的空格”。 在大多数情况下,它是有效的。

    但是当我用eg来包围代码时。 γ区 我注意到我的声明被重新格式化(删除的标签)

    这是一种防范的方法吗??

    我正在使用制表符进行对齐,并选中了“工具”->“选项”->“文本编辑器”->“c”->“制表符”->“保留制表符”

    1 回复  |  直到 15 年前
        1
  •  1
  •   montelof    15 年前

    我使用narrange格式化所有文件,它按名称对方法重新排序,并在区域中对它们进行分组。 非常好。

    我发表这篇文章是因为我非常喜欢narrange格式化我的代码的方式,你也可以创建自己的格式作为模板来应用到你的代码中。

    但是,如果您希望使用vs internal surround函数,可以转到snippes文件夹“c:\程序文件(x86)\ Microsoft Visual Studio 9.0\vc \snippets\1033\Visual C” 编辑pp_region.snippet文件并删除$end子句后面的回车键,如下所示:

    <?xml version="1.0" encoding="utf-8" ?>
    <CodeSnippets  xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
      <CodeSnippet Format="1.0.0">
        <Header>
          <Title>#region</Title>
          <Shortcut>#region</Shortcut>
          <Description>Code snippet for #region</Description>
          <Author>Microsoft Corporation</Author>
          <SnippetTypes>
            <SnippetType>Expansion</SnippetType>
            <SnippetType>SurroundsWith</SnippetType>
          </SnippetTypes>
        </Header>
        <Snippet>
          <Declarations>
            <Literal>
              <ID>name</ID>
              <ToolTip>Region name</ToolTip>
              <Default>MyRegion</Default>
            </Literal>
          </Declarations>
          <Code Language="csharp"><![CDATA[#region $name$
        $selected$ 
    $end$ #endregion]]>
          </Code>
        </Snippet>
      </CodeSnippet>
    </CodeSnippets>
    

    删除v部分las行中的enter将不再自动格式化代码。