3

我想防止 IDEA 在某些元素周围插入换行符,类似于 HTML 格式,其中某些元素(如<b>)保持内联。

我有一个带有声明混合内容的 DTD 的 XML 方言。

DTD:

<!ELEMENT mixed (#PCDATA|inline)*>
<!ELEMENT inline #PCDATA>

XML 文件:

<mixed>
  Some text with <inline>inline elements</inline>
  and a line break.
</mixed>

当我重新格式化 XML 文件时,IDEA 将其转换为

<mixed>
  Some text with 
  <inline>inline elements</inline>
  and a line break.
</mixed>

我查看了 Code style->XML->Other 上的所有选项。“保留空白”选项过于严格,因为我希望 IDEA 打破长线。

4

2 回答 2

6

在 IDEA 13 中,您可以使用新的Formatter Control功能来禁用所选代码行的自动格式化。要启用此功能,您应该在项目设置中标记以下复选框:

格式化程序控制设置

然后在注释中插入选定的标记来划分不应被重新格式化代码工具格式化的代码片段,例如:

<root>
    <!-- @formatter:off -->
    <mixed>
        Some text with <inline>inline elements</inline>
        and a line break.
    </mixed>
    <!-- @formatter:on -->

    <mixed>
        Some text with
        <inline>inline elements</inline>
        and a line break.
    </mixed>
</root>

不幸的是,在以前的 IDEA 版本中没有这样的功能,在这种情况下,我唯一知道的选择是手动格式化代码,而不是使用重新格式化代码工具。

于 2014-01-19T18:07:39.193 回答
1

在尝试了很多事情之后,我的印象是这是不可能的。我已提交功能请求:

http://youtrack.jetbrains.com/issue/IDEA-119650

于 2014-01-21T11:51:30.093 回答