finds.dev← search

// the find

mattn/vim-lsp-settings

★ 1,411 · Vim Script · MIT · updated Jun 2026

Auto configurations for Language Server for vim-lsp

vim-lsp-settings is a companion plugin for vim-lsp that automates downloading and configuring language servers — essentially what VS Code extension marketplace does for LSP, but for Vim. It handles 80+ languages with per-server installer scripts and sane defaults, so you get gopls or rust-analyzer working in Vim without writing a dozen lines of vimrc. Maintained by mattn (prolific Vim ecosystem contributor) and actively updated as of mid-2026.

The coverage is genuinely wide — not just the popular languages but Odin, Veryl, Moonbit, TTCN-3, things you'd expect to have to wire up yourself. Each language server gets its own settings/*.vim file with correct executable detection and initialization options, so the defaults actually work out of the box rather than requiring you to consult upstream docs. The dual installer format (.sh + .cmd) means Windows users aren't second-class citizens, which is rare in the Vim plugin ecosystem. The per-project .vim-lsp-settings/settings.json override mechanism is the right call — it lets you commit project-specific LSP config without polluting your dotfiles.

There's no update mechanism: `:LspInstallServer` reinstalls from scratch, and there's nothing that tells you a newer version is available. You'll quietly run stale language servers until something breaks. Several servers are listed with 'No' for both Installer and Local Install (Haskell, Nim, Vala) — they're in the table but you're on your own, which makes the table misleading. The rust-analyzer LSP extensions support matrix shows most features as unimplemented (❌), meaning you're getting a degraded experience compared to rust-analyzer in VS Code or Neovim with nvim-lspconfig. Configuration is split across three places (vimscript globals, settings.json, per-server .vim files) with no clear priority documentation beyond what you can infer from the README.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →