2015-01-21 75 views
0

有時我需要瀏覽新文件,而且我需要不斷輸入10j20j如何在vim中輕鬆地重複多行移動(num + j,k)?

我想知道是否有一個快捷方式或某種配置,它允許我只按1鍵重複上次運動。

我在網上搜了一下,但沒有明顯的解決方法。

有沒有辦法做到這一點?

+0

這裏有一個vim腳本:https://github.com/vim-scripts/repmo.vim – eckes 2015-01-21 07:50:02

回答

3

您可以使用<C-d><C-u>向上和向下滾動半屏。

此外,<C-e><C-y>(向下滾動及以上)可以採取數量,使得:

nnoremap <key>  10<C-e> 
nnoremap <otherkey> 10<C-y> 

還有這個非常簡單的方式來獲得當前緩衝區的一個可操作的輪廓:

:g/func/# 

然後做:23跳轉到相應的行。

1

您可以將其保存到註冊表中。

  1. 類型q然後鍵入一個寄存器,比如說z
  2. 類型10j
  3. 類型q退出議案。

然後當你想要做10j下一次,簡單型@z

+0

type @ require'shift + 2',另外,這仍然是2鍵擊。 – Zen 2015-01-21 07:31:55

+0

對不起。我的錯。我搜索了一下,找到了這個。 http://superuser.com/questions/429917/repeat-last-normal-mode-command-including-moves-in-vim – qqibrow 2015-01-21 07:40:08

+1

如果你使用宏,有'@@'重複執行最後一個宏。每當'n'是關鍵字時,它比'@ k'快。我覺得它非常有用! – Plouff 2015-01-21 07:46:45

相關問題