是否存在移动到视觉选择的开始或结束的动作?我知道o在视觉模式下两者之间交替,但我需要能够精确选择开始.总体目标是用括号围绕视觉选择区域.
根据评论,我能够使用以下宏实现此功能.这个想法是:
<ESC> 退出视觉模式`> 到前一个视觉选择的结尾a) 附加一个右括号<ESC> 退出插入模式`< 转到上一个视觉选择的开始i( 插入一个左括号<ESC> 再次退出插入模式.例如:
map \q <ESC>`>a)<ESC>`<i(<ESC>
Run Code Online (Sandbox Code Playgroud)
根据另一条评论,我们有一个更简洁的解决方案,
map \q c()<ESC>P
Run Code Online (Sandbox Code Playgroud)
ib.*_*ib. 81
有两个相关的内置标记,用于存储当前缓冲区中最后一个视觉选择的第一个和最后一个字符的位置.要将光标移动到这些标记所指向的位置,请分别使用命令`<和`>.(见:help `>,:help `<.)
小智 53
当你Visual Selection点击时o.它会将光标的位置改变为选择的另一端.然后O跳回来.
JJo*_*oao 15
"用括号围绕视觉选择区域"的最简单方法是:
c焊割视觉选定区域()和PUT斯达康回在中间.=c()<ESC>P
我建议用以下方法定义一个新的.vimrc visual-mode命令(例如"\ q"):
:vmap \q c()<ESC>P
Run Code Online (Sandbox Code Playgroud)
这种方法也适用于可视矩形区域(<C-V>):它在每个块线周围放置"("")"
rom*_*inl 10
如果你不能使用Surrond.vim,这是一种方法:
v或做你的视觉选择V.<Esc>.`>a)<Esc>以在选择的最后一个字符后插入右括号.`<i(<Esc>以在选择的第一个字符之前插入左括号.| 归档时间: |
|
| 查看次数: |
11323 次 |
| 最近记录: |