.vim/autoload/vimrc.vim

Thu, 14 Sep 2017 19:39:46 -0400

author
Meredith Howard <mhoward@roomag.org>
date
Thu, 14 Sep 2017 19:39:46 -0400
changeset 640
f8985ae54969
parent 632
9a87ce42aa3c
child 641
60b56bbfc143
permissions
-rw-r--r--

avoid abbreviated options

func! vimrc#CommandAlias(abbrev, expand) abort
  execute printf('cnoreabbrev <expr> %s (getcmdtype()==":" && getcmdline()=="%s") ? "%s" : "%s"', a:abbrev, a:abbrev, a:expand, a:abbrev)
endfunc

func! vimrc#AutoFmtToggle() abort
  if &formatoptions =~ 'a'
    setl formatoptions-=a | echo '-a'
  else
    setl formatoptions+=a | echo '+a'
  endif
endfunc

func! vimrc#Ltag(term) abort
  exe "ltag " . a:term
  lopen
endfunc

" Make paths when writing, as necessary
func! vimrc#MkNonExDir(file, buf) abort
  if empty(getbufvar(a:buf, '&buftype')) && a:file!~#'\v^\w+\:\/'
    let dir=fnamemodify(a:file, ':h')
    if !isdirectory(dir)
      call mkdir(dir, 'p')
    endif
  endif
endfunc

func! vimrc#AutoSessionConfig() abort
  if strlen(v:servername) > 0 && match(v:servername, 'VIM') == -1
    exec 'UniteSessionLoad ' . tolower(v:servername)
  endif
endfunc

func! vimrc#VundleInstallAndBegin() abort
  let bundlepath = g:myvim . '/bundle'

  if !filereadable(bundlepath . '/vundle/README.md')
    if !executable('git')
      echo "Can't autoinstall Vundle without git"
      return
    endif

    if !isdirectory(bundlepath)
      call mkdir(bundlepath, 'p')
    endif
    exec 'cd ' . bundlepath
    silent !git clone --depth 1 https://github.com/gmarik/vundle
    cd -

    echo "Installed Vundle, run :PluginInstall if desired"
  endif

  let &runtimepath .= ',' . bundlepath . '/vundle'
  call vundle#begin(bundlepath)
endfunc

mercurial