Обычный vim yank
и paste
работает только в одном и том же окне (но работает с файлами и командами close/save). Можно ли заставить его работать через терминалы (выдернуть из окна в одном терминале и вставить в другом) и если да, то как?
2 ответа
Вероятно, самое простое, что вы можете попробовать, - это установить set clipboard=unnamed
в вашем .vimrc
и перезапустить ваши vim-сессии.
Это позволяет вам запускать yank
(например, yy
) в одном окне, а put
(например, p
) в другое окно просто будет работать, потому что все сеансы vim будут совместно использовать один и тот же буфер выбора X.
С другой стороны, ваш буфер янки будет перезаписан, как только вы выделите какой-либо текст в любом другом окне любого приложения.
С другой стороны, это также означает, что все, что вы дергаете в vim, теперь может быть вставлено в любое приложение с помощью среднего щелчка.
Если вам не нравится этот способ, вы можете набрать "+
или "*
перед тем, как вставлять и вставлять команды, например "+yy
чтобы восстановить строку.
Формы +
взаимодействуют с буфером обмена ("+y
подобен Ctrl+C, "+p
подобен Ctrl+V).
*
Формы * взаимодействуют с буфером выбора ("*y
- как щелчок левой кнопкой мыши и перетаскивание, "*p
- как средний щелчок »).
Подробности смотрите в разделе Выбор GUI, поддержка выбора X11, параметры буфера обмена и мыши .
Если вы хотите скопировать весь файл в целевой файл.
Откройте целевой файл в vim.
Поместите курсор в нужное место и введите следующее:
:r /path_to_file/file.ext
Это скопирует весь файл туда, где находится ваш курсор ...