Refactor BufWrite/BufLeave autocmds
This commit is contained in:
parent
df68c1d595
commit
fced85576c
@ -85,19 +85,36 @@ function TrimTrailingLines()
|
||||
call winrestview(view)
|
||||
endfunction
|
||||
|
||||
augroup maximus
|
||||
function OnWrite()
|
||||
if Writeable()
|
||||
call CleanFile()
|
||||
endif
|
||||
endfunction
|
||||
|
||||
autocmd BufWrite * call TrimTrailingInvisibles() | call TrimTrailingLines()
|
||||
autocmd BufLeave * if &buftype == ''
|
||||
function OnLeave()
|
||||
if Writeable()
|
||||
call CleanFile()
|
||||
write
|
||||
GitGutter
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function CleanFile()
|
||||
call TrimTrailingInvisibles() | call TrimTrailingLines()
|
||||
endfunction
|
||||
|
||||
function Writeable()
|
||||
return &buftype == ''
|
||||
\ && !&readonly
|
||||
\ && &modifiable
|
||||
\ && &modified
|
||||
\ && expand("%:t") != ""
|
||||
\ | call TrimTrailingInvisibles()
|
||||
\ | call TrimTrailingLines()
|
||||
\ | w
|
||||
\ | GitGutter
|
||||
\ | endif
|
||||
endfunction
|
||||
|
||||
augroup maximus
|
||||
|
||||
autocmd BufWrite * call OnWrite()
|
||||
autocmd BufLeave * call OnLeave()
|
||||
|
||||
augroup END
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user