任何方式与VS2008中的花括号{}围绕代码块?
我总是发现自己需要用大括号{}封装一段代码,但不幸的是,这不包括在C#环绕代码片段中,这似乎是一个疏忽。 我无法find任何build立自己的环绕片段(只是其他types的片段)的任何东西。
我实际上也在运行Resharper,但它似乎没有这个function(或者我还没有想到如何激活它)。
我们有一个编码标准, 即使是在花括号之后也包含一行代码 ,所以如果我可以让Resharper自动进行重构,那就更好了!
这是一个快速和肮脏的片段来做到这一点。
安装:
将代码保存为SurroundWithBraces.snippet
到"<my documents>\Visual Studio Version\Code Snippets\Visual C#\My Code Snippets"
使用:
select文本块。
按下Ctrl+K, Ctrl+S
select我的代码片段,大括号
<?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>
在ReSharper 4.5中,大括号内含“环绕模板”:
- select你想要的大括号的文字。
-
ReSharper -> Code -> Surround With... -> {}
要么
ALT + R -> C -> S -> 7
要么
Ctrl+E, U -> 7
(Visual Studioscheme)要么
Ctrl+Alt+J -> 7
(ReSharper 2.x / IDEAscheme)
怎么样:
Ctrl-X, {, Ctrl-V, }
你甚至可以把它绑定到一个macros。
在VS2015中有一个实验性的function,通过select文本和input来支持它。
看这里如何启用。
制作您自己的自定义代码片段来做到这一点。 您可以使用snippy创build自己的http://blogs.msdn.com/gusperez/articles/93681.aspx,或者使用XML编辑器创build一个。;
将该文件放在我的文档\ Visual Studio XXXX \代码片段\ C#\我的代码片段
为了完成Ray Vega的回答,对于那些使用Resharper的人,我想你可以将一个快捷方式关联到Resharper命令。
只要做到以下几点(我正在使用VS 2010):
进入工具 – >选项
在列表框中,扩展环境并单击键盘。
在“显示包含命令”下的字段中input“resharper.resharper_surroundwith”
在“按快捷键”下的字段中input您的快捷方式(例如:我selectCtrl + R,Ctrl + S)并单击分配,然后确定。
而已。 您可以select您的代码,并键入该shorcut查看所有Resharper SurroundWith命令。 只需input7把括号。
编辑:这原来是从DevExpress DxCore的一部分。 离开这里让其他人注意,但基本上我错了错。 为了使这个特定的菜单消失,你可以在“添加”对话框中禁用它。 卸载devexpress从他们自己的菜单只是卸载CodeRush /重构,而不是基地的支持库。
这是(不!)一个内置的方式来做到这一点。 我不知道你是否可以绑定一个密钥。 另外,如果你只select一行,这个embedded就不会做任何事情,所以如果你的东西在“if”之后的一行上,它可能不会正常工作。
- select块
- 右键点击
- select“embeddedselect”
- select“阻止{}”
注意:我已经安装了DexExpress,但是即使没有加载,这个菜单仍然存在,即使没有安装,我也可以发誓。 但是,如果我错了…
这老实说,似乎是最好的问问r#for,用户贡献也许?
你可以用大括号包装一个代码块
- 突出显示代码块
- Ctrl e – > Ctrl u
- select选项7
我知道这是一个老问题,但我希望它可以帮助别人
参考: 用大括号包装多个语句