Migrate to native lsp config and other misc stuff

This commit is contained in:
Fábio André Damas 2025-09-19 22:04:09 +01:00
parent 50031cba0e
commit 2b05047eb9
21 changed files with 82 additions and 40 deletions

View file

@ -1,32 +1,30 @@
{
"blink.cmp": { "branch": "main", "commit": "bae4bae0eedd1fa55f34b685862e94a222d5c6f8" },
"blink.cmp": { "branch": "main", "commit": "327fff91fe6af358e990be7be1ec8b78037d2138" },
"commander.nvim": { "branch": "main", "commit": "84101e8eb1613a72bbdec655b734f891d8a00694" },
"conform.nvim": { "branch": "master", "commit": "b4aab989db276993ea5dcb78872be494ce546521" },
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
"flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" },
"flash.nvim": { "branch": "main", "commit": "b68bda044d68e4026c4e1ec6df3c5afd7eb8e341" },
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
"gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" },
"gitsigns.nvim": { "branch": "main", "commit": "f780609807eca1f783a36a8a31c30a48fbe150c5" },
"glance.nvim": { "branch": "master", "commit": "bf86d8b79dce808e65fdb6e9269d0b4ed6d2eefc" },
"hurl.nvim": { "branch": "main", "commit": "33ff81c0027c1d0071174eb40257010c7ce61e62" },
"i18n.nvim": { "branch": "main", "commit": "0004878584b878fc407b0966ed8b070302979436" },
"js-i18n.nvim": { "branch": "main", "commit": "5157a1c1a47b14aa77fa6e50626dc1add4d1a618" },
"kulala.nvim": { "branch": "main", "commit": "3e81123652a72a2717f9916d6f2b52c2ae6f7e96" },
"hurl.nvim": { "branch": "main", "commit": "0e5430d5130fe95fc1b8b015491b50274aa2e796" },
"i18n.nvim": { "branch": "main", "commit": "7123199a828c484e3387e2871fc1b0f4ad2138e8" },
"kulala.nvim": { "branch": "main", "commit": "ab3effad17d5dbb4d5d34b6289fa4dc97155045c" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"lspsaga.nvim": { "branch": "main", "commit": "8efe00d6aed9db6449969f889170f1a7e43101a1" },
"mason.nvim": { "branch": "main", "commit": "7dc4facca9702f95353d5a1f87daf23d78e31c2a" },
"mini.files": { "branch": "main", "commit": "49c855977e9f4821d1ed8179ed44fe098b93ea2a" },
"mini.statusline": { "branch": "main", "commit": "e331175f10d9f400b42523b3890841aba202ce16" },
"namu.nvim": { "branch": "main", "commit": "6759df3cddb1d6d11442b953f8b63e64350229f3" },
"neo-tree.nvim": { "branch": "v3.x", "commit": "f1deac7ecec88c28a250d890ba7bb35843e69cbd" },
"neogit": { "branch": "master", "commit": "6617978288d58eb121754b5dd890e893d9a7e8d6" },
"none-ls-extras.nvim": { "branch": "main", "commit": "924fe88a9983c7d90dbb31fc4e3129a583ea0a90" },
"none-ls.nvim": { "branch": "main", "commit": "df778107fd2f0503f5606363ce13437132056d54" },
"neo-tree.nvim": { "branch": "v3.x", "commit": "ed057048a281b418d5318dd5153f9486daa517a3" },
"neogit": { "branch": "master", "commit": "ceaf88a9f9607b736d572781490872e28a112aed" },
"none-ls-extras.nvim": { "branch": "main", "commit": "974bf1cd73fa3f0291211212ad60f8fe6fdd68d7" },
"none-ls.nvim": { "branch": "main", "commit": "78111a97cebed3dfda8157af8141bf1915cfc327" },
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
"nvim-autopairs": { "branch": "master", "commit": "23320e75953ac82e559c610bec5a90d9c6dfa743" },
"nvim-colorizer.lua": { "branch": "master", "commit": "51cf7c995ed1eb6642aecf19067ee634fa1b6ba2" },
"nvim-lspconfig": { "branch": "master", "commit": "c8b90ae5cbe21d547b342b05c9266dcb8ca0de8f" },
"nvim-lspconfig": { "branch": "master", "commit": "1f7fbc34e6420476142b5cc85e9bee52717540fb" },
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "71385f191ec06ffc60e80e6b0c9a9d5daed4824c" },
"nvim-ufo": { "branch": "main", "commit": "d31e2a9fd572a25a4d5011776677223a8ccb7e35" },
"nvim-web-devicons": { "branch": "master", "commit": "6e51ca170563330e063720449c21f43e27ca0bc1" },
"output-panel.nvim": { "branch": "main", "commit": "9979f9988acb35fd8e699d8b1fbc7aa17c9d8148" },
@ -34,13 +32,13 @@
"package-info.nvim": { "branch": "master", "commit": "5cb3483ec886ca23e2c57e5d4a63c958d9a98179" },
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
"promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" },
"render-markdown.nvim": { "branch": "main", "commit": "7fd911692e5bc705c5487ae1c390d0b6d9738d87" },
"schemastore.nvim": { "branch": "main", "commit": "05924b7383fa17f13f7a7e7ecc8ce83b3c340ce2" },
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" },
"render-markdown.nvim": { "branch": "main", "commit": "67f2c7c8850bb11eefa6b22054a6f4cef1146de2" },
"schemastore.nvim": { "branch": "main", "commit": "8ebf58bd467f353d18cfa71776b33b28a68130de" },
"snacks.nvim": { "branch": "main", "commit": "d67a47739dfc652cfcf66c59e929c704a854b37a" },
"telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" },
"tiny-inline-diagnostic.nvim": { "branch": "main", "commit": "f64efd33a51ea89bdb847fb3aaf716e96b83ba1a" },
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
"tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" },
"tokyonight.nvim": { "branch": "main", "commit": "14fd5ff7f84027064724ec3157fe903199e77ded" },
"ts-error-translator.nvim": { "branch": "main", "commit": "47e5ba89f71b9e6c72eaaaaa519dd59bd6897df4" },
"undotree": { "branch": "master", "commit": "fe9a9d0645f0f5532360b5e5f5c550d7bb4f1869" },
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }

