Vim 您如何从';gf';精神抖擞
我正在使用安装在Unix模式下的Vim for windows。多亏了这个网站,我现在使用Vim 您如何从';gf';精神抖擞,vim,editor,Vim,Editor,我正在使用安装在Unix模式下的Vim for windows。多亏了这个网站,我现在使用gf命令转到光标下的文件 我正在寻找以下命令之一: 返回到上一个文件(类似 CTAG的Ctrl+T),或 重新映射gf 自动启动新文件的步骤 在新窗口中 Ctrl-Shift-6就是其中之一 :e#↲是另一个。我使用Ctrl-O只需使用:e#然后按Enter键-基本上就是说编辑最后一个(最近的)文件。请参见。我不知道您问题第2部分的答案,但我可以帮助您完成第1部分。使用 :e# Vim维护一个正在编辑的文
gf
命令转到光标下的文件
我正在寻找以下命令之一:
gf
自动启动新文件的步骤
在新窗口中:e#↲
是另一个。我使用Ctrl-O只需使用:e#
然后按Enter键-基本上就是说编辑最后一个(最近的)文件。请参见。我不知道您问题第2部分的答案,但我可以帮助您完成第1部分。使用
:e#
Vim维护一个正在编辑的文件(缓冲区)列表。如果你打字
:buffers
它将列出您当前正在编辑的所有文件。该列表中旁边带有%的文件是当前文件。旁边有#的是备用文件:e#将在当前文件和备用文件之间切换。我没有输入那么多,而是将F2映射到:e#,这样就可以轻松地在当前文件和备用文件之间切换。我通过将其添加到.vimrc将命令映射到F2
nmap `<F2> :e#<CR>`
nmap`:e#`
为此,我经常使用Ctrl-6
它很方便,因为它允许我在两个文件之间快速来回跳转。当您打开一个新文件(使用gf或:n或其他命令)时,旧文件仍保留在缓冲区列表中。您可以使用以下命令列出打开的文件:ls
如果希望在vim中的缓冲区之间轻松导航,可以创建如下映射:
nmap <M-LEFT> :bN<cr>
nmap <M-RIGHT> :bn<cr>
我没有看过你的gf命令,但我想它使用了:e或:find命令。
假设这是正确的,只需将:e或:find替换为:new(或:vnew表示垂直拆分),文件将在新窗口中打开,而不是在同一窗口中打开 e、 g。 “在收割台和cpp之间切换 nmap,s:find%:t:r.cpp nmap,S:new%:t:r.cpp nmap,h:find%:t:r.h nmap,H:new%:t:r.H nmap,F:new=expand(“:t”) nmap,d:new=expand(“”)
您可能需要使用
CTRL-wgf
在新选项卡中打开文件
您可以像往常一样使用
:bd
关闭新打开的文件,或者使用CTRL-6
和其他常用的更改缓冲区的方法。我让CTRL-W f工作。非常令人沮丧的是,我花了这么长时间来完善这些命令的地图,却发现有内置版本。使用gf进入一个文件并使用:bf返回不需要移位。停止滥用你的手指。嗯。我有点老了。在我过去在wo使用的Wyse终端上,Ctrl-6不能与vi一起工作rk几年前。看,有些东西仍然被蚀刻。在这个组合中不使用Shift对我的手指虐待几乎没有影响。嘿,至少你已经尽力了。HTH.HAND。这会切换到所谓的。CTRL-O以转到跳转列表中的较旧位置,或CTRL-I以转到较新位置。@g33kz0r助记符将是O=OUT,I=in=>Ctrl-O带你出来,Ctrl带你进来。如果每次跳转都像进门一样,也就是说。Ctrl-O会跳转到最后访问的位置,当新文件被搜索进来时,这很烦人。我更喜欢Shift-Ctrl-6(在我的情况下Ctrl-6不起作用),我认为paxdiablo的答案更好。:e#只后退一步(即使我们打开了文件或目录).ctrl-o转到第一个文件。我认为您不想使用:e,因为这可能会重新加载文件。:b#没有这个问题。很好的一点。在不重新加载的情况下切换到另一个缓冲区。tab对我来说比buffer更方便,使用
nnoremap gf
在新选项卡中打开可能更好。我没有wo窗口在选项卡中打开,这只是在第一个窗口中打开了第二个窗口,而不是跳回上一个缓冲区。gf
是内置的。它属于我们所有人。:-)我正在寻找的答案。谢谢!
:help map.txt
"Switch between header and cpp
nmap ,s :find %:t:r.cpp<CR>
nmap ,S :new %:t:r.cpp<CR>
nmap ,h :find %:t:r.h<CR>
nmap ,H :new %:t:r.h<CR>
nmap ,F :new =expand("<cfile>:t")<CR><CR>
nmap ,d :new =expand("<cfile>")<CR><CR>