dotfiles/nvim/.config/nvim/after/plugin/completion.vim
Sanchayan Maity 18b93f32d7 nvim: Refactor and update settings for completion-nvim
Use of trigger keys has been updated upstream. Also disable auto
completion.
2020-10-13 19:46:43 +05:30

50 lines
1.4 KiB
VimL

let g:completion_enable_auto_popup = 0
let g:completion_auto_change_source = 1
let g:completion_trigger_on_delete = 1
let g:completion_matching_ignore_case = 0
let g:completion_matching_strategy_list = ['exact', 'substring']
let g:completion_chain_complete_list = {
\ 'c': [
\ {'complete_items': ['buffers']},
\ {'mode': 'tags'},
\ {'mode': 'keyn'},
\ {'mode': '<c-p>'},
\ {'mode': '<c-n>'}
\],
\ 'haskell': [
\ {'complete_items': ['lsp']},
\ {'complete_items': ['buffers']},
\ {'mode': 'keyn'},
\ {'mode': '<c-p>'},
\ {'mode': '<c-n>'},
\],
\ 'rust': [
\ {'complete_items': ['lsp']},
\ {'complete_items': ['buffers']},
\ {'mode': 'keyn'}
\],
\ 'purescript': [
\ {'complete_items': ['lsp']},
\ {'complete_items': ['buffers']},
\ {'mode': 'keyn'},
\ {'mode': '<c-p>'},
\ {'mode': '<c-n>'}
\],
\ 'default': [
\ {'complete_items': ['buffers']},
\ {'mode': 'keyn'},
\ {'mode': '<c-p>'},
\ {'mode': '<c-n>'},
\],
\}
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"
imap <Tab> <Plug>(completion_smart_tab)
imap <C-j> <Plug>(completion_next_source)
imap <C-k> <Plug>(completion_prev_source)
" Use completion-nvim in every buffer
autocmd BufEnter * lua require'completion'.on_attach()