Updated Vim version in Dockerfile and made UpdateTagStack clearer
The `settagstack` and `gettagstack` functions don't exist prior to Vim 8.1.0519. And the function definition was unclear whether it intended to grab the *old* or the *new* file/line/col.
This commit is contained in:
parent
c36f3e78e4
commit
46c743a247
2 changed files with 5 additions and 3 deletions
|
@ -1,7 +1,7 @@
|
|||
FROM tweekmonster/vim-testbed:latest
|
||||
|
||||
RUN install_vim -tag v8.0.0027 -build \
|
||||
-tag v8.1.0204 -build \
|
||||
-tag v8.1.0519 -build \
|
||||
-tag neovim:v0.2.0 -build \
|
||||
-tag neovim:v0.3.0 -build
|
||||
|
||||
|
|
|
@ -24,10 +24,12 @@ function! ale#definition#UpdateTagStack() abort
|
|||
let l:should_update_tagstack = exists('*gettagstack') && exists('*settagstack') && g:ale_update_tagstack
|
||||
|
||||
if l:should_update_tagstack
|
||||
let l:from = [bufnr('%'), line('.'), col('.'), 0]
|
||||
" Grab the old location (to jump back to) and the word under the
|
||||
" cursor (as a label for the tagstack)
|
||||
let l:old_location = [bufnr('%'), line('.'), col('.'), 0]
|
||||
let l:tagname = expand('<cword>')
|
||||
let l:winid = win_getid()
|
||||
call settagstack(l:winid, {'items': [{'from': l:from, 'tagname': l:tagname}]}, 'a')
|
||||
call settagstack(l:winid, {'items': [{'from': l:old_location, 'tagname': l:tagname}]}, 'a')
|
||||
call settagstack(l:winid, {'curidx': len(gettagstack(l:winid)['items']) + 1})
|
||||
endif
|
||||
endfunction
|
||||
|
|
Reference in a new issue