【问题标题】:Visual Studio selectively convert multiple lines of code to a single line - ReSharper?Visual Studio 有选择地将多行代码转换为单行 - ReSharper?
【发布时间】:2016-01-14 01:34:18
【问题描述】:

假设我有一个简单的 if 语句如下:

if(a > b)
{
    return false;
}

虽然上面的代码完全符合我定义的编码风格,但我想要做的是突出显示这 4 行代码,然后很快将它们转换为一行,如下所示:

if(a > b) { return false; }

有没有办法选择性地做到这一点。我不想在整个文件中都这样做 - 只有我突出显示的行。在许多情况下,我希望 if 语句保留在多行上。

如果有帮助,我有 ReSharper。

【问题讨论】:

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


    【解决方案1】:

    安装VsVim Extension,然后您可以将光标放在if 关键字上,然后按CTRL+ALT+两次(假设您使用 Resharper Visual Studio 键盘映射)选择整个 if 块,然后按 SHIFT+J 将所有行合并为一个。

    如果 VsVim 不适合您,那么您可以尝试添加连接线功能的 CodeMaid Extension(使用 CTRL+MJ )

    【讨论】:

    • 谢谢。我无法使用 VsVim,但 CodeMaid 正是我想要的。我现在将使用 CodeMaid 的其他功能。非常感谢。
    【解决方案2】:

    您可以创建自定义模板。看看here。然后,您可以对建议的行进行标准 Resharper 修复,并将它们应用到您想要的位置。

    【讨论】:

    • 这是一个好主意,但它并没有完全达到我想要的效果。我不希望这些突出显示给我。我只想按一下按钮转换为单行。我不希望 ReSharper 提出建议。
    • 创建模板后,您可以转到代码检查 > 自定义模式 > 立即搜索并一次性检查所有要替换的模式。
    猜你喜欢
    • 1970-01-01
    • 2014-08-04
    • 1970-01-01
    • 1970-01-01
    • 2017-07-27
    • 1970-01-01
    • 2017-09-16
    • 2017-10-24
    • 2013-08-24
    相关资源
    最近更新 更多