Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
nvim-lsp-ts-utils
Discontinued Utilities to improve the TypeScript development experience for Neovim's built-in LSP client.
That's what language servers are for. Rename and code actions, some servers also have auto-imports. Most functionality that is missing you should be able to implement with treesitter and LSP. Treesitter for modifying the AST and LSP for querying the language server for stuff like all places where something was referenced etc. I haven't learned how to use treesitter yet, but it's definitely possible: https://github.com/ThePrimeagen/refactoring.nvim
For pyright maybe you have to include files or something like that: https://github.com/microsoft/pyright/blob/main/docs/configuration.md
Coc.nvim for typescript can watch the file system and update imports on filename change. With built-in LSP a similar thing can be done using TSLspRenameFile from https://github.com/jose-elias-alvarez/nvim-lsp-ts-utils (but it doesn't watch the filesystem)
I’m moving from IntelliJ to Neovim. I have the idea like as you. The problem with not rename var in many files is because the setting about your project or root_dir is incorrect. You can check my configure file at https://github.com/baobaoit/beande on the branch main or development. The README.md is not up-to-date. I use lspconfig + jdtls (I clone the jdtls repository and build it) or you can try nvim-jdlts, almost key mapping is from lspconfig guide.