【问题标题】:resharper code formatting introduces needless linebreak on starting parensresharper 代码格式在开始括号时引入了不必要的换行符
【发布时间】:2015-10-01 07:53:31
【问题描述】:

当我在Wrap invocation arguments 上启用simple wrap 时,我通常会得到如下格式的行:

string.Format(
              "example string tralala {0} {1}",
              foo, bar);

除了启用chop if long 之外,我发现没有任何设置组合可以防止此换行符。不幸的是,这可能有点麻烦(如果函数调用占用的空间超过您的最大自动换行空间,它会强制每个参数占用一行)。

有什么我忽略的解决方案吗?

【问题讨论】:

    标签: c# resharper code-formatting


    【解决方案1】:

    Resharper 9 转到Resharper(从Visual Studio 菜单)->Options->Code Editing->C#->Formatting Style->Line Breaks and Wrapping 并从Line Wrapping option取消选中Wrap Long Line

    【讨论】:

      【解决方案2】:

      您可以使用一些设置来按照您在re-sharper 中喜欢的方式来格式化您的代码。在 Visual Studio Go 中:Tools>Options>Re-sharper 并再次单击 Options 按钮。

      然后在Code Editing 部分下,在c#>Formatting Style 下。您可以使用以下设置之一:

      • 在声明\调用中优先在( 之前换行
      • 在声明\调用中 ( 之后首选 warp
      • 或者wrap调用参数设置为任一(这很可能是需要设置的)
        • 总是切碎。
        • 如果太长切碎。
        • 简单的包装。

      取消勾选顶部的wrap long lines 操作 *line wrappingsection, willstop-wrapping`,但您需要通过这些设置才能使其恰到好处 - 或让它格式化您的编码方式。

      【讨论】:

      • 我已经完成了我认为的所有组合。挑战:制作一个类似于我制作的string.format。使字符串的大小足够长以使下一个参数换行。弄乱所有这些设置。你找到一个组合,得到我寻求的结果?这似乎很愚蠢,但我似乎无法做到。
      • 我知道,你想让它做对,你的右边距是多少?
      • 或者向我们发布您的换行设置的屏幕截图:
      • 禁用wrap long lines 就像使用火箭发射器杀死老鼠一样。仅仅为了解决这个小烦恼就失去了太多的好处。不幸的是,更改保证金金额只会解决问题。不可避免地,一个人必须处理一个长字符串,据我所知,这个问题在任何情况下都会持续存在
      • 如果将wrap formal parameters 设置为simple,仅通过查看您的示例就不起作用了吗?如果您的文本行超出边距但不会每次都给您换行,这仍然会换行?
      猜你喜欢
      • 2011-03-04
      • 2020-05-22
      • 2017-06-06
      • 1970-01-01
      • 1970-01-01
      • 2021-05-25
      • 2019-08-09
      • 1970-01-01
      • 2018-08-03
      相关资源
      最近更新 更多