功能強大的編輯器–VIM

來源:互聯網
上載者:User
文章目錄
  • 尋找的一些選項
  • 剪下/複製/粘貼

VIM :http://dsec.pku.edu.cn/~jinlong/vi/Vi.html

 

刪除一行:dd

 

刪除一個單詞/游標之後的單詞剩餘部分:dw

 

刪除當前字元:x

 

游標之後的該行部分:d$

 

 

文本刪除

dd 刪除一行

d$ 刪除以當前字元開始的一行字元

 

ndd 刪除以當前行開始的n行

dw 刪除以當前字元開始的一個字

ndw 刪除以當前字元開始的n個字

 

D 與d$同義

 

d) 刪除到下一句的開始

 

d} 刪除到下一段的開始

d斷行符號 刪除2行

ndw 或 ndW 刪除游標處開始及其後的 n-1 個字元。
d0 刪至行首。
d$ 刪至行尾。
ndd 刪除當前行及其後 n-1 行。
x 或 X 刪除一個字元。
Ctrl+u 刪除輸入方式下所輸入的文本。
^R 恢複u的操作
J 把下一行合并到當前行尾
V 選擇一行
^V 按下^V後即可進行矩形的選擇了
aw 選擇單詞
iw 內部單詞(無空格)
as 選擇句子
is 選擇句子(無空格)
ap 選擇段落
ip 選擇段落(無空格)
D 刪除到行尾
x,y 刪除與複製包含高亮區

