" Description: Expand snippet on file creation.

" Attempt to expand the _template snippet if this is a new file.
" https://noahfrederick.com/log/vim-templates-with-ultisnips-and-projectionist
function! snippet#template() abort
  " Return if non-empty buffer or file exists.
  if !(line('$') == 1 && getline('$') ==# '') || filereadable(expand('%'))
    return
  endif
  " Attempt to expand the _template snippet.
  execute "normal! i_template\<C-r>=UltiSnips#ExpandSnippet()\<CR>"
  if g:ulti_expand_res == 0
    " Expansions failed, undo insert.
    silent! undo
  endif
endfunction