我正在学习vim,我刚刚学习了标记.在此之前,我发现在我们自己的选项卡中处理所有源代码文件很有用.当我发现"全球"(大写字母)标记时,我认为这将是一种很好的方法,可以切换到已打开标记文件的标签,并快速滚动到正确的位置.但是,我发现跳转到另一个文件中的标记只会更改当前标签显示的文件,这会弄乱我的标签设置.有没有办法让标记以我想要的方式与标签一起工作?
问题在于,由于理论上可以有多个窗口进入同一文件,因此标记跳跃命令旨在移动到当前窗口内的标记。您需要先使用:sbuf或:tabnext或切换到新窗口CTRL+WW。如果已设置,switchbuf=useopen,usetab则使用:sbuf <otherfile>first足以跳到打开文件的其他选项卡。但是'A不会为您创建一个新窗口(或在另一个选项卡中重复使用现有窗口)。
你也许可以创建一个映射'和`其用途getpos(),setpos(),:sbuf并switchbuf跳转到另一个标签,将现有的窗口,但它会涉及编写Vimscript中的一个页面。
见:help switchbuf和:help getpos()和:help setpos()。