在 Visual Studio 中将多行代码格式化为单行
Posted
技术标签:
【中文标题】在 Visual Studio 中将多行代码格式化为单行【英文标题】:Format multiline code to single line in Visual Studio 【发布时间】:2014-08-04 01:39:19 【问题描述】:在 Visual Studio 2013 中是否有键盘快捷键或快速方法可以将以下代码更改为单行?我也安装了 ReSharper。
多重
new XElement("Option",
new XAttribute("Name", "FileDelete"),
"1"
),
单身
new XElement("Option", new XAttribute("Name", "FileDelete"),"1" ),
【问题讨论】:
【参考方案1】:只选择所有文本
然后按(control + j)
会变成1行代码
【讨论】:
Ctrl + J
后面的命令名称是什么我的键绑定与默认不同。【参考方案2】:
我设置了查找/替换以便快速使用正则表达式,如下所示:
(注意:我使用的是 VS 2015,所以你的热键可能不同)
-
使用 Ctrl+H 打开快速查找替换。
确保“使用正则表达式”按钮处于活动状态/打开状态,并且您已设置为在“选择”中搜索(不是“文档”或“整个解决方案”或其他)
类型
\s+
和一个 空格 (
)
分别在“查找”和“替换为”框中。
按 Esc 键退出快速查找/替换。
现在,只要你不做任何改变,你可以选择任何你想要单行的文本,然后使用下面的热键序列来快速格式化它:
-
Ctrl+H(打开快速查找/替换)
Alt+A(用一个空格替换任何出现的 1 个或多个 White Spc 字符。)
Enter(关闭显示“找到X个事件”的弹出窗口)
Esc(退出快速查找/替换并返回您的代码)
在 Visual Studio 完成诸如实现接口之类的操作之后,我一直都在使用它
public SomeType SomeProperty
get
throw new NotImplementedException();
set
throw new NotImplementedException();
进入类似的东西
public SomeType SomeProperty get return someField; set /*Some Simple Set Code*/;
【讨论】:
确认这在 VS2012 中有效。为我节省了大量时间! 很好的答案!就像水蛇所说的那样……为我节省了大量时间。谢谢!【参考方案3】:要使用 ReSharper,您应该取消选中 ReSharper/Options/Code Editing/C#/Formatting style/Line Breaks and Wrapping 中的“保留现有换行符”选项。
或者只是将此行添加到您的 .dotSettings 中
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/KEEP_USER_LINEBREAKS/@EntryValue">False</s:Boolean>
然后您可以使用代码清理工具(默认快捷键为 Ctrl+Alt+F)或只需键入分号或大括号来格式化您的代码。
【讨论】:
【参考方案4】:对于 VS2019,默认绑定设置为 Shift
+ Alt
+ L
+ J
或者您可以通过转至 Tools -> Options -> Keyboard -> search for 'join'
将其重新绑定到其他内容
将Edit.JoinLines
操作重新绑定到(Text Editor) Ctrl + J
之类的内容,然后按Assign
【讨论】:
这是唯一似乎直接解决 OP 问题的答案。【参考方案5】:您可以更改您的 VS 设置,以任何您想要的方式自动格式化代码,然后在您想要格式化的文本之后选择并重新键入任何行/块结束字符(';' 或 ''),VS 将对其进行格式化给你。
【讨论】:
【参考方案6】:您可以使用CodeMaid 完成此操作。默认键位是 F3,但如果你想改变它,命令叫做CodeMaid.JoinLines
【讨论】:
【参考方案7】:对我来说,Ctrl
+ J
会打开 Linux 终端并且不会将多行格式化为一行。
这是 Linux 上最快的方法
-
点击
Ctrl
+ Shift
+ P
加入行
【讨论】:
以上是关于在 Visual Studio 中将多行代码格式化为单行的主要内容,如果未能解决你的问题,请参考以下文章
visual studio 中如何对多行代码同时打上“//”或者同时删除注释符?求VS中的各种快
Visual Studio 格式不适用于 Control + K+D 和多行
尝试在 Visual Studio 项目中将文件大小转换为可读 - 如何与我现有的代码结合使用