Как выбрать все ЛИНИИ в скобках в VIM - PullRequest
0 голосов
/ 01 октября 2019

Скажем, у меня есть следующий код

aaa;
bbb;
ccc void () {
    xxx;
    yyy;
}
ddd;
eee;

Теперь предположим, что мой курсор находится на ггг. Я хотел бы выделить весь код между круглыми скобками { и } включительно всей строки, в которой находятся скобки. Это означает, что выделение будет выглядеть как

до выбора

enter image description here

после выбора

enter image description here

va} не является решением, так как это производит

enter image description here

Ответы [ 2 ]

2 голосов
/ 01 октября 2019

Эффективно это должен быть выбор. Но соответствующий «текстовый объект» вызывает символ Charwise (поэтому нет никакой разницы между va{ и Va{).

Однако вы можете сделать выбор в любое время. Так что va{V достигает желаемого результата.

Я не уверен, нужно ли вообще какое-либо отображение. Но, по крайней мере, ab не следует трогать, так как обычно оно обозначает круглые скобки ("() -block").

vnoremap aB aBV

Теперь vaB выберет {} -блок также, а va{сделает "нормальный" выбор {} -блока.

0 голосов
/ 01 октября 2019
nmap vab va{$o0

Разбивка

vab

выделено внутри скобок, включая скобки. Курсор заканчивается в конце выделения.

$

перемещает курсор в конец строки

o

перемещает курсор на другой конец блока выделения

0

перемещает курсор в начало строки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...