在IntelliJ IDEA 12中保存时去除尾随空格

137

在IntelliJ IDEA中,在保存时自动删除尾随空格是否可能? 我知道有一些解决方法,例如使用git在提交时修剪空格。 也许这个问题是这个问题的重复,但我希望可以不设置键盘快捷方式和宏来完成此操作。


1
你应该接受答案,假设在IntelliJ 12中也有该设置。(由于它在11和13中都存在,我认为它也在12中存在。) - Chris Arena
5个回答

211

我不知道版本12是否有此设置,但是13版本中有以下设置:

设置 → 编辑器 → 保存时去除行末空格

从IntelliJ 2017.2开始,可以在以下位置找到:

设置 → 编辑器 → 通用 → 保存时去除行末空格

configuration dialogue


18
在IDEA中(包括我现在使用的至少v13.1.4版本),似乎存在一个错误,即使您在首选项中选择了什么,它仍会保存光标所在行的尾随空格。例如,如果你在任何一行的末尾单击并按几次 <tab> 键然后保存(或切换到启用自动保存的另一个应用程序),则该行将以保留尾随空格的方式保存。只要将光标移出该行并重新保存,空格就会消失。 - Scott Dudley
5
2016年了,那个漏洞仍然存在。 - Cassio Pereira
3
一个标题“这不是一个 Bug,这是一个特性”并不能将一个 Bug 转化为一个特性。在行末加上插入符号确实很不方便,但我也想要从当前行中移除尾随的空格(光标所在的位置)。例如,Sublime 就有这个功能,并且 Sublime 可以按需而非只在保存时移除尾随的空格。 - maxkoryukov
5
我不确定这个选项是何时实施的,但截至今天,您现在可以使用一个首选项选项来更改此行为:一个名为“始终保留插入符行尾空格”的复选框,位于“保存时删除行末空格”选项下方。 - MaxML
4
我在Intellij中更改了设置,但仍然无法运行。 - Ian Steffy
显示剩余2条评论

21

在2020.1版本的IntelliJ中:

文件 -> 设置 -> 编辑器 -> 通用 -> 向下滚动至“保存文件”

保存时去除行末空格选项


2

前往 ==> 首选项 | 通用 | 其他 |

如图所示:

  1. 保存时删除尾随空格:全部
  2. 取消勾选 始终保留....

它会在保存时,而不是之前删除尾随空格

enter image description here


0

对我有效的方法是

Intelij

  1. 设置
  2. 通用
  3. 在保存时
  4. 取消选中移除行尾空格

工作区

  1. 查找.editorconfig文件
  2. 设置“trim_trailing_whitespace”选项。
[*]
charset = utf-8
indent_style = space
indent_size = 2
insert_final_newline = true
trim_trailing_whitespace = false

我有同样的情况。应该将 trim_trailing_whitespace = false 更改为 trim_trailing_whitespace = true。它正在覆盖设置。 - Zeth

0
添加外部工具。在程序中传递/usr/bin/sed(可能与您的不同,运行which sed查找)并在参数中插入-i 's/[[:space:]]\+$//' $FilePath$。总体上,您希望IntelliJ运行的命令是:
/usr/bin/sed -i 's/[[:space:]]\+$//' <your current file>

这个sed命令将删除行尾的空白字符,整体效果与git非常相似。接下来,您可以为新的外部工具条目添加一个键盘快捷方式,但我不确定是否可以在保存时运行任何操作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接