Code style and formatting

We aim for a consistent and readable coding style. You do not need to worry about styling if you use the right tools we present in the following. Please also enable pre-commit in your repository to have these check run automatically for you on every commit!

C++

Use clang-format. It can be added to be automatically run on save in your editor / IDE:

The current style is defined in .clang-format.

Python

Use black. It can be added to be automatically run on save in your editor / IDE:

black is also run by our pre-commit-hooks. To run manually:

pre-commit run black --all-files

CMake

Use cmake-format. It can be added to be automatically run on save in your editor / IDE:

The current style is defined in .cmake-format.yaml.

On installation make sure to install with the yaml option:

pip install cmakelang[YAML]

Build targets

You can run clang-format and cmake-format on the OGS code base by building the following targets:

Language Shows formatting Applies formatting
C++ clang-format fix-clang-format
CMake cmake-format fix-cmake-format

This article was written by Lars Bilke. If you are missing something or you find an error please let us know. Generated with Hugo 0.79.0. Last revision: August 26, 2021
Commit: [CMake] Disable -march flag on Apple ARM processors. 93c389cefe  | Edit this page on