A C++ code formatter based on Clang Format, for beautiful code with minimal effort in Sublime Text 3
- Total 4K
- Win 1K
- OS X 1K
- Linux 1K
|Mar 29||Mar 28||Mar 27||Mar 26||Mar 25||Mar 24||Mar 23||Mar 22||Mar 21||Mar 20||Mar 19||Mar 18||Mar 17||Mar 16||Mar 15||Mar 14||Mar 13||Mar 12||Mar 11||Mar 10||Mar 9||Mar 8||Mar 7||Mar 6||Mar 5||Mar 4||Mar 3||Mar 2||Mar 1||Feb 28||Feb 27||Feb 26||Feb 25||Feb 24||Feb 23||Feb 22||Feb 21||Feb 20||Feb 19||Feb 18||Feb 17||Feb 16||Feb 15||Feb 14||Feb 13||Feb 12|
What it does
Clang-format is a tool for re-formatting C++, built on LLVM. This is a package that allows you to run it easily from within Sublime Text.
In this package, we provide an alternative wrapper around clang-format for use within Sublime Text 3. Whilst LLVM does provide a very simple plugin to work with Sublime Text already: https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/clang-format-sublime.py, it doesn't really exploit any of the Sublime Text package functionality. We add new features such as customising the style from a settings file, selecting styles using the Command Palette, and easier installation.
- Install this package through Package Control in the usual way.
- Get the clang-format binary for your platform. All binaries provided below are from the LLVM 3.6 release. They are for 64-bit platforms only:
If you prefer, you can download the entire LLVM toolchain
and extract the
clang-format binary yourself. Just extract the
file and copy
bin/clang-format into your PATH (e.g.
- Set the path to the clang-format binaries. You can do this from within Sublime
Text by choosing
Clang Format - Set Path from the command palette. Hint:
the path should look something like this
If clang-format is in your system path, you shouldn't need to do anything.
- Default shortcut is
super+option+aon OSX and
ctrl+option+aotherwise. This will apply clang-format to the selection.
- From the command palette, you can select the formatting type by using
Clang Format: Select Style. You will find the small number of defaults, and also a new 'Custom' entry. Selecting this entry allows you to customise the style through a settings file. You can access it from the main menu, under
Package Settings. In this file you can add custom rules, such as
Allmenstyle braces, and different indents. For examples see http://clang.llvm.org/docs/ClangFormatStyleOptions.html.
- Settings for the 'Custom' format and others are available through the Sublime Text preferences.
- It is possible to enable the formatter on every save to a C/C++ file. To change settings on a per-package basis, check out the package “Project-Specific”.
If You Liked This
If you like this plugin, maybe you'll like my other plugin, iOpener. It makes opening files significantly easier and will feel completely natural if you're used to using a shell. Otherwise, why not pop over and star this repo on GitHub?
Thanks to the LLVM project for doing the hard work, including writing clang format, and also the original Sublime Text plugin on which this package is based.
Why not go and watch the video that got me interested in clang-format in the first place?