diff --git a/lazy-lock.json b/lazy-lock.json index 8ed2451..2dbd76d 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -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" } diff --git a/lua/config/settings.lua b/lua/config/settings.lua index 6f2b34a..64bede3 100644 --- a/lua/config/settings.lua +++ b/lua/config/settings.lua @@ -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 diff --git a/lua/lsp/emmet_language_server.lua b/lua/lsp_extend/emmet_language_server.lua similarity index 100% rename from lua/lsp/emmet_language_server.lua rename to lua/lsp_extend/emmet_language_server.lua diff --git a/lua/lsp/eslint.lua b/lua/lsp_extend/eslint.lua similarity index 100% rename from lua/lsp/eslint.lua rename to lua/lsp_extend/eslint.lua diff --git a/lua/lsp/golangci_lint_ls.lua b/lua/lsp_extend/golangci_lint_ls.lua similarity index 100% rename from lua/lsp/golangci_lint_ls.lua rename to lua/lsp_extend/golangci_lint_ls.lua diff --git a/lua/lsp/gopls.lua b/lua/lsp_extend/gopls.lua similarity index 100% rename from lua/lsp/gopls.lua rename to lua/lsp_extend/gopls.lua diff --git a/lua/lsp/harper_ls.lua b/lua/lsp_extend/harper_ls.lua similarity index 100% rename from lua/lsp/harper_ls.lua rename to lua/lsp_extend/harper_ls.lua diff --git a/lua/lsp/jsonls.lua b/lua/lsp_extend/jsonls.lua similarity index 100% rename from lua/lsp/jsonls.lua rename to lua/lsp_extend/jsonls.lua diff --git a/lua/lsp/lemminx.lua b/lua/lsp_extend/lemminx.lua similarity index 100% rename from lua/lsp/lemminx.lua rename to lua/lsp_extend/lemminx.lua diff --git a/lua/lsp/lua_ls.lua b/lua/lsp_extend/lua_ls.lua similarity index 100% rename from lua/lsp/lua_ls.lua rename to lua/lsp_extend/lua_ls.lua diff --git a/lua/lsp/pyright.lua b/lua/lsp_extend/pyright.lua similarity index 100% rename from lua/lsp/pyright.lua rename to lua/lsp_extend/pyright.lua diff --git a/lua/lsp/ruff.lua b/lua/lsp_extend/ruff.lua similarity index 100% rename from lua/lsp/ruff.lua rename to lua/lsp_extend/ruff.lua diff --git a/lua/lsp/rust_analyzer.lua b/lua/lsp_extend/rust_analyzer.lua similarity index 100% rename from lua/lsp/rust_analyzer.lua rename to lua/lsp_extend/rust_analyzer.lua diff --git a/lua/lsp/tailwindcss.lua b/lua/lsp_extend/tailwindcss.lua similarity index 100% rename from lua/lsp/tailwindcss.lua rename to lua/lsp_extend/tailwindcss.lua diff --git a/lua/lsp/taplo.lua b/lua/lsp_extend/taplo.lua similarity index 100% rename from lua/lsp/taplo.lua rename to lua/lsp_extend/taplo.lua diff --git a/lua/lsp/vtsls.lua b/lua/lsp_extend/vtsls.lua similarity index 100% rename from lua/lsp/vtsls.lua rename to lua/lsp_extend/vtsls.lua diff --git a/lua/lsp/yamlls.lua b/lua/lsp_extend/yamlls.lua similarity index 100% rename from lua/lsp/yamlls.lua rename to lua/lsp_extend/yamlls.lua diff --git a/lua/plugins/commander.lua b/lua/plugins/commander.lua index 94fa94f..6c9332a 100644 --- a/lua/plugins/commander.lua +++ b/lua/plugins/commander.lua @@ -126,6 +126,10 @@ return { { cmd = ":OutputPanel", desc = "Toggle LSP Output Panel" + }, + { + cmd = ":I18nAddKey", + desc = "I18n: Add key under cursor" } }) diff --git a/lua/plugins/js-i18n.nvim.lua b/lua/plugins/js-i18n.nvim.lua deleted file mode 100644 index 5557448..0000000 --- a/lua/plugins/js-i18n.nvim.lua +++ /dev/null @@ -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 -} diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index 3ca6d0f..c8903a4 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -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" } }, diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index 8298aac..2528dfe 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -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",