vim-autoformat/plugin/autoformat.vim

36 lines
888 B
VimL
Raw Normal View History

2012-09-30 16:11:36 -04:00
"Function for formatting the entire buffer
2012-12-02 09:27:50 -05:00
function! s:Autoformat()
"If a formatprg is specified
if &formatprg!=""
"Save window state
let winview=winsaveview()
"Autoformat code
:silent exe "normal gggqG"
"Recall window state
call winrestview(winview)
else
echo "No formatter installed for this filetype"
endif
2012-09-30 16:11:36 -04:00
endfunction
2012-12-02 09:27:50 -05:00
"Create a command for this
2012-12-02 09:33:03 -05:00
command! Autoformat call s:Autoformat()
2012-12-02 11:12:49 -05:00
"Function for finding and setting the formatter
"with the given name, if the formatter is installed
"globally or in the formatters folder
let s:formatterdir = fnamemodify(expand("<sfile>"), ":h:h")."/formatters/"
2012-12-02 13:55:32 -05:00
function! g:FindFormatter(name, args)
2012-12-02 11:12:49 -05:00
if executable(a:name)
let s:prgpath = a:name
else
let s:bars = expand("<sfile>")
let s:prgpath = s:formatterdir.a:name
endif
if executable(s:prgpath)
let &formatprg=s:prgpath." ".a:args
endif
endfunction