Eclipse中的多行字符串对齐/缩进

时间:2016-04-06 17:19:11

标签: eclipse formatting alignment indentation code-formatting

我正在使用Eclipse Luna,我想对齐/缩进多行字符串文字,以便每行开始于同一列。但我无法说服Eclipse在代码样式格式化程序中执行此操作。

这就是目前格式化的方式:

    final String string1 =
        "abc" +
            "def" +
            "ghi";

    System.out.println(
        "abc" +
            "def" +
            "ghi");

    System.out.println("" + // an ugly workaround
        "abc" +
        "def" +
        "ghi");

    method("xyz",
        "" +           // Especially ugly in this case
            "abc" +
            "def" +
            "ghi");

但这是我真正想要的:

    final String string2 =
        "abc" +
        "def" +
        "ghi";

    System.out.println(
        "abc" +
        "def" +
        "ghi");

    // Or something like this would be fine too
    final String string3 =
        "abc"
      + "def"
      + "ghi";

    System.out.println(
        "abc"
      + "def"
      + "ghi");

这似乎是一种简单而理想的格式。只需在同一列上启动分解线的每个部分。但我无法在任何地方找到办法。

1 个答案:

答案 0 :(得分:4)

以下设置适用于您的前两个示例。将您的示例复制粘贴到块中,然后重新格式化。但是,使用此设置,您需要手动断开线条,然后格式化程序将缩进它们并保持不加入它们。您可能需要调整其他设置,因为“包装线的默认缩进”为0。

线下包装:

  1. 选中“从不加入已包裹的行”

  2. 将“包装线的默认缩进:”设置为0

  3. 表达/作业:

    • 必要时换行,
    • 缩进一个
  4. 表达式/二进制表达式:

    • 必要时换行,
    • 操作员检查换行,
    • 默认缩进
  5. 还可以选择禁用格式化程序,然后在要手动格式化的代码后重新启用它。当您希望格式化初始化程序中的表格数据以提高可读性时,这可能很有用。这是格式化程序设置中的关/开标签。