diff options
| author | srdusr <trevorgray@srdusr.com> | 2023-05-06 11:14:29 +0200 |
|---|---|---|
| committer | srdusr <trevorgray@srdusr.com> | 2023-05-06 11:14:29 +0200 |
| commit | 3a3a3824c8c1fc18cbd5a30e5cfef027f2b5a049 (patch) | |
| tree | 1ad67fa0d266d48ce1df311eeb7dc389669c259d /lua | |
| parent | 356e8ec9fcb3c08df3a8f940c3ca286457e7789b (diff) | |
| download | dotfiles-3a3a3824c8c1fc18cbd5a30e5cfef027f2b5a049.tar.gz dotfiles-3a3a3824c8c1fc18cbd5a30e5cfef027f2b5a049.zip | |
Update FloatBorders UI
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/plugins/lsp.lua | 176 |
1 files changed, 90 insertions, 86 deletions
diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index 6c40c9c..04d07ba 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -6,43 +6,44 @@ local keymap = vim.keymap local cmd = vim.cmd local border = { - { '🭽', 'FloatBorder' }, - { '▔', 'FloatBorder' }, - { '🭾', 'FloatBorder' }, - { '▕', 'FloatBorder' }, - { '🭿', 'FloatBorder' }, - { '▁', 'FloatBorder' }, - { '🭼', 'FloatBorder' }, - { '▏', 'FloatBorder' }, + { "┌", "FloatBorder" }, + { "─", "FloatBorder" }, + { "┐", "FloatBorder" }, + { "│", "FloatBorder" }, + { "┘", "FloatBorder" }, + { "─", "FloatBorder" }, + { "└", "FloatBorder" }, + { "│", "FloatBorder" }, } + local signs = { Error = " ", Warn = "▲", Info = "", Hint = "⚑" } for type, icon in pairs(signs) do - local hl = "DiagnosticSign" .. type - vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl }) + local hl = "DiagnosticSign" .. type + vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl }) end vim.diagnostic.config({ - underline = false, - signs = true, - virtual_text = false, - virtual_lines = { only_current_line = true }, - float = { - show_header = true, - source = 'if_many', - --border = 'rounded', - border = border, - focusable = true, - }, - update_in_insert = false, -- default to false - severity_sort = false, -- default to false + underline = false, + signs = true, + virtual_text = false, + virtual_lines = { only_current_line = true }, + float = { + show_header = true, + source = 'if_many', + --border = 'rounded', + border = border, + focusable = true, + }, + update_in_insert = false, -- default to false + severity_sort = false, -- default to false }) vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, { - underline = false, - virtual_text = false, - signs = true, - update_in_insert = false, + underline = false, + virtual_text = false, + signs = true, + update_in_insert = false, }) vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { border = "rounded" }) @@ -53,38 +54,39 @@ local on_attach = function(client, bufnr) -- Enable completion triggered by <c-x><c-o> vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc') local map = function(mode, l, r, opts) - opts = opts or {} - opts.silent = true + opts = opts or {} + opts.silent = true opts.noremap = true - opts.buffer = bufnr - keymap.set(mode, l, r, opts) + opts.buffer = bufnr + keymap.set(mode, l, r, opts) end -- Mappings - map("n", "K", "<Cmd>lua vim.lsp.buf.hover()<CR>") + map("n", "K", "<Cmd>lua vim.lsp.buf.hover()<CR>") --map("n", "gd", "<Cmd>lua vim.lsp.buf.definition()<CR>") map("n", "gd", "<cmd>lua require('goto-preview').goto_preview_definition()<CR>") - --map("n", "gi", "<Cmd>lua vim.lsp.buf.implementation()<CR>") - map("n", "gi", "<cmd>lua require('goto-preview').goto_preview_implementation()<CR>") - --map("n", "gr", "<Cmd>lua vim.lsp.buf.references()<CR>") - map("n", "gr", "<cmd>lua require('goto-preview').goto_preview_references()<CR>") - map("n", "gD", "<Cmd>lua vim.lsp.buf.declaration()<CR>") -- most lsp servers don't implement textDocument/Declaration, so gD is useless for now. - map("n", "<leader>k", "<Cmd>lua vim.lsp.buf.signature_help()<CR>") - --map("n", "gt", "<Cmd>lua vim.lsp.buf.type_definition()<CR>") - map("n", "gt", "<cmd>lua require('goto-preview').goto_preview_type_definition()<CR>") - map("n", "gn", "<Cmd>lua vim.lsp.buf.rename()<CR>") - map("n", "ga", "<Cmd>lua vim.lsp.buf.code_action()<CR>") + --map("n", "gi", "<Cmd>lua vim.lsp.buf.implementation()<CR>") + map("n", "gi", "<cmd>lua require('goto-preview').goto_preview_implementation()<CR>") + --map("n", "gr", "<Cmd>lua vim.lsp.buf.references()<CR>") + map("n", "gr", "<cmd>lua require('goto-preview').goto_preview_references()<CR>") + map("n", "gD", "<Cmd>lua vim.lsp.buf.declaration()<CR>") -- most lsp servers don't implement textDocument/Declaration, so gD is useless for now. + map("n", "<leader>k", "<Cmd>lua vim.lsp.buf.signature_help()<CR>") + --map("n", "gt", "<Cmd>lua vim.lsp.buf.type_definition()<CR>") + map("n", "gt", "<cmd>lua require('goto-preview').goto_preview_type_definition()<CR>") + map("n", "gn", "<Cmd>lua vim.lsp.buf.rename()<CR>") + map("n", "ga", "<Cmd>lua vim.lsp.buf.code_action()<CR>") map("n", "gf", "<Cmd>lua vim.lsp.buf.formatting()<CR>") - map("n", "go", "<Cmd>lua vim.diagnostic.open_float()<CR>") - map("n", "<leader>go", ":call utils#ToggleDiagnosticsOpenFloat()<CR> | :echom ('Toggle Diagnostics Float open/close...')<CR> | :sl! | echo ('')<CR>") - map("n", "[d", "<Cmd>lua vim.diagnostic.goto_prev()<CR>") - map("n", "]d", "<Cmd>lua vim.diagnostic.goto_next()<CR>") - map("n", "gs", "<Cmd>lua vim.lsp.buf.document_symbol()<CR>") - map("n", "gw", "<Cmd>lua vim.lsp.buf.workspace_symbol()<CR>") - map("n", "<leader>wa", "<Cmd>lua vim.lsp.buf.add_workspace_folder()<CR>") - map("n", "<leader>wr", "<Cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>") - map("n", "<leader>wl", function() - print(vim.inspect(vim.lsp.buf.list_workspace_folders())) - end) + map("n", "go", "<Cmd>lua vim.diagnostic.open_float()<CR>") + map("n", "<leader>go", + ":call utils#ToggleDiagnosticsOpenFloat()<CR> | :echom ('Toggle Diagnostics Float open/close...')<CR> | :sl! | echo ('')<CR>") + map("n", "[d", "<Cmd>lua vim.diagnostic.goto_prev()<CR>") + map("n", "]d", "<Cmd>lua vim.diagnostic.goto_next()<CR>") + map("n", "gs", "<Cmd>lua vim.lsp.buf.document_symbol()<CR>") + map("n", "gw", "<Cmd>lua vim.lsp.buf.workspace_symbol()<CR>") + map("n", "<leader>wa", "<Cmd>lua vim.lsp.buf.add_workspace_folder()<CR>") + map("n", "<leader>wr", "<Cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>") + map("n", "<leader>wl", function() + print(vim.inspect(vim.lsp.buf.list_workspace_folders())) + end) -- TODO: Use the nicer new API for autocommands cmd 'augroup lsp_aucmds' @@ -163,32 +165,33 @@ local servers = { }, }, lua_ls = ({ - on_attach = on_attach, - capabilities = capabilities, + on_attach = on_attach, + capabilities = capabilities, debounce_text_changes = 500, - settings = { - Lua = { - runtime = { - version = "LuaJIT", + settings = { + Lua = { + runtime = { + version = "LuaJIT", path = vim.split(package.path, ';'), - }, - diagnostics = { + }, + diagnostics = { enable = true, - globals = { "vim" }, - }, - workspace = { + globals = { "vim" }, + }, + workspace = { maxPreload = 2000, - preloadFileSize = 50000, + preloadFileSize = 50000, checkThirdParty = false, - }, - }, - }, - }), - sqlls = {}, - tsserver = { capabilities = require("cmp_nvim_lsp").default_capabilities(vim.lsp.protocol.make_client_capabilities()), + }, + }, + }, + }), + sqlls = {}, + tsserver = { + capabilities = require("cmp_nvim_lsp").default_capabilities(vim.lsp.protocol.make_client_capabilities()), on_attach = function(client) - client.server_capabilities.document_formatting = false - client.server_capabilities.document_range_formatting = false + client.server_capabilities.document_formatting = false + client.server_capabilities.document_range_formatting = false end, filetypes = { 'javascript', @@ -197,7 +200,8 @@ local servers = { 'typescript', 'typescriptreact', 'typescript.tsx' - }, }, + }, + }, vimls = {}, yamlls = {}, } @@ -289,7 +293,7 @@ null_ls.setup { -- null_ls.builtins.formatting.prettier, builtins.formatting.prettier.with({ filetypes = { "javascript", "javascriptreact", "typescript", "typescriptreact", "json", "yaml", "markdown", "html", - "css", "scss", "less", "graphql", "vue", "svelte" }, + "css", "scss", "less", "graphql", "vue", "svelte" }, extra_args = { "--single-quote", "--tab-width 4", "--print-width 200" }, }), --null_ls.builtins.formatting.prettierd, @@ -312,16 +316,16 @@ null_ls.setup { builtins.hover.dictionary, builtins.hover.printenv, }, - on_attach = function(client, bufnr) - if client.supports_method("textDocument/formatting") then - vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr }) - vim.api.nvim_create_autocmd("BufWritePre", { - group = augroup, - buffer = bufnr, - callback = function() - vim.lsp.buf.format() - end - }) + on_attach = function(client, bufnr) + if client.supports_method("textDocument/formatting") then + vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr }) + vim.api.nvim_create_autocmd("BufWritePre", { + group = augroup, + buffer = bufnr, + callback = function() + vim.lsp.buf.format() end - end, + }) + end + end, } |
