From 0281a6a11edc19f46b46ab5fc8b477d4f7b355f7 Mon Sep 17 00:00:00 2001 From: Simon Vieille Date: Tue, 3 May 2022 21:24:29 +0200 Subject: [PATCH] add omnifunc=LanguageClient for several languages --- vimrc | 49 +++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 39 insertions(+), 10 deletions(-) diff --git a/vimrc b/vimrc index fb232db..9955c57 100644 --- a/vimrc +++ b/vimrc @@ -28,10 +28,10 @@ Plugin 'majutsushi/tagbar' Plugin 'leafgarland/typescript-vim.git' Plugin 'SirVer/ultisnips.git' Plugin 'taglist.vim' -" Plugin 'bling/vim-airline.git' +" " Plugin 'bling/vim-airline.git' Plugin 'vim-airline/vim-airline' Plugin 'kchmck/vim-coffee-script.git' -Plugin 'sheerun/vim-polyglot' +" Plugin 'sheerun/vim-polyglot' Plugin 'honza/vim-snippets.git' Plugin 'tobyS/vmustache.git' Plugin 'sjl/gundo.vim.git' @@ -70,11 +70,13 @@ Plugin 'rosenfeld/conque-term' " Plugin 'joonty/vdebug' Plugin 'isRuslan/vim-es6' Plugin 'suan/vim-instant-markdown' -Plugin 'dracula/vim' +"Plugin 'dracula/vim' Plugin 'sniphpets/sniphpets-doctrine' Plugin 'sniphpets/sniphpets' "Plugin 'jaxbot/semantic-highlight.vim' -Plugin 'thaerkh/vim-indentguides' +"Plugin 'thaerkh/vim-indentguides' +"Plugin 'nathanaelkane/vim-indent-guides' +Plugin 'Yggdroot/indentLine' Plugin 'PotatoesMaster/i3-vim-syntax' Plugin 'fatih/vim-go' Plugin 'mhinz/vim-signify' @@ -83,16 +85,18 @@ Plugin 'wahidrahim/resize-font' Plugin 'skywind3000/asyncrun.vim' Plugin 'valloric/listtoggle' Plugin 'c9s/phpunit.vim' -Plugin 'terryma/vim-multiple-cursors' +" Plugin 'terryma/vim-multiple-cursors' Plugin 'dkarter/bullets.vim' Plugin 'connorholyday/vim-snazzy' Plugin 'bluz71/vim-moonfly-colors' Plugin 'glepnir/oceanic-material' -" Plugin 'patstockwell/vim-monokai-tasty' +" " Plugin 'patstockwell/vim-monokai-tasty' Plugin 'AlessandroYorba/Sierra' Plugin 'junegunn/fzf' Plugin 'ParamagicDev/vim-medic_chalk' - +Plugin 'vim-ruby/vim-ruby' +Plugin 'Shadowsith/vim-ruby-autocomplete' +Plugin 'autozimu/LanguageClient-neovim' call vundle#end() @@ -254,6 +258,8 @@ command! Sfforms CtrlPSymfonyForms " let g:php_cs_fixer_level = '' " let g:php_cs_fixer_php_path = "/usr/bin/php7.3" +" GUIDES + " CTAGS " """"""""" @@ -358,14 +364,18 @@ if !exists('g:neocomplete#keyword_patterns') endif if !exists('g:neocomplete#force_omni_input_patterns') - let g:neocomplete#force_omni_input_patterns = {} + let g:neocomplete#force_omni_input_patterns = {} endif +let g:ruby_autocomplete_solargraph = '/home/simon/.gem/ruby/2.7.0/bin/solargraph' +let g:completor_ruby_omni_trigger = '([$\w]{1,}|\.[\w]*|::[$\w]*)$' + let g:acp_enableAtStartup = 0 let g:neocomplete#enable_at_startup = 1 let g:neocomplete#enable_smart_case = 1 let g:neocomplete#sources#syntax#min_keyword_length = 3 let g:neocomplete#force_omni_input_patterns.php = '\h\w*\|[^. \t]->\%(\h\w*\)\?\|\h\w*::\%(\h\w*\)\?' +let g:neocomplete#force_omni_input_patterns.ruby = '[^. *\t]\.\w*\|\h\w*::' "let g:neocomplete#force_omni_input_patterns.php = '\h\w*\|[^- \t]->\w*' let g:neocomplete#lock_buffer_name_pattern = '\*ku\*' let g:neocomplete#sources#dictionary#dictionaries = { @@ -375,6 +385,17 @@ let g:neocomplete#sources#dictionary#dictionaries = { \ } let g:neocomplete#disable_auto_complete = 1 let g:neocomplete#keyword_patterns['default'] = '\h\w*' + +if !exists('g:LanguageClient_serverCommands') + let g:LanguageClient_serverCommands = {} + let g:LanguageClient_serverCommands.php = ['/home/simon/bin/phpactor', 'language-server'] + let g:LanguageClient_serverCommands.bash = ['bash-language-server', 'start'] + let g:LanguageClient_serverCommands.sh = ['bash-language-server', 'start'] + let g:LanguageClient_serverCommands.css = ['css-languageserver', '--stdio'] + let g:LanguageClient_serverCommands.scss = ['css-languageserver', '--stdio'] + let g:LanguageClient_serverCommands.js = ['quick-lint-js', '--stdin'] +endif + inoremap neocomplete#undo_completion() inoremap neocomplete#complete_common_string() inoremap =my_cr_function() @@ -430,7 +451,7 @@ noremap :call PhpDoc() let mapleader = "_" map :!indentation % -map :!php7.4 ~/php-cs-fixer.phar fix "%" --rules=@PSR2,@PhpCsFixer,@Symfony +map :!php8.0 ~/php-cs-fixer.phar fix "%" --rules=@PSR2,@PhpCsFixer,@Symfony map :!phpmd % text /usr/share/phpmd/psr2.xml \| cut -d: -f2- map :!php -l % map :w @@ -481,6 +502,7 @@ set splitbelow set splitright set hlsearch set nomodeline + " set modeline " set guifont=Consolas\ 13 " set guifont=Fantasque\ Sans\ Mono\ 14 @@ -502,9 +524,16 @@ autocmd FileType python setlocal noexpandtab autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS -autocmd FileType php setlocal omnifunc=phpcomplete#CompletePHP +"autocmd FileType php setlocal omnifunc=phpcomplete#CompletePHP +autocmd FileType php setlocal omnifunc=LanguageClient#complete autocmd FileType python setlocal omnifunc=pythoncomplete#Complete autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags +autocmd FileType js setlocal omnifunc=xmlcomplete#CompleteTags + +autocmd FileType bash setlocal omnifunc=LanguageClient#complete +autocmd FileType sh setlocal omnifunc=LanguageClient#complete +autocmd FileType css setlocal omnifunc=LanguageClient#complete +autocmd FileType scss setlocal omnifunc=LanguageClient#complete au BufRead,BufNewFile *.yaml,*.yml setfiletype yaml au BufRead,BufNewFile *.vue setfiletype html