Я использую tmux 1.6 и пытаюсь настроить его на использование сочетаний клавиш в стиле vi, а также использовать системный буфер обмена при копировании в интерактивном режиме:
set-window-option -g mode-keys vi
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' "copy-selection && run \"tmux save-buffer | xclip -selection clipboard\""
Проще говоря, я хотел бы иметь возможность сделать C+, [а затем использовать, vчтобы начать выделение текста для копирования, затем, когда yнажата, скопировать выделение в выделение tmux и затем экспортировать его в системный буфер обмена с помощью xclip
.
К сожалению, когда я пытаюсь это сделать, я вижу следующее:
.tmux.conf: 14: unknown command: copy-selection && run "tmux save-buffer | xclip -selection clipboard"
Есть ли способ сделать это в конфигурации Tmux?
xclip
на самом деле установлено в вашей системе (это не установлено по умолчанию в Ubuntu, вам нужноsudo apt-get install xclip
его получить)xclip
наpbcopy
. Для Cygwin в Windows замените его наputclip
(изcygutils-extra
пакета).bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -i -f -selection primary | xclip -i -selection clipboard"
set -g mouse on
. Предполагается, что это разрешит «режим мыши», но даже после его удаления все, что касается моей мыши, работает нормально (колесо прокрутки работает, выбор мыши работает) ...Обновленная версия для ответа Бен Дэвис
совместим с tmux 2.4
источник
copy-pipe-and-cancel
, чемcopy-pipe
. Это на tmux 2.5Вы столкнулись с парой технических проблем:
привязки «специального режима» (например
vi-copy
)…run-shell
онrun
недоступен), и;
-&&
разделитель команд оболочки недоступен).tmux 1.8 имеет
copy-pipe
, что может помочь, хотя:(Существует такая привязка, перечисленная в FAQ .)
источник
Взгляните на плагин tmux-yank для tmux. https://github.com/tmux-plugins/tmux-yank
Он обеспечивает автоматический способ копирования / вставки из tmux в системный буфер обмена. Работает на системах OSX / Linux / Cygwin.
источник
Для macOS вы можете добавить эту строку в
.tmux.conf
bind -t vi-copy y copy-pipe 'pbcopy'
источник
bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel 'pbcopy'
Это то, что в итоге помогло мне использовать tmux 2.2 и установить xclip. Для копирования в стиле Vim добавьте следующее .tmux.conf
Здесь, когда в режиме копирования PREFIX v начинает выделение, а PREFIX y копирует в буфер обмена. PREFIX p можно использовать для вставки в терминал.
источник