From 05454c0a228c81b37f4718433bbd57578a2a44a6 Mon Sep 17 00:00:00 2001 From: Benedikt Peetz Date: Tue, 2 Apr 2024 14:45:09 +0200 Subject: fix(treefmt.nix): Only ignore the manual template in this repo Otherwise, the ignore-string gets replaced with the real name of the manual, and it stays ignored. --- common/files/treefmt.nix | 1 - treefmt.nix | 75 +++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 74 insertions(+), 2 deletions(-) mode change 120000 => 100644 treefmt.nix diff --git a/common/files/treefmt.nix b/common/files/treefmt.nix index 540a6ca..1cbab40 100644 --- a/common/files/treefmt.nix +++ b/common/files/treefmt.nix @@ -59,7 +59,6 @@ treefmt-nix.lib.evalModule pkgs ( global.excludes = [ "CHANGELOG.md" "NEWS.md" - "%INIT_APPLICATION_NAME.1.md" ]; formatter = { clang-format = { diff --git a/treefmt.nix b/treefmt.nix deleted file mode 120000 index 3231241..0000000 --- a/treefmt.nix +++ /dev/null @@ -1 +0,0 @@ -common/files/treefmt.nix \ No newline at end of file diff --git a/treefmt.nix b/treefmt.nix new file mode 100644 index 0000000..540a6ca --- /dev/null +++ b/treefmt.nix @@ -0,0 +1,74 @@ +{ + treefmt-nix, + pkgs, +}: +treefmt-nix.lib.evalModule pkgs ( + {pkgs, ...}: { + # Used to find the project root + projectRootFile = "flake.nix"; + + programs = { + alejandra.enable = true; + rustfmt.enable = true; + clang-format.enable = true; + mdformat.enable = true; + shfmt = { + enable = true; + indent_size = 4; + }; + shellcheck.enable = true; + prettier = { + settings = { + arrowParens = "always"; + bracketSameLine = false; + bracketSpacing = true; + editorconfig = true; + embeddedLanguageFormatting = "auto"; + endOfLine = "lf"; + # experimentalTernaries = false; + htmlWhitespaceSensitivity = "css"; + insertPragma = false; + jsxSingleQuote = true; + printWidth = 80; + proseWrap = "always"; + quoteProps = "consistent"; + requirePragma = false; + semi = true; + singleAttributePerLine = true; + singleQuote = true; + trailingComma = "all"; + useTabs = false; + vueIndentScriptAndStyle = false; + + tabWidth = 4; + overrides = { + files = ["*.js"]; + options.tabwidth = 2; + }; + }; + }; + stylua.enable = true; + ruff = { + enable = true; + format = true; + }; + taplo.enable = true; + }; + + settings = { + global.excludes = [ + "CHANGELOG.md" + "NEWS.md" + "%INIT_APPLICATION_NAME.1.md" + ]; + formatter = { + clang-format = { + options = ["--style" "GNU"]; + }; + shfmt = { + includes = ["*.bash"]; + }; + }; + }; + } +) -- cgit 1.4.1