vim通过快捷方式直接传递到pathfile,总是

时间:2010-10-08 11:24:42

标签: vim path

当我使用路径文件上的快捷方式在文件之间旅行时,似乎我不只是在文件之间旅行。

我使用>转到文件,在该文件中我更改光标的位置并执行某些操作,然后按<。但它没有转到上一个文件,而是首先进入我输入文件时的原始位置,然后我需要按<再次实际到达上一个文件。

这是令人讨厌的,它不允许我更改目标文件中的存储位置。它始终保持不变,所以我总是进入同一个地方,另外这只需要两次点击即可。这使得系统行为更加混乱。

当我输入非常大的文件时,似乎只会出现此问题。小的,位置工作正常。

我如何制作<按钮将我移动到我以前的文件,直接,总是吗?

P.S。
在我的vimrc中使用以下映射:
noremap> GF
noremap< c为C-O GT;

我试过用< C-o>代替< C-6>,但由于某种原因,这不起作用。

4 个答案:

答案 0 :(得分:3)

您可以在映射中使用:bp(上一个缓冲区):

:noremap < :bp<CR>

答案 1 :(得分:3)

映射到<C-6>对我来说也不起作用,但<C-^>会这样做。

答案 2 :(得分:3)

在我看来,你正在寻找一种直接移动到某个缓冲区而不是前一个缓冲区的方法。使用<C-o>会将您向后移动到跳转列表中,这就是您在编辑文件中失去位置的原因。

您的路径文件通常具有一定的扩展名吗?如果没有,你可以给他们一个独特的扩展,并尝试这样的映射:

noremap < :b *.pf

.pf是您选择的任何扩展名。这会切换到具有该名称的缓冲区。

不幸的是,如果你有多个具有该扩展名的缓冲区,它将失败,在这种情况下,最好快速:b后跟名称。

当我使用一些缓冲区时,我使用此映射:

nnoremap <Leader>ls :ls<CR>:b 

使用这个,我可以点击,ls,查看列表,输入我想要的缓冲区,然后按Enter键移动到该缓冲区。

答案 3 :(得分:0)

您可以使用Ctrl-^密钥尝试bufmru plugin,它的工作方式与space类似,但您也可以使用f尝试浏览最近的两个缓冲区和b键。这些当然是默认映射。