modules/home/programs/editor: some lsp work
Signed-off-by: unexplrd <unexplrd@linerds.us>
This commit is contained in:
@ -15,11 +15,11 @@ in {
|
||||
programs.zed-editor = {
|
||||
enable = true;
|
||||
extensions = [
|
||||
"nix"
|
||||
"bash"
|
||||
"fsharp"
|
||||
# "latex"
|
||||
"typst"
|
||||
"justfile"
|
||||
"nix"
|
||||
"typst"
|
||||
];
|
||||
userSettings = {
|
||||
vim_mode = true;
|
||||
@ -35,30 +35,29 @@ in {
|
||||
};
|
||||
"Nix" = {
|
||||
language-servers = [
|
||||
"!nil"
|
||||
"nixd"
|
||||
"nil"
|
||||
];
|
||||
formatter = {
|
||||
external.command = getExe pkgs.alejandra;
|
||||
};
|
||||
};
|
||||
"Rust" = {
|
||||
formatter = {
|
||||
external = {
|
||||
command = getExe pkgs.rustfmt;
|
||||
arguments = ["--edition" "2021"];
|
||||
};
|
||||
};
|
||||
# formatter = {
|
||||
# external.command = getExe pkgs.alejandra;
|
||||
# };
|
||||
};
|
||||
# "Rust" = {
|
||||
# formatter = {
|
||||
# external = {
|
||||
# command = getExe pkgs.rustfmt;
|
||||
# arguments = ["--edition" "2021"];
|
||||
# };
|
||||
# };
|
||||
# };
|
||||
"typst" = {
|
||||
language-servers = ["tinymist"];
|
||||
format_on_save = "on";
|
||||
formatter = {
|
||||
external = {
|
||||
command = getExe pkgs.typstyle;
|
||||
arguments = ["-i" "{buffer_path}"];
|
||||
};
|
||||
};
|
||||
# formatter = {
|
||||
# external = {
|
||||
# command = getExe pkgs.typstyle;
|
||||
# arguments = ["-i" "{buffer_path}"];
|
||||
# };
|
||||
# };
|
||||
};
|
||||
"Python" = {
|
||||
format_on_save = "on";
|
||||
@ -73,6 +72,15 @@ in {
|
||||
};
|
||||
};
|
||||
lsp = {
|
||||
bash-language-server = {
|
||||
binary = {
|
||||
path = getExe pkgs.bash-language-server;
|
||||
env = {
|
||||
"SHELLCHECK_PATH" = getExe pkgs.shellcheck;
|
||||
"SHFMT_PATH" = getExe pkgs.shfmt;
|
||||
};
|
||||
};
|
||||
};
|
||||
fsautocomplete = {
|
||||
binary = {
|
||||
path = getExe pkgs.fsautocomplete;
|
||||
@ -91,32 +99,32 @@ in {
|
||||
path = "${pkgs.clang-tools}/bin/clangd";
|
||||
};
|
||||
};
|
||||
rust-analyzer = {
|
||||
binary = {
|
||||
arguments = [];
|
||||
path = getExe pkgs.rust-analyzer;
|
||||
};
|
||||
};
|
||||
# rust-analyzer = {
|
||||
# binary = {
|
||||
# arguments = [];
|
||||
# path = getExe pkgs.rust-analyzer;
|
||||
# };
|
||||
# };
|
||||
ruff = {
|
||||
binary = {
|
||||
arguments = [];
|
||||
path = getExe pkgs.ruff;
|
||||
};
|
||||
};
|
||||
nixd = {
|
||||
binary = {
|
||||
arguments = [];
|
||||
path = getExe pkgs.nixd;
|
||||
};
|
||||
initialization_options.formatting.command = [(getExe pkgs.alejandra)];
|
||||
};
|
||||
# nil = {
|
||||
# nixd = {
|
||||
# binary = {
|
||||
# arguments = [];
|
||||
# path = getExe pkgs.nil;
|
||||
# path = getExe pkgs.nixd;
|
||||
# };
|
||||
# initialization_options.formatting.command = [(getExe pkgs.alejandra)];
|
||||
# };
|
||||
nil = {
|
||||
binary = {
|
||||
arguments = [];
|
||||
path = getExe pkgs.nil;
|
||||
};
|
||||
settings.formatting.command = [(getExe pkgs.alejandra)];
|
||||
};
|
||||
# texlab = {
|
||||
# binary = {
|
||||
# arguments = [];
|
||||
@ -129,6 +137,16 @@ in {
|
||||
path = getExe pkgs.tinymist;
|
||||
};
|
||||
};
|
||||
vscode-json-language-server = {
|
||||
binary = {
|
||||
path = getExe pkgs.nodePackages.vscode-json-languageserver;
|
||||
};
|
||||
};
|
||||
yaml-language-server = {
|
||||
binary = {
|
||||
path = getExe pkgs.yaml-language-server;
|
||||
};
|
||||
};
|
||||
};
|
||||
telemetry = {
|
||||
diagnostics = false;
|
||||
|
Reference in New Issue
Block a user