2015-11-06 1 views
0

Я пытаюсь вставить строку, которую я скопировал с веб-страницы в vim. Я знаю, что строка копируется в системный буфер обмена. Мой vim возвращает 1, когда я запускаю команду :echo has('clipboard'), поэтому я набрал :set paste, затем поместил курсор в нужное место и нажал "*p, но это, похоже, не вставляет весь мой выбор. Я скопировал в буфер обмена Vader(father figure), но он только вставляет Vader. Или он вставляет это, потому что слово за курсором - Vader? И, наконец, какой самый простой способ вставить что-то в vim из буфера обмена системы?Вставка из буфера обмена в vim

Я упоминаю, что я использую Ubuntu 14.04 (если это имеет значение).

+0

Я всегда установить 'gvim', например, с пакетом' ВИМ-gtk', после ВИМ-х + регистр будет синхронизирован с буфером обмена. Даже для обычного vim, который работает в терминале. – swenzel

+0

Я уже установил пакет vim-gtk ('sudo apt-get install vim-gtk'). Мне было интересно, как на самом деле вставить мой выбор в документ. Правильно ли это '' * p' или '' + p'? – Polb

+0

Последнее должно быть правильным. – swenzel

ответ

0

Имейте эту строку в .vimrc

Поэтому, когда вы нажимаете F2 в режиме вставки Вы можете вставить нормально без проблем. Для получения дополнительной информации см. here.

0

Я всегда использую Ctrl+Shift+v в режиме Вставки, при вставке из системного буфера обмена после выполнения set paste. Никогда не было никаких проблем с этим.

В противном случае вы можете использовать плагин vim-unimpaired by tim pope и использовать сопоставление ключей yo, установленное плагином для вставки. Использование yo автоматически устанавливает параметр вставки, и после того, как вы вставляете и оставляете режим Insert, он автоматически переключает параметр установки вставки.

0

Вам нужно всего лишь set paste, если вы собираетесь вставлять в режиме вставки с помощью средней кнопки мыши или любого ярлыка, который предоставляет ваш терминал.

Теперь возможно, что регистр, который вы ищете, является цитатой +. Чтобы подтвердить, что просто запустите :registers, чтобы просмотреть содержимое всех регистров.

Я также советую вам прочитать следующую справочную секцию :help x11-selection.

0

В настоящее время я использую системный буфер обмена в vim как регистр по умолчанию в сочетании с менеджером буфера обмена, например Diodon или Klipper (для KDE).

Добавьте это в конфигурации ВИМ ~/.vimrc

" Use the system clipboard for yank/delete/paste operations 
if has('unnamedplus') 
    set clipboard=unnamed,unnamedplus 
endif 

С помощью этой конфигурации ВИМ операций копирования/вставки (в обоих направлениях), ведут себя так же, как и в любом другом графическом редакторе (if has ('unnamedplus') уверяют, что такое поведение включается только если vim скомпилирован с опцией + clipboard, иначе по умолчанию используется).

Примечание: на Windows, и MacOS с помощью неназванный или unnamedplus эквивалентно.

В Linux две разные сущности:

  • неназванный регистр является выбор буфера (попробуйте выбрать что-то с помощью мыши, а затем в центре нажмите или нажмите и Sx и Dx кнопки мыши в другом месте).
  • unnamedplus регистр фактически системный буфер