From 1fe056570220411bdb409c26e7580443a7bd9f4a Mon Sep 17 00:00:00 2001 From: Richard Qin Date: Tue, 21 Apr 2026 23:03:16 +0800 Subject: feat: add .clang-format and .clang-tidy configuration files for code formatting and linting --- .gitignore | 28 ++++++++++++++++++++++++++-- na/.clang-format | 35 +++++++++++++++++++++++++++++++++++ na/.clang-tidy | 23 +++++++++++++++++++++++ 3 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 na/.clang-format create mode 100644 na/.clang-tidy diff --git a/.gitignore b/.gitignore index d352f7e..13f2516 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,27 @@ -tree.txt build/ -fs.img \ No newline at end of file +na/build/ +*.o +*.d +*.elf +*.bin +*.asm +*.img +tree.txt +compile_commands.json +.clangd/ +.cache/ +.vscode/ +# !.vscode/extensions.json +# !.vscode/launch.json +# !.vscode/settings.json +*~ +*.swp +*.swo +.idea/ +cmake-build-*/ +gdb.txt +.gdb_history +vgcore.* +core +.DS_Store +Thumbs.db \ No newline at end of file diff --git a/na/.clang-format b/na/.clang-format new file mode 100644 index 0000000..141e1e2 --- /dev/null +++ b/na/.clang-format @@ -0,0 +1,35 @@ +Language: Cpp +Standard: c++23 +BasedOnStyle: Google + +# Core Formatting +IndentWidth: 4 +ColumnLimit: 100 +TabWidth: 4 +UseTab: Never + +# Pointers and References +PointerAlignment: Left +ReferenceAlignment: Left + +# Includes +SortIncludes: true + +# Alignment +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignConsecutiveMacros: true + +# Control Statements +BreakBeforeBraces: Attach +AllowShortIfStatementsOnASingleLine: false +AllowShortLoopsOnASingleLine: false +AllowShortFunctionsOnASingleLine: Empty + +# Spaces +SpaceBeforeParens: ControlStatements +SpaceInEmptyParentheses: false +SpacesInAngles: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +SpaceAfterTemplateKeyword: true diff --git a/na/.clang-tidy b/na/.clang-tidy new file mode 100644 index 0000000..1af2c5a --- /dev/null +++ b/na/.clang-tidy @@ -0,0 +1,23 @@ +Checks: > + -*, + clang-analyzer-*, + performance-*, + bugprone-*, + readability-*, + misc-*, + modernize-*, + -modernize-use-trailing-return-type, + -modernize-use-nodiscard, + -readability-identifier-length + +WarningsAsErrors: '' +HeaderFilterRegex: '.*' +FormatStyle: 'file' +CheckOptions: + readability-identifier-naming.ClassCase: PascalCase + readability-identifier-naming.StructCase: PascalCase + readability-identifier-naming.VariableCase: lower_case + readability-identifier-naming.FunctionCase: lower_case + readability-identifier-naming.GlobalVariableCase: lower_case + readability-identifier-naming.GlobalVariablePrefix: g_ + readability-identifier-naming.PrivateMemberSuffix: _ -- cgit v1.2.3