mirror of
https://github.com/LunarVim/LunarVim.git
synced 2025-09-01 08:15:20 +02:00
updates for lua
This commit is contained in:
parent
46b3191530
commit
bb9b6bbc5d
8 changed files with 100 additions and 70 deletions
1
init.vim
1
init.vim
|
@ -25,6 +25,7 @@ else
|
||||||
source ~/.config/nvim/themes/nvcode.vim
|
source ~/.config/nvim/themes/nvcode.vim
|
||||||
|
|
||||||
" Plugin Configuration
|
" Plugin Configuration
|
||||||
|
luafile ~/.config/nvim/lua/lsp/general-ls.lua
|
||||||
source ~/.config/nvim/keys/which-key.vim
|
source ~/.config/nvim/keys/which-key.vim
|
||||||
source ~/.config/nvim/plug-config/vim-commentary.vim
|
source ~/.config/nvim/plug-config/vim-commentary.vim
|
||||||
source ~/.config/nvim/plug-config/rnvimr.vim
|
source ~/.config/nvim/plug-config/rnvimr.vim
|
||||||
|
|
|
@ -128,9 +128,6 @@ end
|
||||||
|
|
||||||
return lsp_wrapper
|
return lsp_wrapper
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- You can see more about the differences in types here:
|
-- You can see more about the differences in types here:
|
||||||
-- https://microsoft.github.io/language-server-protocol/specification#textDocument_documentHighlight
|
-- https://microsoft.github.io/language-server-protocol/specification#textDocument_documentHighlight
|
||||||
|
|
||||||
|
@ -141,7 +138,6 @@ return lsp_wrapper
|
||||||
-- *hl-LspReferenceWrite*
|
-- *hl-LspReferenceWrite*
|
||||||
-- LspReferenceWrite used for highlighting "write" references
|
-- LspReferenceWrite used for highlighting "write" references
|
||||||
|
|
||||||
|
|
||||||
-- *lsp-highlight-diagnostics*
|
-- *lsp-highlight-diagnostics*
|
||||||
-- All highlights defined for diagnostics begin with `LspDiagnostics` followed by
|
-- All highlights defined for diagnostics begin with `LspDiagnostics` followed by
|
||||||
-- the type of highlight (e.g., `Sign`, `Underline`, etc.) and then the Severity
|
-- the type of highlight (e.g., `Sign`, `Underline`, etc.) and then the Severity
|
||||||
|
|
15
lua/lsp/general-ls.lua
Normal file
15
lua/lsp/general-ls.lua
Normal 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
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,47 +1,37 @@
|
||||||
-- https://github.com/sumneko/lua-language-server/wiki/Build-and-Run-(Standalone)
|
-- https://github.com/sumneko/lua-language-server/wiki/Build-and-Run-(Standalone)
|
||||||
-- TODO fix for different systems and put variable for user
|
USER = vim.fn.expand('$USER')
|
||||||
|
|
||||||
user="chris"
|
|
||||||
|
|
||||||
local sumneko_root_path = ""
|
local sumneko_root_path = ""
|
||||||
local sumneko_binary = ""
|
local sumneko_binary = ""
|
||||||
|
|
||||||
local system_name
|
|
||||||
if vim.fn.has("mac") == 1 then
|
if vim.fn.has("mac") == 1 then
|
||||||
sumneko_root_path = "/Users/"..user.."/.config/nvim/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"
|
sumneko_binary = "/Users/" .. USER .. "/.config/nvim/lua-language-server/bin/macOS/lua-language-server"
|
||||||
elseif vim.fn.has("unix") == 1 then
|
elseif vim.fn.has("unix") == 1 then
|
||||||
sumneko_root_path = "/home/"..user.."/.config/nvim/lua-language-server"
|
sumneko_root_path = "/home/" .. USER .. "/.config/nvim/lua-language-server"
|
||||||
sumneko_binary = "/home/"..user.."/.config/nvim/lua-language-server/bin/Linux/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")
|
|
||||||
else
|
else
|
||||||
print("Unsupported system for sumneko")
|
print("Unsupported system for sumneko")
|
||||||
end
|
end
|
||||||
|
|
||||||
require'lspconfig'.sumneko_lua.setup {
|
require'lspconfig'.sumneko_lua.setup {
|
||||||
cmd = {sumneko_binary, "-E", sumneko_root_path .. "/main.lua"};
|
cmd = {sumneko_binary, "-E", sumneko_root_path .. "/main.lua"},
|
||||||
settings = {
|
settings = {
|
||||||
Lua = {
|
Lua = {
|
||||||
runtime = {
|
runtime = {
|
||||||
-- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
|
-- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
|
||||||
version = 'LuaJIT',
|
version = 'LuaJIT',
|
||||||
-- Setup your lua path
|
-- Setup your lua path
|
||||||
path = vim.split(package.path, ';'),
|
path = vim.split(package.path, ';')
|
||||||
},
|
},
|
||||||
diagnostics = {
|
diagnostics = {
|
||||||
-- Get the language server to recognize the `vim` global
|
-- Get the language server to recognize the `vim` global
|
||||||
globals = {'vim'},
|
globals = {'vim'}
|
||||||
},
|
},
|
||||||
workspace = {
|
workspace = {
|
||||||
-- Make the server aware of Neovim runtime files
|
-- Make the server aware of Neovim runtime files
|
||||||
library = {
|
library = {[vim.fn.expand('$VIMRUNTIME/lua')] = true, [vim.fn.expand('$VIMRUNTIME/lua/vim/lsp')] = true}
|
||||||
[vim.fn.expand('$VIMRUNTIME/lua')] = true,
|
}
|
||||||
[vim.fn.expand('$VIMRUNTIME/lua/vim/lsp')] = true,
|
}
|
||||||
},
|
}
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,5 +10,6 @@ nnoremap <silent> <C-n> <cmd>lua vim.lsp.diagnostic.goto_next()<CR>
|
||||||
" autoformat
|
" autoformat
|
||||||
autocmd BufWritePre *.js lua vim.lsp.buf.formatting_sync(nil, 100)
|
autocmd BufWritePre *.js lua vim.lsp.buf.formatting_sync(nil, 100)
|
||||||
autocmd BufWritePre *.jsx 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)
|
" autocmd BufWritePre *.py lua vim.lsp.buf.formatting_sync(nil, 100)
|
||||||
|
|
||||||
|
|
|
@ -14,3 +14,19 @@ idc
|
||||||
repo
|
repo
|
||||||
nvim
|
nvim
|
||||||
lspconfig
|
lspconfig
|
||||||
|
IDE
|
||||||
|
Neovim's
|
||||||
|
Ubuntu
|
||||||
|
VIMRUNTIME
|
||||||
|
lsp
|
||||||
|
LuaJIT
|
||||||
|
sumneko
|
||||||
|
unix
|
||||||
|
macOS
|
||||||
|
wiki
|
||||||
|
github
|
||||||
|
https
|
||||||
|
dir
|
||||||
|
efm
|
||||||
|
LuaRocks
|
||||||
|
LuaFormatter
|
||||||
|
|
Binary file not shown.
11
utils/easy-install-language-servers.sh
Executable file
11
utils/easy-install-language-servers.sh
Executable file
|
@ -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
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue