Сначала вы должны установить версию vim с поддержкой буфера обмена. Для размещения пользователей с неграфическими средами (например, пользователи Ubuntu Server) vim
и vim-tiny
не подключайтесь к этой возможности. Вы захотите установить GVim , который будет запускаться либо графически, либо в вашем терминале. GVim заменит vim
команду.
Вы можете скопировать текст в «буфер вырезания» из первого vim, а затем вставить текст во второй vim. Для копирования в глобальный буфер среза используйте +
регистр. "
Ключ позволяет указать , какой регистр для использования при выполнении дернуло или вставить операцию.
В первом vim вставьте строку в +
регистр:
"+yy
затем для вставки из +
реестра во второй vim:
"+p
Для получения дополнительной информации о доступных регистрах, проверьте :help registers
. Вы также можете использовать "+p
для вставки текста, скопированного из любого другого источника в вашей системе.
"*yy
,"*p
Также работает. если вы нажмете:reg
, вы увидите этот звездный реестрЛучшее решение, которое сработало для меня (не требует, чтобы я изменил свои привычки связывания клавиш), находится здесь: https://stackoverflow.com/questions/9166328/how-to-copy-selected-lines-to-clipboard-in- напор
просто положи:
в вашем
.vimrc
.источник
set clipboard=unnamedplus
в сочетании с установленным GVim. Тем не менее, я смог использовать xfce4-терминал для Vim вместо настоящей программы GVim.Мне нравится решение Билла, и я создал карту:
первый в визуальном режиме копирует все в / tmp / vitmp, а второй копирует содержимое из / tmp / vitmp в файл
источник
"*y
на серверах не работаетЯ перемещаюсь между различными машинами семейства Unix и обнаружил, что следующая последовательность всегда работает для меня:
В исходной VI сессии:
ESC m a
чтобы отметить первую строкуESC m b
чтобы отметить последнюю строку:'a,'b w! xfer
чтобы записать диапазон в рабочий файлВ целевой сессии:
ESC :r xfer
для чтения в текстеЯ знаю, что это не красиво, но это всегда работает для меня!
источник
На самом деле это довольно просто: установить версию с
vim
поддержкой буфера обмена. еслиvim
нет, получите одно из следующих:После установки просто запустите
vim
. Вы также можете проверить, включен ли буфер обмена, выполнив:ты должен увидеть
+xterm_clipboard
.источник
Возможно, вы все ненавидите этот ответ. Я работал в vi еще в 80-х годах на разных компьютерах Unix, и у меня недавно был шанс поиграть в Linux.
Мое решение для вырезания и вставки заключается в использовании Putty, работающей в Windows, для доступа к моей Linux-системе.
Putty позволяет скопировать любой текст в его окне, просто выделив его. затем вы можете перейти в другое окно / сеанс Putty и щелкнуть правой кнопкой мыши, чтобы вставить.
не может быть проще. и теперь есть VIM. Жаль, что не было в те времена, это помогло бы мне справиться с мафией Emacs.
источник
Он не совсем использует yy, но если вы выбираете текст, который хотите скопировать с помощью мыши (иногда вам может понадобиться использовать Shift- [drag]), переключитесь на другое окно терминала и выполните [средний щелчок] или Shift- [средний нажмите] там, текст будет вставлен в текущую точку вставки.
Это работает для большинства программ командной строки и графического интерфейса, а не только для vim.
источник