{ pkgs, treefmt }: { helix = { language = { name = "markdown"; language-servers = [ "marksman" "ltex-ls-plus" "vale-ls" "typos" ]; formatter = { command = "${treefmt}/bin/treefmt"; args = [ "--stdin" ".md" "--quiet" ]; }; auto-format = true; }; language-server = { marksman.command = "${pkgs.marksman}/bin/marksman"; }; }; treefmt.programs.dprint = { enable = true; settings = { plugins = (pkgs.dprint-plugins.getPluginList (plugins: with plugins; [ dprint-plugin-markdown ])); markdown = { lineWidth = 80; textWrap = "always"; }; }; includes = [ "*.md" ]; }; pre-commit = { markdownlint.enable = true; vale.enable = true; }; }