选择模式,可以理解为另一种可视化模式。在选择模式下,可以对选中的文本进行快速操作。比如先高亮选中文本,然后用Backspace来删除这段文本;或者先高亮选中文本,然后用输入的内容来替换这些文本。执行操作之后,Vim将自动进入插入模式(Insert Mode)。
选择模式与可视化模式的主要区别在于:在可视化模式下,可以选中文本,然后执行命令操作。也就是说,要用命令来结束可视化模式。而在选择模式下,命令仅限于Backspace(用于删除操作)和可打印的字符(用于替换操作)。因为不需要输入命令,所以操作变得更为简单,但同时也存在很多限制。
在常规模式下,可以使用以下命令进入选择模式。如果已经启用'showmode'选项,那么将在屏幕底部显示相应的选择模式名称:
命令 | 描述 | 模式名称 |
---|---|---|
gh | 进入字符选择模式 | -- SELECT -- |
gH | 进入行选择模式 | -- SELECT LINE -- |
gCTRL-H | 进入块选择模式 | -- SELECT BLOCK -- |
在可视化模式(Visual Mode)下,可以使用Ctrl + g快捷键,进入选择模式。Vim将根据当前所处的可视化模式的类型,自动进入与之一致的字符/行/块选择模式。再次点击ctrl-G键,将返回到可视化模式。
可以使用ctrl-O命令从选择模式切换到可视化模式。
在选择模式下移动光标比在正常模式下要困难一些。因为输入任何可打印字符和回车符,Vim就会删掉已选中的文本并进插入状态。所以要选择文本就只能使用方向键、CTRL以及功能键。
如果希望使用Shift键来扩展选择,那么需要在'keymodel'选项中包含"startsel":
:set keymodel=startsel,stopsel
如果要在选择模式下用鼠标来选择文本,需要设置以下选项:
:set selectmode=mouse
使用Esc或Ctrl-[键,可以退出选择模式。
:help select-mode