一.導入文件內容 :r 解釋 示例 :! 解釋 示例 :r !命令 解釋 示例 二.定義快捷鍵 定義添加行首添加註釋 的快捷建ctrl+p 定義刪除行首首個字元的快捷鍵ctrl+b 定義插入郵箱的快捷鍵ctrl+h 三.連續行註釋 將n1到n2行全部註釋掉 將n1到n2行行首的註釋全部去掉 將n1行 ...
一.導入文件內容
:r
解釋
導入文件
示例
編輯模式下
# 將/tmp/test.txt內容導入到游標所在的位置的下一行
:r /tmp/test.txt
:!
解釋
在編輯文件時,執行系統命令
示例
編輯模式下
# 查看ls命令的目錄
:!which ls
[No write since last change]
/usr/bin/ls
:r !命令
解釋
將命令的內容導入文件游標處
示例
# 將ls命令的位置導入到文件中游標的下一行
:r !which ls
二.定義快捷鍵
定義添加行首添加註釋#的快捷建ctrl+p
在命令模式下
:map ^P I#<ESC>
^P ctrl+v+p或者ctrl+v再加上ctrl+p 輸入
I 跳到行首,併進入插入模式
<ESC> 退出編輯模式
定義刪除行首首個字元的快捷鍵ctrl+b
在命令模式下
:map ^B 0x
^B ctrl+v+b或者ctrl+v再加上ctrl+b 輸入
0 跳到行首
x 刪除游標所在處的字元
定義插入郵箱的快捷鍵ctrl+h
在命令模式下
:map ^H [email protected]<ESC>
三.連續行註釋
將n1到n2行全部註釋掉
# 將n1行到n2行行首的空位置替換為#,也就是註釋了
:n1,n2s/^/#/g
第一個/後面的^代表行首的空位置
第二個/後面的#代表要替換為的#
將n1到n2行行首的註釋全部去掉
# 將n1行到n2行行首的#替換為空,也就是去掉了註釋
:n1,n2s/^#//g
^ 代表行首的
第二個/後面時空的,代表把行首的#替換為空
/g代表直接替換,不用確認
將n1行到n2行行首添加//
:n1,n2s/^/\/\//g
第一個/^代表的時行首的空位置
第二個/代表的是/後面的為要替換的內容
\/\/代表的是//,其中\為轉義符
/g代表直接替換,不用確認
四.替換符
給長字元[email protected]定義一個短的容易記憶的字元mmail
:ab mmail [email protected]
弊端: 重啟之後定義的就失效,所以最好保存起來
五.將vim的快捷方式等保存起來
保存位置
root用戶: /root/.vimrc
普通用戶(eternity): /home/eternity/.vimrc
配置文件內容
cd /root
vim .vimrc
# 內容
set nu
map ^P I#<ESC>
ab mmail [email protected]
第一行 預設設置行號
第二行 ctrl+p為游標的行首添加#並退出插入模式
第三行 將mmail映射為[email protected],輸入mmail自動變為[email protected]