UltiSnips integration for ncm2.
- snippet completion source
- trigger dynamic snippet of completed item, e.g. parameter expansion.
user_data
found in vim8/nvim's documentation:help complete-item
" based on ultisnips
Plug 'ncm2/ncm2-ultisnips'
Plug 'SirVer/ultisnips'
" Press enter key to trigger snippet expansion
" The parameters are the same as `:help feedkeys()`
inoremap <silent> <expr> <CR> ncm2_ultisnips#expand_or("\<CR>", 'n')
" c-j c-k for moving in snippet
" let g:UltiSnipsExpandTrigger = "<Plug>(ultisnips_expand)"
let g:UltiSnipsJumpForwardTrigger = "<c-j>"
let g:UltiSnipsJumpBackwardTrigger = "<c-k>"
let g:UltiSnipsRemoveSelectModeMappings = 0
:help UltiSnips
for more information on using UltiSnips.
If you need more control over the completed item's snippet expansion, you might need these two APIs to help program your key mapping.
ncm2_ultisnips#completed_is_snippet()
Checks whether the v:completed_item
is also a snippet.
<Plug>(ncm2_ultisnips_expand_completed)
Use this key to expand the completed snippet.