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

Vim выбирает концы нескольких строк (режим блока, но где меняется конечный столбец)

Есть ли какой-либо способ в vim, чтобы я мог выбрать конец всех этих строк? (Я показываю только конец строк на этих снимках экрана).

В блочном режиме я могу получить их все, если нижняя строка длиннее остальных, но если нижняя строка короче, более длинные строки усекаются.

ИЗМЕНИТЬ | Наверное, я могу просто вычеркнуть нижнюю строку пробелами перед тем, как выбрать, а затем удалить пробелы позже.

enter image description hereenter image description here

4b9b3361

Ответ 1

  • Наведите курсор на верхний левый символ, который вы хотите быть частью блока.
  • Войдите в режим выбора блока с помощью ctrl + v
  • Выберите до конца строки $ (это тот шаг, который вам не хватает, если вы перейдете к концу первой строки с помощью $, то выбор будет расширяться к концу последующих строк)
  • Сдвиньте 3 строки с помощью 3 j

Более подробную информацию в разделе документации Vim о визуальном режиме, который вы можете читать онлайн, или просто введите :help v_$ в Vim.

Ответ 2

В качестве альтернативы вы можете установить параметр virtualedit (:h 'virtualedit'), чтобы в любое время, когда вы находитесь в режиме визуальных блоков, вы можете перемещать курсор даже за концы строк. Например. :set virtualedit=block.

Ответ 3

  • Нажмите где-нибудь (в любом месте) в первой строке, к которой вы хотите добавить текст.

  • Нажмите Control + V.

  • Нажмите Down, чтобы создать произвольный выбор вертикального блока, который охватывает нужные строки.

  • Нажмите $, чтобы развернуть выбор визуального блока до концов каждой выбранной строки.

  • Нажмите Shift + A добавить текст к каждой выбранной строке.

  • Введите текст, который вы хотите добавить.

  • Нажмите Escape, и текст будет добавлен по выбранным строкам.

Ответ 4

Если вы хотите выбрать самый последний символ каждой строки, например, если вы хотите добавить что-то после кавычек в конце каждой строки, вы можете сделать следующее:

  • Наведите курсор на самый последний символ (в этом примере последняя цитата в первой строке)
  • Введите режим блока: control + V
  • Сдвиньте вниз, чтобы выбрать столько строк, сколько хотите.
  • Вставить в конец строки: shift + A
  • Введите то, что вы хотите добавить, а затем выйти из режима Visual.
  • Теперь текст должен быть вставлен в конце каждой выбранной строки!

Надеюсь, что это полезно для других, таких как я, ища ответ, похожий, но не совсем такой же, как выше.