Code auto-generated by Xcode seems to have the opening brace on the same line by default:
@interface Controller : NSObject {
}
I\'d like t
I believe that "defaults write com.apple.Xcode" doesn't work on the latest versions of Xcode (7.x)
The workaround is to edit the default Code Snippets.
However, Xcode doesn't allow to modify the default Code Snippets.
In order to modify them, you can download a "Snippet Edit" program from here
The New Project and New File commands don't really generate any code; they fill in templates.
You'll need to create your own templates (probably based on Apple's) with the changes you want.
In Xcode 3.1, the stock templates are in /Developer/Library/Xcode
. You'll put your modified copies in ~/Library/Application
Support/Developer/Shared/Xcode
. Pay attention to the subfolders of those folders.
This is something I would like to see too, I don't like the "new school" way of curly braces on the same line as functions or loop control.
When editing and shuffling lines of code around, it's easier to keep everything relevant in one line. Curly braces should only define scope, they're not part of the function definition or program execution (like in if, for etc..).
Modifying all the templates is not really a good solution, but thanks for the info anyway.
For Xcode 3.x, you can use the following:
If you open up a terminal session and enter
defaults write com.apple.Xcode XCCodeSenseFormattingOptions '{ "BlockSeparator" = "\n" ; }'
it will start new blocks of code on a new line. Note that you will have to restart XCode if you have it opened in order for the new defaults to be read and used.
For Xcode 4.x to 6.x (current) I suggest you use Snippet Edit as a handy tool for editing the snippets that define the Xcode autocompletion. At the current time it's free and works great.
Read this: XCCodeSenseFormattingOptions
This document describes all the formatting options that auto-complete will use for brace and argument style. Here are mine:
XCCodeSenseFormattingOptions = {
BlockSeparator = "\\n";
PreMethodDeclSpacing = "";
};
If you want to have your preferred style in all situations, you need a combination of Laughing_Jack's answer and Peter Hosey's answer. In addition to what Peter Hosey said, you may also like to know that the Cocoa Touch file templates are in the following location. You can copy that directory to your custom templates too:
/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/File Templates/Cocoa Touch Classes/
The Xcode User Defaults give you your style when typing out code by hand, the file templates provide it when auto-generating a new class etc.