在vim中,如何在新选项卡中打开文件,或者如果文件已经打开,如何切换到包含该文件的选项卡?
有没有办法让vim在新选项卡中打开尚未打开的文件,或者打开包含该文件的选项卡?我知道有在vim中,如何在新选项卡中打开文件,或者如果文件已经打开,如何切换到包含该文件的选项卡?,vim,Vim,有没有办法让vim在新选项卡中打开尚未打开的文件,或者打开包含该文件的选项卡?我知道有:tab drop file,但这仅适用于vim的GUI版本,我需要它用于CLI版本。我必须为它创建自己的命令: command! -complete=file -nargs=1 Open call Open(<f-args>) function! Open (file) let b = bufnr(a:file) for t in range(tabpagenr("$"))
:tab drop file
,但这仅适用于vim的GUI版本,我需要它用于CLI版本。我必须为它创建自己的命令:
command! -complete=file -nargs=1 Open call Open(<f-args>)
function! Open (file)
let b = bufnr(a:file)
for t in range(tabpagenr("$"))
let a = tabpagebuflist(t + 1)
for i in a
if i == b
exec "tabn " . (t + 1)
return
endif
endfor
endfor
if bufname("%") == "" && !&modified
exec "e " . fnameescape(a:file)
return
endif
exec "tabe " . fnameescape(a:file)
endfunction
命令-complete=file-nargs=1 Open call Open()
功能!打开(文件)
设b=bufnr(a:file)
对于范围内的t(tabpagenr($))
设a=tabpagebuflist(t+1)
因为我在一个
如果i==b
执行“tabn”。(t+1)
返回
恩迪夫
外循环
外循环
如果bufname(“%”=“”&&&&被改进的
执行“e”。fnameescape(a:文件)
返回
恩迪夫
执行“tabe”。fnameescape(a:文件)
端功能
:drop
要求使用gui
选项编译Vim,如果有帮助的话,并不是说它实际上在gui上运行。不要使用选项卡页作为文件代理。你是什么意思?