diff --git a/neovim/configs/language-server.nix b/neovim/configs/language-server.nix index 41ea1e2..5d14913 100644 --- a/neovim/configs/language-server.nix +++ b/neovim/configs/language-server.nix @@ -25,18 +25,12 @@ let inherit (lib.nix2lua) call; in "cargo.autoreload" = true; }; }; - tsserver = rec { - filetypes = [ "javascript" "javascriptreact" "typescript" "typescriptreact" "vue" ]; - init_options.plugins = [ - { - name = "@vue/typescript-plugin"; - location = "./node_modules/@vue/typescript-plugin"; - languages = filetypes; - } - ]; - }; eslint = { on_attach = config.fn.lspconfig-eslint-on-attach.lambda; + flags = { + allow_incremental_sync = false; + debounce_text_changes = 1000; + }; }; volar = { init_options = { diff --git a/neovim/plugins/default.nix b/neovim/plugins/default.nix index 5ad1883..7e0dcbd 100644 --- a/neovim/plugins/default.nix +++ b/neovim/plugins/default.nix @@ -1,5 +1,6 @@ { imports = [ ./ollama.nix + ./typescript-tools.nix ]; } diff --git a/neovim/plugins/typescript-tools.nix b/neovim/plugins/typescript-tools.nix new file mode 100644 index 0000000..5825ae1 --- /dev/null +++ b/neovim/plugins/typescript-tools.nix @@ -0,0 +1,13 @@ +{ + plugin.typescript-tools-nvim = { + enable = true; + name = "typescript-tools"; + setupSettings = { + filetypes = [ "javascript" "javascriptreact" "typescript" "typescriptreact" "vue" ]; + settings = { + tsserver_max_memory = "auto"; + tsserver_plugins = [ "@vue/typescript-plugin" ]; + }; + }; + }; +}