vim使用
為什么學(xué)習(xí)vim
- 大型網(wǎng)站的服務(wù)器一般是無圖形化界面的Linux系統(tǒng)厨钻,當(dāng)需要進(jìn)行調(diào)試歉摧、遠(yuǎn)程處理問題的時(shí)候安聘,只能調(diào)出terminal(終端窗口),然后用命令"vim index.html"這樣的方式友存,調(diào)出vim編輯器,再進(jìn)行更改陶衅。
unit 1
1.移動光標(biāo)
- h:左
- j:下
- k:上
- l:右
2.進(jìn)入和退出
2.1進(jìn)入編輯器
- 輸入:vim 文件名 <回車>
2.2退出編輯器
- 按<ESC>鍵(這是為了確保您處在正常模式)
- 輸入
:q
回車
這種方式的退出編輯器會丟棄您進(jìn)入編輯器以來所做的改動屡立,與6有區(qū)別。
3.正常模式下的刪除
- 按下
x
鍵來刪除光標(biāo)所在位置的字符
4.插入
-
i
:插入命令
5.添加
-
A
:添加(與i功能類似)
6.保存并退出
- 按<ESC>鍵(這是為了確保您處在正常模式)
- 輸入
:wq
回車
unit 2 刪除類命令
1.刪除單詞
-
dw
:從光標(biāo)處刪除至一個單詞的末尾
2.刪除一行
-
d$
:從當(dāng)前光標(biāo)刪除到行末
3.關(guān)于命令和對象
- 許多改變文本的命令都由一個操作符和一個動作構(gòu)成搀军。
- 使用刪除操作符 d 的刪除命令的格式如下:
d motion
-
d
:刪除操作符 -
motion
:操作符的操作對象
- 使用刪除操作符 d 的刪除命令的格式如下:
- 一個簡短的動作列表:
w
- 從當(dāng)前光標(biāo)當(dāng)前位置直到下一個單詞起始處膨俐,不包括它的第一個字符(即刪除了單詞間的空格)。
e
- 從當(dāng)前光標(biāo)當(dāng)前位置直到單詞末尾罩句,包括最后一個字符(即保留了單詞間的空格)焚刺。
$
- 從當(dāng)前光標(biāo)當(dāng)前位置直到當(dāng)前行末。
4.使用計(jì)數(shù)指定動作
-
2w
:使光標(biāo)向前移動兩個單詞 -
3e
:光標(biāo)向前移動到第三個單詞末尾 -
0
:回到行首
5.使用計(jì)數(shù)器刪除更多
- 在刪除操作符和動作的組合中插入一個數(shù)字以刪除更多:
d number motion
6.刪除整行
- 刪除整行是一個高頻使用的命令门烂,故vim設(shè)計(jì)了簡化版的操作
dd
-
dd
:刪除整行 -
αdd
:刪除α行
7.撤消命令
-
u
:撤消上一次命令 -
U
:行撤消乳愉,撤銷所有在前一個編輯整行上的操作 -
ctrl + r
:撤銷上一步「撤銷操作」
unit 3
1.置入類命令
-
p
:將最后一次刪除的內(nèi)容置入光標(biāo)之后(可以作為粘貼命令)
2.替換命令
-
r
:輸入r和一個字符替換光標(biāo)所在位置的字符
3.更改命令
-
ce
,cw
:改變文本直到一個單詞的末尾- 按
ce
或cw
鍵,輸入要改的正確文本 - 按
Esc
退出
- 按
這兩個命令不僅僅是刪除了一個單詞诅福,它也讓您進(jìn)入插入模式了
4.c
操作符和動作參數(shù)(motion)配合使用
- 操作格式:
c [number] motion
-
w
代表單詞匾委,$
代表行末
-
unit 4
1.定位及文件狀態(tài)
-
ctrl + g
:顯示當(dāng)前編輯文件中當(dāng)前光標(biāo)所在行位置以及文件狀態(tài)信息。輸入大寫 G 則直接跳轉(zhuǎn)到文件中的某一指定行 - 操作步驟:
- 按下 CTRL 鍵不放開然后按 g 鍵氓润,會看到頁面最底部出現(xiàn)一個狀態(tài)信息行赂乐,顯示的內(nèi)容是當(dāng)前編輯的文件名和文件中光標(biāo)位置。請記住行號咖气,它會在步驟3中用到挨措。
- 輸入大寫
G
可以使得當(dāng)前光標(biāo)直接跳轉(zhuǎn)到文件最后一行。輸入gg
可以使得當(dāng)前光標(biāo)直接跳轉(zhuǎn)到文件第一行崩溪。 - 輸入曾停留的行號浅役,然后輸入大寫
G
。這樣就可以返回到第一次按下CTRL-G
時(shí)所在的行了伶唯。
2.搜索類命令
-
/
:正向查找字符串觉既,/
加上一個字符串可以用以在當(dāng)前文件中查找該字符串 -
n
:重復(fù)上一次的命令,要查找同上一次的字符串,只需要按n
鍵瞪讼。要向相反方向查找同上一次的字符串钧椰,請輸入大寫N
即可。 -
?
:逆向查找字符串符欠,使用?
(此時(shí)n
變成向前查找嫡霞,N
變成向后查找) -
ctrl + o
:回到之前的位置 -
ctrl + i
:回到較新的位置
3.配對括號的查找
-
%
:輸入%
可以查找配對的括號)、]希柿、}
- 步驟:
- 把光標(biāo)放在
(诊沪、[
或{
處 - 按
%
字符,光標(biāo)的位置應(yīng)當(dāng)是在配對的括號處曾撤。 - 再次按 % 就可以跳回配對的第一個括號處端姚。
- 把光標(biāo)放在
在程序調(diào)試時(shí),這個功能用來查找不配對的括號是很有用的
4.替換命令
-
:s/old/new/g
:替換該行所有old
為new
-
:s/old/new
:只替換匹配到的第一個'old' -
:%s/old/new/g
:在文件內(nèi)替換所有的字符串old
為新的字符串new
-
:%s/old/new/gc
:找到整個文件中的每個匹配串盾戴,并且對每個匹配串提示是否進(jìn)行替換 -
:#,#s/old/new/g
:替換兩行之間出現(xiàn)的每個匹配串寄锐,其中 #,# 代表的是替換操作的若干行中首尾兩行的行號
unit 5
1.在vim中執(zhí)行外部命令
-
:!
:輸入:!
然后緊接著輸入一個外部命令可以執(zhí)行該外部命令例如輸入
:!ls
效果如同在命令行下輸入ls
2.關(guān)于保存文件的更多信息
-
w filename
:將vim
中正在編輯的文件文件保存到名為filename
的文件中
3.有選擇性的保存命令
-
v motion :w FILENAME
可將當(dāng)前編輯文件中可視模式下選中的內(nèi)容保存到文件FILENAME 中- 步驟:
- 移動光標(biāo)到本行
- 接著按
v
鍵,將光標(biāo)移動至下面第五個條目上尖啡。之間的文本被高亮了橄仆。 - 然后按
:
字符。屏幕底部會出現(xiàn) :'<,'> 衅斩。 - 現(xiàn)在請輸入
w TEST
盆顾,其中TEST
是一個未被使用的文件名∥钒穑看到了:'<,'>w TEST
之后按 <回車> 鍵您宪。 - 這時(shí) Vim 會把選中的行寫入到以 TEST 命名的文件中去。
提示::按
v
鍵使Vim
進(jìn)入可視模式進(jìn)行選取奠涌∠芫蓿可以四處移動光標(biāo)使選取區(qū)域變大或變小。接著可以使用一個操作符對選中文本進(jìn)行操作溜畅。例如捏卓,按d
鍵會刪除選中的文本內(nèi)容。
4.提取和合并文件
-
:r filename
:將filename文件提取出來慈格,黏貼到光標(biāo)位置-
r
命令還能讀取外部命令的輸出怠晴,例如:r !ls
會讀取ls
命令的輸出,粘貼到光標(biāo)下面
-
unit 6
1.打開類命令
-
o
: 在光標(biāo) 下方 打開新的一行浴捆,進(jìn)入插入模式蒜田。 -
O
: 在光標(biāo) 上方 打開新的一行,進(jìn)入插入模式选泻。
2.附加類命令
-
a
: 輸入a
后進(jìn)入插入模式冲粤,可在光標(biāo)之后插入文本
提示:
a
美莫、i
和A
都會帶您進(jìn)入插入模式,惟一的區(qū)別在于字符插入的位置
-
a
:光標(biāo)后一個位置 -
i
:當(dāng)前光標(biāo)位置 -
A
:行末
3.連續(xù)替換多個字符
-
R
:輸入R
可以連續(xù)替換多個字符
4.復(fù)制粘貼
-
y
:復(fù)制 -
p
:粘貼
5.設(shè)置類命令的選項(xiàng)
-
:set xxx
可以設(shè)置xxx
選項(xiàng)色解。一些有用的選項(xiàng)如下:- 'ic' 'ignorecase' 查找時(shí)忽略字母大小寫
- 'is' 'incsearch' 查找短語時(shí)顯示部分匹配
- 'hls' 'hlsearch' 高亮顯示所有的匹配短語
選項(xiàng)名可以用完整版本茂嗓,也可以用縮略版本餐茵。
- 在選項(xiàng)前加上 no 可以關(guān)閉選項(xiàng): :set noic
unit 7
1.使用在線幫助系統(tǒng)
- Vim 擁有一個細(xì)致全面的在線幫助系統(tǒng)科阎。要啟動該幫助系統(tǒng),請選擇如下三種方法之一:
- 按下 <HELP> 鍵 (如果鍵盤上有的話)
- 按下 <F1> 鍵 (如果鍵盤上有的話)
- 輸入
:help <回車>
2.創(chuàng)建啟動腳本
3.補(bǔ)全功能
- 使用
CTRL-D
和<TAB>
可以進(jìn)行命令行補(bǔ)全