How to setup auto completion, etc. using LSP and stuff without bloating everything with a plugin manager?

This page summarizes the projects mentioned and recommended in the original post on /r/neovim

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • nvim-lspconfig

    Quickstart configs for Nvim LSP

  • nvim-lspconfig, nvim-treesitter, and lsp_signature.nvim using my distribution's package manager (not sure if I need the last one, though). Treesitter works with my minimal config and highlights all code as expected, and for LSP I have the :Lsp... commands so the plugin gets loaded - but I can't find a way to configure it.

  • nvim-treesitter

    Nvim Treesitter configurations and abstraction layer

  • [various vim.opt.xyz settings that all work as expected] -- Treesitter -- -- Installed: neovim-nvim-treesitter -- Git: https://github.com/nvim-treesitter/nvim-treesitter require'nvim-treesitter.configs'.setup { ensure_installed = { "c", "lua", "vim", "help" }, sync_install = false, auto_install = true, ignore_install = {}, highlight = { enable = true, disable = {}, additional_vim_regex_highlighting = false, } }

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • nvim-cmp

    A completion plugin for neovim coded in Lua.

  • Unfortunately lsp-config doesn't come out of the box with a drop-down or completion, you need other plugins for that, the most popular is https://github.com/hrsh7th/nvim-cmp

  • coc-ccls

    CCLS (C/C++) extension for coc.nvim

  • Another option is to just download https://github.com/neoclide/coc.nvim Which is basically a one stop shop for completion, and it's pretty fast, it just uses nodejs instead of built in nvim lua functions.

  • mini.completion

    Neovim Lua plugin for completion and signature help. Part of 'mini.nvim' library.

  • For a simple completion plugin you can try mini.completion. The wiki in lspconfig also offers other alternatives: lspconfig autocompletion.

  • lsp_signature.nvim

    LSP signature hint as you type

  • nvim-lspconfig, nvim-treesitter, and lsp_signature.nvim using my distribution's package manager (not sure if I need the last one, though). Treesitter works with my minimal config and highlights all code as expected, and for LSP I have the :Lsp... commands so the plugin gets loaded - but I can't find a way to configure it.

  • cmp-nvim-lsp

    nvim-cmp source for neovim builtin LSP client

  • -- need to install https://github.com/hrsh7th/cmp-nvim-lsp for server in pairs(servers) do lspconfig[server].setup { on_attach = on_attach, capabilities = require("cmp_nvim_lsp").default_capabilities(), settings = servers[server], } end ```

  • 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.

    WorkOS logo
  • mason.nvim

    Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters.

  • If you do end up wanting more plugins, https://github.com/williamboman/mason.nvim is a plugin that can install language servers automatically and it's widely used these days.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts