У меня нет хорошего ответа, и в настоящий момент у меня нет доступа к системе под управлением X для экспериментов, но эта тема обсуждается в справочном руководстве по Vim здесь:
:help x11-selection
Вы не сказали, как копировали текст в буфер обмена, но если вы используете *регистр, это может помочь +вместо этого использовать регистр.
Попробуйте выбрать, удерживая нажатой клавишу Shift. Это (обычно) говорит эмулятору терминала напрямую копировать текст вместо отправки событий мыши в Vim. Выход из Vim после этого таким образом не должен уничтожать содержимое буфера копирования, а средний щелчок в другом приложении должен вставить выделенный текст.
Это не поможет вам с gVim. Однако вы заметили, что используете регистр +, что означает, что вы должны получать доступ к буферу обмена, который не уничтожается при выходе из приложения, которое в последний раз «записывало» в него. Этот регистр не вставляется с помощью среднего щелчка мышью. Либо используйте control-v (для приложений, которые поддерживают вставку из буфера обмена с помощью этой горячей клавиши), либо щелкните правой кнопкой мыши и выберите «Вставить».
Ответы:
Недавно я решил эту проблему с помощью одной строки в .vimrc (требуется утилита
xsel
):Он сохраняет текущий текст реестра в буфер буфера обмена.
источник
system
:system("xsel -ib", getreg())
Я использую
xclip
для этого:autocmd VimLeave * call system("xclip -o | xclip -selection c")
источник
Это довольно просто:
Смотрите эту страницу для получения дополнительной информации и вариантов.
источник
У меня нет хорошего ответа, и в настоящий момент у меня нет доступа к системе под управлением X для экспериментов, но эта тема обсуждается в справочном руководстве по Vim здесь:
Вы не сказали, как копировали текст в буфер обмена, но если вы используете
*
регистр, это может помочь+
вместо этого использовать регистр.источник
+
регистром.Попробуйте выбрать, удерживая нажатой клавишу Shift. Это (обычно) говорит эмулятору терминала напрямую копировать текст вместо отправки событий мыши в Vim. Выход из Vim после этого таким образом не должен уничтожать содержимое буфера копирования, а средний щелчок в другом приложении должен вставить выделенный текст.
Это не поможет вам с gVim. Однако вы заметили, что используете регистр +, что означает, что вы должны получать доступ к буферу обмена, который не уничтожается при выходе из приложения, которое в последний раз «записывало» в него. Этот регистр не вставляется с помощью среднего щелчка мышью. Либо используйте control-v (для приложений, которые поддерживают вставку из буфера обмена с помощью этой горячей клавиши), либо щелкните правой кнопкой мыши и выберите «Вставить».
источник