Ativando o mouse em conflitos do tmux com colar no X [duplicado]

2

Esta questão é semelhante, mas não é idêntica a tmux - alguma maneira de ativar a rolagem, mas não a seleção?

Estou usando o tmux dentro do gnome-terminal. Quando eu uso setw -g mode-mouse on no tmux para habilitar a rolagem através do buffer de histórico, o tmux não respeita a funcionalidade copiar / colar no X, ou seja, selecionar o texto não coloca o texto no buffer primário e não posso colar usando o botão do meio do mouse

Quando pressiono o botão do meio do mouse, vejo as coordenadas no canto superior direito da tela - parece que está tentando registrar um clique do meio do mouse no uso da roda de rolagem.

Existem configurações do tmux que eu posso usar para corrigir isso? A roda de rolagem e os botões do meio do mouse são vistos como independentes no tmux? Posso mapear o botão do meio do mouse para colar o SO? A solicitação de copiar / colar do tmux de / feed para o SO colar?

    
por Barton Chittenden 24.05.2013 / 16:01

2 respostas

0

Na verdade, a resposta estava escondida entre as possibilidades listadas em tmux - alguma maneira de ativar a rolagem, mas não a seleção? :

You have the following options:

  • set up a keyboard short-cut that copies the tmux selection into yoursystem clipboard
  • use a terminal that supports set-clipboard function, such as xterm
  • disable any use of the mouse in tmux

Eu pesquisei por set-clipboard e encontrei o link que é o que eu queria, se não o que eu pedi.

    
por 24.05.2013 / 17:16
5

Rápido

No OS X, (usando o iTerm2) eu tenho que segurar shift + alt para sobrescrever o controle do mouse do tmux temporariamente. Seu emulador de terminal pode ter uma capacidade semelhante.

Funciona, mas pesado

Além disso, você pode desligar o suporte do mouse, copiar o texto com a área de transferência do sistema e ativá-lo novamente. De meu ~/.tmux.conf :

### Mouse On/Off ### {{{
## Mouse On by default
set -g mode-mouse on
set -g mouse-resize-pane on
set -g mouse-select-pane on
set -g mouse-select-window on

##Toggle mouse on with <prefix>m
bind m \
        set -g mode-mouse on \;\
        set -g mouse-resize-pane on \;\
        set -g mouse-select-pane on \;\
        set -g mouse-select-window on \;\
        display 'Mouse: ON'

## Toggle mouse off with <prefix>M
bind M \
        set -g mode-mouse off \;\
        set -g mouse-resize-pane off \;\
        set -g mouse-select-pane off \;\
        set -g mouse-select-window off \;\
        display 'Mouse: OFF'
### End Mouse On/Off ### }}}

Possivelmente melhor

Você também pode fazer um yank do tmux ir para a área de transferência do seu sistema:

# move x clipboard into tmux paste buffer
bind C-p run "tmux set-buffer \"$(xclip -o)\"; tmux paste-buffer"
# move tmux copy buffer into x clipboard
bind C-y run "tmux save-buffer - | xclip -i"

Onde xclip pode ser substituído por sua escolha. Este último precisaria de X forwarding, se feito em um servidor remoto.

    
por 24.05.2013 / 16:16