mirror of
https://github.com/airblade/vim-gitgutter.git
synced 2025-11-08 19:43:47 -05:00
Extract autocommand commands to a function for clarity.
This commit is contained in:
@@ -175,14 +175,30 @@ nnoremap <silent> <Plug>GitGutterPreviewHunk :GitGutterPreviewHunk<CR>
|
|||||||
|
|
||||||
function! s:flag_inactive_tabs()
|
function! s:flag_inactive_tabs()
|
||||||
let active_tab = tabpagenr()
|
let active_tab = tabpagenr()
|
||||||
let last_tab = tabpagenr('$')
|
for i in range(1, tabpagenr('$'))
|
||||||
for i in range(1, last_tab)
|
|
||||||
if i != active_tab
|
if i != active_tab
|
||||||
call settabvar(i, 'gitgutter_force', 1)
|
call settabvar(i, 'gitgutter_force', 1)
|
||||||
endif
|
endif
|
||||||
endfor
|
endfor
|
||||||
endfunction
|
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 {{{
|
" Autocommands {{{
|
||||||
|
|
||||||
augroup gitgutter
|
augroup gitgutter
|
||||||
@@ -190,19 +206,7 @@ augroup gitgutter
|
|||||||
|
|
||||||
autocmd TabEnter * let t:gitgutter_didtabenter = 1
|
autocmd TabEnter * let t:gitgutter_didtabenter = 1
|
||||||
|
|
||||||
autocmd BufEnter *
|
autocmd BufEnter * call 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
|
|
||||||
|
|
||||||
autocmd CursorHold,CursorHoldI * call gitgutter#process_buffer(bufnr(''), 0)
|
autocmd CursorHold,CursorHoldI * call gitgutter#process_buffer(bufnr(''), 0)
|
||||||
autocmd FileChangedShellPost,ShellCmdPost * call gitgutter#process_buffer(bufnr(''), 1)
|
autocmd FileChangedShellPost,ShellCmdPost * call gitgutter#process_buffer(bufnr(''), 1)
|
||||||
|
|||||||
Reference in New Issue
Block a user