在插入模式下,利用自动补全(Insertion-Completion)功能,vim能够根据正在输入的字符,查找匹配的关键字并显示在弹出菜单(popup menu)中。通过选择匹配项,可以补全输入的部分关键字甚至整行文本。
Vim可以针对整行文字、关键字、字典、词典、标签、文件名、宏、命令和拼写等等进行补全。本节将首先介绍进入补全模式的操作方法;下节将详细介绍各种补全方式的特点。
关键字补全(Generic keyword completion)
使用Ctrl-N或Ctrl-P键,将按照'complete'选项指定的范围来搜索匹配的关键字。其默认值为:
:set complete=.,w,b,u,t,i
也就是说,默认将在以下来源中查找关键字:
- 在当前缓冲区中进行查找;
- 在其他窗口中进行查找;
- 在其他已载入的缓冲区中进行查找;
- 在没有载入缓冲区的文件中进行查找;
- 在当前的标签(tags)列表进行查找;
- 在由当前文件(如#include)包含进来的头文件中进行查找。
^X模式(Ctrl-X Mode)
在插入模式下,输入Ctrl-X将进入^X模式(插入和替换模式的一个子模式)。屏幕底部将显示以下提示信息:
-- ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)
您可以选择以下自动补全方式:
Ctrl-] | 标签(tags)补全 |
Ctrl-D | 定义补全 |
Ctrl-E | 向上滚动文本 |
Ctrl-F | 文件名补全 |
Ctrl-I | 当前文件以及包含进来的文件补全 |
Ctrl-K | 字典补全 |
Ctrl-L | 整行补全 |
Ctrl-N | 当前文件内的关键字补全,向下选择匹配项 |
Ctrl-O | 全能补全 |
Ctrl-P | 当前文件内的关键字补全,向上选择匹配项 |
Ctrl-S | 拼写建议补全 |
Ctrl-U | 用户自定义补全 |
Ctrl-V | Vim命令补全 |
Ctrl-Y | 向下滚动文本 |
假设在编辑main.c文件时,想要查找一个宏定义,那么首先按下ctrl-X键进入^X模式,然后再按下CTRL-D键,这时就会在弹出菜单中显示匹配项。
补全弹出菜单(popupmenu-completion)
随着弹出菜单的显示,将会自动应用第一个匹配项。
使用以下快捷键,可以在弹出菜单中移动和选择匹配项:
- 使用Ctrl-N和Ctrl-P上下移动时,输入的文本也会随之变化。
- 使用<Up>和<Down>上下移动时,输入的文字并不会变化。
- 使用<PageUp>和<PageDown>键,可以在菜单中翻页。
- 使用Ctrl-Y或Enter回车键,将使用当前匹配项完成补全。
- 使用Ctrl-E键,将关闭菜单并退回到文字输入的原始状态。
- 使用Esc键,将关闭弹出菜单,但会保留之前应用的匹配项。
请注意,如果您不希望应用任何匹配项完成补全时,应该使用Ctrl-E键,而不是使用Esc键来取消操作。
使用:h popupmenu-keys
命令,可以查看关于弹出菜单快捷键的帮助信息。
没有评论:
发表评论