vim 寄存器 操作_vim指令
vim 是一個基于【動詞】 + 【名詞】 建立的語法表。
Vim 中常用的名詞
方位名詞表
基于字符的移動:
h:左j:下k:上l:右 ^ | k 提示: h 的鍵位于左邊,每次按下就會向左移動。 l 的鍵位于右邊,每次按下就會向右移動。 j | j 鍵看起來很象一支尖端方向朝下的箭頭。 v基于單詞(a-zA-Z0-9_)的移動:
w 移到下一個英文類單詞的開頭e 移到下一個英文類單詞的末尾b 移到前一個英文類單詞的開頭ge 移到前一個英文類單詞的末尾這里的英文類單詞是基于a-zA-Z0-9_這類英文的單詞,如果我們希望基于其他語言帶空格分割我們可以用大寫代替:
W 移到下一個單詞的開頭E 移到下一個單詞的末尾B 移到前一個單詞的開頭gE 移到前一個單詞的末尾基于行(sentence)的移動:
0 移動到當前行的第一個字符;^ 移動到當前行中的第一個非空字符;g_ 移動到當前行的最后一個非空白字符;$ 移動到當前行的最后一個字符;n| 移動到當前行的第 n 列。G 移動光標到文檔尾行Vim 中常見的動詞(操作符)
y 復制文本d 刪除文本,并保存到寄存器c 刪除文本,保存到寄存器,并開啟「插入」模式操作符可以和名詞進行組合,即操作符+名詞,比如:
y$ 把當前位置到當前行最后一個字符進行復制dw 從當前位置刪除到下一個單詞的開頭y2h 向左復制兩個字符特殊的,操作符也可以通過兩次來執行行操作,比如:yy表示復制當前整行內容。
文本對象
Vim有一種用文本對象捕獲這種結構的方法。文本對象與運算符一起使用。有兩種類型的文本對象:
i + 文本對象 文本對象內部a + 文本對象 包含外部的文本對象文本對象列表:
w 一個單詞p 一個段落s 一個句子( or ) 一對小括號 ( ){ or } 一對大括號 { }[ or ] 一對中括號 [ ]< or > 一對尖括號 < >t XML標簽" 一對雙引號 " "' 一對單號 ' '` 一對 ` `i(表示 () 內部的文本,di( 表示刪除 () 內部的內容;da(則表示連同括號和里面的內容一起刪除。dit表示刪除一個XML標簽,例如:
Header1
Paragraph1
光標在Header1的位置,使用dit會把Header1刪除,dat會把
Header1
刪除。組合性語法
在 Vim 中可以組合較簡單的命令執行復雜的命令。當 Vim 與外部程序集成時,可組合性的真正威力就顯露出來了。
假如你有一個非常混亂的文本,如下所示,你想把它變成列表形式:
Id|Name|Cuteness01|Puppy|Very02|Kitten|Ok03|Bunny|Ok可以用終端 column 命令組合 Vim 命令完成,運行!}column -t -s "|",即可得到:
Id Name Cuteness01 Puppy Very02 Kitten Ok03 Bunny Ok上述的操作過程可分解成這樣:動詞為!(過濾操作符),名詞為}(轉到下一段)。過濾器操作符!接受另一個參數,一個終端命令column -t -s "|"。
快捷設置
文件中移動
為了方便使用相對行可以設置:
:set relativenumber number同時開啟相對行和真實行,這樣就知道自己在哪個相對的行了,例如:2j向下移動兩行
總結
以上是生活随笔為你收集整理的vim 寄存器 操作_vim指令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么体现专业(怎么体现专业性)
- 下一篇: 客制化键盘编程_指尖运动会,谁是打字冠军