好的,这是以前关于Vim的一个问题,直到我得知它是Visual Studio插件ViEmu特有的。
在ViEmu中,'v'将突出显示光标放在前一个字符和当前字符之间,这样当未按下“v”时,向后行走会留下光标下的字母。当尝试从行尾使用可视模式时,这尤其令人讨厌。是否有一个关键是'v'为'a'与'i'和'p'与'P'。
以下是一个例子:
我有以下文字,我的光标位于 dances 这个词的尾随 s 上。
胖黄狗跳舞
我希望将其更改为:
快速的棕色狐狸跳
我想进入视觉模式,荧光笔位于 dances 中 s 的右侧。这样,当我使用shift + f向后搜索 fat </ em>中的 f 时,我选择了所有内容。使用v-> shift + f-&gt; f将突出显示除 dances 中的 s 之外的所有内容,这很烦人。
答案 0 :(得分:1)
如果我们考虑使用运算符(例如d3e
)所做的更改与使用可视模式v3ed
进行的相同更改不同,我们会发现可视模式中的独特元素是互动。
在可视模式下,开始选择然后稳定地磨练目标区域是很自然的:我可以使用v3ed
或veeed
或{{1}来代替veeeebbed
而不是v4ebbed
}。或者也许在vee
之后我意识到我需要包含我选择之前的内容,因此o
,bb
,最后d
。
重点是,使用时
如果您经常需要在当前光标位置之后启动可视模式(或者您有另一个类似的用例),您始终可以创建自定义映射。以下是一些想法:
:nnoremap <Leader>v <Space>v
:nnoremap <Leader>v $hv
:nnoremap <Leader>v $F;v