mirror of
https://github.com/vim-airline/vim-airline.git
synced 2025-07-27 16:04:39 +02:00
taglist: load taglist variants only once
Because Tlist_Get_Filenames() only exists within yegappan/taglist, TlistUpdate was being envoked on every call when using other taglist versions.(Like vim-scripts/taglist.) This caused visual artifacts and slowdowns. We now check for a function from both taglist variants to see if either one has been loaded.
This commit is contained in:
parent
4b96f58902
commit
6716572b30
@ -10,15 +10,15 @@ endif
|
||||
|
||||
function! airline#extensions#taglist#currenttag()
|
||||
" Update tag list if taglist is not loaded (else we get an empty tag name)
|
||||
" Load yegappan/taglist and vim-scripts/taglist.vim only once.
|
||||
let tlist_updated = v:false
|
||||
if !exists('*Tlist_Get_Filenames()')
|
||||
if !exists('*taglist#Tlist_Get_Tagname_By_Line()') && !exists('*Tlist_Get_Tagname_By_Line()')
|
||||
TlistUpdate
|
||||
let tlist_updated = v:true
|
||||
endif
|
||||
if !tlist_updated
|
||||
if !tlist_updated && exists('*Tlist_Get_Filenames()')
|
||||
if stridx(Tlist_Get_Filenames(), expand('%:p')) < 0
|
||||
TlistUpdate
|
||||
let tlist_updated = v:true
|
||||
endif
|
||||
endif
|
||||
" Is this function is not present it'means you use the old vertsion of
|
||||
|
Loading…
x
Reference in New Issue
Block a user