保存文件时是否有办法强制Xcode修剪尾随空格?
如果这很重要,我正在使用3.1.3版。
保存文件时是否有办法强制Xcode修剪尾随空格?
如果这很重要,我正在使用3.1.3版。
Answers:
您可以创建一个脚本并将其绑定到键盘快捷键:
然后输入以下脚本:
#!/usr/bin/perl
while (<>) {
s/\s+$//;
print "$_\n";
}
从Xcode 4.4开始,默认情况下将自动修剪空白,除非该行全部为空白。您也可以激活Including whitespace-only lines
以解决此问题,默认情况下该功能处于禁用状态。
去 Xcode > Preferences > Text Editing > While editing
ctrl-i
在所有现有文件上使用此+ 可以尾随空格
我使用的是Google工具箱(适用于Mac Xcode插件),它添加了“保存时纠正空白”参数,用于修剪保存时的尾随空白。我错过了emacs的很多东西。
~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
(按照Google的说明)将.xcplugin 放入,/Applications/Xcode.app/Contents/PlugIns
而必须将其放入并重新启动Xcode。
对于Xcode 8,我安装了swimat Xcode插件,用于格式化Swift代码,该插件删除了所有尾随空格和仅空白行。
通过自制酒桶安装:
brew cask install swimat
直接下载该应用程序:https :
//github.com/Jintin/Swimat/releases/download/v1.3.5/Swimat.zip
克隆extension
分支并将其存档到Mac App。
安装后,您可以通过来在Xcode中运行Swimat Editor -> Swimat -> Format
。
在Xcode 3.2中这是不可能的
编辑:
我这么简短地回答了这个问题,因为没有办法正确地做到这一点。
当然,由于它是软件,因此您可以执行任何操作:从Input Manager hack或其他代码注入方式到系统范围的键盘拦截,您可以更改本地系统以随时执行任何操作。您可以设置一个Applescript文件夹操作(arrgh)或使用启动恶魔和FSEvents工具来查看源代码文件。
您还可以在Xcode中添加几个脚本(菜单中的用户脚本,目标中的脚本阶段,组织器中的自定义操作,甚至启动脚本的可能性极小),但是所有这些解决方案都是有缺陷的,因为它涉及到用户或用户计算机上的自定义设置。
我不知道从SCM签出项目后该解决方案就可以正常工作。我认为需要此脚本和类似的自定义脚本,因此我提交了一个错误(雷达7203835,“功能:Xcode工作流程中的更多用户脚本触发器”)。我还没有收到任何反馈。
这是雷达条目的全文:
有更多的位置在Xcode中运行脚本会很有用。
例子:
预构建脚本
预构建脚本可用于构建先决条件,例如* .xcconfig文件或config.h标头。对于“运行脚本构建阶段”,这是不可能的,因为依赖项跟踪发生在触发任何构建阶段之前。发布构建脚本
与上面类似,但是在构建完成后运行(包括代码签名等)。用于附加包装,有效性检查等。SCM提交之前/之后的脚本。
检查项目完整性。之前/之后的文件保存脚本。
在保存之前检查/更改文件。例如,运行科迪美化器自定义项目操作。
我知道组织者定义任意动作的能力。但这是每个用户的功能(不是项目的一部分)。我想定义诸如构建或清理之类的操作,这些操作将显示在构建菜单中,并且是项目的一部分。
有关Xcode4的信息,请参见此处:http : //www.wezm.net/technical/2011/08/strip-trailing-whitespace-xcode-4/
很酷,Mac版的Google工具箱现在为Xcode4添加了“修剪空白”选项。
http://code.google.com/p/google-toolbox-for-mac/downloads/list
谢谢Google!