61 lines
1.3 KiB
Nix
61 lines
1.3 KiB
Nix
inputs @ { pkgs, dotnet, rust, ... }:
|
|
let
|
|
data = {
|
|
formatter = {
|
|
nix = {
|
|
command = "${pkgs.nixpkgs-fmt}/bin/nixpkgs-fmt";
|
|
includes = [ "*.nix" ];
|
|
};
|
|
|
|
prettier = {
|
|
command = "${pkgs.nodePackages.prettier}/bin/prettier";
|
|
options = [ "--write" ];
|
|
includes = [
|
|
"*.css"
|
|
"*.html"
|
|
"*.js"
|
|
"*.json"
|
|
"*.jsx"
|
|
"*.md"
|
|
"*.mdx"
|
|
"*.mjs"
|
|
"*.scss"
|
|
"*.ts"
|
|
"*.yaml"
|
|
];
|
|
excludes = [ "**.min.js" ];
|
|
};
|
|
}
|
|
// pkgs.lib.attrsets.optionalAttrs dotnet.enable {
|
|
csharpier = {
|
|
command = "${pkgs.csharpier}/bin/dotnet-csharpier";
|
|
includes = [ "*.cs" ];
|
|
};
|
|
}
|
|
// pkgs.lib.attrsets.optionalAttrs dotnet.format {
|
|
dotnet-format-style = {
|
|
command = "dotnet";
|
|
options = [ "format", "style", "--include" ];
|
|
includes = [ "*.cs" ];
|
|
};
|
|
|
|
dotnet-format-analyzers = {
|
|
command = "dotnet";
|
|
options = [ "format", "analyzers", "--include" ];
|
|
includes = [ "*.cs" ];
|
|
};
|
|
}
|
|
// pkgs.lib.attrsets.optionalAttrs rust.enable {
|
|
rust = {
|
|
command = "rustfmt";
|
|
options = [ "--edition" "2021" ];
|
|
includes = [ "*.rs" ];
|
|
};
|
|
};
|
|
};
|
|
in
|
|
{
|
|
inherit data;
|
|
output = "treefmt.toml";
|
|
}
|