Как вы можете вставить, когда находитесь в режиме визуального блока (нажав ctrl-V) в Vim?
Как вы можете вставить, когда находитесь в режиме визуального блока (нажав ctrl-V) в Vim?
Ответы:
Попробуй это
После выбора блока текста нажмите Shift+ iили заглавную I.
Строчные буквы iне работают.
Затем введите то, что вы хотите, и, наконец, чтобы применить это ко всем строкам, Escдважды нажмите .
Если это не сработает ...
Проверьте, +visualextra
включили ли вы в своей версии Vim.
Вы можете сделать это, набрав :ver
и прокручивая список функций. (Вы можете скопировать и вставить его в буфер и выполнить инкрементный поиск, потому что формат нечетный.)
Включение этого параметра выходит за рамки этого вопроса, но я уверен, что вы можете где-нибудь его найти.
A
тоже!
vi
), не включает эту visualextra
функцию, поэтому вставка блока там не работает. sudo apt-get install vim
вводит более полнофункциональную версию, на которой visualextra
активируется. @TylerCollier Это может быть та же проблема при установке CentOS: проверьте вывод, vim --version
чтобы увидеть полный список активированных функций.
ctrl + v
вы можете нажать, j
чтобы быстро выбрать строку (строки) ниже текущей позиции, или нажать, k
чтобы быстро выбрать строку (строки) выше текущей позиции. Вы также можете использовать shift
клавишу с ошибками up
или down
для выбора.
i
, я поражен. Я использовал :normal iINPUT<CR>
для ввода в начале строк. Большое спасибо за это!
У вас также может быть вариант использования, когда вы хотите удалить блок текста и заменить его.
Как это
Hello World
Hello World
Вы можете выбрать визуальный блок перед "W" и нажать Shift+ i- Тип "Cool" - Hit, ESCа затем удалить "World" путем выбора визуального блока.
В качестве альтернативы, более крутой способ сделать это - просто визуальным блоком выбрать «Мир» в обеих строках. Введите cдля change
. Теперь вы в insert
режиме. Вставьте то, что хотите, и нажмите ESC. Оба отражаются с меньшими нажатиями клавиш.
Hello Cool
Hello Cool
ESC
тогда во всей отмеченной строке будет отображаться символ, который вы вводите.