diff --git a/docs/release-notes/rl-0.8.md b/docs/release-notes/rl-0.8.md index b307dd05..1c7f32ba 100644 --- a/docs/release-notes/rl-0.8.md +++ b/docs/release-notes/rl-0.8.md @@ -608,3 +608,6 @@ - Enable `languages.ts.format` for `.js` files - Add [emmet-ls] to `html.lsp.servers` +- Add [emmet-ls] to `css.lsp.servers` +- Add [emmet-ls] to `ts.lsp.servers` +- Add [emmet-ls] to html default servers diff --git a/modules/plugins/languages/css.nix b/modules/plugins/languages/css.nix index 28e94151..aa85af8a 100644 --- a/modules/plugins/languages/css.nix +++ b/modules/plugins/languages/css.nix @@ -28,6 +28,11 @@ less.validate = true; }; }; + emmet-ls = { + cmd = [(getExe pkgs.emmet-ls) "--stdio"]; + filetypes = ["css" "scss" "less"]; + root_markers = [".git" "package.json"]; + }; }; defaultFormat = ["prettier"]; diff --git a/modules/plugins/languages/html.nix b/modules/plugins/languages/html.nix index 85918ad2..89b2ab55 100644 --- a/modules/plugins/languages/html.nix +++ b/modules/plugins/languages/html.nix @@ -16,7 +16,7 @@ cfg = config.vim.languages.html; - defaultServers = ["superhtml"]; + defaultServers = ["superhtml" "emmet-ls"]; servers = { superhtml = { cmd = [(getExe pkgs.superhtml) "lsp"]; diff --git a/modules/plugins/languages/ts.nix b/modules/plugins/languages/ts.nix index e5dc8d13..42532e21 100644 --- a/modules/plugins/languages/ts.nix +++ b/modules/plugins/languages/ts.nix @@ -73,6 +73,19 @@ # redirect the user to the correct server. tsserver = ts_ls; + emmet-ls = { + cmd = [(getExe pkgs.emmet-ls) "--stdio"]; + root_markers = ["tsconfig.json" "jsconfig.json" "package.json" ".git"]; + filetypes = [ + "javascript" + "javascriptreact" + "javascript.jsx" + "typescript" + "typescriptreact" + "typescript.tsx" + ]; + }; + denols = { cmd = [(getExe pkgs.deno) "lsp"]; cmd_env = {NO_COLOR = true;};