Advertisement
Guest User

My Nvim Lua Config -- LSP

a guest
Aug 11th, 2021
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.70 KB | None | 0 0
  1. require( 'paq' )
  2. { 'savq/paq-nvim'
  3. , 'jsit/disco.vim'
  4. , 'neovim/nvim-lspconfig'
  5. }
  6.  
  7. vim.cmd( 'colorscheme disco' )
  8.  
  9. vim.api.nvim_set_option( 'clipboard', 'unnamed' )
  10.  
  11. vim.api.nvim_win_set_option( 0 , 'list' , true )
  12. vim.api.nvim_win_set_option( 0 , 'number' , true )
  13.  
  14. vim.api.nvim_buf_set_option( 0 , 'tabstop' , 2 )
  15. vim.api.nvim_buf_set_option( 0 , 'shiftwidth' , 2 )
  16. vim.api.nvim_buf_set_option( 0 , 'expandtab' , true )
  17.  
  18. vim.opt.listchars = { tab = '<->' , space = '.' }
  19.  
  20. --> [ LSP SETTINGS ]
  21.  
  22. vim.lsp.set_log_level( 'debug' )
  23.  
  24. require( 'lspconfig' ).hls.setup{ on_active = on_active }
  25.  
  26. local function on_active ( cli, buf )
  27. local opt = { noremap = true , silent = true }
  28. local function buf_set_keymap ( ... ) vim.api.nvim_buf_set_keymap( buf , ... ) end
  29. local function buf_set_option ( ... ) vim.api.nvim_buf_set_option( buf , ... ) end
  30.  
  31. buf_set_option( 'omnifunc' , 'v:lua.vim.lsp.omnifunc' )
  32.  
  33. buf_set_keymap( 'n' , 'KK' , ':lua vim.lsp.buf.hover()<CR>' , opts )
  34. buf_set_keymap( 'n' , 'gd' , ':lua vim.lsp.buf.definition()<CR>' , opts )
  35. buf_set_keymap( 'n' , 'gD' , ':lua vim.lsp.buf.declaration()<CR>' , opts )
  36. buf_set_keymap( 'n' , 'gi' , ':lua vim.lsp.buf.implementation()<CR>' , opts )
  37. buf_set_keymap( 'n' , '<C>-k' , ':lua vim.lsp.buf.signature_help()<CR>' , opts )
  38. buf_set_keymap( 'n' , '<space>D' , ':lua vim.lsp.buf.type_definition()<CR>' , opts )
  39. buf_set_keymap( 'n' , '<space>rn' , ':lua vim.lsp.buf.rename()<CR>' , opts )
  40. buf_set_keymap( 'n' , '<space>ca' , ':lua vim.lsp.buf.code_action()<CR>' , opts )
  41. buf_set_keymap( 'n' , 'gr' , ':lua vim.lsp.buf.references()<CR>' , opts )
  42.  
  43. buf_set_keymap( 'n' , '<space>e' , ':lua vim.lsp.diagnostics.show_line_diagnostics()<CR>' , opts )
  44. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement