📝 clang-format on Electron C++ code.
This commit is contained in:
parent
a846088eac
commit
0d930b65f1
3 changed files with 38 additions and 2 deletions
|
@ -88,6 +88,7 @@ an issue:
|
|||
## Development
|
||||
|
||||
* [Coding Style](development/coding-style.md)
|
||||
* [Using clang-format on Electron C++ Code](development/clang-format.md)
|
||||
* [Source Code Directory Structure](development/source-code-directory-structure.md)
|
||||
* [Technical Differences to NW.js (formerly node-webkit)](development/atom-shell-vs-node-webkit.md)
|
||||
* [Build System Overview](development/build-system-overview.md)
|
||||
|
|
34
docs/development/clang-format.md
Normal file
34
docs/development/clang-format.md
Normal file
|
@ -0,0 +1,34 @@
|
|||
# Using clang-format on Electron C++ Code
|
||||
|
||||
[`clang-format`](http://clang.llvm.org/docs/ClangFormat.html) is a tool to
|
||||
automatically format C/C++/Objective-C code, so that developers don't need to
|
||||
concern about style issues during code review.
|
||||
|
||||
It is highly recommended to format your changed C++ code before sending to
|
||||
code review, which will save your and reviews' time.
|
||||
|
||||
To automatically format a file according to Electron C++ code style, simply run
|
||||
`clang-format path/to/electron/file.cc`. It should work on macOS/Linux/Windows.
|
||||
|
||||
The workflow to format your changed code:
|
||||
|
||||
1. Do your change in electron repository.
|
||||
2. Run `git add your_changed_file.cc`.
|
||||
3. Run `git-clang-format`, and you will probably see modifications in
|
||||
your_changed_file.cc, these modifications are generated from `clang-format`.
|
||||
4. Run `git add your_changed_file.cc`, and commit your change.
|
||||
5. Now it is ready to send a pull request.
|
||||
|
||||
If you want to format the changed code on your latest git commit (HEAD), you can
|
||||
run `git-clang-format HEAD~1`. See `git-clang-format -h` for more details.
|
||||
|
||||
You can install `clang-format` and `git-clang-format` via
|
||||
`npm install -g clang-format`.
|
||||
|
||||
## Editor integration
|
||||
|
||||
It is useful to integrate `clang-format` tool in your favorite editors.
|
||||
For further guidance on setting up editor integration, see specific pages:
|
||||
|
||||
* [Atom](https://atom.io/packages/clang-format)
|
||||
* [Vim & Emacs](http://clang.llvm.org/docs/ClangFormat.html#vim-integration)
|
|
@ -8,8 +8,9 @@ You can run `npm run lint` to show any style issues detected by `cpplint` and
|
|||
## C++ and Python
|
||||
|
||||
For C++ and Python, we follow Chromium's [Coding
|
||||
Style](http://www.chromium.org/developers/coding-style). There is also a
|
||||
script `script/cpplint.py` to check whether all files conform.
|
||||
Style](http://www.chromium.org/developers/coding-style). You can use
|
||||
[clang-format](clang-format.md) to format the C++ code automatically. There is
|
||||
also a script `script/cpplint.py` to check whether all files conform.
|
||||
|
||||
The Python version we are using now is Python 2.7.
|
||||
|
||||
|
|
Loading…
Reference in a new issue