[Development] clang-format
Frederik Gladhorn
frederik.gladhorn at qt.io
Mon Jun 18 11:04:33 CEST 2018
Hi all,
as part of the closing ceremony of this year's Qt Contributors' Summit we
agreed to start using clang-format, to have fewer discussions around coding
style and rather focus on the actual code.
I have not yet thought about all angles, how to best implement this, here are
some notes:
We have a clang-format file in qtrepotools. You can use it today, simply make
sure it's in any parent directory of the files you are editing. I'd actually
propose simply moving this into the root directory of qt5.git.
https://code.qt.io/cgit/qt/qtrepotools.git/tree/config/_clang-format
If you want to clean one file:
clang-format -i myfile.cpp/h
To clean a commit (only modifies the working tree):
git clang-format
Getting clang-format seems easy enough:
On macOS: brew install clang-format
Linux: install clang-format
Windows: it comes with normal clang
Then there is the tooling/workflow perspective. Creator and other IDEs have
support (you may need to enable the beautifier plugin in about plugins).
I imagine we add this to the sanity bot ("git clang-format --diff -q" should
return empty, otherwise post a message).
Local hooks are basically the same, any ideas how to best set up the git hooks
appreciated :)
And then there is the big question when we run it once over the entire
codebase.
Cheers,
Frederik
More information about the Development
mailing list