gvim命令模式
gvim跳转/光标位置
命令 | 功能 |
---|
e | 当前单词的结尾 |
w | 下一个单词的开头 |
b | 上一个单词 |
0 | 行首 |
^ | 行第一个非空字符 |
$ | 行尾 |
gg | 文件开头 |
G | 文件结尾 |
gd | 跳转到局部变量的定义处 |
gf | 跳转到文件 |
H | 当前页面的开头 |
M | 当前页面的中间 |
L | 当前页面的结尾 |
% | 跳转到相配对的括号 |
{ | 跳到上一段的开头 |
} | 跳到下一段的的开头 |
( | 移到这个句子的开头 |
) | 移到下一个句子的开头 |
‘’ | 跳转到光标上次停靠的地方(两个单引号) |
mx | 设置书签,x只能是a-z的26个字母 |
`x | 跳转到书签处 |
CTRL-o | 光标前一个位置 |
CTRL-i | 光标后一个位置 |
ctrl+6 | 返回上一个文件 |
gvim编辑
命令 | 功能 |
---|
r | 替换单个字母 |
R | 保持替换 |
x | 剪切一个字母 |
d[motion] | 剪切到某个[motion]位置 |
dd | 剪切整行 |
y[motion] | 复制到某个[motion]位置 |
yy | 复制整行 |
p | 粘贴 |
c | 修改 |
u | 撤销 |
U | 撤销本行的所有修改 |
gu[motion] | 小写[motion]位置 |
gU[motion] | 大写[motion]位置 |
CTRL-R | 重做 |
v | 进入visual mode |
n> | 增加以下n行的缩进 |
n< | 减少以下n行的缩进 |
gvim查找
- 快速查找单词:
向后查找 *
向前查找 # - 命令模式下全匹配查找:
向前查找 /xxx
向后查找 ?xxx - 命令模式下用正则表达式:
gvim的非贪婪模式采用\{-}
例如:
贪婪模式:/a.*b
非贪婪模式:/a.\{-}b
gvim窗口操作
功能 | 命令 |
---|
新建窗口 | (crtl+w) n |
分割窗口 | (ctrl+w) s |
垂直分割窗口 | (ctrl+w) v |
关闭当前窗口 | (ctrl+w) c |
关闭其它窗口 | (ctrl+w) o |
向上轮换窗口 | (ctrl+w) R |
向下轮换窗口 | (crtl+w) r |
使窗口等宽 | (crtl+w) = |
使窗口宽度增加n | (crtl+w) n + |
使窗口宽度减少n | (crtl+w) n - |
使窗口最小化 | (ctrl+w) 1 _ |
使窗口最大化 | (crtl+w) _ |
使窗口向左最小化 | (crtl+w) 1 | |
使窗口向右最大化 | (crtl+w) | |
将缓冲区n分割到一个窗口中 | (crtl+w) n ^ |
打开光标所在文件到一个窗口 | (crtl+w) f |
gvim代码折叠
命令 | 功能 |
---|
za | 打开或者折叠 |
zc | 关闭折叠 |
zm | 关闭所有折叠 |
zM | 关闭所有折叠及其嵌套 |
zo | 展开折叠 |
zr | 打开折叠 |
zR | 打开所有折叠及其嵌套 |
[z | 跳转至折叠开头 |
]z | 跳转至折叠结尾 |
zj | 跳转到下一个折叠处 |
zk | 跳转到上一个折叠处 |
zf[motion] | 创建到某个[motion]位置的折叠 |
zfnG | 创建到n行的折叠 |
zd | 删除折叠 |
zD | 递归删除折叠 |
zE | 删除窗口内的所有折叠 |
gvim底行模式
输入:进入底行命令模式
:!(所有shell命令的引用方式都需要在前面加"!" {command})
CTRL-D会列出所有命令的补全用于选择
gvim文件编辑
gvim替换
一行中替换第一个匹配的内容
:s/old/new
一行中替换所有匹配的内容
:s/old/new/g
m到n行中进行替换
:m,ns/old/new/g
替换所有
:%s/old/new/g
替换的时候进行确认
:%s/old/new/gc
gvim读写文件
保存本文件
:w
另存为FILENAME
:w FILENAME
将选中内容写为FILENAME
:'<,'>w FILENAME
读取某文件内容
:r FILENAME
读取命令stdo
:r !ls
gvim缓冲区
命令 | 缩略 | 功能 |
---|
:buffers | :ls | 可以列出整个缓冲区 |
:buffer n | :b n | 进入buffer n编辑窗口 |
:bnext | :bn | 跳转到下一个缓冲区 |
:bprevious | :bp | 跳转到前一个缓冲区 |
:bfirst | :bf | 跳转到第一个缓冲区 |
:blast | :bl | 跳转到最后一个缓冲区 |
:bdelete n | :bd | 把缓冲区n从列表中去除 |
:bwipeout n | NA | 把缓冲区n清除 |
gvim其他命令
命令 | 缩略 | 功能 |
---|
:history | NA | 列出历史编辑命令(只显示通过":"符号引用方式的命令) |
:cd | NA | 改变工作路径 |
:lcd | NA | 改变当前窗口工作路径 |
:pwd | NA | 显示当前工作路径 |
:edit FILENAME | :e | 编辑文件 |
:agrs | NA | 显示当前编辑的文件名,同ctrl+g |
:Ex | NA | 开启目录浏览器 |
:Sex | NA | 在一个分割的窗口中开启目录浏览器 |
:help | :h | 帮助 |
:lcd %:p:h : 更改到当前文件所在的目录。lcd是紧紧改变当前窗口的工作路径,%是代表当前文件的文件名, 加上:p扩展成全名(就是带了路径),加上 :h析取出路径
:autocmd BufEnter * lcd %:p:h : 自动更改到当前文件所在的目录 # autocmd指定一个自动命令,BufEnter指定一个事件,* 指定事件的对象
gvim设置模式
:set [OPTION]
取消设置
:set no[OPTION]
选项 | 选项缩略 | 功能 |
---|
ignorecase | ic | 忽略大小写 |
wrap | NA | 自动换行 |
gvim编辑模式
进入编辑模式
命令 | 功能 |
---|
i | 光标后输入 |
a | 光标前输入 |
A | 行尾输入 |
o | 光标下一行 |
O | 光标上一行 |
编辑模式命令
命令 | 功能 |
---|
CTRL-p | 补全单词 |
CTRL-n | 补全单词 |
CTRL-y | 复制上一行内容 |
CTRL-w | 删除前一个单词 |
CTRL-r | 调用寄存器内容 |
gvim寄存器
寄存器名 | 寄存器功能 |
---|
“” | 剪切内容 |
"[1-9] | 剪切行 |
"- | 剪切词 |
"+y | 复制选中的内容 |
待补充
F1
在正则表达式中使用符号括起正规表达式,即可在后面使用\1、\2 等变量来访问中的内容