上古神器vim系列之移動三板斧

逸珺發表於2020-05-28

[導讀] 前文總結了vim如何進入,如何儲存退出,如何進入編輯模式。本文來總結一些稍微進階的內容,在normal模式下如何高效的瀏覽程式碼。

模式回顧

在normal模式下主要用於瀏覽程式碼,那麼有哪些方式可以達成移動游標呢,這裡總結了從最簡易的hjkl鍵對應單字元移動,到更為高效的移動方式。

Normal模式之乾坤大挪移

注:下面描述的內容都是在normal模式下的游標移到方式

字元移動初級版本:

字移動中級版本:

行段移動進階版本

  • 0 鍵移動到當前行首
  • ^ 鍵移動到當前行首單詞首部
  • $ 鍵移動到當前行尾部字元
  • 鍵移動到下一行首字元
  • - 鍵移動前一行首部
  • { 移動到當前段首部
  • } 移動到當前段尾部

注:段是以空行進行分隔的。

高階移動版本

  • gg移動到檔案第一行首部
  • G移動到檔案的尾部
  • NG或Ngg移動到第N行,如20G或20gg,表示向移動到第20行
  • x% 向上移動百分比x,如10%
  • % 按匹配移動
    • set matchpairs+=< : > , « : »

高階版本,大塊滾動

  • CTRL-F 向下翻一個視窗
  • CTRL-D 向下翻半個視窗
  • CTRL-U 向上翻半個視窗
  • CTRL-B 向上翻一個視窗

可視模式之妙用

有啥用?這是用於選取文字的:

  • v 進入字元可視選擇模式,文字選擇是以字元為單位的。
  • V或者shift-v進入行可視選擇模式,文字選擇是以行為單位的。
  • Ctrl+v 進入塊視覺化模式,字元移動鍵可以選擇一個矩形內的文字。
    來個栗子:

進入對應模式後,按字元移動鍵可以實現基本選取功能。這裡還將可視模式的一些快捷操作方式總結一下:

  • vi< 選中<>中間內容
  • vi[ 選中[]中間內容
  • vit 選中中間的內容
  • vi” 選中”"中間內容
  • vi’ 選中”中間的內容、
  • vis 選中一個句子
  • vib 選中一個block
  • viw 選中一個單詞
  • vip 選中一個段落

選擇了文字,就可以實現前文說的複製、貼上、剪下、刪除等操作。

  • y實現複製選中的內容,Y實現複製選中內容及其所在的行
  • d實現刪除選中的內容,D實現刪除選中內容及其所在的行
  • d實現剪下選中的內容,D實現剪下選中內容及其所在的行
  • p或P 在當前位置貼上剪貼簿的內容,p 粘在游標所在字元後面,P 粘在前面。
  • “>”和“<" 將選中字元右移或左移 shiftwidth位置
  • u U ~ 分別是所有字母變小寫、變大寫、反轉大小寫
  • r字元 所有字元替換為新字元,新字元為按完r鍵後續按的字元

總結一下:

這裡總結了常見的各種移動游標的方式,為啥弄這麼複雜,因為編輯程式碼的時候,如果都逐字元移動,這一定時不能忍受的。另外對於可視模式使用非常頻繁,這個屬於基本功能,也需要多加練習。用的熟了,複製、貼上、修改才能如魚得水。
文章出自微信公眾號:嵌入式客棧,更多內容,請關注本人公眾號,嚴禁商業使用,違法必究

相關文章