Skip to content

Conversation

Copy link

Copilot AI commented Nov 19, 2025

Replaces ALE plugin with Neovim's native LSP infrastructure for better performance, modern completion, and standard ecosystem integration.

Changes

Plugins

  • Removed: dense-analysis/ale
  • Added LSP: nvim-lspconfig, mason.nvim, mason-lspconfig.nvim
  • Added completion: nvim-cmp, cmp-nvim-lsp, cmp-buffer, cmp-path, LuaSnip, cmp_luasnip
  • Added formatting: conform.nvim

Language Servers (nvim/lua/main/configs/lsp.lua)

  • Rust: rust-analyzer (clippy enabled)
  • Python: pyright
  • C/C++: clangd
  • TypeScript/JavaScript: ts_ls + eslint
  • Terraform: terraformls

Formatters

  • Rust: rustfmt
  • Python: black
  • JS/TS: eslint_d
  • C/C++: clang-format
  • Terraform: terraform_fmt

LSP Keybindings

gd              -- Go to definition
gr              -- Find references
K               -- Hover documentation
<leader>rn      -- Rename symbol
<leader>ca      -- Code actions
<leader>f       -- Format buffer
[d / ]d         -- Navigate diagnostics

Completion

  • Tab/S-Tab navigation
  • Snippet expansion with LuaSnip
  • Context-aware suggestions from LSP, buffer, and path sources

Migration Notes

LSP servers auto-install via Mason on first run. Format-on-save preserved. All previous ALE linters/fixers mapped to LSP equivalents.

Original prompt

Port the Neovim configuration from ALE to Neovim LSP. The Neovim configurations are the nvim directory


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI changed the title [WIP] Port Neovim configuration from ALE to LSP Migrate Neovim configuration from ALE to native LSP Nov 19, 2025
Copilot AI requested a review from yangr0 November 19, 2025 21:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants