Обычный vim yank
и paste
работает только в одном окне (но работает с файлами и командами закрытия / сохранения). Можно ли заставить его работать через терминалы (выдернуть из окна в одном терминале и вставить в другом) и если да, то как?
Возможно , самое простое , что для Вас , чтобы попытаться это положить set clipboard=unnamed
в вашей .vimrc
и перезапустить ВИМ сессий.
Это позволяет вам yank
(например yy
) работать в одном окне, и put
(например p
) в другом окне будет просто работать, потому что все сеансы vim будут совместно использовать один и тот же буфер выбора X.
С другой стороны, ваш буфер янки будет перезаписан, как только вы выделите какой-либо текст в любом другом окне любого приложения.
С другой стороны, это также означает, что все, что вы дергаете в vim, теперь может быть вставлено в любое приложение с помощью среднего щелчка.
Если вам не нравится этот способ, вы можете набрать "+
или "*
перед своим рывком и поставить команды, например, "+yy
чтобы восстановить строку.
Эти +
формы взаимодействуют с буфером обмена ( "+y
это как Ctrl+ C, "+p
это как Ctrl+ V).
Эти *
формы взаимодействуют с буфером выбора ( "*y
это как левой кнопкой мыши и перетащить, "*p
это как средней кнопкой мыши).
Подробности смотрите в разделе Выбор GUI , поддержка выбора X11 , параметры буфера обмена и мыши .
set clipboard=unnamed
у меня не работает (я положил его в .vimrc и перезапустил все сессии vim). К сожалению, и другие методы не делают. Похоже, мой vim не скомпилирован с x-support. Я использую VNC для подключения к Linux-машине с Windows-машины.:echo has('x11')
, если поддержка X включена, он напечатает1
.Если вы хотите скопировать весь файл в целевой файл.
Откройте целевой файл в vim.
Поместите курсор в нужное место и введите следующее:
Это скопирует весь файл туда, где находится ваш курсор ...
источник