как мне вставить что-то в несколько строк?
я пытаюсь достичь того же, что и: В существующем тексте я могу jjjjj HelloWorld чтобы HelloWorld был вставлен в 5 строк
но вместо ввода HelloWorld я хотел бы получить текст из регистра. я хочу сначала восстановить HelloWorld, а затем вставить его в 5 строк.
Когда вы находитесь в режиме вставки, вы можете нажать Ctrl-R, а затем букву для буфера, который вы хотите вставить. Затем просто нажмите Escape, как обычно, и блок будет вставлен как обычно.
Ctrl-R
Допустим, у вас есть следующее в буфере vim:
1| Do the dishes 2| Get milk 3| Take out the trash
и вы хотите вставить [ ] в начале каждой строки, чтобы она стала:
[ ]
1| [ ] Do the dishes 2| [ ] Get milk 3| [ ] Take out the trash
CTRL + V
j
I
esc
Вы можете использовать макрос для этого, например qq0Pjq4@q
qq0Pjq4@q
qq запускает макрос с именем q
qq
q
0 идет в начало строки, а P вставляет восстановленный контент перед курсором
0
P
j идет вниз на одну строку, а q завершает макрос
4@q повторяет макрос q 4 раза
4@q