删除 Vim 中两个括号之间的所有内容,包括换行符

Mig*_*ell 10 vi vim

假设我有以下 python 数组文字:

def f():
    arr = [
        1,          
        2,
        3   
    ]  
Run Code Online (Sandbox Code Playgroud)

我想删除括号中的所有内容,使其变为:

def f():
    arr = [] 
Run Code Online (Sandbox Code Playgroud)

如何在 vim 中使用最少的命令来做到这一点?


这些是我的一些尝试:

rom*_*inl 9

你可以简单地做:

ca[[]<Esc>
Run Code Online (Sandbox Code Playgroud)

或者:

ca][]<Esc>
Run Code Online (Sandbox Code Playgroud)

:help text-objects

  • 只是做 ci[ 对我来说效果更好。留下括号。 (6认同)

小智 7

将光标放在第一个左括号 ( [) 上,按V,然后按%。这将选择您可以加入的块J,然后是di[