作为一名C#开发人员,我已经高度依赖于Visual Studio 2008中的自动格式化.具体来说,我将使用CTRL+ K,D键盘快捷键在我的草率实现后强制恢复形状.
我现在正在尝试学习Objective-C并且缺少Xcode中的某些功能,但可能没有一个像格式化快捷方式那样痛苦.我的谷歌搜索没有内置任何东西,但似乎有一些黑客攻击.我是否遗漏了某些内容,或者Xcode本身不存在此功能?
那是Ctrl+ i.
或者用于低科技,切割然后粘贴.它会重新格式化粘贴.
不幸的是,Xcode没有像VS或Jalopy那样广泛的Eclipse版本.有一些不同的功能,例如将Structure > Re-Indent
代码粘贴到源文件时使用的自动格式化.不过,我完全和你在一起; 肯定应该有一些东西来帮助格式化问题.
我想推荐两个值得考虑的选择.两者都是新的和不断发展的.
ClangFormat-Xcode(免费) - 在每个cmd + s文件上重新格式化为特定样式并保存,易于在团队内部署
一个Xcode插件,使用@travisjeffery的Clang格式工具格式化您的代码.
使用clang格式,您可以使用Clang将代码格式化为LLVM,Google,Chromium,Mozilla,WebKit或您自己的配置等样式.
目标 - 清洁(付费,尚未尝试) - 如果违反了预定义的样式规则,应用程序会引发构建错误 - 可能在团队中很难使用,所以我没有尝试过.
只需极少的设置,您就可以让Xcode使用我们的应用程序来执行您的规则.如果您发现违反了您的某个规则,Xcode将抛出构建错误并将您带到违规行.
在xcode中,您可以使用此快捷方式格式化(重新缩进)源代码
Command+ A选择所有源代码
Ctrl+ I重新缩进
希望这可以帮助.
我个人喜欢的PrettyC wantabe是不开心的:http://uncrustify.sourceforge.net/ .它有几十亿个选项,所以我建议你下载UniversalIndentGUI_macx,(也在sourceforge上)一个人写的GUI,帮助你按照自己喜欢的方式设置选项.
然后,您可以添加此自定义用户脚本以取消选中所选文本:
#! /bin/sh # # uncrustify! echo -n "%%%{PBXSelection}%%%" /usr/local/bin/uncrustify -q -c /usr/local/share/uncrustify/geo_uncrustify.cfg -l oc+ <&0 echo -n "%%%{PBXSelection}%%%"
您可以使用Command+ A选择所有内容,然后使用Ctrl+ I来格式化所选内容.
Cmd A + Ctrl I
或者Cmd A然后右键单击.转到结构 - >重新缩进
我也觉得xcode应该有这个功能.所以我做了一个扩展:Swimat
安装简单 brew cask install swimat
您可以尝试一下,有关详细信息,请参阅https://github.com/Jintin/Swimat.
考虑购买自己的AppCode许可证,这是一个智能的Objective-C IDE,可以帮助iOS/OS X开发人员.AppCode与Xcode完全兼容,但在增加强大功能方面超越了Xcode .
AppCode 来自JetBrains的Intellij IDEA IDE 的Objective-C变体.他们也是流行的ReSharper扩展到Visual Studio的作者,其主要目的似乎是为微软产品带来一丝IDEA体验的绝望尝试.
AppCode正在使用自己的代码分析器,它提供了接近完美的重构和代码导航支持.还有一种能够重新缩进并完全重新格式化代码的能力(尽管在困难的情况下我仍然会遗漏几个格式设置,但大多数情况下效果很好).
当然,您可以尝试试用版.