默认情况下,Xcode自动生成的代码似乎在同一行上有左括号:
@interface Controller : NSObject { }
我想在自己的线上打开支架,像这样:
@interface Controller : NSObject { }
这通常适用于Xcode自动生成的任何方法/类.在Xcode首选项中,我将"Indent solo {by"设置为0:
我怎样才能解决这个问题?
对于Xcode 3.x,您可以使用以下内容:如果打开终端会话并输入
defaults write com.apple.Xcode XCCodeSenseFormattingOptions '{ "BlockSeparator" = "\n" ; }'
它将在新行上启动新的代码块.请注意,如果打开XCode,则必须重新启动XCode才能读取和使用新的默认值.
对于Xcode 4.x到6.x(当前),我建议您使用Snippet Edit作为一个方便的工具来编辑定义Xcode自动完成的片段.目前,它是免费的,效果很好.
在新建项目和新建文件命令并不真正产生任何代码 ; 他们填写模板.
您需要根据需要创建自己的模板(可能基于Apple的模板).
在Xcode 3.1中,库存模板位于/Developer/Library/Xcode
.你将修改后的副本放入~/Library/Application
Support/Developer/Shared/Xcode
.请注意这些文件夹的子文件夹.
阅读:XCCodeSenseFormattingOptions
本文档描述了自动完成将用于大括号和参数样式的所有格式选项.这是我的:
XCCodeSenseFormattingOptions = { BlockSeparator = "\\n"; PreMethodDeclSpacing = ""; };
这也是我想要看到的,我不喜欢与函数或循环控制在同一行上的"新学校"花括号方式.
编辑和改组代码行时,更容易将所有相关内容保存在一行中.大括号应该只定义范围,它们不是函数定义或程序执行的一部分(如if,for etc.等).
修改所有模板并不是一个很好的解决方案,但无论如何都要感谢信息.