typescript-tools.nvim - The TypeScript Integration NeoVim Deserves
After months of hard work, I'm thrilled to present typescript-tools.nvim. You might be wondering why we need another TypeScript plugin. Allow me to explain my reasoning: the existing typescript-language-server
tends to perform slowly, especially in large projects. This plugin aims to address this problem by eliminating the proxy between the Language Server Protocol (LSP) and the native Tsserver protocol. Instead, it deeply integrates Tsserver with NeoVim using a dedicated I/O loop, enabling direct communication via the Tsserver protocol. Thanks to that, the plugin functions identically to the TypeScript extension bundled in Visual Studio Code .
Key features:
-
Blazingly fast, thanks to the utilization of the native Tsserver communication protocol, similar to Visual Studio Code
-
Supports a wide range of TypeScript versions 4.0 and above
-
Supports the nvim LSP plugin ecosystem
-
Supports multiple instances of Tsserver
-
Supports both local and global installations of TypeScript
-
Provides out-of-the-box support for styled-components, which is not enabled by default (see Installation and Configuration)
-
Improved code refactor capabilities e.g. extracting to variable or function
Disclaimer: I use plugin as my daily driver in day job but, it is still fairly new and you can encounter bugs.