修剪Xcode中的尾随空格

Ale*_*ysh 94 xcode editor trim developer-tools

当我保存文件时,有没有办法强制Xcode修剪尾随空格?

如果重要的话,我正在使用3.1.3版本.

Mar*_*olz 216

从Xcode 4.4开始,默认情况下将自动修剪空格,除非该行全部为空白.您也可以激活Including whitespace-only lines以解决此问题,默认情况下不活动.

Xcode > Preferences > Text Editing > While editing

Xcode偏好截图

  • 此设置仅在光标离开该行后修剪一行的尾随空格.因此,如果光标在保存时位于该行上,它仍允许您使用一行尾随空格保存文件. (10认同)
  • 在所有现有文件上使用此+`ctrl-i`可以处理尾随空格 (6认同)
  • 为什么这不是默认值?如果您有一个包含尾随空格的现有文件,只需标记全部,剪切,保存,粘贴,保存即可. (5认同)
  • 这在Xcode 8中似乎不起作用. (3认同)

Dar*_*ren 25

您可以创建脚本并将其绑定到键盘快捷键:

  • 选择脚本菜单>编辑用户脚本...
  • 按+按钮并选择New Shell Script
  • 给它一个像"Strip Trailing Spaces"这样的名字,给它一个像^⇧R的快捷方式.
  • 将输入设置为"选择"并输出为"替换选择"

然后输入以下脚本:

#!/usr/bin/perl

while (<>) {
    s/\s+$//;
    print "$_\n";
}
Run Code Online (Sandbox Code Playgroud)

  • 啊,是的,这么简单......谢谢.有没有办法将其与文件保存相关联? (9认同)
  • 从Xcode 4.4开始,这个答案已经过时了.请参阅Martin Stolz的答案. (6认同)

Max*_*ime 24

我正在使用Google Toolbox For Mac Xcode插件,它添加了"保存时更正的空白"参数,可以在保存时修剪尾随空格.我从emacs中错过了很多.

  • 我们现在有一些基本的Xcode 4支持.请参阅我们的[新插件](http://code.google.com/p/google-toolbox-for-mac/downloads/detail?name=GTMXcode4Plugin.4_0_0.zip) (6认同)

Pra*_*tti 10

Automatically trim trailing whitespace -> Including whitespace-only lines我发现在编辑时使用 @MartinStolz 建议的新功能效果很好,但有时我需要执行Cmd+ a-> Ctrl+操作i,并在不进行编辑时多次保存文件并将文件置于焦点中。

如果您想在.md不使用脚本的情况下清理整个项目(不包括文件),您也可以执行Find & Replace -> Regular Expression. 由于此技术还删除了文档/注释的尾随空格和制表符,因此您还可以尝试对黑名单字符进行否定前瞻来过滤掉单行注释。

查找所有尾随空格:

[\t ]+$
Run Code Online (Sandbox Code Playgroud)

查找尾随空白而不触及单行注释:

^(?!.*\\\\)[\t ]+$
Run Code Online (Sandbox Code Playgroud)

代替:

<nothing>
Run Code Online (Sandbox Code Playgroud)

swiftlint autocorrect因此,也可以在没有第三方解决方案或类似的第三方解决方案的情况下完成 linting 。