【问题标题】:Format multiline code to single line in Visual Studio在 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" ),

【问题讨论】:

    标签: visual-studio visual-studio-2013 resharper keyboard-shortcuts code-formatting


    【解决方案1】:

    只选择所有文本

    然后按(control + j)

    会变成1行代码

    【讨论】:

    • Ctrl + J后面的命令名称是什么我的键绑定与默认不同。
    【解决方案2】:

    我设置了查找/替换以便快速使用正则表达式,如下所示:

    (注意:我使用的是 VS 2015,所以你的热键可能不同)

    1. 使用 Ctrl+H 打开快速查找替换。
    2. 确保“使用正则表达式”按钮处于活动状态/打开状态,并且您已设置为在“选择”中搜索(不是“文档”或“整个解决方案”或其他)
    3. 类型
      \s+
      和一个 空格 ()
      分别在“查找”和“替换为”框中。
    4. Esc 键退出快速查找/替换。
    5. 现在,只要你不做任何改变,你可以选择任何你想要单行的文本,然后使用下面的热键序列来快速格式化它:
      1. Ctrl+H(打开快速查找/替换)
      2. Alt+A(用一个空格替换任何出现的 1 个或多个 White Spc 字符。)
      3. Enter(关闭显示“找到X个事件”的弹出窗口)
      4. 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 -&gt; Options -&gt; Keyboard -&gt; search for 'join' 将其重新绑定到其他内容

      Edit.JoinLines 操作重新绑定到(Text Editor) Ctrl + J 之类的内容,然后按Assign

      【讨论】:

      • 这是唯一似乎直接解决 OP 问题的答案。
      【解决方案5】:

      您可以更改您的 VS 设置,以任何您想要的方式自动格式化代码,然后在您想要格式化的文本之后选择并重新键入任何行/块结束字符(';' 或 '}'),VS 将对其进行格式化给你。

      【讨论】:

        【解决方案6】:

        您可以使用CodeMaid 完成此操作。默认键位是 F3,但如果你想改变它,命令叫做CodeMaid.JoinLines

        【讨论】:

          【解决方案7】:

          对我来说,Ctrl + J 会打开 Linux 终端并且不会将多行格式化为一行。

          这是 Linux 上最快的方法

          1. 点击Ctrl + Shift + P
          2. 加入行

          【讨论】:

            猜你喜欢
            • 2019-04-14
            • 2012-05-27
            • 1970-01-01
            • 2018-03-12
            • 1970-01-01
            • 2023-03-17
            • 2020-07-08
            • 1970-01-01
            • 2018-10-27
            相关资源
            最近更新 更多