feat(jj): configure jj fix with formatters from nvim
All checks were successful
/ check (push) Successful in 9s
/ check-renovaterc (push) Successful in 3s
/ build-packages (push) Successful in 15s
/ build-vm (push) Successful in 2s
/ report-size (push) Successful in 4s

Export nvim formatters as `jj fix` tools.
This commit is contained in:
Jalil David Salamé Messina 2025-05-07 16:36:38 +02:00
parent 298a957589
commit 223beef341
Signed by: jalil
GPG key ID: F016B9E770737A0B

View file

@ -6,6 +6,64 @@
}:
let
cfg = config.jhome.dev;
nvimFormatters = builtins.mapAttrs (
name: value: value.command
) config.programs.nixvim.plugins.conform-nvim.settings.formatters;
jjFormatters =
let
ext = extension: "glob:'**/*.${extension}'";
in
{
fish = cmd: {
command = [ cmd ];
patterns = [ (ext "fish") ];
};
nixfmt = cmd: {
command = [
cmd
"--filename=$path"
];
patterns = [ (ext "nix") ];
};
shfmt = cmd: {
command = [
cmd
"--filename"
"$path"
"-"
];
patterns = [
(ext "sh")
(ext "bash")
];
};
stylua = cmd: {
command = [
cmd
"--stdin-filepath=$path"
"-"
];
patterns = [ (ext "lua") ];
};
taplo = cmd: {
command = [
cmd
"--stdin-filepath=$path"
"-"
];
patterns = [ (ext "toml") ];
};
yamlfmt = cmd: {
command = [
cmd
"-in"
];
patterns = [
(ext "yaml")
(ext "yml")
];
};
};
in
{
config =
@ -68,6 +126,7 @@ in
package = pkgs.unstable.jujutsu;
settings = {
ui.pager = "bat";
fix.tools = builtins.mapAttrs (tool: cmd: jjFormatters.${tool} cmd) nvimFormatters;
# mimic git commit --verbose by adding a diff
templates.draft_commit_description = ''
concat(