你怎么从Vim的'gf'回来

Jay*_*ayG 178 vim editor

我在Unix模式下使用Vim for windows.感谢这个网站,我现在使用gf命令转到光标下的文件.

我正在寻找一个命令:

  1. 返回上一个文件(类似于Ctrl+ T表示ctags),或
  2. 重新映射gf 以在新窗口中自动启动新文件.

jop*_*jop 283

我用Ctrl-O

  • CTRL-O转到跳转列表中较旧的位置,<Tab>或CTRL-I转到较新的位置. (42认同)
  • @ g33kz0r助记符将是O = OUT,I = IN => Ctrl - O带你出去,Ctrl带你进去.如果每次跳跃就像穿过一扇门,那就是. (4认同)

Dom*_*tos 68

我经常使用Ctrl- 6为此.

它很方便,因为它允许我快速地在两个文件之间来回跳转.


Rom*_*sky 46

您可能希望使用CTRL-W gf在新选项卡中打开文件.

您可以像往常一样关闭新打开的文件:bd,或者使用CTRL-6其他常用的更改缓冲区的方法.

  • tab对我来说比缓冲更方便,使用`nnoremap gf <CW> gf`在新选项卡中打开可能会更好. (7认同)

小智 13

使用gf下载到文件中并使用:bf返回


pax*_*blo 11

只需使用:e#后跟Enter- 基本上说要编辑最后一个(最近的)文件.


tzo*_*zot 9

Ctrl-Shift-6是一个.

:e#? 是另一个.

  • 这种转变没有必要.不要再用手指了. (8认同)
  • 嗯.我有点老了.Ctrl-6不适用于我曾在多年前工作过的Wyse终端上的vi.看,有些事情仍然存在.并且在这个组合中不使用Shift几乎不会对我的手指滥用造成影响.嘿,至少你尽力了.HTH.手. (6认同)

cod*_*nny 5

我不知道你问题的第2部分的答案,但我可以帮助第1部分.使用

:e#
Run Code Online (Sandbox Code Playgroud)

Vim维护着一个正在编辑的文件(缓冲区)列表.如果你输入

:buffers
Run Code Online (Sandbox Code Playgroud)

它将列出您当前正在编辑的所有文件.该列表中的文件旁边有%是当前文件.#旁边的#是备用文件.:e#将在当前文件和备用文件之间切换.我没有输入那么多,而是将F2映射到:e#所以我可以轻松地在当前文件和备用文件之间切换.我将命令映射到F2,将其添加到.vimrc

nmap `<F2> :e#<CR>`
Run Code Online (Sandbox Code Playgroud)

  • 我认为您不想使用:e#因为这可能会重新加载文件.:b#没有这个问题就可以了. (2认同)

小智 5

我有CTRL-Wf工作。
很郁闷的是,我花了这么长时间完善这些命令的映射,结果却发现有内置版本。