Удалить от курсора до конца скобок (и т.д.) в vim

Допустим, у меня есть эта строка текста в vim:

(foo bar (baz) qux)
    ^

и мой курсор находится в пространстве между foo и бар , как указано. Я часто обнаруживаю, что в подобных ситуациях я хочу удалить всю правую часть внешнего выражения в скобках (то есть справа от курсора), оставив левую часть нетронутой. То есть я хотел бы получить в итоге:

(foo)

Обычно я выполняю это с помощью dt) («удалять до ) »), но добавляя вложенные скобки усложняют ситуацию: эта команда оставит меня с (foo) qux) . Я мог бы также использовать d2t) , но я бы предпочел не подсчитывать вручную количество вложенных скобок. Я мог бы также использовать di) , но это удаляет целиком внутри скобок, оставляя меня с () .

Есть ли движение vim с балансировка движений i - и a -модифицированных , но это относительно текущей позиции курсора?

16
задан adrian 24 August 2011 в 23:59
поделиться