Можно ли выбрать несколько непересекающихся строк (или разделов) в визуальном режиме VIM? Если да, то как?
Множественный выбор в VIM
Ответ 1
Вам нужно установить плагин multiselect для получения этой возможности. Найдите его здесь: http://www.vim.org/scripts/script.php?script_id=953
Ответ 2
Нет, это невозможно без плагинов.
Но вы можете копировать несколько строк в один и тот же буфер, если это решает вашу проблему.
- Чтобы запустить "Накопительный буфер":
- отметьте раздел для копирования в визуальном режиме,
- нажмите
"a
для работы с буферомa
со следующей командой и - держите его как обычно (
y
).
- Чтобы добавить в этот буфер:
- отметьте следующий раздел и
- нажмите
"a
(заглавное имя буфера означает "не перезаписывайте буфер, добавьте его вместо этого" ) - и снова yank, используя
y
.
- Затем вы можете вставить накопленный буфер
a
в любое время, используя"ap
.
Ответ 3
Более современный ответ этот плагин.
(отказ от ответственности: я лично на самом деле не использую его, он слишком сильно мешает остальной части моей установки vim. Если ваш vim относительно чист, и вы переходите от возвышенного, это, безусловно, может быть вашей чашкой чая. )
Я также хотел бы указать функциональность записи/воспроизведения vim (клавиша q
). Нередко запись также не нужна, я могу выполнять задачи, обычно выполняемые с помощью возвышенного множественного выбора, выполняя ее итеративно (например, искать что-то, выполнять исправление в первом экземпляре, а затем повторять последующие повторы путем нажатия n
и n
для перемещения и .
, чтобы повторить операцию редактирования).
У меня есть мой ,
запятой nnoremap
'd до @q
, это повторяет последовательность, записанную нажатием qq
(запись в регистр q
).