Skip to content

Commit 82d2305

Browse files
committed
fix(view): avoid tabnext and wincmd for inverse search
Unless they are necessary, of course. refer: #3257
1 parent fcd1533 commit 82d2305

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

autoload/vimtex/view.vim

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -97,17 +97,19 @@ function! vimtex#view#inverse_search(line, filename, column = 0) abort
9797
endif
9898
endif
9999

100-
" Get buffer, window, and tab numbers
101-
" * If tab/window exists, switch to it/them
102100
let l:bufnr = bufnr(l:file)
103-
try
104-
let [l:winid; _] = win_findbuf(l:bufnr)
105-
let [l:tabnr, l:winnr] = win_id2tabwin(l:winid)
106-
execute l:tabnr . 'tabnext'
107-
execute l:winnr . 'wincmd w'
108-
catch
109-
execute g:vimtex_view_reverse_search_edit_cmd l:file
110-
endtry
101+
let l:bufnr_current = bufnr()
102+
if l:bufnr != l:bufnr_current
103+
" Switch to the right tab + window if we can find them
104+
try
105+
let [l:winid; _] = win_findbuf(l:bufnr)
106+
let [l:tabnr, l:winnr] = win_id2tabwin(l:winid)
107+
execute l:tabnr . 'tabnext'
108+
execute l:winnr . 'wincmd w'
109+
catch
110+
execute g:vimtex_view_reverse_search_edit_cmd l:file
111+
endtry
112+
endif
111113

112114
execute 'normal!' a:line . 'G'
113115
if a:column > 0

0 commit comments

Comments
 (0)