Estou executando o tmux 1.6 e estou tentando configurá-lo para usar combinações de teclas no estilo vi, bem como usar a área de transferência do sistema ao copiar no modo interativo:
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\""
Simplificando, eu gostaria de poder C+ [e depois usar vpara começar a selecionar o texto para copiar; quando ypressionado, copie a seleção para a seleção tmux e, em seguida, exporte-a para a área de transferência do sistema usando xclip
.
Infelizmente, quando tento fazer isso, vejo o seguinte:
.tmux.conf: 14: unknown command: copy-selection && run "tmux save-buffer | xclip -selection clipboard"
Existe uma maneira de fazer isso na configuração do tmux?
xclip
está realmente instalado em seu sistema (não é instalado por padrão no Ubuntu, você precisasudo apt-get install xclip
para obtê-lo)xclip
porpbcopy
. Para Cygwin no Windows, substitua-o porputclip
(dacygutils-extra
embalagem).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
. Isto é suposto para permitir "modo mouse" , mas mesmo depois de removê-lo tudo sobre o meu mouse funciona bem (obras roda de rolagem, obras de seleção mouse) ...A versão atualizada para Ben Davis responde
compatível com tmux 2.4
fonte
copy-pipe-and-cancel
e nãocopy-pipe
. Isso é feito no tmux 2.5Você está enfrentando alguns problemas técnicos:
as ligações do "modo especial" (por exemplo
vi-copy
)…run-shell
akarun
não está disponível) e;
- o&&
separador de comandos do shell não está disponível).O tmux 1.8 possui
copy-pipe
, o que poderia ajudar:(Existe uma ligação como esta listada na FAQ .)
fonte
Dê uma olhada no plugin tmux-yank para tmux. https://github.com/tmux-plugins/tmux-yank
Ele fornece uma maneira automatizada de copiar / colar do tmux para a área de transferência do sistema. Funciona em sistemas OSX / Linux / Cygwin.
fonte
Para o macOS, você pode adicionar esta linha a
.tmux.conf
bind -t vi-copy y copy-pipe 'pbcopy'
fonte
bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel 'pbcopy'
Foi isso que acabou trabalhando para mim usando o tmux 2.2 e tendo instalado o xclip. Para cópia no estilo Vim, adicione o seguinte ao arquivo .tmux.conf
Aqui, no modo de cópia, PREFIX v inicia a seleção e PREFIX y copia para a área de transferência. PREFIXO p pode ser usado para colar no terminal.
fonte