作为Neovim用户,我可以键入di(
(也可以是di"
、di{
等),以便删除由匹配的方括号/引号分隔的内容。
(cursor here)
/
void foo(int bar)
-
通过运行di(
,我会得到
(cursor here)
/
void foo()
-
通过运行da(
,我会得到
(cursor here)
/
void foo
-
然而,在vim中,只有先将光标放在起始括号/引号上才能实现此行为。
(cursor here)
/
void foo(int bar)
-
因此,在vim中,我必须根据光标在行上的位置运行f(di(
或F(di(
,以便将光标移动到起始分隔符,然后删除内容。在neovim中,我可以直接运行di(
,获得相同的结果。
是否有任何重新Map,我可以设置,以使vim的行为像neovim?
1条答案
按热度按时间wvt8vs2t1#
Vim曾经以不同的方式处理嵌套对(开始和结束不同)和非嵌套对(开始和结束相同),但在8.2的生命周期后期都发生了变化。
您的Neovim版本包含该补丁,但您的Vim版本不包含。
将Vim更新到8.2.3255以上的版本,您将获得所需的行为。