Я хотел бы объединить много (~ 1000) строк, но только каждую нечетную со следующей. От руки я мог сделать
Jj
500 раз и сделали это. Тем не менее, как я могу выполнить эти два оператора 500 раз в одной команде? Typing
500Jj
присоединится к следующим 500 линиям и затем двинется вниз на одну строку.
Пример:
Я имею:
a
b
c
d
e
f
g
h
Я хочу:
a b
c d
e f
g h
Редактировать: я пробовал картирование:
:map X Jj
500X
но, видимо, мне следует снова прочитать документы по картографированию. Не работает
vim
normal-mode
Boldewyn
источник
источник
Чтобы сделать это в каждой строке файла:
или короче:
Чтобы сделать это только на части файла, выделите строки с помощью Vили получите диапазон другим способом:
или короче:
источник
:g
ответов ОП нужно.global
трюк. В моем случае, однако, запись макроса была проще и быстрее.Как насчет этого:
или
и сгруппировать каждые три строки
источник
Мы также можем играть с:
источник
Я не пользователь Vim, но проверяю онлайн документы, похоже
может работать, так как он разбирает вещи внутри скобок как единое целое.
источник