3

我有这个映射,可以让我移动到行的中间:

nnoremap <silent> M :execute 'normal! ' . (virtcol('$')/2) . '\|'<CR>

它可以扩展为在可视模式下工作吗?

4

1 回答 1

4

这似乎有效。

vnoremap <silent> M :<c-u>execute 'normal! gv' . (virtcol('$')/2) . '\|'<CR>

|由于键入 ex 命令会退出可视模式,因此您需要在执行命令之前首先重新选择可视模式。

<c-u>清除预先填充的命令行'<,'>
gv重新选择旧的虚拟选择。

使用了 vnoremap 以便它是一个可视模式映射。

于 2013-08-26T03:04:15.400 回答