vim編輯器
一、 大綱
1、 什么是vim編輯器
2、 為什么要使用vim編輯器
3、 vim編輯器能實現哪些功能
4、 vim編輯器詳解
二、 正題
1、 什么是vim編輯器
Vim是一個類似于Vi的著名的功能強大、高度可定制的文本編輯器,在Vi的基礎上改進和增加了很多特性。
2、 為什么要使用vim編輯器
因為vim有豐富而且強大的快捷鍵,而且有三種編輯模式,可以通過靈活切換編輯模式提高編輯效率。
3、 vim編輯器能實現哪些功能
vim編輯器不但可以實現字符與行的刪除、復制、粘貼、快速跳轉等基礎功能,而且可以實現字符替換、行替換、字符查找、撤回、恢復撤回等高級功能。
4、 Vim編輯器詳解
vim的使用格式:
vim [options] FILE,FILE2,…..
[options]
+#:打開文件后,直接跳轉到指定行
+/PATIERN:打開文件后,直接跳轉到匹配的行的行首
vim的三種編輯模式:
命令模式
無法編輯文檔,但可通過一些快捷鍵進行快速操作,例如:d 刪除,y復制,r替換等。
編輯模式
一般的編輯模式,可以對文檔內的數據任意修改
末行模式
可以調用shell的命令,來實現一些高級功能
命令模式:
快速移動命令:
字符間跳轉:(#代表數字)
(#)h or ←方向鍵:向左移動;
(#)l or →方向鍵:向有移動;
(#)k or ↑方向鍵:向上移動;
(#)j or ↓方向鍵:向下移動;
單詞間跳轉:
(#)w:下一個單詞的詞首;
(#)e:下一個單詞的詞尾;
(#)b:上一個單詞的詞首;
行首行尾間跳轉:
^:跳轉至行首的第一個非空字符
0:跳轉至行首;
$:跳轉至行尾;
行間跳轉
#g:第幾行
gg:第一行
G :最后一行
句間跳轉
)
(
段間跳轉
{
}
翻屏:
ctrl+f: 向后翻一屏
ctrl+b:向前翻一屏
ctrl+d:向尾部翻半屏
ctrl+u:向頂部翻半屏
字符編輯命令:
字符編輯:
(#)x:刪除光標所在處的字符;
xp:交換光標與后面字符位置;
替換命令:
r[a-z]:替換字符,在摁r后選擇想要替換的字符;
刪除命令(也是一個剪切命令):
d:刪除命令,可結合光標跳轉符實現范圍刪除;
(#)d$:刪除當前光標到行尾;
(#)d^:刪除當前光標到行首;
(#)dw:刪除當前光標到下一個詞首間的字符;
(#)de:刪除當前光標到下一個詞尾間的字符;
(#)db:刪除當前光標到上一個詞首間的字符;
(#)dd:刪除光標當前行;
復制命令:
y:復制命令,可結合光標跳轉實現范圍刪除;
(#)y$:復制當前光標到行尾;
(#)y^:復制當前光標到行首;
(#)yw:復制當前光標到下一個詞首間的字符;
(#)ye:復制當前光標到下一個詞尾間的字符;
(#)yb:復制當前光標到上一個詞首間的字符;
(#)yy:復制光標當前行;
粘貼命令:
p:在當前光標或當前行后粘貼字符;
改變命令:
c:刪除并且切換到編輯模式,可結合光標跳轉實現范圍編輯;
(#)cc:刪除光標當前行,并且開啟編輯模式;
(#)c$:刪除當前光標到行尾,并且開啟編輯模式;
(#)c^:刪除當前光標到行首,并且開啟編輯模式;
(#)cw:刪除當前光標到下一個詞首,并且開啟編輯模式;
(#)ce:刪除當前光標到下一個詞尾,并且開啟編輯模式;
(#)cb:刪除當前光標到上一個詞首,并且開啟編輯模式;
其他編輯命令:
v:字符選定
V:行選定
(#)u:撤銷上一步 (U撤銷到初始)
ctrl+r:恢復撤銷
自帶教程:vimtutor(命令行輸入)
vim末行模式:
通過調用shell的命令窗口,在命令模式下用 :來激活(需要shift組合鍵)
地址定界:
:# 指定行;
:#,# 指定范圍,左#代表啟始行,右#代表結束行;
:#,+# 左#代表起始行,右#代表偏移量,從指定行到往下#行結束;
:. 點代表當前行;
:$ 代表最有一行;
:% 代表全文所有行;
: /pattern/:從光標所在處起始向文件尾部第一次被模式所匹配到的行;
注地址定界可同編輯命令一同使用,實現編輯操作:
d 刪除
y 復制
c 更改(注:回車后輸入需要替換的字符)
w /PATH/TO/SOMEFILE:將范圍內的文本保存到指定文件中;
r /PATH/FROM/SOMEFILE: 將指定的文件的文本讀取并插入指定位置;
例如:3,11d 代表刪除3到11行;
2,5w /tmp/abc.txt 將2到5行的文本保存到/tmp/abc.txt中;
1,4 co 8 將1到4行的文本復制到8行后面
1,4 m 8 將1到4行的文本剪切到8行后面
查找:(通過/ huo ? 來激活)
/PATTERN:從當前光標所在處向文件尾部查找能夠被當前模式匹配到的所有字符串;
?PATTERN:從當前光標所在處向文件首部查找能夠被當前模式匹配到的所有字符串;
查找替換
s:末行模式的命令;使用格式:
s/要查找的內容/替換的內容/修飾符
要查找的內容: 可使用正則表達式(只能用基本正則);
替換的內容: 不能使用正則表達式,但可以引用;()
如果“要查找的內容”部分在模式中使用了分組符號,在“替換為的內容”中使用后向引用;
&:直接引用查找模式匹配到的全部文本;
修飾符:
i:忽略大小寫;
g:全局替換,意味著一行中如果匹配到多次,則全部替換;
示例:
:%s/^[[:space:]]\+/#&/ :在文中所有以空格開頭的行加一個#
注:在替換路徑時需要加轉義符\,例如:
%s/\/etc\/sysconfig/\/var\/ftp/ig 將/etc/sysconfig/替換為/var/ftp
如果不想使用轉義符,可以將分隔符替換為@和#:
s@
s#
vim的多文件功能:
vim FILE1 FILE2 …..
文件間切換:
末行模式:
:next 下一個文件
:prev 上一個
:last 最后一個
:first 第一個
退出所有文件:
:wqall (xall)
:wall
:qall
多窗口:
vim -o:水平分割窗口
vim -O:垂直分割窗口
在多窗口間切換:ctrl+w
注:單文件亦可以分割多個窗口:
ctrl+w,s:水平分割窗口;
ctrl+w,v:垂直分割窗口;
以上就是vim詳細的使用方法,但是vim還可以在末行設置一些工作特性,使得工作更有效率,而且有兩個配置文件來使工作特性永久生效。
vim的工作特性:
注:如果在編輯當前文件,只對當前文件生效;
如果想讓設置永久有效,可在:
全局用戶都有效:/etc/vimrc
只對當前用戶生效: ~/.vimrc
寫入格式:直接寫入命令,例如:set nu (注,每一行一條命令生效,如果有多條,就寫多行)
1、 行號:
:set nu 開啟行號顯示
:set nonu 關閉行號顯示 (默認關閉)
2、括號匹配高亮顯示: 無法關閉
:set showmatch,set sm 匹配
:set nosm 取消
3、自動縮進:默認關閉
:set ai 設置
:set noai 取消
4、高亮搜索 默認開啟
:set hlsearch啟用:
:set nohlsearch取消:
5、語法高亮: 默認開啟
:syntax on 啟用:
:syntax off 取消:
6、忽略字符大小寫:
:set ic 啟用
:set noic 禁用
獲取幫助:
:help
:help subject
原創文章,作者:N25_韓奇洋,如若轉載,請注明出處:http://www.www58058.com/66484
怎么看上去像是上課的筆記呢?希望能加上自己的理解和總結,加油?。?!