你如何从Vim中的'gf'返回
我正在使用Vim for Windows以Unix模式安装。 感谢这个网站,我现在使用gf
命令去光标下的文件。
我在寻找一个命令来:
- 返回到前一个文件(类似于ctags的Ctrl + T ),或者
- 重新映射
gf
以在新窗口中自动启动新文件。
我使用Ctrl – O
我经常使用Ctrl – 6 。
这很方便,因为它允许我快速在两个文件之间来回跳转。
您可能想要使用CTRL-W gf
在新选项卡中打开该文件。
您可以像使用:bd
一样closures新打开的文件,也可以使用CTRL-6
和其他常用的方式更改缓冲区。
使用gf下载到一个文件中并使用:bf取回
只需使用:e#
后跟Enter – 基本上说是编辑最后(最近)的文件。
Ctrl-Shift-6是一个。
:e#↲
是另一个。
我不知道你的问题的第二部分的答案,但我可以帮助第1部分。使用
:e#
Vim维护一个正在编辑的文件(缓冲区)列表。 如果你input
:buffers
它会列出你正在编辑的所有文件。 该列表中带有%旁边的文件是当前文件。 #旁边的那个是备用文件。 :e#将在当前和备用文件之间切换。 我把F2映射到:e#,而不是input那么多,所以我可以轻松地在当前文件和备用文件之间进行切换。 我将这个命令映射到F2,将其添加到.vimrc中
nmap `<F2> :e#<CR>`
我得到了CTRL-W f的工作。
令人沮丧的是,我花了这么长时间完善这些命令的地图,才发现有内置版本。
请参阅:帮助备用文件 。
当你打开一个新文件(用gf或者:n或其他命令)时,旧文件将保留在缓冲区列表中。 您可以使用ls列出打开的文件
如果你想在vim中的缓冲区之间轻松导航,你可以创build一个像这样的映射:
nmap <M-LEFT> :bN<cr> nmap <M-RIGHT> :bn<cr>
现在,您可以使用Alt +向左箭头或Alt +向右箭头在缓冲区之间切换。
关于映射的完整文档在这里:
:help map.txt
我没有看过你的gf命令,但我想它使用:e或:find命令。
假设这是正确的,只需将:e或:findreplace为new (或:vnew作为垂直分割),然后文件将在新窗口中打开,而不是在同一个窗口中打开。
例如
“在标题和cpp之间切换 nmap,s:find%:t:r.cpp <CR> nmap,S:new%:t:r.cpp <CR> nmap,h:find%:t:rh <CR> nmap,H:new%:t:rh <CR> nmap,F:new = expand(“<cfile>:t”)<CR> <CR> nmap,d:new = expand(“<cfile>”)<CR> <CR>