Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xcode source automatic formatting

People also ask

How do I beautify code in Xcode?

Select first the text you want to format and then press Ctrl + I . Use Cmd + A first if you wish to format all text in the selected file.

How do I auto align code in Xcode?

Xcode can fix this with one shortcut: select the code you want to fix, then press Ctrl+I to reindent it.

Does Xcode have Formatter?

In the Xcode menu click [Editor] -> [Swimat] -> [Format] then the current active file will reformat. You can also create a hot-key in [Xcode] -> [Preferences..]


That's Ctrl + i.

Or for low-tech, cut and then paste. It'll reformat on paste.


Unfortunately, Xcode doesn't have anything nearly as extensive as VS or Jalopy for Eclipse available. There are SOME disparate features, such as Structure > Re-Indent as well as the auto-formatting used when you paste code into your source file. I am totally with you, though; there definitely should be something in there to help with formatting issues.


I'd like to recommend two options worth considering. Both quite new and evolving.

ClangFormat-Xcode (free) - on each cmd+s file is reformatted to specific style and saved, easy to deploy within team

An Xcode plug-in to format your code using Clang's format tools, by @travisjeffery.

With clang-format you can use Clang to format your code to styles such as LLVM, Google, Chromium, Mozilla, WebKit, or your own configuration.

Objective-Clean (paid, didn't try it yet) - app raising build errors if predefined style rules are violated - possibly quite hard to use within the team, so I didn't try it out.

With very minimal setup, you can get Xcode to use our App to enforce your rules. If you are ever caught violating one of your rules, Xcode will throw a build error and take you right to the offending line.


In xcode, you can use this shortcut to Re-indent your source code

Go to file, which has indent issues, and follow this :

  • Cmd + A to select all source codes

  • Ctrl + I to re-indent

Hope this helps.


My personal fav PrettyC wantabe is uncrustify: http://uncrustify.sourceforge.net/. It's got a few billion options however so I also suggest you download UniversalIndentGUI_macx, (also on sourceforge) a GUI someone wrote to help set the options the way you like them.

You can then add this custom user script to uncrustify the selected text:

#! /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}%%%"

You can use Command + A to select all content and next Ctrl + I to format the selected content.


I also feel xcode should have this function. So I made an extension to do it: Swimat

Simple install by brew cask install swimat preview

You can give it a try, see https://github.com/Jintin/Swimat for more information.