lsp support
This commit is contained in:
parent
c458b179c6
commit
72a8e2ba4b
3 changed files with 62 additions and 4 deletions
|
@ -4,8 +4,8 @@ let VM_leader = ','
|
||||||
|
|
||||||
noremap <leader>/ :Commentary<cr>
|
noremap <leader>/ :Commentary<cr>
|
||||||
|
|
||||||
noremap <F4> :make!<cr>
|
" noremap <F4> :make!<cr>
|
||||||
noremap <F3> :! ./%<cr>
|
" noremap <F3> :! ./%<cr>
|
||||||
|
|
||||||
noremap <A-f> :Files<cr>
|
noremap <A-f> :Files<cr>
|
||||||
noremap <A-b> :Buffers<cr>
|
noremap <A-b> :Buffers<cr>
|
||||||
|
|
43
_config/nvim/plugin/lsp.lua
Normal file
43
_config/nvim/plugin/lsp.lua
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
local lsp = require('lsp-zero').preset({})
|
||||||
|
|
||||||
|
lsp.on_attach(function(client, bufnr)
|
||||||
|
-- see :help lsp-zero-keybindings
|
||||||
|
-- to learn the available actions
|
||||||
|
lsp.default_keymaps({buffer = bufnr})
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- " (Optional) Configure lua language server for neovim
|
||||||
|
require('lspconfig').lua_ls.setup(lsp.nvim_lua_ls())
|
||||||
|
|
||||||
|
-- You need to setup `cmp` after lsp-zero
|
||||||
|
local cmp = require('cmp')
|
||||||
|
local cmp_action = require('lsp-zero').cmp_action()
|
||||||
|
|
||||||
|
cmp.setup({
|
||||||
|
mapping = {
|
||||||
|
-- `Enter` key to confirm completion
|
||||||
|
['<CR>'] = cmp.mapping.confirm({select = false}),
|
||||||
|
|
||||||
|
-- Ctrl+Space to trigger completion menu
|
||||||
|
['<C-Space>'] = cmp.mapping.complete(),
|
||||||
|
|
||||||
|
-- Navigate between snippet placeholder
|
||||||
|
['<C-f>'] = cmp_action.luasnip_jump_forward(),
|
||||||
|
['<C-b>'] = cmp_action.luasnip_jump_backward(),
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
local null_ls = require('null-ls')
|
||||||
|
local null_opts = lsp.build_options('null-ls', {})
|
||||||
|
|
||||||
|
null_ls.setup({
|
||||||
|
on_attach = function(client, bufnr)
|
||||||
|
null_opts.on_attach(client, bufnr)
|
||||||
|
--- you can add more stuff here if you need it
|
||||||
|
end,
|
||||||
|
sources = {
|
||||||
|
null_ls.builtins.formatting.black,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
lsp.setup()
|
|
@ -4,12 +4,12 @@ Plug 'tpope/vim-fugitive'
|
||||||
Plug 'vim-syntastic/syntastic'
|
Plug 'vim-syntastic/syntastic'
|
||||||
Plug 'junegunn/fzf.vim'
|
Plug 'junegunn/fzf.vim'
|
||||||
Plug 'tpope/vim-surround'
|
Plug 'tpope/vim-surround'
|
||||||
Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
|
" Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||||
" Plug 'deoplete-plugins/deoplete-clang'
|
" Plug 'deoplete-plugins/deoplete-clang'
|
||||||
" Plug 'deoplete-plugins/deoplete-jedi'
|
" Plug 'deoplete-plugins/deoplete-jedi'
|
||||||
" Plug 'deoplete-plugins/deoplete-go', { 'do': 'make'}
|
" Plug 'deoplete-plugins/deoplete-go', { 'do': 'make'}
|
||||||
" Plug 'carlitux/deoplete-ternjs', { 'do': 'npm install tern'}
|
" Plug 'carlitux/deoplete-ternjs', { 'do': 'npm install tern'}
|
||||||
Plug 'tbodt/deoplete-tabnine', { 'do': './install.sh' }
|
" Plug 'tbodt/deoplete-tabnine', { 'do': './install.sh' }
|
||||||
Plug 'mg979/vim-visual-multi'
|
Plug 'mg979/vim-visual-multi'
|
||||||
" Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' }
|
" Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' }
|
||||||
" Plug 'ndmitchell/ghcid', { 'rtp': 'plugins/nvim' }
|
" Plug 'ndmitchell/ghcid', { 'rtp': 'plugins/nvim' }
|
||||||
|
@ -18,4 +18,19 @@ Plug 'luochen1990/rainbow'
|
||||||
Plug 'sirver/ultisnips'
|
Plug 'sirver/ultisnips'
|
||||||
Plug 'lervag/vimtex'
|
Plug 'lervag/vimtex'
|
||||||
Plug 'tpope/vim-commentary'
|
Plug 'tpope/vim-commentary'
|
||||||
|
|
||||||
|
" LSP Support
|
||||||
|
Plug 'neovim/nvim-lspconfig'
|
||||||
|
Plug 'williamboman/mason.nvim'
|
||||||
|
Plug 'williamboman/mason-lspconfig.nvim'
|
||||||
|
|
||||||
|
Plug 'nvim-lua/plenary.nvim'
|
||||||
|
Plug 'jose-elias-alvarez/null-ls.nvim'
|
||||||
|
|
||||||
|
" Autocompletion
|
||||||
|
Plug 'hrsh7th/nvim-cmp'
|
||||||
|
Plug 'hrsh7th/cmp-nvim-lsp'
|
||||||
|
Plug 'L3MON4D3/LuaSnip'
|
||||||
|
|
||||||
|
Plug 'VonHeikemen/lsp-zero.nvim', {'branch': 'v2.x'}
|
||||||
call plug#end()
|
call plug#end()
|
||||||
|
|
Loading…
Add table
Reference in a new issue