vim編譯器基本模式
vim具有6種基本模式和5種派生模式
基本模式:普通模式、插入模式、可視模式、選擇模式、命令行模式、Ex模式
三種常用模式的切換 vim啟動進入普通模式 處於插入模式或命令行模式時按 Esc進入普通模式
普通模式中按 i 進入插入模式 按 : 進入命令行模式 輸入wq回車後保存並推出vim
插入模式:在普通模式下按一下鍵位 有相應功能 (注意光標的所在位置)
i 在當前光標出進行編譯
I 在行首插入
A 在行末插入
a 在光標後插入編輯
o 在當前行後插入一個新行
O 在當前行前插入一個新行
cw 替換從光標所在位置後到一個單詞結尾的字符
退出vim 在普通模式輸入:進入命令行模式
:q! 強制退出,不保存
:q 退出
:wq! 強制保存並退出
:w<文件路徑> 另存為
:saveas文件路徑 另存為
:x 保存並退出
:wq 保存並退出
進入普通模式,使用一下命令進行文本快速刪除
x 刪除游標所在的字符
X 刪除游標所在前一個字符
Delete 同x
dd 刪除整行 (2dd 扁平式一次刪除2行)
dw 刪除一個單詞(不適合中文)
d$或D 刪除至行尾
d^ 刪除至行首
dG 刪除到文檔結尾處
dlG
刪至文檔首部
vim高級功能
使用vim編譯多個文件
編輯多個文件有兩種形式,一種是在進入vim前使用的參數就是多個文件。另
一種就是進入vim後再編輯其他的文件。 同時創建兩個新文件並編輯
vim 1.txt 2.txt 默認進入1.txt文件的編輯界面
命令行模式下輸入:n編輯2.txt文件,可以加!即:n!強制切換,之前一個文件的輸 入沒有保存,僅僅切換到另一個文件
命令行模式下輸入:N編輯1.txt文件,可以加!即:N!強制切換,之前文件內的輸入 沒有保存,僅僅是切換到另一個文件
進入vim後打開新文件
輸入:e 3.txt 打開新文件3.txt
輸入:e# 回到前一個文件
輸入:ls可以列出以前編輯過的文檔
輸入:b 2.txt(或者編號)可以直接進入文件2.txt編輯
輸入:bd 2.txt(或者編號)可以刪除以前編輯過的列表中的文件項目
輸入:e! 4.txt,新打開文件4.txt,放棄正在編輯的文件
輸入:f 顯示正在編輯的文件名
輸入:f new.txt,改變正在編輯的文件名字為new.txt
恢復文件
如果文檔沒保存 可采用恢復模式 vim -r進入文檔後 輸入:ewcover 1.txt可恢復
可視模式命令簡介
在普通模式下輸入v(小寫),進入字符選擇模式,就可以移動光標,光標走過的地方就會選取。再次按下v會後就會取消選取。
在普通模式下輸入Shift+v(小寫),進入行選擇模式,按下V之後就會把整行選取,您可以上下移動光標選更多的行,同樣,再按一次Shift+v就可以取消選取。
在普通模式下輸入 Ctrl+v(小寫),這是區域選擇模式,可以進行矩形區域選擇,再按一次Ctrl+v取消選取。
在普通模式下輸入d刪除選取區域內容
在普通模式下輸入y復制選取區域內容
視圖操作簡介
vim可以在一個界面裡打開多個窗口進行編輯入:new 打開一個新的vim視窗,並進入視窗編輯一個新文件(普通模式下輸入Ctrl+w也可以,但是Ctrl+w在chrome下會與chrome關閉標簽頁的快捷鍵沖突,所以使用該快捷鍵你可以在IE或其它浏覽器進行練習)
命令行模式下輸入:sp 1.txt 打開新的橫向視窗來編輯1.txt
命令行模式下輸入:vsp 2.txt 打開新的縱向視窗來編輯1.txt
(注意:以下命令先按Ctrl+w 之後都松開 ,再按其他鍵)
普通模式下Ctrl+w s 將當前窗口分割成兩個水平的窗口
普通模式下Ctrl+w v 將當前窗口分割成兩個垂直的窗口
普通模式下Ctrl+w q 即 :q 結束分割出來的視窗。如果在新視窗中有輸入需要使用強制符!即:q!
普通模式下Ctrl+w o 打開一個視窗並且隱藏之前的所有視窗
普通模式下Ctrl+w j 移至下面視窗
普通模式下Ctrl+w k 移至上面視窗
普通模式下Ctrl+w h 移至左邊視窗
普通模式下Ctrl-w l 移至右邊視窗
普通模式下Ctrl-w J 將當前視窗移至下面
普通模式下Ctrl-w K 將當前視窗移至上面
普通模式下Ctrl-w H 將當前視窗移至左邊
普通模式下Ctrl-w L 將當前視窗移至右邊
普通模式下Ctrl-w - 減小視窗的高度
普通模式下Ctrl-w + 增加視窗的高度
創建加密文檔
vim -x 文件名 記住要保存
在vim執行外部命令
:!ls 用於顯示當前目錄的內容
:!rm FILENAME用於刪除名為 FILENAME 的文件
:w FILENAME可將當前 VIM 中正在編輯的文件另存為 FILENAME 文件
vim查看幫助
普通模式下按F1打開vim自己預設的幫助文檔
:h shiftwidth 打開名為shiftwidth的幫助文件
:ver 顯示版本及參數
vim功能設定
:set或者:se顯示所有修改過的配置
輸入:set all 顯示所有的設定值
輸入:set option? 顯示option的設定值
輸入:set nooption 取消當期設定值
輸入:set autoindent(ai) 設置自動縮進
輸入:set autowrite(aw) 設置自動存檔,默認未打開
輸入:set background=dark或light,設置背景風格
輸入:set backup(bk) 設置自動備份,默認未打開
輸入: set cindent(cin) 設置C語言風格縮進
vim替換查找縮進
字符的替換及撤銷(Undo操作) ~在普通模式下的操作
r+<代替換字母>
將游標所在字母替換為指定字母
R 連續替換,直到按下Esc
cc 替換整行,即刪除游標所在行,並進入插入模式
cw 替換一個單詞,即刪除一個單詞,並進入插入模式
C 替換光標以後至行末
~ 反轉游標所在字母大小寫
u{n} 撤銷一次或n次操作
U 撤銷當前行的所有修改
Ctrl+r
redo,即撤銷undo的操作
快速縮進
按:進入命令模式,輸入set shiftwidth=數字 設置縮進和後退的字符數
在普通模式下輸入>>或<<進行縮進或後退 所指定的 數字 字符數
調整文本位置
在命令模式下輸入:ce 使本行內容居中
:ri 使本行文本靠右
:le 使本行文本靠左
快速查找
在普通模式下鍵入 (/或?)+字符串 進行查找 ?是向上找 /是向下找 進入查找後,輸入n或N可以繼續查找,n表示繼續查找(即繼續類似向下找) N表示反向查找
高級查找
普通模式下輸入\*尋找游標所在處的單詞
普通模式下輸入\#同上,但 \* 是向前(上)找,#則是向後(下)找
普通模式下輸入g\*同\* ,但部分符合該單詞即可
普通模式下輸入g\#同\# ,但部分符合該單詞即可
vim跳轉復制
在普通模式下輸入 . 表示重復上一次的命令操作
10x 表示刪除10個字符
進入命令模式 輸入set nu 顯示行號
在普通模式下
行間跳轉
nG 移動到第n行
gg 游標移動到第一行 G(shift+g)到最後一行
ctrl+o快速回到上一次光標所在位置
行內跳轉
w 到下一個單詞的開頭
e 到下一個單詞的結尾
b 到前一個單詞的開頭
ge 到前一個單詞的結尾
0或^ 到行頭
$ 到行尾
f<字母> 向後搜索<字母>並跳轉到第一個匹配的位置
F<字母> 向前搜索<字母>並跳轉到第一個匹配的位置
~ 將游標所在字母變成大寫或小寫
在普通模式下使用y復制
yy 復制游標所在的整行(3yy表示復制3行)
y0或y^ 復制至行首,不含光標所在處字符
y$ 復制至行尾,含光標所在出字符
yw 復制一個單詞(y2w復制兩個單詞)
yG 復制至文本末(y1G 復制至文本開頭)
使用p粘貼
p 代表粘貼至光標後
P 代表粘貼至光標前
ddp 實現了快速交換光標所在行與他下面的行