From 270a78aaea2b57ce7f272dc1e2ea968a6ea29a53 Mon Sep 17 00:00:00 2001 From: Evan Reichard Date: Sun, 11 Feb 2024 11:13:00 -0500 Subject: [PATCH] feat(nvim): add svelte ls --- nvim/config/lua/lsp-config.lua | 17 ++++++++++------- nvim/config/lua/telescope-config.lua | 1 + nvim/config/lua/which-key-config.lua | 1 + nvim/default.nix | 9 +++++---- 4 files changed, 17 insertions(+), 11 deletions(-) diff --git a/nvim/config/lua/lsp-config.lua b/nvim/config/lua/lsp-config.lua index e51dce3..15fdfc9 100644 --- a/nvim/config/lua/lsp-config.lua +++ b/nvim/config/lua/lsp-config.lua @@ -41,7 +41,7 @@ nvim_lsp.html.setup { on_attach = on_attach_no_formatting, flags = lsp_flags, capabilities = capabilities, - cmd = {nix_vars.vscodels .. "/bin/vscode-html-language-server", "--stdio"} + cmd = {nix_vars.vscls, "--stdio"} } -- JSON LSP Configuration @@ -49,7 +49,7 @@ nvim_lsp.jsonls.setup { on_attach = on_attach_no_formatting, flags = lsp_flags, capabilities = capabilities, - cmd = {nix_vars.vscodels .. "/bin/vscode-json-language-server", "--stdio"} + cmd = {nix_vars.vscls, "--stdio"} } -- CSS LSP Configuration @@ -57,7 +57,7 @@ nvim_lsp.cssls.setup { on_attach = on_attach_no_formatting, flags = lsp_flags, capabilities = capabilities, - cmd = {nix_vars.vscodels .. "/bin/vscode-css-language-server", "--stdio"} + cmd = {nix_vars.vscls, "--stdio"} } -- Typescript / Javascript LSP Configuration @@ -69,8 +69,7 @@ nvim_lsp.tsserver.setup { ["textDocument/publishDiagnostics"] = function() end }, capabilities = capabilities, - cmd = {nix_vars.tsserver, "--stdio"} - -- cmd = {nix_vars.tsserver, "--stdio", "--tsserver-path", nix_vars.tslib} + cmd = {nix_vars.tsls, "--stdio"} } -- Javascript / Typescript LSP Configuration @@ -78,15 +77,18 @@ nvim_lsp.eslint.setup { on_attach = on_attach_no_formatting, flags = lsp_flags, capabilities = capabilities, - cmd = {nix_vars.vscodels .. "/bin/vscode-eslint-language-server", "--stdio"} + cmd = {nix_vars.vscls, "--stdio"} } +-- Svelte LSP Configuration +nvim_lsp.svelte.setup {cmd = {nix_vars.sveltels, "--stdio"}} + -- Go LSP Configuration nvim_lsp.gopls.setup { on_attach = on_attach_no_formatting, flags = lsp_flags, capabilities = capabilities, - cmd = {nix_vars.gopls .. "/bin/gopls"} + cmd = {nix_vars.gopls} } ------------------------------------------------------ @@ -112,6 +114,7 @@ null_ls.setup({ return utils.has_file(".eslintrc.yml") end }), null_ls.builtins.formatting.djlint.with({filetypes = {"template"}}), + null_ls.builtins.formatting.prettier.with({filetypes = {"svelte"}}), null_ls.builtins.completion.spell, null_ls.builtins.formatting.nixpkgs_fmt, null_ls.builtins.formatting.lua_format, diff --git a/nvim/config/lua/telescope-config.lua b/nvim/config/lua/telescope-config.lua index 1d45077..63fab5b 100644 --- a/nvim/config/lua/telescope-config.lua +++ b/nvim/config/lua/telescope-config.lua @@ -16,3 +16,4 @@ vim.keymap.set('n', 'ff', builtin.find_files, {}) vim.keymap.set('n', 'fg', builtin.live_grep, {}) vim.keymap.set('n', 'fb', builtin.buffers, {}) vim.keymap.set('n', 'fh', builtin.help_tags, {}) +vim.keymap.set('n', 'fj', builtin.jumplist, {}) diff --git a/nvim/config/lua/which-key-config.lua b/nvim/config/lua/which-key-config.lua index e0a10c4..21da344 100644 --- a/nvim/config/lua/which-key-config.lua +++ b/nvim/config/lua/which-key-config.lua @@ -32,6 +32,7 @@ wk.register({ f = {"Telescope find_files", "Find File"}, g = {"Telescope live_grep", "Live Grep"}, b = {"Telescope buffers", "Find Buffer"}, + j = {"Telescope jumplist", "Jump List"}, h = {"Telescope help_tags", "Help Tags"} }, l = { diff --git a/nvim/default.nix b/nvim/default.nix index 85fa729..19c05e4 100644 --- a/nvim/default.nix +++ b/nvim/default.nix @@ -95,6 +95,7 @@ in gopls nodePackages.eslint nodePackages.pyright + nodePackages.svelte-language-server nodePackages.typescript nodePackages.typescript-language-server nodePackages.vscode-langservers-extracted @@ -124,10 +125,10 @@ in # Generate Nix Vars "nvim/lua/nix-vars.lua".text = '' local nix_vars = { - tsserver = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server", - tslib = "${pkgs.nodePackages.typescript}/lib/node_modules/typescript/lib/", - vscodels = "${pkgs.nodePackages.vscode-langservers-extracted}", - gopls = "${pkgs.gopls}", + gopls = "${pkgs.gopls}/bin/gopls", + sveltels = "${pkgs.nodePackages.svelte-language-server}/bin/svelteserver", + tsls = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server", + vscls = "${pkgs.nodePackages.vscode-langservers-extracted}/bin/vscode-html-language-server", } return nix_vars '';