From 72e457d8c265bb0bc0697f8e3e07040954965669 Mon Sep 17 00:00:00 2001 From: Christian Brabandt Date: Thu, 4 Jan 2018 14:09:49 +0100 Subject: [PATCH] tabline: remove static caching of s:vars rather let them be defined whenever they are needed. They were only used inside a single function anyhow, so it does not make sense to cache them. In addition, having the user later change the variable won't work as expected. --- autoload/airline/extensions/tabline.vim | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/autoload/airline/extensions/tabline.vim b/autoload/airline/extensions/tabline.vim index bfa5bc5..b39c14a 100644 --- a/autoload/airline/extensions/tabline.vim +++ b/autoload/airline/extensions/tabline.vim @@ -3,10 +3,6 @@ scriptencoding utf-8 -let s:formatter = get(g:, 'airline#extensions#tabline#formatter', 'default') -let s:show_buffers = get(g:, 'airline#extensions#tabline#show_buffers', 1) -let s:show_tabs = get(g:, 'airline#extensions#tabline#show_tabs', 1) -let s:ignore_bufadd_pat = get(g:, 'airline#extensions#tabline#ignore_bufadd_pat', '\c\vgundo|undotree|vimfiler|tagbar|nerd_tree') let s:taboo = get(g:, 'airline#extensions#taboo#enabled', 1) && get(g:, 'loaded_taboo', 0) if s:taboo @@ -52,13 +48,15 @@ function! s:update_tabline() return endif let match = expand('') + let ignore_bufadd_pat = get(g:, 'airline#extensions#tabline#ignore_bufadd_pat', + \ '\c\vgundo|undotree|vimfiler|tagbar|nerd_tree') if pumvisible() return elseif !get(g:, 'airline#extensions#tabline#enabled', 0) return " return, if buffer matches ignore pattern or is directory (netrw) elseif empty(match) - \ || match(match, s:ignore_bufadd_pat) > -1 + \ || match(match, ignore_bufadd_pat) > -1 \ || isdirectory(expand("")) return endif @@ -113,7 +111,11 @@ function! airline#extensions#tabline#load_theme(palette) endfunction let s:current_tabcnt = -1 + function! airline#extensions#tabline#get() + let show_buffers = get(g:, 'airline#extensions#tabline#show_buffers', 1) + let show_tabs = get(g:, 'airline#extensions#tabline#show_tabs', 1) + let curtabcnt = tabpagenr('$') if curtabcnt != s:current_tabcnt let s:current_tabcnt = curtabcnt @@ -127,7 +129,7 @@ function! airline#extensions#tabline#get() endif if s:ctrlspace return airline#extensions#tabline#ctrlspace#get() - elseif s:show_buffers && curtabcnt == 1 || !s:show_tabs + elseif show_buffers && curtabcnt == 1 || !show_tabs return airline#extensions#tabline#buffers#get() else return airline#extensions#tabline#tabs#get() @@ -158,7 +160,8 @@ endfunction function! airline#extensions#tabline#get_buffer_name(nr, ...) let buffers = a:0 ? a:1 : airline#extensions#tabline#buflist#list() - return airline#extensions#tabline#formatters#{s:formatter}#format(a:nr, buffers) + let formatter = get(g:, 'airline#extensions#tabline#formatter', 'default') + return airline#extensions#tabline#formatters#{formatter}#format(a:nr, buffers) endfunction function! airline#extensions#tabline#new_builder()