Go to file
Gábor Librecz 52205b2192
Fixed scrolling when using format on save (#93)
2020-11-03 21:36:30 -05:00
ClangFormat Fixed scrolling when using format on save (#93) 2020-11-03 21:36:30 -05:00
ClangFormat.xcodeproj Added shared schema and also ability to debug ClangFormat-Xcode in Xcode 2015-10-07 00:18:19 -07:00
README Update README and screenshots to reflect current menu titles 2014-03-07 09:27:00 +01:00
bin Update clang-format binary to v5.0 (March 2017) (#128) 2017-10-26 14:03:16 -04:00
.clang-format Update to latest clang-format, and disable sorting of comments in local project formatting options 2015-12-02 14:28:08 +11:00
.gitignore gitignore updated for project.xcworkspace 2015-09-14 10:52:20 +08:00
LICENSE Add LICENSE (close #27) 2014-05-06 13:09:07 -05:00
README.md Update clang-format binary to v5.0 (March 2017) (#128) 2017-10-26 14:03:16 -04:00

README.md

ClangFormat-Xcode

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.

usage

demo

Installation:

⚠️ From XCode 8+, unsigning is required in order to use community-made plugins. Check https://github.com/inket/update_xcode_plugins for more information.

Install via Alcatraz.

OR

Clone this repo, build and run ClangFormat, restart Xcode.

Removing ClangFormat

To remove ClangFormat, run the following in your terminal:

rm -r "~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/ClangFormat.xcplugin"

Or just find the same file and move it to the trash. You'll need to restart Xcode after deleting the plugin.

Usage:

Format on save

I.e., you press command-s and the file is formatted and wrote to disk.

In the menu, open Edit > Clang Format > Click Format on save (a checkmark appears in this menu item indicicating that the feature is active.)

Assign keyboard shortcuts

You can assign your own keyboard shortcuts like so:

  • Open the System Preferences > Keyboard > Shortcuts > App Shortcuts > Click +
  • Set the application to be Xcode
  • Set the menu title to an action title, e.g. "Format File in Focus"
  • Set your shortcut

In this example, we'll format the active file when control-i is pressed.

assign keyboard shortcut

Using your own style configuration

By using Clang Format > File in the plug-in menu, Clang will look for the nearest .clang-format file from the input file. Most likely, you'll have a .clang-format file at the root of your project.

Here are the options for .clang-format and how they're configured. Here's a cool interactive website to help you make your .clang-format file.

If one of the built-in styles is close to what you want, you can bootstrap your own configuration with:

./bin/clang-format -style=llvm -dump-config > .clang-format

For example, this .clang-format is similar to the Linux Kernel style:

BasedOnStyle: LLVM
IndentWidth: 8
UseTab: Always
BreakBeforeBraces: Linux
AllowShortIfStatementsOnASingleLine: false
IndentCaseLabels: false

And this is similar to Visual Studio's style:

UseTab: Never
IndentWidth: 4
BreakBeforeBraces: Allman
AllowShortIfStatementsOnASingleLine: false
IndentCaseLabels: false
ColumnLimit: 0