As we know, llvm is a great project, and it also include the clang compiler. And for Clang 3.4, it support dumping the format configuration file, so that people can generate the self-style format for their own project. Detail: ClangFormat and ClangFormatStyleOptions
And for now, Clang 3.4 has not been released, but we can pull its latest code and compile it.
For RHEL6.x, I remind to compile it, and for ubuntu/debian, there are already have the nightly building package(llvm apt source) , people can install it directly.
1. Ok, the compiling instructions as following, I tested it on a rhel6.x, it worked.
git clone http://llvm.org/git/llvm.git cd llvm/tools git clone http://llvm.org/git/clang.git cd ../projects git clone http://llvm.org/git/compiler-rt.git cd ../../ mkdir build cd build ../llvm/configure --prefix=~/bin/clang34 --enable-optimized --enable-targets=x86_64 make -j4 make install
2. now, add the clang3.4's binaries into your PATH.
vim ~/.bash_profile PATH=$HOME/bin/clang34/bin:$PATH export $PATH
3. If you are using vim, add the following line into your .vimrc (replace the $path-to-this-file with your real path)
map <C-K> :pyf $path-to-this-file/clang-format.py<CR> imap <C-K> <ESC>:pyf $path-to-this-file/clang-format.py<CR>i
4. Ok, finally, you can try it with clang-format or open a file with vim and using the Control+K to format your code.