设置
set number
:显示行号
:set nocompatible 设置不兼容原始 vi 模式(必须设置在最开头)
:set bs=? 设置BS键模式,现代编辑器为 :set bs=eol,start,indent
:set sw=4 设置缩进宽度为 4
:set ts=4 设置制表符宽度为 4
:set noet 设置不展开 tab 成空格
:set et 设置展开 tab 成空格
:set winaltkeys=no 设置 GVim 下正常捕获 ALT 键
:set nowrap 关闭自动换行
:set ttimeout 允许终端按键检测超时(终端下功能键为一串ESC开头的扫描码)
:set ttm=100 设置终端按键检测超时为100毫秒
:set term=? 设置终端类型,比如常见的 xterm
:set ignorecase 设置搜索是否忽略大小写
:set smartcase 智能大小写,默认忽略大小写,除非搜索内容里包含大写字母
:set list 设置显示制表符和换行符
:set number 设置显示行号,禁止显示行号可以用 :set nonumber
:set relativenumber 设置显示相对行号(其他行与当前行的距离)
:set paste 进入粘贴模式(粘贴时禁用缩进等影响格式的东西)
:set nopaste 结束粘贴模式
:set spell 允许拼写检查
:set hlsearch 设置高亮查找
:set ruler 总是显示光标位置
:set incsearch 查找输入时动态增量显示查找结果
:set insertmode Vim 始终处于插入模式下,使用 ctrl-o 临时执行命令
:set all 列出所有选项设置情况
:syntax on 允许语法高亮
:syntax off 禁止语法高亮
插入
i
:光标前插入
a
:光标后插入
A
:光标所在行末插入
cw
:从光标删除到单词末尾,并进入插入模式
c$
:从光标删除到行末,并进入插入模式
小o
:在光标的下方打开新的一行,并进入插入模式
大O
:在光标的上方打开新的一行,并进入插入模式
删除
x
:删除光标后一个字符
dd
:删除一行
2dd
:删除两行
dw
:删除光标后一个单词,不包含光标所在字符
de
:删除光标后一个单词,包含光标所在字符
d$
:从光标删除到行末
移动
数字0
:光标移动到行首
$
:光标移动到行末
e
:光标移动到单词末尾
G
:跳转到最后一行
数字 + G
:跳转到指定行
Ctrl + G
:显示文档信息:名称、总行数、光标所在位置
gg
:跳转到第一行
撤销
u
:撤销最后一步操作
ctrl + r
:重做被撤销的操作
替换
r
:替换光标所在字符为另一个字符
R
:进入替换模式
:s/old/new
:一行内替换第一个old为new
:s/old/new/g
:一行内替换所有的old为new
:%s/old/new/g
:全文替换old为new
:%s/old/new/gc
:全文替换old为new,找到每个并提示是否替换
搜索
/
:往下查找,n
:下一个,N
:上一个
:set ic
:设置忽略大小写
:set noic
:禁用忽略大小写
:set is
:查找时显示部分匹配
:set nois
:禁用查找时显示部分匹配
:set hls
:高亮显示匹配的短语
Ctrl + o
:回到之前的位置
Ctrl + i
:回到最新的位置
:
:往下查找
?
:往上查找
输入:命令
后,ctrl + d
提示命令
执行外部命令
:!命令
:执行外部的命令,按enter
结束
保存
:w 新文件名
:另存为一个新文件
v
:进入可视模式
1. 移动光标,输入:
,再输入w 文件名
,会把高亮的文本写入到新文件中
2. 移动光标,输入d
,删除高亮区域
:r 文件名
:将外部文件的内容提取出来插入到光标后面
:r !命令
:读取外部命令的输出到光标后面
复制粘贴
p
:将最后一次删除的内容粘贴到光标后面
y
:复制
1. v
:进入可视模式,输入y
,复制出高亮的文本,输入p
,在光标后粘贴复制的文本。
2. yw
:复制一个单词,然后p
:
3. 粘贴