歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網

VIM

日期:2017/3/3 12:24:27   编辑:Linux技術

VIM

目錄

VIM
目錄
三種模式
常用按鍵
環境變量設置
編碼問題

三種模式

一般模式:打開vim就是一般模式,這個模式下基本上除了插入之外,其他事兒都能做。
編輯模式:在一般模式下按下(i, I, o, O, r, R)之後會進入編輯模式,此時界面左下角會出現INSERT/REPLACE,表明可以編輯。ESC退出編輯模式。
i/I:i為從目前光標處插入;I為所在行的第一個非空格符處插入(左下角顯示INSERT)
a/A:a為從光標處的下一個字符插入;A為從所在行的最後一個字符後插入(左下角顯示INSERT)
o/O:o為所在行的下一行插入新的一行;O為所在行的上一行插入新的一行(左下角顯示INSERT)
r/R:替換模式,r只替換光標所在的字符一次,然後就會變成一般模式;R會一直保持替換模式,直到ESC(左下角顯示REPLACE)
命令行模式:在一般模式下按下(: or / or ?)三個中的任意一個,就可以進入這個模式。這個模式下可以提供字符搜索,替換,行號的顯示,文件的保存,以及多窗口顯示等等。

常用按鍵

[code]#一般模式可用的按鍵
G                移動到文件的最後一行
gg               移動到文件的第一行
n(Enter)         光標向下移動n行
/key             向下尋找關鍵字key
n                重復前一個查找
N                與n相反,與前一個查找反向
:1, $s/old/new/g 從第一行到結尾,用new替代old
x, X             x為向後刪除所在處的一個字符;X為向前刪除所在處的一個字符
nx               向後刪除n個字符
dd               刪除所在行
ndd              向下刪除n行
d1G              刪除所在行到第一行的所有行
dG               刪除所在行到結尾的所有行
d$               刪除所在處到行尾的所有字符
d0               刪除所在處到行首的所有字符
yy               復制所在行
nyy              向下復制n行
y1G              復制所在行到第一行的所有行
yG               復制所在行到結尾的所有行
y$               復制所在處到行尾的所有字符
y0               復制所在處到行首的所有字符  
p, P             p為將已復制的數據粘貼到所在行的下一行; P為粘貼到上一行
u                復原上一個操作
ctrl+r           重做上一個動作
.                重復前一個操作
v                字符選擇
V                行選擇
ctrl+v           塊選擇
y                復制選擇的字符
d                刪除選擇的字符
#命令行按鈕
:w            保存文件
:w!           強制保存(不一定會成功)
:q            離開
:q!           強制離開
:wq           保存後離開
:w filename   文件另存為filename
:set number   顯示行號
:set nonumber 取消行號
#多窗口
:sp filename  打開一個新窗口,sp為split
ctrl+w+↓      光標移動下一個窗口
ctrl+w+↑      光標移動到上一個窗口
ctrl+w+q      離開本窗口

環境變量設置

如果不想打開vim都要設置,可以設置~/.viminfo或者~/.vimrc
[code]#~/.viminfo
:set number    設置行號
:set nonumber  取消行號
:set autoindent   設置自動縮排
:set noautoindent 取消自動縮排
:syntax on   設置語法顯示顏色
:syntax off  取消語法顯示顏色

編碼問題

[code]#文件編碼
:file filename 查看文件編碼
:set fileencoding[=codec] 如果有參數,則是設置,否則是查看文件編碼
#編碼轉換,可以使用iconv
iconv -f 原本編碼 -t 新編碼 filename [-o newfile]
Copyright © Linux教程網 All Rights Reserved