Самый быстрый способ вставить блок текста в Редактор Vi из внешнего источника

например, копирование раздела conf с веб-страницы, а затем вставка его в a .conf файл, который вы открыли в Vi.

10 ответов


или если вы используете системный регистр, вы можете вставить, не находясь в режиме вставки:

"*p

это вставит буфер обмена системы в точке курсора. Режим вставки не требуется.


  1. введите режим вставки (введите Я)
  2. тип: ctrl- shift-v

одна вещь, чтобы иметь в виду, иногда Vim авто-отступы текста. Это в основном хорошо, но иногда это портит текст, который вы вставляете в документ.

Если отступы искажены, удалите вставленный текст, введите :set paste, вставьте текст снова, и когда вы закончите, введите :set nopaste.


ответ:

  1. :set paste

  2. введите режим вставки: нажмите Я

  3. вставить: команда + v или управления + v

  4. :set nopaste


самый простой способ-просто скопировать текст и просто правильный clic, где вы хотите вставить его в VIM в режиме вставки.


Если вы используете gvim, нажмите CTRL-R, затем * или + в режиме вставки. Он вставит последний скопированный текст.


Ctrl-V / Apple-V? Просто убедитесь, что вы находитесь в режиме вставки в vi (i)


вы вставляете комбинацию клавиш в режиме вставки или если ваш источник-другой файл, вы можете ввести: r, и он будет вставлен в текущее местоположение вашего курсора.


самый простой способ на *nix-это выбрать его с помощью мыши и вставить его в vim со средним щелчком мыши, после того, как поставил vi в режим вставки.

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


самый быстрый способ-вставить его, используя любой ключ вставки, который использует ваша система (например,⌘ - v для macs,Ctrl-V для окон и т. д.) в режиме вставки. Некоторые терминалы требуют использования Shift-Ctrl-V. Однако вы можете вставить в командную строку, как вы должны вставить в vim. Однако, это может вызвать некоторые проблемы с отступами, где :set paste приходит. Самый быстрый способ войти и выйти из этого-установить pastetoggle (см. :help pastetoggle). Например, я использую

set pastetoggle=<leader>p

причина использования pastetoggle вместо сопоставления заключается в том, что если вы установите режим вставки отображения будет читать его буквально, когда в режиме вставки. Таким образом, если вы :set paste перейдите в режим вставки и введите в любом imap отображение не будет завершено, но вместо этого будут вставлены литеральные символы. С pastetoggle вы можете обойти это, так как это встроенная функция.

как говорили другие, если вы находитесь в режиме вставки, вы также можете использовать <C-r>*, но почему? Ваш нормальный поток вставки, скорее всего, лучше. Понимание * зарегистрируйтесь и <C-r> является важным навыком, однако. Вы можете прочитать больше о них :help registers и :help i_CTRL-R. Вы также можете использовать "*p но если вы быстрее набираете это, то ваша обычная паста меня впечатляет. Конечно, вы можете сопоставить это с чем-то другим, но опять же... почему? Вы должны привыкнуть быстро входить в режим вставки с помощью i, I, a, A, o, O, s, S, c, and C чтобы вы могли быть точными.