feat: updated helix languages

This commit is contained in:
Nick 2025-10-03 21:13:17 -05:00
parent 5415bd0e5d
commit 4aa838250b
2 changed files with 128 additions and 10 deletions

View file

@ -1,14 +1,20 @@
{
lib,
pkgs,
flake,
...
}:
{ {
language = [ language = [
{ {
auto-format = true; auto-format = true;
formatter.command = "nixfmt"; formatter.command = "shfmt";
name = "nix"; name = "bash";
} }
{ {
auto-format = true; auto-format = true;
formatter.command = "cssfmt"; formatter.command = lib.getExe pkgs.haskellPackages.cabal-fmt;
name = "css"; name = "cabal";
} }
{ {
auto-format = true; auto-format = true;
@ -19,19 +25,116 @@
} }
{ {
auto-format = true; auto-format = true;
formatter.command = "haskell"; formatter.command = lib.getExe pkgs.fprettify;
name = "fortran";
roots = [ "flake.nix" ];
}
{
auto-format = true;
name = "haskell"; name = "haskell";
} }
{ {
auto-format = true; auto-format = true;
formatter.command = "yamlfmt"; formatter = {
name = "yaml"; args = [ "-" ];
command = lib.getExe pkgs.google-java-format;
};
language-servers = [ pkgs.jdt-language-server.pname ];
name = "java";
}
{
formatter = {
args = [
"--dump"
"--unstable"
];
command = lib.getExe pkgs.just;
};
language-servers = [ pkgs.just-lsp.pname ];
name = "just";
}
{
name = "markdown";
language-servers = [ "vale" ];
} }
{ {
auto-format = true; auto-format = true;
formatter.command = "yuck"; formatter.command = "nixfmt";
name = "yuck"; language-servers = [ "nil" ];
name = "nix";
} }
# {
# auto-format = true;
# formatter = {
# args = [ "-s" ];
# command = "nufmt";
# };
# name = "nu";
# roots = [ "flake.nix" ];
# }
{
auto-format = true;
formatter = {
args = [
"--stdin"
"foo.rb"
"-a"
"--stderr"
"--fail-level"
"fatal"
"--server"
];
command = "rubocop";
};
name = "ruby";
}
{
auto-format = true;
name = "rust";
}
{
file-types = [ "txt" ];
language-servers = [ "vale" ];
name = "text";
scope = "text.plain";
}
{
auto-format = true;
formatter = {
args = [
"format"
"-"
];
command = "taplo";
};
name = "toml";
roots = [ "flake.nix" ];
}
{
auto-format = true;
language-id = "typescriptreact"; # This is important for Motion Canvas.
name = "tsx";
}
{
auto-format = true;
name = "typescript";
}
{
auto-format = true;
formatter.command = "typstyle";
language-servers = [ "tinymist" ];
name = "typst";
roots = [ "flake.nix" ];
}
{
auto-format = true;
formatter = {
args = [ "-in" ];
command = "yamlfmt";
};
name = "yaml";
}
]; ];
language-server = { language-server = {
elm-language-server = { elm-language-server = {
@ -40,5 +143,19 @@
elmReviewDiagnostics = "warning"; elmReviewDiagnostics = "warning";
}; };
}; };
"${pkgs.jdt-language-server.pname}" = {
command = lib.getExe pkgs.jdt-language-server;
};
just-lsp = {
command = lib.getExe pkgs.just-lsp;
};
tinymist = {
command = lib.getExe pkgs.tinymist;
config.exportPdf = "onType";
};
vale = {
command = lib.getExe pkgs.vale-ls;
};
}; };
} }

View file

@ -1,6 +1,7 @@
{ {
pkgs, pkgs,
flake, flake,
lib,
... ...
}: }:
{ {
@ -8,7 +9,7 @@
let let
configPath = ./config; configPath = ./config;
settingsPath = import (configPath + /settings.nix); settingsPath = import (configPath + /settings.nix);
languagesPath = import (configPath + /languages.nix); languagesPath = import (configPath + /languages.nix) { inherit pkgs lib flake; };
in in
{ {
enable = true; enable = true;