代码之家  ›  专栏  ›  技术社区  ›  Jim McKeeth

在VS2008中,用大括号包围代码块有什么方法吗?

  •  44
  • Jim McKeeth  · 技术社区  · 14 年前

    我总是发现自己需要用大括号括住一块代码 {} 但不幸的是,这并没有包含在C环绕代码片段中,这似乎是一个疏忽。我也找不到任何关于构建自己的环绕片段的内容(只是其他类型的片段)。

    实际上我也在运行Resharper,但它似乎也没有这个功能(或者我还没有想到如何激活它)。

    我们的编码标准是 即使是一行代码 后一 如果 其他的 在大括号中,如果我能让resharper自动进行重构,那就更好了!

    8 回复  |  直到 8 年前
        1
  •  48
  •   Igor Zevaka    14 年前

    这是一个快速而肮脏的片段。

    安装:

    将代码另存为 SurroundWithBraces.snippet 进入之内 "<my documents>\Visual Studio Version\Code Snippets\Visual C#\My Code Snippets"

    使用:

    选择文本块。
    出版社 Ctrl+K, Ctrl+S
    选择我的代码段、大括号

    <?xml version="1.0" encoding="utf-8" ?>
    <CodeSnippets  xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
      <CodeSnippet Format="1.0.0">
        <Header>
          <Title>braces</Title>
          <Shortcut>braces</Shortcut>
          <Description>Code snippet to surround a block of code with braces</Description>
          <Author>Igor Zevaka</Author>
          <SnippetTypes>
            <SnippetType>Expansion</SnippetType>
            <SnippetType>SurroundsWith</SnippetType>
          </SnippetTypes>
        </Header>
        <Snippet>
          <Code Language="csharp">
            <![CDATA[{
            $selected$ $end$
         }]]>
          </Code>
        </Snippet>
      </CodeSnippet>
    </CodeSnippets>
    
        2
  •  37
  •   Ray    14 年前

    在Resharper 4.5中,大括号是内置的“环绕模板”之一:

    1. 选择要卷曲的文本 周围支撑。
    2. ReSharper -> Code -> Surround With... -> {}

      ALT + R -> C -> S -> 7

      Ctrl+E, U -> 7 (Visual Studio方案)

      Ctrl+Alt+J -> 7 (Resharper 2.x/IDEA方案)

        3
  •  18
  •   Jeroen    9 年前

    怎么样:

    Ctrl-X, {, Ctrl-V, }
    

    甚至可以将其绑定到宏。

        4
  •  3
  •   Serge    8 年前

    在VS2015中,有一个实验特性通过选择文本并键入来支持它。

    here 如何启用。

        5
  •  1
  •   helios456    14 年前

    为此,请编写自己的自定义代码段。 你可以用snippy创建你自己的 http://blogs.msdn.com/gusperez/articles/93681.aspx 或者使用XML编辑器创建一个。

    将文件放入“我的文档\Visual Studio XXXX\代码段\c \我的代码段”

        6
  •  1
  •   Shomron    12 年前

    为了完成RayVega的回答,对于那些使用Resharper的用户,我发现您可以将resharper命令的快捷方式关联起来。

    只需执行以下操作(我使用的是vs 2010):

    转到“工具”->选项

    在列表框中,扩展环境并单击键盘。

    在“show commands containing:”下的字段中,输入“resharper.resharper_surroundwith”

    在“按快捷键”下的字段中,输入快捷键(例如:我选择ctrl+r、ctrl+s),然后单击“分配”,然后单击“确定”。

    就是这样。您可以选择代码,并键入shortcut以查看用命令替代的所有resharper。只需输入7来放置大括号。

        7
  •  0
  •   Andrew    14 年前

    编辑: 这是来自devexpress的dxcore的一部分。离开这里让别人注意到,但基本上我错了。要使这个特定的菜单消失,您可以在“加载项”对话框中禁用它;从自己的菜单中卸载devexpress只是卸载coderush/refactor,而不是基本支持库。

    IS (不是!) 一种内置的方式。我不知道你能不能给它绑定一把钥匙。另外,如果你只选择一行,这个嵌入不会做任何事情,所以如果你的东西在“if”后面的一行上,它可能不会正常工作。

    1. 选择块
    2. 右击
    3. 选择“嵌入选择”
    4. 选择“block”

    注意:我已经安装了dexexpress,但是这个菜单即使在没有加载的情况下也存在,而且我可以发誓即使在没有安装的情况下也存在。但是,如果我错了…

    老实说,这似乎是最好问R的问题,也许是用户控制的问题?

        8
  •  0
  •   Community CDub    7 年前

    可以用大括号将代码块包装为

    1. 突出显示代码块
    2. ctrl e->ctrl u
    3. 选择选项7

    我知道这是个老问题,但我希望它能帮助别人

    裁判: Wrapping multiple statements in braces