vim 編輯器
Linux:使用文本文件來保存配置信息
文本編輯器:ASCII文件
emacs vi
vi:Visual Interface(純字符界面的編輯器)
全屏文本編輯,nano
模式化的編輯器正則表達式
moduler
vim :vi improved
vi的模式:
編輯模式:鍵盤操做一般被解析爲編輯命令:
輸入模式:
末行模式:vim的內置的命令行接口,執行vim內置命令shell
編輯模式–>輸入模式
i:當前光標處輸入內容
I:在當前光標所在行的行首
a:在當前光標所在處的後面
A:在當前光標所在行的行尾輸入
o:在光標所在行的下方新增一行空白行
O:在光標所在行的上方新增一行空白行ubuntu
輸入模式-->編輯模式 ESC 編輯模式-->末行模式 : 末行模式-->編輯模式 ESC,ESC
vi命令的使用格式
vim [options] /path/to/filevim
退出:
:q!強制退出,不保存並退出
:wq 保存修改並退出
:w 保存不退出
:x,保存並退出
編輯模式:ZZ,保存退出編輯器
打開:
多文件跳轉
:next 下一個
:prev 上一個
:first 第一個
:last 最後一個
:qall 退出全部的文件
:wqall:修改並退出多個文件
分隔窗口打開多個文件
-o:水平分隔
ctrl+w,上下箭頭
-O:垂直分隔
ctrl+w,左右箭頭
+#:打開文件後在第#號行首
+:打開文件後在最後一行
光標移動:
單字符移動:
h:左
l:右
j:下
k:上
能夠和數字組合
單詞間移動:
w:調至下一個單詞的詞首
b:當前或前一個的詞首
e:當前或下一個詞的詞尾
行內移動:
0:絕對行首
^:第一個非空白字符
$:絕對行尾
句子間移動:
):上一句
(: 下一句
段落間移動:
}:上一段
{:下一段
行間移動:
#G:第幾行 #gg
G:最後一行
編輯操做:
x:刪除光標所在處的字符
#x:刪除光標所在處向後的#個字符
r:替換光標所在處的字符ide
d:刪除命令 結果光標跳轉命令使用 d^ 光標刪除至行首 d$ 光標刪除至行尾(shift+d) %:所有 dd:刪除一行 #dd:刪除所在行後的#行 y:複製命令 yy:複製當前一行 p粘貼 #yy:複製#行
p:paste 粘貼
複製或刪除的是整行
p:當前行的下一行
P:當前行的上一行
複製或刪除的爲非整行
p:粘貼在光標所在字符的後面
P: 粘貼在光標所在字符的前面
撤銷編輯
u:undo
#u:最近50次操做
撤銷此前的撤銷操做
ctrl+r:
重複執行此前的命令:
.
翻屏:
ctrl+f:向文件尾部翻一屏
ctrl+b:向文件首部翻一屏
ctrl+d:向文件尾部翻半屏
ctrl+u:向文件首部翻半屏
Enter:下一行
k :上一行
查找:
/keyword
?keyword
n:往下翻查找的結果
N:往上翻查找的結果
支持正則表達式命令行
vim的可視化模式
編輯模式:
v:按照光標走過的區域選擇
V:選擇矩形行
vim可視化模式:
v: 按光標走過的區域選擇
V: 選擇矩形行
ctrl+v:選擇矩形塊code
ctrl+v shirt+i # ESCblog
末行模式:範圍定界
start,end:能夠使用絕對定界,也能夠使用相對定界
.:表示當前行
$:最後一行
$-2:倒數第3行
/pat1/,/pat2/:起始處爲光標所在行
d: 刪除
c:改變
跟d同樣操做
y:yank,複製
跟d同樣操做
s:替換接口
:set nohlsearch 關閉高亮顯示,對當前shell有效
打開多個文件,分窗口:
vim -o
vim -O
Ctrl+w, 上下箭頭
分割當前窗口:
Ctrl+w, s
Ctrl+w, v
窗口屬性的定義:
:set nu 輸出行號
:set nonu
:set ai 自動縮進(其餘發行版本) :set shiftwidth=4 設置自動縮進空格數爲4(ubuntu系統) :set softabstop=4 設置製表符寬度爲4 :set ic 查找時不考慮大小寫 :set noic 查找時考慮大小寫 顯示對應的括號 :set sm (show match) :set nosm 語法高亮: :syntax on :syntax off 搜索高亮: :set hlsearch :set nohlsearch
vim的配置文件:全局:/etc/vimrc我的:~/.vimrc查找替換::地址定界s/查找模式/替換爲的內容/gig:全局替換i:不區分大小寫:地址定界s@查找模式@替換爲的內容@gi&:用於在替換爲的內容部分中引用前面匹配到的全部內容