diff --git a/config/vim/init.vim b/config/vim/init.vim index db84cd3..58be4d3 100644 --- a/config/vim/init.vim +++ b/config/vim/init.vim @@ -100,8 +100,12 @@ g:mucomplete#can_complete = { import "./lsp.vim" lsp.LazyConfigure() +set formatexpr=lsp#lsp#FormatExpr() set keywordprg=:LspHover +nnoremap gD LspGotoDeclaration nnoremap gd LspGotoDefinition nnoremap gi LspGotoImpl +nnoremap LspShowSignature +nnoremap gr LspShowReferences xnoremap e LspSelectionExpand xnoremap s LspSelectionShrink diff --git a/config/vim/lsp.vim b/config/vim/lsp.vim index 4af017c..e2e8126 100644 --- a/config/vim/lsp.vim +++ b/config/vim/lsp.vim @@ -17,6 +17,14 @@ const lspServers = [ install: 'brew install lua-language-server', }, + { + name: 'taplo', + filetype: 'toml', + path: '/usr/local/bin/taplo', + args: ['lsp', 'stdio'], + install: 'brew install taplo', + }, + { name: 'tilt-lsp', filetype: 'bzl', @@ -67,10 +75,23 @@ const lspServers = [ args: ['--stdio'], install: 'npm install -g vim-language-server', }, + + { + name: 'yaml-language-server', + filetype: 'yaml', + path: expand('~/.local/bin/yaml-language-server'), + args: ['--stdio'], + workspaceConfig: {yaml: { + format: {enable: true, singleQuote: true}, + schemaStore: {enable: true, url: 'https://www.schemastore.org/api/json/catalog.json'}, + }}, + install: 'npm install -g yaml-language-server', + }, ] const lspOptions = { aleSupport: true, + ignoreMissingServer: true, } command! -nargs=0 -bar LspInstall Install() @@ -125,4 +146,3 @@ export def Install(): void # understand exactly what the install script is doing. term->term_sendkeys(installScript) enddef - diff --git a/config/vim/plugins.vim b/config/vim/plugins.vim index 5045f8c..d79d194 100644 --- a/config/vim/plugins.vim +++ b/config/vim/plugins.vim @@ -60,6 +60,7 @@ minpac#add('Glench/Vim-Jinja2-Syntax') minpac#add('tweekmonster/braceless.vim') minpac#add('vito-c/jq.vim') +minpac#add('NoahTheDuke/vim-just') minpac#add('fladson/vim-kitty')