基本使用
vi/vim 使用实例
使用 vi
来建立名为 test.txt 的文件
vi test.txt
按下 ESC
按钮回到一般模式
在一般模式中按下 :wq
储存后离开 vi
三种模式
基本上 vi/vim 共分为三种模式,分别是:
- 命令模式(Command mode)
- 插入模式(Insert mode)
- 底线命令模式(Last line mode)
- 命令模式:
启动 vi
/vim
,便进入了命令模式
-
i
切换到插入模式,以输入字符。 -
x
删除当前光标所在处的字符。 -
:
切换到底线命令模式,以在最底一行输入命令。
- 输入模式:
在命令模式下按下 i
就进入了输入模式。
在输入模式中,可以使用以下按键:
-
ENTER
(回车键) 换行 -
BACK SPACE
(退格键) 删除光标前一个字符 -
方向键
在文本中移动光标 -
HOME/END
移动光标到行首/行尾 -
Page Up/Page Down
上/下翻页 -
ESC
退出输入模式,切换到命令模式
- 底线命令模式:
在命令模式下按下 :(英文冒号)就进入了底线命令模式。
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。
在底线命令模式中,基本的命令有(已经省略了冒号):
-
q
退出程序 -
w
保存文件 -
按
ESC
键可随时退出底线命令模式。
按键操作
-
x
向后删除一个字符 -
X
向前删除一个字符 -
dd
删除游标所在的那一整行 -
ndd n
为数字。删除光标所在的向下 n 行(包括游标所在的那一行) -
yy
复制游标所在的那一行 -
nyy n
为数字。复制光标所在的向下 n 行 -
p
为将已复制的数据在光标下一行贴上 -
P
为将已复制的数据在光标上一行贴上 -
u
复原前一个动作(撤销) -
Ctrl + r
重做上一个动作 -
.
重复前一个动作 -
o
在目前光标所在的下一行处插入新的一行 -
O
在目前光标所在处的上一行插入新的一行
命令后加!
是强制的意思
高亮设置
打开terminal复制/usr/share/vim/vimrc到家目录下并重命名为".vimrc",然后编辑该文件,增加以下几行:
syntax on # 打开高亮
set nu! # 设置行号,为了复制方便单次使用:set nonu取消行号
set autoindent # 自动对齐,即每行的缩进值与上一行相等
set tabstop=4 # 设置tab键为4个空格
set showmatch #当输入一个左括号时自动匹配右括号
set ruler #底部的行号等显示
set background=dark/light #设置背景颜色与syntax对应
set autowrite #自动保存
set incsearch #很聪明的查找,输入一个字符马上自动匹配,而不是输入完再查找
set cursorline #高亮当前行(青色)
set nobackup #不备份(讨厌的~文件)
参考:https://gist.github.com/ruph/1437650/930f6ab23c5a79c2c84a4a4395c5d66d777efebe