snippet tab "Insert tab literal" $0 endsnippet global !p comment=vim.current.buffer.options['commentstring'].strip() def commentbefore(): return comment[0:comment.find('%s')].strip() + ' ' def commentafter(): after=comment[comment.find('%s')+2:].strip() if 0 < len(after): return ' ' + after return '' endglobal snippet todo "TODO commment" `!p snip.rv=commentbefore()`TODO$1: $0`!p snip.rv=commentafter()` endsnippet snippet note "NOTE comment" `!p snip.rv=commentbefore()`NOTE: $0`!p snip.rv=commentafter()` endsnippet