A execução de comandos shell a partir do interior do tmux está a fazer com que o terminal do Gnome quebre a chave de prefixo [duplicate]

2

Estou executando o tmux dentro do terminal do gnome e tenho tentado usar uma ligação para copiar o conteúdo do buffer de pasta do tmux para minha área de transferência do Linux X. Muitos lugares na internet recomendam isso:

bind C-c run "tmux save-buffer - | xclip -i -sel clipboard"

Este comando funciona perfeitamente na linha de comando:

tmux save-buffer - | xclip -i -sel clipboard

Se eu ligar o comando shell a uma chave e usá-lo dentro do tmux (usando bind C-c run "tmux save-buffer - | xclip -i -sel clipboard" ), ele copia o buffer save do tmux para minha área de transferência; depois de copiar algum texto no modo "copiar" do tmux, essa ligação carregará o texto na área de transferência do X, pronta para ser colada em um navegador ou em qualquer outro lugar. No entanto, _also_ faz com que a chave de prefixo pare de funcionar para esse terminal.
Se eu matar o terminal com o tmux rodando dentro dele e abrir outro terminal e reconectar ao tmux, a chave de prefixo continuará trabalhando em outro terminal.
Eu também tentei a seguinte abordagem:

Configure um arquivo executável: /usr/local/bin/tmux_to_clip com o comando

% cat /usr/local/bin/tmux_to_clip 
#!/bin/bash

tmux save-buffer - | xclip -i -sel clipboard

e depois chama o comando de dentro do tmux

:run tmux_to_clip

novamente, copia com sucesso o comando para a área de transferência, mas novamente quebra a chave de prefixo. Como posso evitar isso e obter uma atalhos de teclado para copiar o tmux save-buffer na área de transferência do X?

    
por the_velour_fog 10.09.2016 / 08:18

1 resposta

0

Eu estava passando pelo mesmo problema (chato). Parece que usar xsel -ib em vez de xclip -i -sel clipboard , como sugerido nesta resposta , funciona!

Portanto, a ligação final deve ser: bind C-y run "tmux save-buffer - | xsel -ib"

    
por 11.03.2017 / 22:08