nvim-lsp-installer
nvim-cmp
Our great sponsors
nvim-lsp-installer | nvim-cmp | |
---|---|---|
82 | 250 | |
2,022 | 7,078 | |
- | - | |
9.7 | 8.1 | |
over 1 year ago | 1 day ago | |
Lua | Lua | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nvim-lsp-installer
- [Neovim] Présentation de mason.nvim
-
Unable to get a working setup for lsp
I had previous gotten a working setup with https://github.com/williamboman/nvim-lsp-installer however, I have been unable to get it working ever since.
-
How do you stay up-to-date on the plugins you use?
The only way to stay up to date, is when you read the commits if you update the plugins. In this case for the lsp-installer in the commit bfa74f4 was mentioned that the plugin will no longer maintained
-
LSP question: manage an already installed server (instead of using lspinstall)
A word of caution, I believe lspinstall has been deprecated in favor of nvim-lspinstall which itself has also been deprecated in favor of mason-lspconfig
-
AstroNvim 2.4
We have now migrated from nvim-lsp-instasller to mason which provides automatic LSP and null-ls configuration after installation
-
Best way to go about installing LSP today?
nvim-lsp-installer or mason.nvim. FYI lsp-zero also uses mason.nvim for managing installation.
-
Vue + Volar = Error Request initialize failed
I'm using nvim-lsp-installer it installs typescript when installing volar. So I had given it that path. Plus I had typescript locally installing since I'm using vue3+ts(vite) template
-
rust-analyzer changelog #146
Though mason only recently replaced nvim-lsp-installer. Same author but they decided to make a complete rewrite given the broader scope beyond only providing language servers. And nvim-dap had it's initial release in late July. The actual dap servers are all kind of mature since they've been running on vscode for a couple of years or more now - and the protocol is apparently almost as old as lsp. So when I call them beta, it's more a commentary on the state of the neovim side of the ecosystem. If you mess around getting nvim-dap to work then there's a chance things might change over the coming months and you might have to return to configuring it more often than you'd like. In this sense for now I'm happy just to open vscode or another more appropriate IDE to debug. But I can see myself using the plugins in a year or two when they've matured.
-
Is there any way to autocomplete language functions? For example, show things like fmt.Printf or fmt.Println when writing fmt.Print and pressing the autocomplete key.
Here are a few resources to get you started: 1. https://github.com/neovim/nvim-lspconfig 1. https://github.com/golang/tools/tree/master/gopls 1. https://github.com/williamboman/nvim-lsp-installer
-
rust_tools equivalent for C Sharp
Can recommend a combination of omnisharp-roslyn native LSP (installed manually or through something like mason or nvim-lsp-installer) with omnisharp-vim for some extra C#-niceties like OmniSharpRunTest, etc.
nvim-cmp
-
What is this red color in cmp?
vim.api.nvim_set_hl(0, "PmenuSel", { bg = c.background_light, fg = "NONE" }) vim.api.nvim_set_hl(0, "Pmenu", { fg = c.foreground, bg = c.background_light }) vim.api.nvim_set_hl(0, "CmpItemAbbrDeprecated", { fg = c.foreground_light, bg = "NONE", strikethrough = true }) vim.api.nvim_set_hl(0, "CmpItemAbbrMatch", { fg = c.blue , bg = "NONE", bold = true }) vim.api.nvim_set_hl(0, "CmpItemAbbrMatchFuzzy", { fg = c.blue, bg = "NONE", bold = true }) vim.api.nvim_set_hl(0, "CmpItemMenu", { fg = c.purple, bg = "NONE", italic = true }) vim.api.nvim_set_hl(0, "CmpItemKindField", { fg = c.red }) vim.api.nvim_set_hl(0, "CmpItemKindProperty", { fg = c.red }) vim.api.nvim_set_hl(0, "CmpItemKindEvent", { fg = c.red }) vim.api.nvim_set_hl(0, "CmpItemKindText", { fg = c.green }) vim.api.nvim_set_hl(0, "CmpItemKindEnum", { fg = c.green }) vim.api.nvim_set_hl(0, "CmpItemKindKeyword", { fg = c.green }) vim.api.nvim_set_hl(0, "CmpItemKindConstant", { fg = c.yellow }) vim.api.nvim_set_hl(0, "CmpItemKindConstructor", { fg = c.yellow }) vim.api.nvim_set_hl(0, "CmpItemKindReference", { fg = c.yellow }) vim.api.nvim_set_hl(0, "CmpItemKindFunction", { fg = c.purple }) vim.api.nvim_set_hl(0, "CmpItemKindStruct", { fg = c.purple }) vim.api.nvim_set_hl(0, "CmpItemKindClass", { fg = c.purple }) vim.api.nvim_set_hl(0, "CmpItemKindModule", { fg = c.purple }) vim.api.nvim_set_hl(0, "CmpItemKindOperator", { fg = c.purple }) vim.api.nvim_set_hl(0, "CmpItemKindVariable", { fg = c.foreground }) vim.api.nvim_set_hl(0, "CmpItemKindFile", { fg = c.foreground }) vim.api.nvim_set_hl(0, "CmpItemKindUnit", { fg = c.orange }) vim.api.nvim_set_hl(0, "CmpItemKindSnippet", { fg = c.orange }) vim.api.nvim_set_hl(0, "CmpItemKindFolder", { fg = c.orange }) vim.api.nvim_set_hl(0, "CmpItemKindMethod", { fg = c.blue }) vim.api.nvim_set_hl(0, "CmpItemKindValue", { fg = c.blue }) vim.api.nvim_set_hl(0, "CmpItemKindEnumMember", { fg = c.blue }) vim.api.nvim_set_hl(0, "CmpItemKindInterface", { fg = c.aqua }) vim.api.nvim_set_hl(0, "CmpItemKindColor", { fg = c.aqua }) vim.api.nvim_set_hl(0, "CmpItemKindTypeParameter", { fg = c.aqua }) -- https://github.com/hrsh7th/nvim-cmp/pull/1689 vim.api.nvim_set_hl(0, 'FloatBorder', { fg = c.background_light, bg = c.background_light })
-
cmp border background is changed all of a sudden.
Doing a fast scan on the commit history this is probably related to https://github.com/hrsh7th/nvim-cmp/pull/1689 . Hope it helps.
-
Do I need NeoVIM?
https://github.com/hrsh7th/nvim-cmp This is an autocompletion engine https://github.com/nvim-treesitter/nvim-treesitter This allows NeoVim to install parsing scripts so NeoVim can do things like code highlighting. https://github.com/williamboman/mason.nvim Not strictly necessary, but allows you to access a repo of LSP, install them, and configure them for without you actively messing about in config files. https://github.com/neovim/nvim-lspconfig Also not strictly necessary, but vastly simplifies LSP setup. https://github.com/williamboman/mason-lspconfig.nvim This lets the above two plugins talk to each other more easily.
-
Can't go down when writing a command nvim
Edit: Solved I only had to do this
-
What is your most anticipated PR?
toggling sources by Treesitter context
-
About some deprecations in Neovim core
But today I'm a different person, and I'm sure that this is the right decision. I already gave a spiel on the cmp PR, but lemme copy-paste my response for those that weren't following the issue or don't check their GitHub notifications:
-
nvim starts multiple node processes leading to very high memory usage
EDIT: I was able to reproduce the issue with a simplified nvim-cmp init.vim - posted here: https://github.com/hrsh7th/nvim-cmp/issues/1728
-
[Need Help]: I am having trouble getting autocomplete with clangd.
You need to add nvim-cmp and cmp-nvim-lsp
-
is it possible to limit the size of nvim-cmps autocompletion window?
one thing that always annoyed me is how the autocomplete window behaves. when the space below your current line isn't sufficient it just teleports above the line. i know you can set a custom menu direction but i'd much rather have it pop up in a consistent place that is below the current line. the other behavior i dislike is the sizing. it's as big as the longest function in the list which can make the window enormous, to the point where there's almost no place left for the docs window. there aren't really any docs in the example below but i imagine with the little space that is left it'll get troublesome for more verbose docs such as with rust. i'd like to somehow tell nvim-cmp to always pop up below the current line, no matter how long the list is and possibly limit the horizontal size. is that at all possible? i've looked through the nvim-cmp wiki but haven't found an adequate solution. does this go beyond nvim-cmp?
-
Toggling the nvim-cmp documentation window
Update: This isn't currently supported by nvim-cmp (and in fact it has been a feature request for a bit) and so I did my best and opened a PR that implements it :)
What are some alternatives?
nvim-lspconfig - Quickstart configs for Nvim LSP
coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
nvim-lspinstall - Provides the missing :LspInstall for nvim-lspconfig
cmp-nvim-lsp - nvim-cmp source for neovim builtin LSP client
omnisharp-vim - Vim omnicompletion (intellisense) and more for C#
coq.artifacts
mason-lspconfig.nvim - Extension to mason.nvim that makes it easier to use lspconfig with mason.nvim.
completion-nvim - A async completion framework aims to provide completion to neovim's built in LSP written in Lua
LuaSnip - Snippet Engine for Neovim written in Lua.
nvim-jdtls - Extensions for the built-in LSP support in Neovim for eclipse.jdt.ls
rust-tools.nvim - Tools for better development in rust using neovim's builtin lsp