language_server.vim 920 B

123456789101112131415161718192021
  1. " Required for operations modifying multiple buffers like rename.
  2. set hidden
  3. let g:LanguageClient_autoStart = 1
  4. let g:LanguageClient_serverCommands = {
  5. \ 'rust': ['~/.cargo/bin/rustup', 'run', 'stable', 'rls'],
  6. \ 'javascript': ['javascript-typescript-stdio'],
  7. \ 'javascript.jsx': ['javascript-typescript-stdio'],
  8. \ 'python': ['pyls'],
  9. \ 'sh': ['bash-language-server', 'start'],
  10. \ 'c' : ['cquery'],
  11. \ 'cpp' : ['cquery'],
  12. \ }
  13. nnoremap <silent> <leader>gh :call LanguageClient_textDocument_hover()<CR>
  14. nnoremap <silent> <leader>gd :call LanguageClient_textDocument_definition()<CR>
  15. nnoremap <silent> <leader>gr :call LanguageClient_textDocument_rename()<CR>
  16. nnoremap <silent> <leader>gc :call LanguageClient_contextMenu()<CR>
  17. nnoremap <silent> <leader>fr :call LanguageClient_textDocument_references()<CR>
  18. nnoremap <silent> <leader>fix :call LanguageClient#textDocument_formatting()<CR>