如何在Vim中Map双引号

mrfwxfqh  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(149)
println("Hello world!")

字符串
ci(可以用来修改Vim中括号的内容,有一个更简单的方法:cib,因为b是括号的别名。ci"可以用来修改双引号的内容,但是双引号没有别名,所以我想为它Map一个:omap u \",但是我发现ciu不起作用,我怎么把uMap到双引号?也就是说,我想把一个字符Map到另一个字符。我怎么做?

println("Hello world!")


我希望当我按下ciu时,它可以达到与按下ci"相同的效果,如下所示:

println("")

hrirmatl

hrirmatl1#

ci"中没有i

有:

  • c,表示“change”的c运算符,
  • i",“内部引号”文本对象。

您需要的是i"的“别名”,而不是"的“别名”,这是通过将iuMap到i"来完成的:

onoremap iu i"
xnoremap iu i"

字符串
注意,vV<C-v>不是运算符,所以onoremap不足以覆盖所有情况,还需要一个可视模式Map。

相关问题