我发现自己经常重复以下操作模式.
我通常进入视觉模式,选择一些行或块.然后我用y它们猛拉它们,然后使用p或粘贴它们P.下一步是选择粘贴的文本,替换变量或函数名称或更改缩进.
我知道我可以gv用来重新选择"原点",但我想要的是一个类似命令来选择"目的地".
:help gv提到:
但它仅在您通过寄存器内容替换选择时有用,而不是在插入整个新块时.
After using "p" or "P" in Visual mode the text that was put will be selected.
Luc*_*tte 47
你在找
`[v`]
Run Code Online (Sandbox Code Playgroud)
Pet*_*ker 10
我更喜欢以下简单的映射到Benoit的功能
nnoremap <expr> g<c-v> '`[' . strpart(getregtype(), 0, 1) . '`]'
Run Code Online (Sandbox Code Playgroud)
详细了解表达式图:
:h :map-expression
Run Code Online (Sandbox Code Playgroud)
正如@ZyX指出的那样,strpart不是必需的,可以改写为:
nnoremap <expr> g<c-v> '`[' . getregtype()[0] . '`]'
Run Code Online (Sandbox Code Playgroud)
您的用例之一是在粘贴后更改缩进。
我使用以下地图来实现此目的:
nnoremap <leader>[ `[V`]<
nnoremap <leader>] `[V`]>
Run Code Online (Sandbox Code Playgroud)
他们执行以下操作:
我发现这些地图非常有用且使用得很好。
| 归档时间: |
|
| 查看次数: |
2233 次 |
| 最近记录: |