From 513dfe695f5e8a534c578d12147655dd154a614a Mon Sep 17 00:00:00 2001 From: Christian Nieves Date: Sat, 4 Jan 2025 01:11:42 -0600 Subject: [PATCH] i dont even know --- vim/.vim/lua/plugins/diagnostics.lua | 50 ++++-- vim/.vim/lua/plugins/lsp.lua | 223 +++++++++++++++------------ 2 files changed, 165 insertions(+), 108 deletions(-) diff --git a/vim/.vim/lua/plugins/diagnostics.lua b/vim/.vim/lua/plugins/diagnostics.lua index 8e0344e..91673bb 100644 --- a/vim/.vim/lua/plugins/diagnostics.lua +++ b/vim/.vim/lua/plugins/diagnostics.lua @@ -1,6 +1,19 @@ -- disable underline vim.diagnostic.handlers.underline.show = function() end +local signs = { + Error = " ", + Warning = " ", + Warn = " ", + Hint = "", + Info = " ", + Other = "", +} +for type, icon in pairs(signs) do + local hl = "DiagnosticSign" .. type + vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl }) +end + return { { "folke/trouble.nvim", @@ -22,24 +35,35 @@ return { { "]g", ":lua vim.diagnostic.goto_next()" }, }, }, + -- { + -- "rachartier/tiny-inline-diagnostic.nvim", + -- event = "LspAttach", + -- priority = 1000, -- needs to be loaded in first + -- config = function() + -- vim.diagnostic.config({ virtual_text = false }) + -- + -- require("tiny-inline-diagnostic").setup({ + -- preset = "classic", -- Can be: "modern", "classic", "minimal", "powerline", ghost", "simple", "nonerdfont", "amongus" + -- + -- -- Show the source of the diagnostic. + -- show_source = false, + -- + -- -- Use your defined signs in the diagnostic config table. + -- use_icons_from_diagnostic = true, + -- + -- -- Enable diagnostic message on all lines. + -- multilines = true, + -- + -- -- Show all diagnostics on the cursor line. + -- show_all_diags_on_cursorline = false, + -- }) + -- end, + -- }, { "https://git.sr.ht/~whynothugo/lsp_lines.nvim", event = { "LspAttach" }, name = "lsp_lines.nvim", config = function() - local signs = { - Error = " ", - Warning = " ", - Warn = " ", - Hint = "", - Info = " ", - Other = "", - } - for type, icon in pairs(signs) do - local hl = "DiagnosticSign" .. type - vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl }) - end - require("lsp_lines").setup() -- vim.schedule(function() diff --git a/vim/.vim/lua/plugins/lsp.lua b/vim/.vim/lua/plugins/lsp.lua index a733a85..b2eab92 100644 --- a/vim/.vim/lua/plugins/lsp.lua +++ b/vim/.vim/lua/plugins/lsp.lua @@ -2,84 +2,78 @@ local use_google = require("utils").use_google local flags = require("utils").flags return { - { - "ray-x/lsp_signature.nvim", - event = "VeryLazy", - opts = { - floating_window = true, - hint_prefix = "󰡱 ", - }, - config = function(_, opts) - require("lsp_signature").setup(opts) - end, - }, - { - "luozhiya/lsp-virtual-improved.nvim", - event = { "LspAttach" }, - config = function() - require("lsp-virtual-improved").setup() - end, - }, - { - "kosayoda/nvim-lightbulb", - commit = "1cae7b7153ae98dcf1b11173a443ac1b6d8e3d49", - event = { "LspAttach" }, - opts = { - autocmd = { enabled = true }, - virtual_text = { - enabled = true, - text = " 󱐋", - hl = "DiagnosticWarn", - }, - sign = { enabled = false }, - }, - }, - { - "L3MON4D3/LuaSnip", - build = "make install_jsregexp", - config = function() - require("luasnip.loaders.from_vscode").lazy_load() - end, - dependencies = { "rafamadriz/friendly-snippets" }, - }, - { - "hinell/lsp-timeout.nvim", - event = { "LspAttach" }, - dependencies = { "neovim/nvim-lspconfig" }, - -- cond = not use_google(), - config = function() - vim.g.lspTimeoutConfig = { - filetypes = { - ignore = { -- filetypes to ignore; empty by default - "gdscript", - "rust", - }, -- for these filetypes - }, - } - end, - }, - { - "ray-x/go.nvim", - dependencies = { -- optional packages - "ray-x/guihua.lua", - "neovim/nvim-lspconfig", - "nvim-treesitter/nvim-treesitter", - }, - -- cond = not use_google(), - config = function() - local capabilities = flags.blink - and require("blink.cmp").get_lsp_capabilities(vim.lsp.protocol.make_client_capabilities()) - or require("cmp_nvim_lsp").default_capabilities(vim.lsp.protocol.make_client_capabilities()) - capabilities.offsetEncoding = { "utf-16" } - require("go").setup({ - lsp_cfg = { capabilities = capabilities }, - lsp_keymaps = false, - lsp_inlay_hints = { - enable = not use_google(), -- doesn't work with ciderlsp - }, - }) - -- Run gofmt + goimports on save + { + "ray-x/lsp_signature.nvim", + event = "VeryLazy", + opts = { + floating_window = true, + hint_prefix = "󰡱 ", + }, + config = function(_, opts) + require("lsp_signature").setup(opts) + end, + }, + { + "kosayoda/nvim-lightbulb", + commit = "1cae7b7153ae98dcf1b11173a443ac1b6d8e3d49", + event = { "LspAttach" }, + opts = { + autocmd = { enabled = true }, + virtual_text = { + enabled = true, + text = " 󱐋", + hl = "DiagnosticWarn", + }, + sign = { enabled = false }, + }, + }, + { + "L3MON4D3/LuaSnip", + build = "make install_jsregexp", + config = function() + require("luasnip.loaders.from_vscode").lazy_load() + end, + dependencies = { "rafamadriz/friendly-snippets" }, + }, + { + "hinell/lsp-timeout.nvim", + event = { "LspAttach" }, + dependencies = { "neovim/nvim-lspconfig" }, + -- cond = not use_google(), + config = function() + vim.g.lspTimeoutConfig = { + filetypes = { + ignore = { -- filetypes to ignore; empty by default + "gdscript", + "rust", + }, -- for these filetypes + }, + } + end, + }, + { + "ray-x/go.nvim", + dependencies = { -- optional packages + "ray-x/guihua.lua", + "neovim/nvim-lspconfig", + "nvim-treesitter/nvim-treesitter", + }, + -- cond = not use_google(), + config = function() + local capabilities = flags.blink + and require("blink.cmp").get_lsp_capabilities(vim.lsp.protocol.make_client_capabilities()) + or require("cmp_nvim_lsp").default_capabilities(vim.lsp.protocol.make_client_capabilities()) + capabilities.offsetEncoding = { "utf-16" } + require("go").setup({ + lsp_cfg = { capabilities = capabilities }, + lsp_keymaps = false, + lsp_inlay_hints = { + enable = not use_google(), -- doesn't work with ciderlsp + }, + }) + -- Run gofmt + goimports on save +<<<<<<< HEAD local format_sync_grp = vim.api.nvim_create_augroup("goimports", {}) vim.api.nvim_create_autocmd("BufWritePre", { pattern = "*.go", @@ -117,25 +111,64 @@ return { config = function() local lsp_status = require("lsp-status") lsp_status.register_progress() +======= + local format_sync_grp = vim.api.nvim_create_augroup("goimports", {}) + vim.api.nvim_create_autocmd("BufWritePre", { + pattern = "*.go", + callback = function() + require("go.format").goimports() + end, + group = format_sync_grp, + }) + end, + ft = { "go", "gomod" }, + build = ':lua require("go.install").update_all_sync()', -- if you need to install/update all binaries + }, + { + "neovim/nvim-lspconfig", + dependencies = { + "hrsh7th/nvim-cmp", + "nvim-lua/lsp-status.nvim", + "VonHeikemen/lsp-zero.nvim", + }, + keys = { + { "F", ":lua vim.lsp.buf.format()" }, + { "rn", ":lua vim.lsp.buf.rename()" }, + { "L", ":lua vim.lsp.buf.hover()" }, + { "gr", ":Telescope lsp_references" }, + { "gd", ":lua vim.lsp.buf.definition()" }, + -- { "gd", "Telescope lsp_definitions" }, + { "gD", ":tab split | lua vim.lsp.buf.definition()" }, + { "gi", ":lua vim.lsp.buf.implementation()" }, + { "gI", ":lua vim.lsp.buf.implementation()" }, + { "gR", ":lua vim.lsp.buf.references()" }, + { "gt", ":lua vim.lsp.buf.type_definition()" }, + { "", ":lua vim.lsp.buf.signature_help()" }, + { "", ":lua vim.lsp.buf.signature_help()", mode = "i" }, + }, + config = function() + local lsp_status = require("lsp-status") + lsp_status.register_progress() +>>>>>>> cc84d4d (i dont even know) - local capabilities = flags.blink - and require("blink.cmp").get_lsp_capabilities(vim.lsp.protocol.make_client_capabilities()) - or require("cmp_nvim_lsp").default_capabilities(vim.lsp.protocol.make_client_capabilities()) - capabilities = vim.tbl_extend("keep", capabilities or {}, lsp_status.capabilities) - capabilities.offsetEncoding = { "utf-16" } + local capabilities = flags.blink + and require("blink.cmp").get_lsp_capabilities(vim.lsp.protocol.make_client_capabilities()) + or require("cmp_nvim_lsp").default_capabilities(vim.lsp.protocol.make_client_capabilities()) + capabilities = vim.tbl_extend("keep", capabilities or {}, lsp_status.capabilities) + capabilities.offsetEncoding = { "utf-16" } - local lspconfig = require("lspconfig") - local configs = require("lspconfig.configs") - require("config.lsp-google").setup(capabilities) + local lspconfig = require("lspconfig") + local configs = require("lspconfig.configs") + require("config.lsp-google").setup(capabilities) - -- Godot - lspconfig.gdscript.setup({ - -- flags = { - -- debounce_text_changes = 2000, -- Wait 5 seconds before sending didChange - -- }, - }) - vim.cmd([[autocmd FileType gdscript setlocal commentstring=#\ %s]]) - vim.cmd([[autocmd FileType gdscript setlocal autoindent noexpandtab tabstop=4 shiftwidth=4]]) - end, - }, + -- Godot + lspconfig.gdscript.setup({ + -- flags = { + -- debounce_text_changes = 2000, -- Wait 5 seconds before sending didChange + -- }, + }) + vim.cmd([[autocmd FileType gdscript setlocal commentstring=#\ %s]]) + vim.cmd([[autocmd FileType gdscript setlocal autoindent noexpandtab tabstop=4 shiftwidth=4]]) + end, + }, }