На MacOS Sierra beta 5, использующей iterm 2 и tmux, я потерял возможность копировать / вставлять в tmux.
Я хочу копировать / вставлять в мои сеансы tmux, как это было возможно с El Capitan. Я только что установил MacOS Sierra, и у меня больше нет этой функциональности. Я не понимал, как часто я использовал эту возможность, пока не потерял ее вчера.
- MacOS Sierra Beta 5
- Tmux 2.2
- iterm2 build 3.0.7
- reattach-to-user-namespace v2.5
Что я сделал
- В этой статье я попробовал исходные параметры конфигурации tmux, используя пространство имен reattach-to-user-name.
- Я удалил пространство имен reattach-to-user и переустановил с помощью brew.
- Я знаю, что начиная с El Capitan вышеупомянутая оболочка больше не нужна для использования pbcopy / pbpaste. Это было удалено из моего
.tmux.conf
файл с выпуском El Capitan.
Это последний сбой, который мне нужно исправить после загрузки Sierra на этот macbook. Я не уверен, как отладить это, чтобы понять, что не работает правильно. Любая помощь в любом направлении, с помощью отладки или решения, будет высоко ценится.
2 ответа
Bugger - я нашел настройку в iterm2, которую мне не хватало. Что я заметил, так это то, что pbpaste действительно работал должным образом, я просто не мог выделить текст в сеансе tmux, и работа pbcopy была ожидаемой.
Это заставило меня очень внимательно взглянуть на мои предпочтения iterm2. Включение этого параметра сработало, Applications in terminal may access clipboard
,
Я также включил мой раздел.tmux.conf, касающийся pbcopy / pbpaste для других, так как нет недавних ресурсов по этой теме:
# copy-paste integration
set-option -g default-command "login-shell"
# use vim key bindings in copy mode
setw -g mode-keys vi
# use 'v' to begin selection like in vim
bind-key -t vi-copy v begin-selection
bind-key -t vi-copy y copy-pipe "pbcopy"
# update default bindings of `Enter` to also use copy-pipe
unbind -t vi-copy Enter
bind-key -t vi-copy Enter copy-pipe "pbcopy"
# bind ']' to use pbpaste
bind ] run "pbpaste | tmux load-buffer - && tmux paste-buffer"
Обратите внимание, что я использую login-shell, убедитесь, что ваша предпочтительная оболочка находится в /etc/shells
и вы установили его в качестве оболочки по умолчанию.
chsh -s /usr/local/bin/bash
Для меня установка этого флажка не сработала - мне пришлось снова добавить tmux-MacOSX-pasteboard, как указано здесь: