diff --git a/.clang-format b/.clang-format new file mode 100644 index 00000000..4dc17e9b --- /dev/null +++ b/.clang-format @@ -0,0 +1,4 @@ +# https://clang.llvm.org/docs/ClangFormatStyleOptions.html +BasedOnStyle: Google +IndentWidth: 4 +UseTab: Never diff --git a/scripts/format.py b/scripts/format.py new file mode 100644 index 00000000..6975b440 --- /dev/null +++ b/scripts/format.py @@ -0,0 +1,21 @@ +import os +import subprocess + +def get_all_files(root: str): + for path, _, files in os.walk(root): + for file in files: + fullpath = os.path.join(path, file) + # ignore some files + if fullpath.startswith('include/pybind11'): + continue + if file.startswith('_'): + continue + if not file.endswith('.cpp') and not file.endswith('.h') and not file.endswith('.hpp'): + continue + yield fullpath + +if __name__ == '__main__': + files = list(get_all_files('src')) + files.extend(get_all_files('src2')) + files.extend(get_all_files('include')) + subprocess.run(['clang-format-15', '-i'] + files, check=True)