From b193e74556f23c26fca8963e974863a7b9e19227 Mon Sep 17 00:00:00 2001 From: Reiner Herrmann Date: Thu, 2 Nov 2023 19:16:51 +0100 Subject: vim: replace vim-lsc with lsp vim-lsc development seems to stagnate, and lsp seems to be already more feature-rich. lsp requires vim9, but this is available in current Debian stable. --- .gitmodules | 6 ++--- vim/pack/default/start/lsp | 1 + vim/pack/default/start/vim-lsc | 1 - vimrc | 51 +++++++++++++++++++++++++----------------- 4 files changed, 35 insertions(+), 24 deletions(-) create mode 160000 vim/pack/default/start/lsp delete mode 160000 vim/pack/default/start/vim-lsc diff --git a/.gitmodules b/.gitmodules index c65d87b..61ae22f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -19,9 +19,6 @@ [submodule "fzf.vim"] path = vim/pack/default/start/fzf.vim url = https://github.com/junegunn/fzf.vim.git -[submodule "vim-lsc"] - path = vim/pack/default/start/vim-lsc - url = https://github.com/natebosch/vim-lsc.git [submodule "vim/pack/default/start/srcery-vim"] path = vim/pack/default/start/srcery-vim url = https://github.com/srcery-colors/srcery-vim.git @@ -31,3 +28,6 @@ [submodule "vim/pack/default/start/vim-cpp-modern"] path = vim/pack/default/start/vim-cpp-modern url = https://github.com/bfrg/vim-cpp-modern.git +[submodule "vim/pack/default/start/lsp"] + path = vim/pack/default/start/lsp + url = https://github.com/yegappan/lsp.git diff --git a/vim/pack/default/start/lsp b/vim/pack/default/start/lsp new file mode 160000 index 0000000..3897040 --- /dev/null +++ b/vim/pack/default/start/lsp @@ -0,0 +1 @@ +Subproject commit 38970403dc4d602056ea4028664206ffce74e82a diff --git a/vim/pack/default/start/vim-lsc b/vim/pack/default/start/vim-lsc deleted file mode 160000 index 14203f0..0000000 --- a/vim/pack/default/start/vim-lsc +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 14203f07add90e273020f626e6d1a79b9fd694c4 diff --git a/vimrc b/vimrc index a58bc93..2459891 100644 --- a/vimrc +++ b/vimrc @@ -144,25 +144,36 @@ let g:bufExplorerShowNoName=1 let g:airline#extensions#whitespace#enabled=0 let g:airline#extensions#tabline#enabled=1 -" LSC settings -let g:lsc_auto_map=v:true -let g:lsc_auto_map={'defaults': v:true, 'NextReference':'', 'PreviousReference':''} -let g:lsc_server_commands= - \ { 'rust': { - \ 'command': 'rust-analyzer', - \ 'log_level': -1, - \ 'suppress_stderr': v:true - \ }, - \ 'c': { - \ 'command': ['ccls', '--init={"cache":{"directory":"' . $HOME . '/.cache/ccls-cache"}}'], - \ 'log_level': -1, - \ 'suppress_stderr': v:true - \ }, - \ 'cpp': { - \ 'command': ['ccls', '--init={"cache":{"directory":"' . $HOME . '/.cache/ccls-cache"}}'], - \ 'log_level': -1, - \ 'suppress_stderr': v:true - \ } - \ } +" LSP settings +packadd lsp +call LspOptionsSet(#{ + \ autoHighlight: v:true, + \ showDiagOnStatusLine: v:true, + \ showDiagWithVirtualText: v:true, + \ usePopupInCodeAction: v:true, + \ }) +call LspAddServer([#{ + \ name: 'clangd', + \ filetype: ['c', 'cpp'], + \ path: 'clangd', + \ args: ['--background-index'] + \ }]) +call LspAddServer([#{ + \ name: 'rust-analyzer', + \ filetype: ['rust'], + \ path: 'rust-analyzer', + \ args: [], + \ syncInit: v:true, + \ initializationOptions: #{ + \ inlayHints: #{ + \ typeHints: #{ + \ enable: v:true + \ }, + \ parameterHints: #{ + \ enable: v:true + \ } + \ }, + \ } + \ }]) " vim: set et:sw=4:sts=4 -- cgit v1.2.3