Я не верю, что это возможно с Ultisnips, к сожалению.
Вы можете изменять зеркала входа, но не сам вход. Вы можете использовать функцию пост-расширения python, но это кажется слишком сложным для вашей проблемы.
С моей точки зрения, самое простое решение - заключить ваш ключ <CR>
(= enter
) в vim, и, если необходимо, добавить символ |
:
function HandleCR()
if getline(line('.')) =~ '^|'
return "\<CR>|"
endif
return "\<CR>"
endfunction
inoremap <buffer><silent> <CR> <C-r>=HandleCR()<CR>
(вставить в .vimrc
, а не в файл сниппета)
Обратите внимание, что это всегда будет работать, даже когда из фрагмента