updates for lua

This commit is contained in:
Chris 2021-03-11 20:35:11 -05:00
parent 46b3191530
commit bb9b6bbc5d
8 changed files with 100 additions and 70 deletions

View file

@ -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

15
lua/lsp/general-ls.lua Normal file
View file

@ -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
}
}
}
}
}

View file

@ -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}
}
}
}
}