From 6a155521123c37c6f24bb7a13c62f8226959ff97 Mon Sep 17 00:00:00 2001 From: Bertrand Benjamin Date: Mon, 2 Aug 2021 09:08:56 +0200 Subject: [PATCH] Feat: autocompletion for nvim --- nvim/.config/nvim/general/settings.vim | 3 +- nvim/.config/nvim/init.vim | 9 ++-- .../{plug-config => plugins}/lightline.vim | 0 nvim/.config/nvim/plugins/nvim-comp.vim | 53 +++++++++++++++++++ .../nvim/{vim-plug => plugins}/plugins.vim | 6 ++- .../nvim/{plug-config => plugins}/vimtex.vim | 0 6 files changed, 64 insertions(+), 7 deletions(-) rename nvim/.config/nvim/{plug-config => plugins}/lightline.vim (100%) create mode 100644 nvim/.config/nvim/plugins/nvim-comp.vim rename nvim/.config/nvim/{vim-plug => plugins}/plugins.vim (88%) rename nvim/.config/nvim/{plug-config => plugins}/vimtex.vim (100%) diff --git a/nvim/.config/nvim/general/settings.vim b/nvim/.config/nvim/general/settings.vim index 43f522b..b8233c1 100644 --- a/nvim/.config/nvim/general/settings.vim +++ b/nvim/.config/nvim/general/settings.vim @@ -60,7 +60,8 @@ execute "set colorcolumn=" . join(range(81,335), ',') colorscheme zenburn " Set completeopt to have a better completion experience -set completeopt=menuone,noinsert,noselect +" set completeopt=menuone,noinsert,noselect +set completeopt=menuone,noselect " Avoid showing message extra message when using completion set shortmess+=c diff --git a/nvim/.config/nvim/init.vim b/nvim/.config/nvim/init.vim index bd97fe1..fbea522 100644 --- a/nvim/.config/nvim/init.vim +++ b/nvim/.config/nvim/init.vim @@ -1,14 +1,15 @@ -source $HOME/.config/nvim/vim-plug/plugins.vim +source $HOME/.config/nvim/plugins/plugins.vim source $HOME/.config/nvim/general/settings.vim source $HOME/.config/nvim/general/mappings.vim -source $HOME/.config/nvim/general/completion.vim +" source $HOME/.confia/vim/general/completion.vim -source $HOME/.config/nvim/plug-config/lightline.vim +source $HOME/.config/nvim/plugins/lightline.vim +source $HOME/.config/nvim/plugins/nvim-comp.vim lua < vsnip#expandable() ? '(vsnip-expand)' : '' +smap vsnip#expandable() ? '(vsnip-expand)' : '' + +" Expand or jump +imap vsnip#available(1) ? '(vsnip-expand-or-jump)' : '' +smap vsnip#available(1) ? '(vsnip-expand-or-jump)' : '' + +" Jump forward or backward +imap vsnip#jumpable(1) ? '(vsnip-jump-next)' : '' +smap vsnip#jumpable(1) ? '(vsnip-jump-next)' : '' +imap vsnip#jumpable(-1) ? '(vsnip-jump-prev)' : '' +smap vsnip#jumpable(-1) ? '(vsnip-jump-prev)' : '' + +" Select or cut text to use as $TM_SELECTED_TEXT in the next snippet. +" See https://github.com/hrsh7th/vim-vsnip/pull/50 +nmap s (vsnip-select-text) +xmap s (vsnip-select-text) +nmap S (vsnip-cut-text) +xmap S (vsnip-cut-text) + +" " If you want to use snippet for multiple filetypes, you can `g:vsnip_filetypes` for it. +" let g:vsnip_filetypes = {} +" let g:vsnip_filetypes.javascriptreact = ['javascript'] +" let g:vsnip_filetypes.typescriptreact = ['typescript'] diff --git a/nvim/.config/nvim/vim-plug/plugins.vim b/nvim/.config/nvim/plugins/plugins.vim similarity index 88% rename from nvim/.config/nvim/vim-plug/plugins.vim rename to nvim/.config/nvim/plugins/plugins.vim index 47f2874..88a2fc3 100644 --- a/nvim/.config/nvim/vim-plug/plugins.vim +++ b/nvim/.config/nvim/plugins/plugins.vim @@ -21,8 +21,10 @@ call plug#begin('~/.config/nvim/autoload/plugged') Plug 'Yggdroot/indentLine' Plug 'neovim/nvim-lspconfig' - " Plug 'hrsh7th/nvim-compe' - Plug 'nvim-lua/completion-nvim' + Plug 'hrsh7th/nvim-compe' + Plug 'hrsh7th/vim-vsnip' + Plug 'hrsh7th/vim-vsnip-integ' + " Plug 'nvim-lua/completion-nvim' Plug 'nvim-lua/popup.nvim' Plug 'nvim-lua/plenary.nvim' diff --git a/nvim/.config/nvim/plug-config/vimtex.vim b/nvim/.config/nvim/plugins/vimtex.vim similarity index 100% rename from nvim/.config/nvim/plug-config/vimtex.vim rename to nvim/.config/nvim/plugins/vimtex.vim