Подтвердить что ты не робот

Как заблокировать (столбец?) Вставить в vim

как я могу вставить что-то на несколько строк?

Я пытаюсь добиться того же, что и: В существующем тексте я могу < C-v > jjjjj < S-I > HelloWorld <CR> для добавления HelloWorld в 5 строк

но вместо ввода HelloWorld я хочу получить текст из реестра. Я хочу сначала вытащить HelloWorld, затем вставить его в 5 строк.

4b9b3361

Ответ 1

Когда вы находитесь в режиме вставки, вы можете нажать Ctrl-R, за которым следует буква для буфера, который вы хотите вставить. Затем просто нажмите Escape, как обычно, и он будет вставлен в блок как обычно.

Ответ 2

Скажем, у вас в буфере 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 (shift + я - capital "i" ) - это "режим блокировки блока"
  • type [ ]
  • нажмите esc (escape)
  • текст будет вставлен в каждую строку

Ответ 3

Для этого можно использовать макрос, например [email protected]

qq запускает макрос с именем q

0 переходит в начало строки, а P вставляет содержимое yanked перед курсором

j идет по одной строке, а q завершает макрос

[email protected] повторяет макрос q 4 раза