diff options
author | Chris <[email protected]> | 2021-03-11 20:35:11 -0500 |
---|---|---|
committer | Chris <[email protected]> | 2021-03-11 20:35:11 -0500 |
commit | bb9b6bbc5de24c0cc08883d2f49fb6f246bf45a3 (patch) | |
tree | 8924bc7ef2b142ad820445c0ca1219c5166b143c | |
parent | 46b319153060b76c19e28a5f6b84c2d8fe7e7f36 (diff) |
updates for lua
-rw-r--r-- | init.vim | 1 | ||||
-rw-r--r-- | lua/lsp-wrapper.lua | 66 | ||||
-rw-r--r-- | lua/lsp/general-ls.lua | 15 | ||||
-rw-r--r-- | lua/lsp/lua-ls.lua | 60 | ||||
-rw-r--r-- | plug-config/lsp-config.vim | 1 | ||||
-rw-r--r-- | spell/en.utf-8.add | 16 | ||||
-rw-r--r-- | spell/en.utf-8.add.spl | bin | 221 -> 463 bytes | |||
-rwxr-xr-x | utils/easy-install-language-servers.sh | 11 |
8 files changed, 100 insertions, 70 deletions
@@ -25,6 +25,7 @@ else source ~/.config/nvim/themes/nvcode.vim " Plugin Configuration + luafile ~/.config/nvim/lua/lsp/general-ls.lua source ~/.config/nvim/keys/which-key.vim source ~/.config/nvim/plug-config/vim-commentary.vim source ~/.config/nvim/plug-config/rnvimr.vim diff --git a/lua/lsp-wrapper.lua b/lua/lsp-wrapper.lua index 7df60a7f..0771f1df 100644 --- a/lua/lsp-wrapper.lua +++ b/lua/lsp-wrapper.lua @@ -3,120 +3,120 @@ local lsp_wrapper = {} -- buf function lsp_wrapper.add_to_workspace_folder() - vim.lsp.buf.add_workspace_folder() + vim.lsp.buf.add_workspace_folder() end function lsp_wrapper.clear_references() - vim.lsp.buf.clear_references() + vim.lsp.buf.clear_references() end function lsp_wrapper.code_action() - vim.lsp.buf.code_action() + vim.lsp.buf.code_action() end function lsp_wrapper.declaration() - vim.lsp.buf.declaration() - vim.lsp.buf.clear_references() + vim.lsp.buf.declaration() + vim.lsp.buf.clear_references() end function lsp_wrapper.definition() - vim.lsp.buf.definition() - vim.lsp.buf.clear_references() + vim.lsp.buf.definition() + vim.lsp.buf.clear_references() end function lsp_wrapper.document_highlight() - vim.lsp.buf.document_highlight() + vim.lsp.buf.document_highlight() end function lsp_wrapper.document_symbol() - vim.lsp.buf.document_symbol() + vim.lsp.buf.document_symbol() end function lsp_wrapper.formatting() - vim.lsp.buf.formatting() + vim.lsp.buf.formatting() end function lsp_wrapper.formatting_sync() - vim.lsp.buf.formatting_sync() + vim.lsp.buf.formatting_sync() end function lsp_wrapper.hover() - vim.lsp.buf.hover() + vim.lsp.buf.hover() end function lsp_wrapper.implementation() - vim.lsp.buf.implementation() + vim.lsp.buf.implementation() end function lsp_wrapper.incoming_calls() - vim.lsp.buf.incoming_calls() + vim.lsp.buf.incoming_calls() end function lsp_wrapper.list_workspace_folders() - vim.lsp.buf.list_workspace_folders() + vim.lsp.buf.list_workspace_folders() end function lsp_wrapper.outgoing_calls() - vim.lsp.buf.outgoing_calls() + vim.lsp.buf.outgoing_calls() end function lsp_wrapper.range_code_action() - vim.lsp.buf.range_code_action() + vim.lsp.buf.range_code_action() end function lsp_wrapper.range_formatting() - vim.lsp.buf.range_formatting() + vim.lsp.buf.range_formatting() end function lsp_wrapper.references() - vim.lsp.buf.references() - vim.lsp.buf.clear_references() + vim.lsp.buf.references() + vim.lsp.buf.clear_references() end function lsp_wrapper.remove_workspace_folder() - vim.lsp.buf.remove_workspace_folder() + vim.lsp.buf.remove_workspace_folder() end function lsp_wrapper.rename() - vim.lsp.buf.rename() + vim.lsp.buf.rename() end function lsp_wrapper.signature_help() - vim.lsp.buf.signature_help() + vim.lsp.buf.signature_help() end function lsp_wrapper.type_definition() - vim.lsp.buf.type_definition() + vim.lsp.buf.type_definition() end function lsp_wrapper.workspace_symbol() - vim.lsp.buf.workspace_symbol() + vim.lsp.buf.workspace_symbol() end -- diagnostic function lsp_wrapper.get_all() - vim.lsp.diagnostic.get_all() + vim.lsp.diagnostic.get_all() end function lsp_wrapper.get_next() - vim.lsp.diagnostic.get_next() + vim.lsp.diagnostic.get_next() end function lsp_wrapper.get_prev() - vim.lsp.diagnostic.get_prev() + vim.lsp.diagnostic.get_prev() end function lsp_wrapper.goto_next() - vim.lsp.diagnostic.goto_next() + vim.lsp.diagnostic.goto_next() end function lsp_wrapper.goto_prev() - vim.lsp.diagnostic.goto_prev() + vim.lsp.diagnostic.goto_prev() end function lsp_wrapper.show_line_diagnostics() - vim.lsp.diagnostic.show_line_diagnostics() + vim.lsp.diagnostic.show_line_diagnostics() end -- misc @@ -128,9 +128,6 @@ end return lsp_wrapper - - - -- You can see more about the differences in types here: -- https://microsoft.github.io/language-server-protocol/specification#textDocument_documentHighlight @@ -141,7 +138,6 @@ return lsp_wrapper -- *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 diff --git a/lua/lsp/general-ls.lua b/lua/lsp/general-ls.lua new file mode 100644 index 00000000..fa28dbcf --- /dev/null +++ b/lua/lsp/general-ls.lua @@ -0,0 +1,15 @@ +require"lspconfig".efm.setup { + init_options = {documentFormatting = true}, + filetypes = {"lua"}, + settings = { + rootMarkers = {".git/"}, + languages = { + lua = { + { + formatCommand = "lua-format -i --no-keep-simple-function-one-line --no-break-after-operator --column-limit=150 --break-after-table-lb", + formatStdin = true + } + } + } + } +} diff --git a/lua/lsp/lua-ls.lua b/lua/lsp/lua-ls.lua index 22ffb529..c04219a9 100644 --- a/lua/lsp/lua-ls.lua +++ b/lua/lsp/lua-ls.lua @@ -1,47 +1,37 @@ -- https://github.com/sumneko/lua-language-server/wiki/Build-and-Run-(Standalone) --- TODO fix for different systems and put variable for user - -user="chris" +USER = vim.fn.expand('$USER') local sumneko_root_path = "" local sumneko_binary = "" -local system_name if vim.fn.has("mac") == 1 then - sumneko_root_path = "/Users/"..user.."/.config/nvim/lua-language-server" - sumneko_binary = "/Users/"..user.."/.config/nvim/lua-language-server/bin/macOS/lua-language-server" + sumneko_root_path = "/Users/" .. USER .. "/.config/nvim/lua-language-server" + sumneko_binary = "/Users/" .. USER .. "/.config/nvim/lua-language-server/bin/macOS/lua-language-server" elseif vim.fn.has("unix") == 1 then - sumneko_root_path = "/home/"..user.."/.config/nvim/lua-language-server" - sumneko_binary = "/home/"..user.."/.config/nvim/lua-language-server/bin/Linux/lua-language-server" -elseif vim.fn.has('win32') == 1 then - -- sumneko_root_path = "/Users/chris/.config/nvim/lua-language-server" - -- sumneko_binary = "/Users/chris/.config/nvim/lua-language-server/bin/macOS/lua-language-server" - print("Unsupported system for me") + sumneko_root_path = "/home/" .. USER .. "/.config/nvim/lua-language-server" + sumneko_binary = "/home/" .. USER .. "/.config/nvim/lua-language-server/bin/Linux/lua-language-server" else - print("Unsupported system for sumneko") + print("Unsupported system for sumneko") end require'lspconfig'.sumneko_lua.setup { - cmd = {sumneko_binary, "-E", sumneko_root_path .. "/main.lua"}; - settings = { - Lua = { - runtime = { - -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim) - version = 'LuaJIT', - -- Setup your lua path - path = vim.split(package.path, ';'), - }, - diagnostics = { - -- Get the language server to recognize the `vim` global - globals = {'vim'}, - }, - workspace = { - -- Make the server aware of Neovim runtime files - library = { - [vim.fn.expand('$VIMRUNTIME/lua')] = true, - [vim.fn.expand('$VIMRUNTIME/lua/vim/lsp')] = true, - }, - }, - }, - }, + cmd = {sumneko_binary, "-E", sumneko_root_path .. "/main.lua"}, + settings = { + Lua = { + runtime = { + -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim) + version = 'LuaJIT', + -- Setup your lua path + path = vim.split(package.path, ';') + }, + diagnostics = { + -- Get the language server to recognize the `vim` global + globals = {'vim'} + }, + workspace = { + -- Make the server aware of Neovim runtime files + library = {[vim.fn.expand('$VIMRUNTIME/lua')] = true, [vim.fn.expand('$VIMRUNTIME/lua/vim/lsp')] = true} + } + } + } } diff --git a/plug-config/lsp-config.vim b/plug-config/lsp-config.vim index 7dd605a2..d7bab5ff 100644 --- a/plug-config/lsp-config.vim +++ b/plug-config/lsp-config.vim @@ -10,5 +10,6 @@ nnoremap <silent> <C-n> <cmd>lua vim.lsp.diagnostic.goto_next()<CR> " autoformat autocmd BufWritePre *.js lua vim.lsp.buf.formatting_sync(nil, 100) autocmd BufWritePre *.jsx lua vim.lsp.buf.formatting_sync(nil, 100) +autocmd BufWritePre *.lua lua vim.lsp.buf.formatting_sync(nil, 100) " autocmd BufWritePre *.py lua vim.lsp.buf.formatting_sync(nil, 100) diff --git a/spell/en.utf-8.add b/spell/en.utf-8.add index cdaa1b28..a6c6d7bc 100644 --- a/spell/en.utf-8.add +++ b/spell/en.utf-8.add @@ -14,3 +14,19 @@ idc repo nvim lspconfig +IDE +Neovim's +Ubuntu +VIMRUNTIME +lsp +LuaJIT +sumneko +unix +macOS +wiki +github +https +dir +efm +LuaRocks +LuaFormatter diff --git a/spell/en.utf-8.add.spl b/spell/en.utf-8.add.spl Binary files differindex f14a6f00..82dc49e4 100644 --- a/spell/en.utf-8.add.spl +++ b/spell/en.utf-8.add.spl diff --git a/utils/easy-install-language-servers.sh b/utils/easy-install-language-servers.sh new file mode 100755 index 00000000..da54c11a --- /dev/null +++ b/utils/easy-install-language-servers.sh @@ -0,0 +1,11 @@ +npm i -g pyright +npm i -g bash-language-server +npm install -g vscode-css-languageserver-bin +npm install -g dockerfile-language-server-nodejs +npm install -g graphql-language-service-cli +npm install -g vscode-html-languageserver-bin +npm install -g typescript typescript-language-server +npm install -g vscode-json-languageserver +npm install -g vim-language-server +npm install -g yaml-language-server + |