View file

@ -12,6 +12,7 @@ opt.colorcolumn = "80"
opt.clipboard:append({ "unnamed", "unnamedplus" })
opt.expandtab = true
opt.exrc = true
opt.foldmethod = "indent"
opt.foldcolumn = "1"
opt.foldlevel = 99
opt.foldlevelstart = 99

View file

@ -126,6 +126,10 @@ return {
{
cmd = ":OutputPanel<CR>",
desc = "Toggle LSP Output Panel"
},
{
cmd = ":I18nAddKey<CR>",
desc = "I18n: Add key under cursor"
}
})

View file

@ -1,11 +0,0 @@
return {
"nabekou29/js-i18n.nvim",
dependencies = {
"neovim/nvim-lspconfig",
"nvim-treesitter/nvim-treesitter",
"nvim-lua/plenary.nvim",
},
event = { "BufReadPre", "BufNewFile" },
opts = {},
enabled = false
}

View file

@ -15,17 +15,20 @@ return {
{
"neovim/nvim-lspconfig",
config = function()
local lspconfig = require('lspconfig')
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.foldingRange = {
dynamicRegistration = false,
lineFoldingOnly = true
}
for _, v in ipairs(vim.api.nvim_get_runtime_file('lua/lsp/*', true)) do
vim.lsp.config('*', { capabilities })
for _, v in ipairs(vim.api.nvim_get_runtime_file('lua/lsp_extend/*', true)) do
local name = vim.fn.fnamemodify(v, ':t:r')
local cfg = require("lsp/" .. name)
if lspconfig[name].setup ~= nil then
lspconfig[name].setup(vim.tbl_deep_extend("force", cfg, { capabilities }))
local cfg = require("lsp_extend/" .. name)
if vim.lsp.config[name] ~= nil then
vim.lsp.config(name, vim.tbl_deep_extend("force", cfg, {
settings = { [name] = { capabilities } }
}))
vim.lsp.enable(name)
else
vim.notify("LSP server " .. name .. " does not have a setup function", vim.log.levels.ERROR)
end
@ -37,11 +40,12 @@ return {
opts = {
tools_to_install = {
"lua-language-server", "vtsls", "ruff", "mypy", "black",
"pyright", "emmet-language-server", "tailwindcss-language-server",
"eslint-lsp", "lemminx", "gopls", "prettierd", "dotenv-linter",
"editorconfig-checker", "rust-analyzer", "taplo", "kulala-fmt",
"json-lsp", "harper-ls", "proselint", "alex", "yaml-language-server",
"tree-sitter-cli", "lua-language-server", "vtsls", "ruff",
"mypy", "black", "pyright", "emmet-language-server",
"tailwindcss-language-server", "eslint-lsp", "lemminx",
"gopls", "prettierd", "dotenv-linter", "editorconfig-checker",
"rust-analyzer", "taplo", "kulala-fmt", "json-lsp",
"harper-ls", "proselint", "alex", "yaml-language-server",
"golangci-lint-langserver", "golangci-lint"
}
},

View file

@ -1,9 +1,55 @@
return {
'nvim-treesitter/nvim-treesitter',
run = ':TSUpdate',
dependencies = { 'nvim-treesitter/nvim-treesitter-textobjects' },
build = ':TSUpdate',
-- dependencies = { 'nvim-treesitter/nvim-treesitter-textobjects' },
-- branch = 'main',
branch = 'master',
lazy = false,
config = function()
-- require 'nvim-treesitter'.setup {
-- -- Directory to install parsers and queries to
-- install_dir = vim.fn.stdpath('data') .. '/site'
-- }
--
--
-- local ensureInstalled = {
-- "c",
-- "lua",
-- "vim",
-- "vimdoc",
-- "query",
-- "elixir",
-- "heex",
-- "javascript",
-- "html",
-- "markdown",
-- "markdown_inline",
-- "html",
-- "jsdoc",
-- "hurl",
-- "typescript",
-- "json"
-- }
-- local alreadyInstalled = require("nvim-treesitter.config").get_installed()
-- local parsersToInstall = vim.iter(ensureInstalled)
-- :filter(function(parser) return not vim.tbl_contains(alreadyInstalled, parser) end)
-- :totable()
-- require("nvim-treesitter").install(parsersToInstall)
--
-- vim.api.nvim_create_autocmd("FileType", {
-- desc = "User: enable treesitter highlighting",
-- callback = function(ctx)
-- -- highlights
-- local hasStarted = pcall(vim.treesitter.start) -- errors for filetypes with no parser
--
-- -- indent
-- local noIndent = {}
-- if hasStarted and not vim.list_contains(noIndent, ctx.match) then
-- vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()"
-- end
-- end,
-- })
require("nvim-treesitter.configs").setup({
ensure_installed = {
"c",