如何在vim中导航打开的文件?

时间:2012-03-30 07:59:20

标签: linux vim

我使用

在vim中打开了一个文件
  

GF

command.which打开一个当前光标位置的文件。

我用过

  

ctrl + ^

用于在最后两个打开的文件之间切换。 但, 我怎样才能前进和后退打开文件?

4 个答案:

答案 0 :(得分:4)

:bn& :bp循环缓冲区

要循环播放窗口我使用ctrl+w+w

循环打开文件:next& :prev

列出已打开的缓冲区::ls

从古老的vi :e#重新打开以前的文件^^(自从年龄以来没有使用它......好吧,因为VIM来到我的系统^^)

编辑:对Windows中的gvim进行快速测试(设置nocp)

map <C-tab> ^[:bn^M

为了输入转义(^ [)并输入(^ M)你必须按ctrl + v然后按特殊字符

编辑2:更简洁的方法是将其放入.vimrc

map <C-tab> <esc>:bn<cr>

但请记住,使用键盘的助记符取决于其他一些选项(我不记得哪一个)。

最好的方法是恕我直言写一个VIM函数保存实际模式,执行切换然后恢复它,然后将其映射到每种模式(:[xxx]地图命令)

答案 1 :(得分:1)

:next到下一个文件 :prev到上一个文件

答案 2 :(得分:1)

或者,您可能想要查看任何一个试图使缓冲区导航更容易的插件

我自己已将其缩减为<leader>bxx是缓冲区的编号。 选择缓冲区是通过底部的一个很好的弹出列表完成的。

要获得此行为,您首先要安装LustyJuggler(https://github.com/vim-scripts/LustyJuggler),然后在vimrc文件中设置如下所示的快捷方式:

nmap <leader>b :LustyJuggler<CR>

请注意,此映射仅在您处于正常模式时才有效。

答案 3 :(得分:0)

您还可以映射TAB键以快速循环打开缓冲区。

将以下内容添加到vimrc文件中:

:nnoremap <Tab> :bnext<CR>
:nnoremap <S-Tab> :bprevious<CR>