您好,登錄后才能下訂單哦!
vim編輯器
1.基本模式:
編輯模式,命令模式
輸入模式;
末行模式;
2.打開文件,模式間轉換
#vim [OPTION]... FILE...
+#:打開文件后,直接讓光標處于第#行的行首
-/PATTERN:打開文件后,直接讓光標處于第一個被PATTERN匹配到的行的行首;
模式轉換:
編輯模式 --> 輸入模式
i:insert,在當前光標所在處輸入
a:append,在當前光標所在處的后邊輸入
o:open,在當前光標的下面新開一行輸入
I:在當前光標所在行的行首輸入
A:在當前光標所在行的行尾輸入
O:在當前光標所在行的上面新開一行輸入
輸入模式 --> 編輯模式
ESC
編輯模式 --> 末行模式
:
末行模式 --> 編輯模式
ESC(正常按2次,按1次反應很慢)
關閉模式:
:q 沒有任何修改的時候,在末行模式退出
:q! 不保存做出的修改,強制不保存不退出
:wq 保存做出的修改,保存退出
:x 保存退出
:w /PATH/SOMESWHERE 保存到指定的地方
ZZ 在編輯模式,直接保存退出,無需切換到末行模式再保存退出
3.光標跳轉
字符間跳轉
h:向左
j:向下
k:向上
l:向右
單詞單跳轉
w:跳轉到下一個單詞的詞首
e:跳轉到當前或下一個單詞的詞尾
b:跳轉到當前或上一個單詞的詞首
行首行尾跳轉
^:跳轉到當前行的行首
0:跳轉到當前行的行著
$:跳轉到當前行的行尾
行間移動
G:跳轉到最后一行
#G:跳轉到第#行
1G,gg:跳轉到首行
4.vim的編輯命令
字符編輯
x:刪除當前光標所在處的字母
#x:刪除當前光標所在處,向后數的第#個字符
xp:交換當前光標所在處與其后面字符的交換
r:replace,按下r鍵,再按a鍵,表示把當前光標所在處的字符替換為a
刪除命令:
d:刪除命令,可以結合光標跳轉字符,實現范圍內刪除
d$:刪除當前光標所在處至行尾的內容
d^,d0:刪除當前光標所在處至行首的內容
dd:刪除當標所在行一整行
#dd:實現在多行刪除,以當前光標所在行為起始
dw:
de:
db:
粘貼命令(p,put,paste):
p:緩沖區存的如果為事先,則粘貼在當前光標所在行的下方;否則,粘貼至光標所在處的后面
p:緩沖區存的如果為事先,則粘貼在當前光標所在行的上方;否則,粘貼至光標所在處的后面
復制命令(y,yank):
y:復制,工作行為類似于d命令
y^:復制當前光標所在處至行首
y0:復制當前光標所在處至行首
y$:復制當前光標所在處至行尾
yy:復制當前光標所在行的一整行
#yy:實現多行復制,以當前光標為起始
yw:
ye:
yb:
改變命令(c,change):
c:修改
編輯模式 --> 輸入模式
c$:修改光標處至行尾,直接把光標所在處至行尾的內容刪除,并變為插入模式
c^:修改光標處至行首,直接把光標所在處至行首的內容刪除,并變為插入模式
c0:修改光標處至行首,直接把光標所在處至行首的內容刪除,并變為插入模式
cw:
cb:
ce:
cc:修改整行,并變為插入模式
撤消此前的編輯(u,undo):
u:撤消前一次的操作
#u:撤消此前指定次數的操作
撤消此前的撤消:即使用u撤消之前的操作后,又后悔了,想要變回來
ctrl+r
重復前一個編輯動作:
.
可視化模式:
v:按字符選定
V:按行選定
注意:經常結合編輯命令,實現多行刪除,復制等
翻屏操作:
ctrl+f:向文件尾部翻一屏
ctrl+b:向文件首部翻一屏
ctrl+d:向文件尾部翻半屏
ctrl+u:向文件首部翻半屏
5.vim中的末行模式
內建的命令行接口
(a)地址界定
:start_pos,end_pos
#:具體第#行,例如2表示第2行
#,#:從第幾行開始到第幾行
#,+#:從第幾行開始加幾行
.:點表示當前行
$:表示最后一行
$-1:表示倒數第2行
%:表示全文,等于1,$
/pat1/,/pat2/
從第一次被模式pat1匹配開始,到第一次被模式
使用方式:后跟一個編輯命令
d:表示匹配成功后執行刪除動作
y:表示匹配成功后執行復制動作
w:表示匹配成功后執行寫入到指定的文件中
w /PATH/SOMEWHERE
(b)查找
/PATTERN:從當前光標所在處向文件尾部查找
?PATTERN:從當前光標所在處向文件首部查找
n:與命令方向同方向
N:與命令方向反方向
(c)查找并替換
s:在末行模式下完成查找替換操作
s/要查找的內容/替換為的內容/修飾符
要查找的內容:可以使用正則表達式
替換為的內容:不能使用正則表達式,但可以進行引用&,\1,\2等引用符
修飾符:
i:忽略大小寫
g:全局替換,默認情況下,每一行只替換第一次出現的;
查找替換中的分隔符"/"可替換為其它字符;例如
s@@@ 例:%s@
s### 例:%s#
6.多文件模式
#vim FILE1 FILE2 FILE3 ...
:next 下一個
:last 最后一個
:first 第一個
:prev 前一個
:wall 保存所有
:qall 退出所有
:wqall 保存所有并退出
多文件窗口分隔模式:
#vim -o|-O FILE1 FILE2 ...
-o:水平分割
-O:垂直分割
在多個文件窗口中進行切換:
ctrl+w,Arrow(上下左右箭頭)
單文件窗口分割
ctrl+w,s(水平分割文件)
ctrl+w,v(垂直侵害文件)
7.定制vim的工作特性
(a)設置行號
顯示行號:set nu(number)
不顯示行號:set nonu(nonumber)
(b)搜索命中的單詞高亮顯示
顯示高亮:set hl(hlsearch)
不顯示高亮:set nohl(nohlsearch)
(c)縮進
自動縮進:set ai(autoindent)
取消自動縮進:set noai(noautoindent)
(d)語法著色
顯示顏色:syntax on
不顯示顏色:syntax off
(e)自動匹配括號
自動匹配括號:set sm(showmatch)
不自動匹配括號:set nosm(noshowmatch)
(f)忽略字符大小寫
忽略大小寫:set ic(ignorecase)
不忽略大小寫:set noic(noignorecase)
8.配置文件
#vim /etc/vimrc 對全局做配置,安裝好vim,此文件就已經存在
#vim ~/.vimrc 對用戶做配置,此文件事先可能不存在,需要自己創建
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。