Extract autocommand commands to a function for clarity.

This commit is contained in:
Andy Stewart
2018-05-29 10:27:52 +01:00
parent f32eecc4fc
commit c4301f9a10

View File

@@ -175,14 +175,30 @@ nnoremap <silent> <Plug>GitGutterPreviewHunk :GitGutterPreviewHunk<CR>
function! s:flag_inactive_tabs()
let active_tab = tabpagenr()
let last_tab = tabpagenr('$')
for i in range(1, last_tab)
for i in range(1, tabpagenr('$'))
if i != active_tab
call settabvar(i, 'gitgutter_force', 1)
endif
endfor
endfunction
function! s:on_bufenter()
if exists('t:gitgutter_didtabenter') && t:gitgutter_didtabenter
let t:gitgutter_didtabenter = 0
let force = !g:gitgutter_terminal_reports_focus
if exists('t:gitgutter_force') && t:gitgutter_force
let t:gitgutter_force = 0
let force = 1
endif
call gitgutter#all(force)
else
call gitgutter#init_buffer(bufnr(''))
call gitgutter#process_buffer(bufnr(''), !g:gitgutter_terminal_reports_focus)
endif
endfunction
" Autocommands {{{
augroup gitgutter
@@ -190,19 +206,7 @@ augroup gitgutter
autocmd TabEnter * let t:gitgutter_didtabenter = 1
autocmd BufEnter *
\ if exists('t:gitgutter_didtabenter') && t:gitgutter_didtabenter |
\ let t:gitgutter_didtabenter = 0 |
\ let force = !g:gitgutter_terminal_reports_focus |
\ if exists('t:gitgutter_force') && t:gitgutter_force |
\ let t:gitgutter_force = 0 |
\ let force = 1 |
\ endif |
\ call gitgutter#all(force) |
\ else |
\ call gitgutter#init_buffer(bufnr('')) |
\ call gitgutter#process_buffer(bufnr(''), !g:gitgutter_terminal_reports_focus) |
\ endif
autocmd BufEnter * call s:on_bufenter()
autocmd CursorHold,CursorHoldI * call gitgutter#process_buffer(bufnr(''), 0)
autocmd FileChangedShellPost,ShellCmdPost * call gitgutter#process_buffer(bufnr(''), 1)