vi編輯器
引用自:http://www.gentoo.org/doc/zh_cn/vi-guide.xml#doc_chap2
vim編輯器和vi實際上是不同的,隻不過vim向後相容了vi的指令
移動:
方向: K
H L
J
跳到一行開始位置: 0(零)
跳到一行最後位置: $
前進一頁: ^F/PGDN
後退一頁: ^B/PGUP
下一個詞/長詞的開始: w/W
下一個詞/長詞的結尾: e/E
前一個詞/長詞的開始: b/B
前一句/後一句的開始處: ( / )
目前段落/下一段落的開始處:{ / }
跳轉到特定的行: G (1G跳到首行)
搜尋/替換:
如果你想跳轉到下一處某個文本模式的出現,輸入/<regexp>後敲回車。用你正在尋找的正規表達式替換<regexp>。如果你不知道怎麼使用正規表達式,不要煩躁──輸入foo會移動到下一處foo出現的地方。對此你唯一需要注意的是,當你想引用^、.、$或/字元時,用反斜線符号(/)做這些符号的字首。比如,foo/.gif會搜尋下一處“foo.gif”的出現。
要向前重複搜尋,敲n鍵。要向後重複搜尋,輸入N。跟往常一樣,在你自己的vi編輯器裡測試這些指令。你也可以輸入//來重複上一次搜尋。
查找string: :/string
向後/向前重複查找: n/N
替換目前行的首個比對: :s/rep/rep/
替換目前行的所有比對: :s/rep/rep/g
全局替換: :%s/rep/rep/g
全局替換前提示: :%s/rep/rep/gc
插入模式:
插入到目前位置之前/之後: i/a
插入到目前行的開始/末尾: I/A
在下面/上面開始新行的插入: o/O
替換目前行: cc
替換直到(move): c(move)
制表:
啟動自動縮進: :set autoindent
向左/右縮進: ^D/^T(插入模式中)
設定制表大小為num: :set tabsop=num
儲存退出:
退出到指令模式: ESC/^C
停止vi:
1.需要儲存工作後退出vi: ZZ
2.不儲存工作後退出vi: :q!<cr> (!告訴vi不要檢查是否儲存了資料)
系統失敗後的資料的恢複: vi -r filename(不要與-R隻讀選項混淆)
模式:
以相容模式啟動vim : alias vi="vim -C"
了解vi目前所處的模式: set showmode
以隻讀方式啟動vi: vi -R filename 或 view filename
(為什麼不用less,因為vi的功能非常強大,是以許多人甯願用vi檢視檔案)
進入ex模式: 指令模式下輸入Q,再輸入vi回到vi模式
vim是一個多模式的編輯器。就目前來看,主要有以下幾個主要模式。 1.通常模式(n) 在其它任何一個模式下,用ESC或者 ctrl+c 鍵可以退到通常模式 2.插入模式(i) 在這個模式下,vim像一個常見的編輯器.在通常模式下,用i或者a可以進行本模式,當然,還有一些其它指令也可以. 3.可視模式(v) 在這個模式下,可以使用hjkl進行選擇.然後進行copy,paste或者其它操作. 在通常模式下,用v指令進行可視模式. 4. 塊操作模式(V) 這是塊操作模式. 在通常模式下,用ctrl+v進入本模式. 5. 修改模式(R) 這是改寫的模式.很多軟體法用insert鍵來完成這個切換.在vim中,從通常模式用R即可進入改寫模式. 6. 擴充指令模式(ex) 這是指令執行模式 在通常模式下用:切換到此模式 |
多視窗:
将更改儲存到另一個檔案: :w filename.txt
同時打開多個緩沖區(vim): :sp filename.txt
在多個緩沖區切換: ^w^w
編輯修改:
删除目前光标下的字元: x
将下一行加到目前行末尾: J(大寫!)
用(char)替換目前光标下字元: r(char)
删除目前行: dd
從目前位置删除到(move): d(move)
撤銷: u
重複上一條編輯指令: .
複合指令:
1.移動
向右3個字元: 3->
向右4句: 4)
向左2個單詞: 2b
2.删除
删除後面3個單詞: d3w
删除本段後面的部分: d}
删除本句後面的部分: d)
3.更改
替換本句其餘部分: c)
替換本行後面部分: c$
插入控制字元: ^V^C(輸入^C)
^V^V(輸入^V)
制表字元: ^I
重新顯示各行: ^L