2010-10-08 20 views
6

當我在路徑文件上使用快捷方式在文件之間旅行時,那麼它好像不只是在文件之間旅行。vim通過快捷方式到達pathfile,直接,總是

我去使用>文件,在該文件中我更改光標的位置並執行某些操作,然後我按01​​。但不是轉到上一個文件,而是先轉到我輸入文件時的原始位置,然後再次按<才能到達前一個文件。

這是一個滋擾它不允許我改變目標文件中存儲的位置。它始終保持不變,所以我總是進入相同的地方,再加上這需要兩次點擊才能在只有一次點擊時進行旅行。這會使系統行爲更加混亂。

只有當我輸入非常大的文件時纔會出現此問題。與小的位置工作正常。

我該如何讓<按鈕將我移動到之前的文件,直接地,永遠在?

p.s.
是用在我的vimrc下面映射:
noremap > GF
noremap < <有限公司>

我試圖取代<有限公司>與< C-6 >,但不工作,對於一些原因。

回答

3

您可以使用:bp在映射(前緩衝區):

:noremap < :bp<CR> 
+0

如果我進入一個文件,然後返回,然後進入另一個文件,然後當我嘗試返回時,我進入第一次進入文件。所以有些事情是錯的。 – 2010-10-08 18:10:22

3

映射到<C-6>不爲我工作,要麼,但<C-^>一樣。

+0

但如果我旅行到一個路徑文件使用:e〜/ somepathfile,然後再去一些其他,然後當我嘗試去我的方式回我不能過去,我通過:e方法進入一個新的文件。 – 2010-10-12 14:55:38

0

你可以嘗試bufmru plugin,它就像Ctrl-^,使用space關鍵,但還允許你走過去的兩個最近使用fb鍵緩存。這些當然是默認映射。

3

在我看來,你正在尋找一種方法直接移動到某個緩衝區而不是以前的緩衝區。使用<C-o>會讓您向後跳轉跳轉列表,這就是您在編輯文件中失去位置的原因。

你的路徑文件通常有一定的擴展名嗎?如果沒有,你可以給他們一個獨特的擴展名,並嘗試一個像這樣的映射:

noremap < :b *.pf 

.pf是你選擇的任何擴展名。這將切換到具有該名稱的緩衝區。

不幸的是,如果你有多個帶有該擴展名的緩衝區,它將會失敗,在這種情況下,最好快速執行:b,後跟名稱。

我用這個映射,當我與緩衝區的幾個工作:

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

使用這個我可以打,ls,看看列表中,鍵入我想要的緩衝和回車鍵移動到那個緩衝區。