- Supprimés : fish, qtile, X, vim, sway, neomutt (+ package systemd vide) - Nouveau package hyprland : waybar, rofi, mako, gammastep, rofi-pass, systemd (mail+kanata+mpd+voxtype), script rofi - Nouveau package aerc : config aerc + infra mail (msmtp, khard, vdirsyncer) migrée depuis neomutt - Nettoyage .gitignore : suppression entrées neomutt/vim, ajout patterns moc/mpd/vifm manquants, vdirsyncer/status pour aerc - Mise à jour des configs trackées modifiées (nvim, zsh, tmux, git, newsboat) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
43 lines
1.5 KiB
Lua
43 lines
1.5 KiB
Lua
return {
|
|
"neovim/nvim-lspconfig",
|
|
dependencies = {
|
|
{ "williamboman/mason.nvim" },
|
|
{ "williamboman/mason-lspconfig.nvim" },
|
|
{ "WhoIsSethDaniel/mason-tool-installer.nvim" },
|
|
},
|
|
config = function()
|
|
vim.api.nvim_create_autocmd("LspAttach", {
|
|
callback = function(args)
|
|
local opts = { buffer = args.buf, silent = true }
|
|
|
|
vim.keymap.set("n", "gd", vim.lsp.buf.definition, vim.tbl_extend("force", opts, { desc = "Go to definition" }))
|
|
vim.keymap.set("n", "gD", vim.lsp.buf.declaration, vim.tbl_extend("force", opts, { desc = "Go to declaration" }))
|
|
vim.keymap.set("n", "gi", vim.lsp.buf.implementation, vim.tbl_extend("force", opts, { desc = "Go to implementation" }))
|
|
vim.keymap.set("n", "gr", vim.lsp.buf.references, vim.tbl_extend("force", opts, { desc = "Show references" }))
|
|
vim.keymap.set("n", "K", vim.lsp.buf.hover, vim.tbl_extend("force", opts, { desc = "Hover documentation" }))
|
|
vim.keymap.set("n", "<leader>rn", vim.lsp.buf.rename, vim.tbl_extend("force", opts, { desc = "Rename symbol" }))
|
|
vim.keymap.set({ "n", "v" }, "<leader>ca", vim.lsp.buf.code_action, vim.tbl_extend("force", opts, { desc = "Code action" }))
|
|
end,
|
|
})
|
|
|
|
require("mason").setup({})
|
|
require("mason-lspconfig").setup({
|
|
ensure_installed = {},
|
|
handlers = {
|
|
function(server_name)
|
|
vim.lsp.enable(server_name)
|
|
end,
|
|
},
|
|
})
|
|
|
|
require("mason-tool-installer").setup({
|
|
ensure_installed = {
|
|
"prettier",
|
|
"stylua",
|
|
"ruff",
|
|
"eslint_d",
|
|
},
|
|
})
|
|
end,
|
|
}
|