diff options
author | Christian Chiarulli <[email protected]> | 2021-03-09 23:55:11 -0500 |
---|---|---|
committer | GitHub <[email protected]> | 2021-03-09 23:55:11 -0500 |
commit | 474f961b2a31c0fe8281188150c08cc2849bf4df (patch) | |
tree | 8a25933cd7a63eddbcab05220d702a6ba7c7f2b6 /lua/lsp-wrapper.lua | |
parent | 56f65b12a446fe05483a23585dd4e3104205b062 (diff) |
Native LSP, more Lua, less CoC
Diffstat (limited to 'lua/lsp-wrapper.lua')
-rw-r--r-- | lua/lsp-wrapper.lua | 258 |
1 files changed, 258 insertions, 0 deletions
diff --git a/lua/lsp-wrapper.lua b/lua/lsp-wrapper.lua new file mode 100644 index 00000000..7df60a7f --- /dev/null +++ b/lua/lsp-wrapper.lua @@ -0,0 +1,258 @@ +local lsp_wrapper = {} + +-- buf + +function lsp_wrapper.add_to_workspace_folder() + vim.lsp.buf.add_workspace_folder() +end + +function lsp_wrapper.clear_references() + vim.lsp.buf.clear_references() +end + +function lsp_wrapper.code_action() + vim.lsp.buf.code_action() +end + +function lsp_wrapper.declaration() + vim.lsp.buf.declaration() + vim.lsp.buf.clear_references() +end + +function lsp_wrapper.definition() + vim.lsp.buf.definition() + vim.lsp.buf.clear_references() +end + +function lsp_wrapper.document_highlight() + vim.lsp.buf.document_highlight() +end + +function lsp_wrapper.document_symbol() + vim.lsp.buf.document_symbol() +end + +function lsp_wrapper.formatting() + vim.lsp.buf.formatting() +end + +function lsp_wrapper.formatting_sync() + vim.lsp.buf.formatting_sync() +end + +function lsp_wrapper.hover() + vim.lsp.buf.hover() +end + +function lsp_wrapper.implementation() + vim.lsp.buf.implementation() +end + +function lsp_wrapper.incoming_calls() + vim.lsp.buf.incoming_calls() +end + +function lsp_wrapper.list_workspace_folders() + vim.lsp.buf.list_workspace_folders() +end + +function lsp_wrapper.outgoing_calls() + vim.lsp.buf.outgoing_calls() +end + +function lsp_wrapper.range_code_action() + vim.lsp.buf.range_code_action() +end + +function lsp_wrapper.range_formatting() + vim.lsp.buf.range_formatting() +end + +function lsp_wrapper.references() + vim.lsp.buf.references() + vim.lsp.buf.clear_references() +end + +function lsp_wrapper.remove_workspace_folder() + vim.lsp.buf.remove_workspace_folder() +end + +function lsp_wrapper.rename() + vim.lsp.buf.rename() +end + +function lsp_wrapper.signature_help() + vim.lsp.buf.signature_help() +end + +function lsp_wrapper.type_definition() + vim.lsp.buf.type_definition() +end + +function lsp_wrapper.workspace_symbol() + vim.lsp.buf.workspace_symbol() +end + +-- diagnostic + +function lsp_wrapper.get_all() + vim.lsp.diagnostic.get_all() +end + +function lsp_wrapper.get_next() + vim.lsp.diagnostic.get_next() +end + +function lsp_wrapper.get_prev() + vim.lsp.diagnostic.get_prev() +end + +function lsp_wrapper.goto_next() + vim.lsp.diagnostic.goto_next() +end + +function lsp_wrapper.goto_prev() + vim.lsp.diagnostic.goto_prev() +end + +function lsp_wrapper.show_line_diagnostics() + vim.lsp.diagnostic.show_line_diagnostics() +end + +-- misc + +-- :lua print(vim.inspect(vim.lsp.buf_get_clients())) + +-- autoformat +-- autocmd BufWritePre *.rs lua vim.lsp.buf.formatting_sync(nil, 1000) + +return lsp_wrapper + + + + +-- You can see more about the differences in types here: +-- https://microsoft.github.io/language-server-protocol/specification#textDocument_documentHighlight + +-- *hl-LspReferenceText* +-- LspReferenceText used for highlighting "text" references +-- *hl-LspReferenceRead* +-- LspReferenceRead used for highlighting "read" references +-- *hl-LspReferenceWrite* +-- LspReferenceWrite used for highlighting "write" references + + +-- *lsp-highlight-diagnostics* +-- All highlights defined for diagnostics begin with `LspDiagnostics` followed by +-- the type of highlight (e.g., `Sign`, `Underline`, etc.) and then the Severity +-- of the highlight (e.g. `Error`, `Warning`, etc.) + +-- Sign, underline and virtual text highlights (by default) are linked to their +-- corresponding LspDiagnosticsDefault highlight. + +-- For example, the default highlighting for |hl-LspDiagnosticsSignError| is +-- linked to |hl-LspDiagnosticsDefaultError|. To change the default (and +-- therefore the linked highlights), use the |:highlight| command: > + +-- highlight LspDiagnosticsDefaultError guifg="BrightRed" +-- < + +-- *hl-LspDiagnosticsDefaultError* +-- LspDiagnosticsDefaultError +-- Used as the base highlight group. +-- Other LspDiagnostic highlights link to this by default (except Underline) + +-- *hl-LspDiagnosticsDefaultWarning* +-- LspDiagnosticsDefaultWarning +-- Used as the base highlight group. +-- Other LspDiagnostic highlights link to this by default (except Underline) + +-- *hl-LspDiagnosticsDefaultInformation* +-- LspDiagnosticsDefaultInformation +-- Used as the base highlight group. +-- Other LspDiagnostic highlights link to this by default (except Underline) + +-- *hl-LspDiagnosticsDefaultHint* +-- LspDiagnosticsDefaultHint +-- Used as the base highlight group. +-- Other LspDiagnostic highlights link to this by default (except Underline) + +-- *hl-LspDiagnosticsVirtualTextError* +-- LspDiagnosticsVirtualTextError +-- Used for "Error" diagnostic virtual text. +-- See |vim.lsp.diagnostic.set_virtual_text()| + +-- *hl-LspDiagnosticsVirtualTextWarning* +-- LspDiagnosticsVirtualTextWarning +-- Used for "Warning" diagnostic virtual text. +-- See |vim.lsp.diagnostic.set_virtual_text()| + +-- *hl-LspDiagnosticsVirtualTextInformation* +-- LspDiagnosticsVirtualTextInformation +-- Used for "Information" diagnostic virtual text. +-- See |vim.lsp.diagnostic.set_virtual_text()| + +-- *hl-LspDiagnosticsVirtualTextHint* +-- LspDiagnosticsVirtualTextHint +-- Used for "Hint" diagnostic virtual text. +-- See |vim.lsp.diagnostic.set_virtual_text()| + +-- *hl-LspDiagnosticsUnderlineError* +-- LspDiagnosticsUnderlineError +-- Used to underline "Error" diagnostics. +-- See |vim.lsp.diagnostic.set_underline()| + +-- *hl-LspDiagnosticsUnderlineWarning* +-- LspDiagnosticsUnderlineWarning +-- Used to underline "Warning" diagnostics. +-- See |vim.lsp.diagnostic.set_underline()| + +-- *hl-LspDiagnosticsUnderlineInformation* +-- LspDiagnosticsUnderlineInformation +-- Used to underline "Information" diagnostics. +-- See |vim.lsp.diagnostic.set_underline()| + +-- *hl-LspDiagnosticsUnderlineHint* +-- LspDiagnosticsUnderlineHint +-- Used to underline "Hint" diagnostics. +-- See |vim.lsp.diagnostic.set_underline()| + +-- *hl-LspDiagnosticsFloatingError* +-- LspDiagnosticsFloatingError +-- Used to color "Error" diagnostic messages in diagnostics float. +-- See |vim.lsp.diagnostic.show_line_diagnostics()| + +-- *hl-LspDiagnosticsFloatingWarning* +-- LspDiagnosticsFloatingWarning +-- Used to color "Warning" diagnostic messages in diagnostics float. +-- See |vim.lsp.diagnostic.show_line_diagnostics()| + +-- *hl-LspDiagnosticsFloatingInformation* +-- LspDiagnosticsFloatingInformation +-- Used to color "Information" diagnostic messages in diagnostics float. +-- See |vim.lsp.diagnostic.show_line_diagnostics()| + +-- *hl-LspDiagnosticsFloatingHint* +-- LspDiagnosticsFloatingHint +-- Used to color "Hint" diagnostic messages in diagnostics float. +-- See |vim.lsp.diagnostic.show_line_diagnostics()| + +-- *hl-LspDiagnosticsSignError* +-- LspDiagnosticsSignError +-- Used for "Error" signs in sign column. +-- See |vim.lsp.diagnostic.set_signs()| + +-- *hl-LspDiagnosticsSignWarning* +-- LspDiagnosticsSignWarning +-- Used for "Warning" signs in sign column. +-- See |vim.lsp.diagnostic.set_signs()| + +-- *hl-LspDiagnosticsSignInformation* +-- LspDiagnosticsSignInformation +-- Used for "Information" signs in sign column. +-- See |vim.lsp.diagnostic.set_signs()| + +-- *hl-LspDiagnosticsSignHint* +-- LspDiagnosticsSignHint +-- Used for "Hint" signs in sign column. +-- See |vim.lsp.diagnostic.set_signs()| |