在XCode中,自动完成的第一个括号出现在同一行:
if (<#condition#>) {
<#statements#>
}
有没有办法让它看起来像这样,所以我不必每次都改变它?
if (<#condition#>)
{
<#statements#>
}
答案 0 :(得分:5)
您可以通过编辑Xcode宏文件来修改它。
将Xcode C宏文件复制到用户的Xcode宏目录:
mkdir -p~ / Library / Application Support / Developer / Shared / Xcode / Specifications&amp;&amp; \ cp /Developer/Applications/Xcode.app/Contents/PlugIns/TextMacros.xctxtmacro/Contents/Resources/C.xctxtmacro~ / Library / Application \ Support / Developer / Shared / Xcode / Specifications
我发现xml更容易阅读,并且通常会将宏文件转换为xml1
plutil -convert xml1 C.xctcmacro
编辑新样式的宏文件
cd $ SpecificationsDir /&amp;&amp; vim C.xctxtmacro
您将在第46行附近找到相关部分作为c.block标识符的一部分。如果你在$(BlockSeparator)之后添加一个断裂线,那么它将扩展到那个。
此时您可能会注意到一个名为“BlockSeparator”的有趣外观键。如果您希望此样式适用于所有语言的所有块(而for,for,switch等),则有一条更简单的路径:
defaults write com.apple.Xcode XCCodeSenseFormattingOptions '{ "BlockSeparator" = "\n" ; }'
您可以通过阅读已有的xcode宏来了解有关xcode宏的更多信息。在文档的Xcode Editor部分对它们进行了(痛苦的简短)评论。