UltiSnips integration for ncm2.
- snippet completion source
- trigger dynamic snippet of completed item, e.g. parameter expansion.
user_datafound 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.