intellij中的自定义软包装?

时间:2016-09-29 08:06:14

标签: intellij-idea

它困扰着我: 为什么我不能在intellij(或任何IDE实际上)中“软回复”? 有什么方法我不知道“X +返回键”吗?

情况:我想将长段落复制并粘贴到translation.json中。 之后,我想用html标签格式化它们。

那为什么我不能

"translation": {
Hi!/
this is/
the text./
maybe there is a/
LINK too?/
/
Second Paragraph/
/
This is the second paragraph./
}

/ 换行标记

而不是

"translation": {
Hi! this is the text. maybe there is a LINK too? Second Paragraph This is the / 
second paragraph.
}

(它使html标签插入PITA)

1 个答案:

答案 0 :(得分:2)

  

为什么我不能在intellij(或任何IDE实际上)中“软回复”?

很可能是因为它不是一个非常需要的功能。其次,从实际角度来看,实现会很麻烦,因为IDE使用的大多数文件格式最终都是纯文本。因此,该文件没有软返回的概念。对于支持任意软返回的IDE,它需要维护一个数据存储,其中包含您编辑的每个文件中要求软返回的位置的元数据。

或者,软返回需要存储在文件中。但唯一的方法是通过注释来做到这一点,而不是“影响”文件中的实际代码。例如IDE如何使用注释来抑制警告,创建任意折叠块或关闭自动格式化。 (当然,在你的例子中,JSON没有注释,使事情变得更复杂。)我认为,使用注释进行软返回会导致文件中出现大量混乱。例如,对于HTML,即使使用段落符号“¶”的单字符注释也会导致很多混乱:

"translation": {
Hi!<!--¶-->
this is<!--¶-->
the text.<!--¶-->
maybe there is a<!--¶-->
LINK too?<!--¶-->
<!--¶-->
Second Paragraph<!--¶-->
<!--¶-->
This is the second paragraph.<!--¶-->
}

你总是可以request a new feature向IDEA添加对此类内容的支持,但我相信它不太可能获得任何牵引力(基于13年以上的IDEA使用和非常活跃的社区成员资格)。

我同意@ Peter的评论,关于您所拥有的工作流程的更多细节可能有所帮助。最终,他提到的粘贴为纯文本操作可能是解决方案。或者您可以在设置&gt;中关闭粘贴时重新格式化编辑&gt;一般&gt;智能钥匙&gt; “重新格式化粘贴”。有关详细信息,请参阅以下帮助页面:https://www.jetbrains.com/help/idea/2016.2/smart-keys.html