XCode 3.2:更改默认的"Code Sense"缩进和空格

rlu*_*uba 11 macros xcode indentation osx-snow-leopard xcode3.2

我正在使用XCode 3.2(在"Snow Leopard"上),它仍然具有这个漂亮的"文本宏"自动完成功能(例如,如果你键入if它将扩展到if (<#condition#>) { <#statements#> }).这些宏也可通过"编辑 - >插入文本宏"获得.

不幸的是,默认模板与我心爱的缩进和空白样式不匹配,所以我想修改它们.

根据这个稍微过时的StackOverflow线程,相应的定义应该位于/Developer/Library/Xcode/Specifications/{C,HTML}.xctxtmacro但我找不到任何使用Snow Leopard和XCode 3.2的东西(不确定哪个负责).

有没有人注意到Apple定义的Text Macros现在在哪里?

rlu*_*uba 21

我系统上唯一的**.xctxtmacro*文件位于XCode.app包中.快速查看定义后,我发现了一种完全不同的方式来调整所有预定义宏的格式:

您只需设置XCCodeSenseFormattingOptions用户默认值即可修改所有宏中的默认换行符和其他空格!

例如,宏"if-else"默认情况下如下所示:

if (<#condition#>) {
    <#statements#>
} else {
    <#statements#>
}
Run Code Online (Sandbox Code Playgroud)

执行命令后

defaults write com.apple.Xcode XCCodeSenseFormattingOptions
-dict PreExpressionsSpacing "" BlockSeparator "\n" PostBlockSeparator "\n"
Run Code Online (Sandbox Code Playgroud)

它看起来像这样(我更喜欢):

if(<#condition#>)
{
    <#statements#>
}
else
{
    <#statements#>
}
Run Code Online (Sandbox Code Playgroud)