我无意中gh
以正常模式按下并开始选择,因此我查找了文档并找到了:h Select-mode
。
据我了解,选择模式与视觉模式很接近,除了:
- 输入一个可打印的字符,
<CR>
或者<BS>
将删除选择,开始插入模式,然后用输入替换选择。 hjkl
其他正常或视觉模式的移动将不会扩展选择范围,除非它们带有前缀<Shift>
<CTRL-O>
和<CTRL-G>
将切换到视觉模式。- 该文档还说明了以下内容,如果我理解正确,则意味着可以进行按行选择,然后按特征进行处理:
在“选择”模式下使用运算符并且选择是按行选择时,将对选定的行进行操作,但与按字符选择一样。例如,当删除整行时,可以稍后将其粘贴到一行的中间。
我有点困惑,因为我不明白为什么要创建此模式:我所看到的就是它不如可视模式方便,并且不提供更多功能。
另外,我所做的所有搜索都给出了在可视模式下进行选择的结果,但不考虑选择模式。
所以我的问题是:
- 为什么创建选择模式?
- 与可视模式相比,它有什么优势?
- 使用选择模式更有趣的用例是什么?
MetaNote我不知道哪个标签与此问题相关,请根据需要随时重新标签。
对我来说,这听起来像大多数GUI编辑器所期望的。(选择一行并不意味着它将在粘贴时移至新行,Shift +箭头将其扩展,键入替换选择,这是我希望从记事本中得到的所有内容)。
—
muru
@muru:我同意它使人想起了这种编辑器,但这是否意味着已经实施了该模式,只是为了取悦一些希望将Vim用作较差的文本编辑器的用户?实际上,这对我来说似乎很奇怪。
—
statox
实际上,该粘贴属性在某些情况下很有用。我确定有人在这里发布了有关粘贴的问题。至于覆盖,它可以节省击键次数(您不必按
—
大师
c
),因此根据您要执行的操作,选择模式可能会有用。可惜我一直忘了它。
我将尝试找到这个问题。对于覆盖,我真的不觉得这
—
statox
c
是保存的击键,因为选择不像在可视模式下那样方便(因为您不能使用e
或iw
直接使用)。
您说对了:当
—
statox
'selectmode'
包含mouse
并'mouse'
包含当前模式的标志时,用鼠标选择将启动选择模式(根据文档)。