dl 刪除當前字元(與x命令功能相同)
d0 刪除到某一行的開始位置
d^ 刪除到某一行的第一個字元位置(不包括空格或TAB字元)
dw 刪除到某個單詞的結尾位置
d3w 刪除到第三個單詞的結尾位置
db 刪除到某個單詞的開始位置
dW 刪除到某個以空格作為分隔字元的單詞的結尾位置
dB 刪除到某個以空格作為分隔字元的單詞的開始位置
d7B 刪除到前面7個以空格作為分隔字元的單詞的開始位置
d) 刪除到某個語句的結尾位置
d4) 刪除到第四個語句的結尾位置
d( 刪除到某個語句的開始位置
d) 刪除到某個段落的結尾位置
d{ 刪除到某個段落的開始位置
d7{ 刪除到當前段落起始位置之前的第7個段落位置
dd 刪除當前行
d/text 刪除從文本中出現“text”中所指定字樣的位置,
一直向前直到下一個該字樣所出現的位置(但不包括該字樣)之間的內容
dfc 刪除從文本中出現字元“c”的位置,一直向前直到下一個該字元所出現的位置(包括該字元)之間的內容
dtc 刪除當前行直到下一個字元“c”所出現位置之間的內容
D 刪除到某一行的結尾
d$ 刪除到某一行的結尾
5dd 刪除從當前行所開始的5行內容
dL 刪除直到螢幕上最後一行的內容
dH 刪除直到螢幕上第一行的內容
dG 刪除直到工作緩衝區結尾的內容
d1G 刪除直到工作緩衝區開始的內容

 

 

在Vi 中移動游標
  k        上h   l    左  右  j        下^        移動到該行第一個非空格的字元處w        向前移動一個單詞,將符號或標點當作單詞處理W        向前移動一個單詞,不把符號或標點當作單詞處理b        向後移動一個單詞,把符號或標點當作單詞處理B        向後移動一個單詞,不把符號或標點當作單詞處理(        游標移至句首)        游標移至句尾{        游標移至段落開頭}        游標移至段落結尾H        游標移至螢幕頂行M        游標移至螢幕中間行L        游標移至螢幕最後行 0        到行首$        到行尾gg       到頁首G        到頁末行號+G   跳轉到指定行n+       游標下移n行n-       游標上移n行 Ctrl+g   查詢當前行資訊和當前檔案資訊fx       向右跳到本行字元x處(x可以是任何字元)Fx       向左跳到本行字元x處(x可以是任何字元)tx       和fx相同,區別是跳到字元x前Tx       和Fx相同,區別是跳到字元x後C-b      向上滾動一屏C-f      向下滾動一屏C-u      向上滾動半屏C-d      向下滾動半屏C-y      向上滾動一行C-e      向下滾動一行nz       將第n行滾至螢幕頂部,不指定n時將當前行滾至螢幕頂部。 
進入和退出Vi命令
vi filename               開啟或建立檔案,並將游標置於第一行首vi +n filename            開啟檔案,並將游標置於第n行首vi + filename             開啟檔案,並將游標置於最後一行首vi +/pattern filename     開啟檔案,並將游標置於第一個與pattern匹配的串處vi -r filename            在上次正用vi編輯時發生系統崩潰,恢複filenamevi filename ... filename  開啟多個檔案,依次進行編輯 ZZ                        退出vi並儲存:q!                       退出vi,不儲存:wq                       退出vi並儲存
重複操作
.        重複上一次操作
自動補齊
C-n      匹配下一個關鍵字C-p      匹配上一個關鍵字
插入
o        在游標下方新開一行並將游標置於新行行首,進入插入模式。O        同上,在游標上方。a        在游標之後進入插入模式。A        同上,在游標之前。R        進入替換模式,直到按下Escset xxx  設定XXX選項。
行合并
J        把下面一行合并到本行後面
Vi中尋找及替換命令
/pattern         從游標開始處向檔案尾搜尋pattern?pattern         從游標開始處向檔案首搜尋patternn                在同一方向重複上一次搜尋命令N                在反方向上重複上一次搜尋命令%                尋找配對的括弧:s/p1/p2/g       將當前行中所有p1均用p2替代,若要每個替換都向使用者詢問則應該用gc選項:n1,n2s/p1/p2/g  將第n1至n2行中所有p1均用p2替代:g/p1/s//p2/g    將檔案中所有p1均用p2替換.*[]^%~$ 在Vi中具有特殊含義,若需要尋找則應該加上逸出字元"\"
尋找的一些選項設定高亮
:set hlsearch    設定高亮:set nohlsearch  關閉高亮:nohlsearch      關閉當前已經設定的高亮
增量尋找
:set incsearch   設定增量尋找:set noincsearch 關閉增量尋找
在Vi中刪除
x        刪除當前游標下的字元dw       刪除游標之後的單詞剩餘部分。d$       刪除游標之後的該行剩餘部分。dd       刪除當前行。c        功能和d相同,區別在於完成刪除操作後進入INSERT MODEcc       也是刪除當前行,然後進入INSERT MODE
更改字元
rx       將當前游標下的字元更改為x(x為任一字元) ~        更改當前游標下的字元的大小寫 

 

鍵盤宏操作
qcharacter  開始錄製宏,character為a到z的任一字元q           終止錄製宏@character  調用先前錄製的宏
恢複誤操作
u        撤銷最後執行的命令U        修正之前對該行的操作Ctrl+R   Redo
在Vi中操作Frame
c-w c-n  增加framec-w c-c  減少framec-w c-w  切換framec-w c-r  交換兩個frame
VIM中的塊操作

Vim支援多達26個剪貼簿 

  選塊   先用v,C-v,V選擇一塊,然後用y複製,再用p粘貼。  yy     複製當前整行  nyy    複製當前行開始的n行內容  ?nyy   將游標當前行及其下n行的內容儲存到寄存器?中,其中?為一個字母,n為一個數字  ?nyw   將游標當前行及其下n個詞儲存到寄存器?中,其中?為一個字母,n為一個數字  ?nyl   將游標當前行及其下n個字元儲存到寄存器?中,其中?為一個字母,n為一個數字  ?p     將寄存器?中的內容粘貼到游標位置之後。如果?是用yy複製的完整行,         則粘貼在游標所在行下面。這裡?可以是一個字母,也可以是一個數字   ?P     將寄存器a中的內容粘貼到游標位置之前。如果?是用yy複製的完整行,         則粘貼在游標所在行上面。這裡?可以是一個字母,也可以是一個數字   ay[motion]            ay$    複製游標位置到行末並儲存在寄存器a中            ayft   複製游標位置到當前行第一個字母t並儲存在寄存器a中

以上指令皆可去掉a工作,則y,p對未命名寄存器工作(所有d,c,x,y的對象都被儲存在這裡)。

剪下/複製/粘貼

所有刪除的內容自動被儲存,可以用p鍵粘貼 

Vi的選項設定
all         列出所有選項設定情況term        設定終端類型ignorance   在搜尋中忽略大小寫list        顯示製表位(Ctrl+I)和行尾標誌($)number      顯示行號report      顯示由面向行的命令修改過的數目terse       顯示簡短的警告資訊warn        在轉到別的檔案時若沒儲存當前檔案則顯示NO write資訊nomagic     允許在搜尋模式中,使用前面不帶“\”的特殊字元nowrapscan  禁止vi在搜尋到達檔案兩端時,又從另一端開始mesg        允許vi顯示其他使用者用write寫到自己終端上的資訊 
tips

對代碼自動格式化 gg=G 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.