在可视模式下,gvim 将键映射到 ex 命令?

在可视模式下,gvim 将键映射到 ex 命令?

因此在 gvim 中,我按下

<Shift> + v

它进入可视模式。我通常有一个 ex 命令来设置“m”。当我进入可视模式然后按“m”时,它说

No range allowed

我如何才能让它在视觉模式下按下“m”时

:ya +

基本上,我想要这样,当我在可视模式下突出显示某些内容后,如果我单击“m”,它会将其复制到我的剪贴板,以便我可以将其粘贴到 gvim 之外的内容上。

答案1

那(拉到剪贴板)将是一个简单的

xnoremap m :ya +<CR>

如果没有你的映射,我就不知道它从何No range allowed而来。:在可视模式下按下 时,会自动插入:'<,'>可视范围,并且:yank命令会接受一个范围,因此一切都会顺利进行。另一方面,如果你有一个不接受范围的命令,你必须通过 清除它:<C-u>command ...

注意:我使用了:xmap而不是:vmap因为选择模式,可打印字母应该取代选择,而不是调用映射。

相关内容