snippet header standard Vim script file header
	" File: ${1:`expand('%:t')`}
	" Author: ${2:`g:snips_author`}
	" Description: ${3}
	${0:" Last Modified: `strftime("%B %d, %Y")`}
snippet guard script reload guard
	if exists('${1:did_`vim_snippets#Filename()`}') || &cp${2: || version < 700}
		finish
	endif
	let $1 = 1${0}
snippet f function
	fun! ${1:`expand('%') =~ 'autoload' ? substitute(matchstr(expand('%:p'),'autoload/\zs.*\ze.vim'),'[/\\]','#','g').'#' : ''`}${2:function_name}(${3})
		${0}
	endf
snippet t try ... catch statement
	try
		${1:${VISUAL}}
	catch ${2}
		${0}
	endtry
snippet for for ... in loop
	for ${1} in ${2}
		${0:${VISUAL}}
	endfor
snippet forkv for [key, value] in loop
	for [${1},${2}] in items(${3})
		${0}
		unlet $1 $2
	endfor
snippet wh while loop
	while ${1}
		${0:${VISUAL}}
	endw
snippet if if statement
	if ${1}
		${0:${VISUAL}}
	endif
snippet ife if ... else statement
	if ${1}
		${2:${VISUAL}}
	else
		${0}
	endif
snippet au augroup ... autocmd block
	augroup ${1:AU_NAME}
		" this one is which you're most likely to use?
		autocmd ${2:BufRead,BufNewFile} ${3:*.ext,*.ext3|<buffer[=N]>} ${0}
	augroup end
snippet bun Vundle.vim Plugin definition
	Plugin '${0}'
snippet plug vim-plug Plugin definition
	Plug '${0}'
snippet plugdo vim-plug Plugin definition with { 'do': '' }
	Plug '${1}', { 'do': '${0}' }
snippet plugon vim-plug Plugin definition with { 'on': '' }
	Plug '${1}', { 'on': '${0}' }
snippet plugfor vim-plug Plugin definition with { 'for': '' }
	Plug '${1}', { 'for': '${0}' }
snippet plugbr vim-plug Plugin definition with { 'branch': '' }
	Plug '${1}', { 'branch': '${0}' }
snippet plugtag vim-plug Plugin definition with { 'tag': '' }
	Plug '${1}', { 'tag': '${0}' }
snippet let
	let ${1:variable} = ${0: value}
snippet se
	set ${1:setting};
snippet set
	set ${1:setting} = ${0:value}
snippet nn
	nnoremap ${1} ${2}<CR>
snippet no
	noremap ${1} ${2}
snippet vm
	vmap ${1} ${2}
snippet im
	imap ${1} ${2}
snippet exe
	execute ${1}
snippet filename
	`Filename()`
