neovim-flake/config/plugins/formatters.nix

53 lines
965 B
Nix
Raw Normal View History

# Code formatters
{pkgs, ...}: {
extraPackages = with pkgs; [
2024-09-02 18:25:15 -07:00
# TS/JS, Markdown, TOML, JSON, etc
nodePackages.prettier
# Rust
rustfmt
# Nix
2024-09-02 18:25:15 -07:00
nixfmt-rfc-style
# Python
black
# Lua
stylua
# Haskell
haskellPackages.fourmolu
# Misc
2024-09-02 18:25:15 -07:00
# codespell
];
plugins.conform-nvim = {
enable = true;
settings = {
format_on_save = {
timeoutMs = 500;
lspFallback = true;
};
formatters_by_ft = {
lua = ["stylua"];
python = ["black"];
2024-09-02 18:25:15 -07:00
nix = ["nixfmt"];
svelte = ["prettier"];
rust = ["rustfmt"];
haskell = ["fourmolu"];
2024-09-02 18:25:15 -07:00
toml = ["prettier"];
json = ["prettier"];
markdown = ["prettier"];
yaml = ["prettier"];
html = ["prettier"];
javascript = ["prettier"];
typescript = ["prettier"];
# "*" = ["codespell"];
"_" = ["trim_whitespace"];
};
};
};
}