2015-09-03 34 views
7

Sto usando tmux in una sessione ssh. Sto usando più riquadri e finestre.tmux mouse copy-mode salta in fondo

Ho la modalità mouse abilitata che funziona benissimo finora.

Quando seleziono il testo, viene automaticamente copiato nel buffer tmux e la finestra salta alla fine. Quindi se faccio scorrere verso l'alto e clichiamo su sth, salta alla fine ... Quando passo da un riquadro all'altro viene attivato un comando di copia e l'uscita arriva alla fine. Non mi piace davvero questo comportamento e preferirei premere un pulsante per copiare o fare clic su q per completare la modalità copia o sth.

E 'possibile disabilitare la copia automatica // salto automatico fino alla fine del rilascio del pulsante del mouse?

Sto eseguendo tmux 2.0 sul server tramite ssh. In Terminator sul client.

# config                   
#{{{                    

# 0 is too far from ` ;)               
set -g base-index 1                

# Automatically set window title             
# set-window-option -g automatic-rename on          
# set-option -g set-titles on             

set -g default-terminal screen-256color           
set -g history-limit 10000              

set -g status-keys vi               
setw -g mode-keys vi                
setw -g mode-mouse on               
set -g mouse-select-window on             
set -g mouse-select-pane on              
set -g mouse-resize-pane on              

# No delay for escape key press             
set -sg escape-time 0               

#}}}                    

# bind keys                  
#{{{                    
# Reload tmux config                
bind r source-file ~/.tmux.conf             

# remap prefix to Control + a              
set -g prefix C-a                 
# bind 'C-a C-a' to type 'C-a'              
bind C-a send-prefix                
unbind C-b                   

# switch tabs with <b n>               
bind b previous-window                

# vi like paste                  
bind-key p paste-buffer                

# quick pane cycling                
unbind a                   
bind a select-pane -t :.+               

bind-key v split-window -h               
bind-key s split-window -v               

bind-key J resize-pane -D 10              
bind-key K resize-pane -U 10              
bind-key H resize-pane -L 10              
bind-key L resize-pane -R 10              

bind-key M-j resize-pane -D 2              
bind-key M-k resize-pane -U 2              
bind-key M-h resize-pane -L 2              
bind-key M-l resize-pane -R 2              

# Vim style pane selection               
bind h select-pane -L                
bind j select-pane -D                
bind k select-pane -U   
bind -n M-Down select-pane -D             

# find asci keycodes with "sudo showkey -a" - works only tmux >1.7    
# us-keyboard like [ ]               
bind-key -r 0xc3 display 'c3 prefix binding hack'        
bind-key -r 0xb6 copy-mode # ö             
bind-key -r 0xa3 paste-buffer # ä            
# us { }                   
bind-key -r 0x96 swap-pane -U # Ö - swap pane to prev position     
bind-key -r 0x84 swap-pane -D # Ä - to next pos 

#}}}       

risposta

2

a partire da tmux 2.2 è disponibile la funzione di copia-selezione -x. Con le seguenti opzioni tmux rimane in modalità copia dopo la selezione. Scegli quello che si adatta alle impostazioni della tua modalità.

bind-key -t vi-copy MouseDragEnd1Pane copy-selection -x 
bind-key -t emacs-copy MouseDragEnd1Pane copy-selection -x 
1

Sembra che l'aggiornamento a tmux 2.1 possa risolvere il problema.

Nella versione 2.1 hanno cambiato il mouse-mode, mouse-select-window/riquadro ecc con interruttore singolo mouse. Le azioni del mouse ora generano eventi chiave che possono essere mappati come chiavi ordinarie.

4

ero in grado di ottenere la selezione del mouse per smettere di saltare verso il basso in tmux (versione 2.2) aggiungendo il seguente al mio ~/.tmux.conf:

setw -g mouse on 
setw -g mode-keys vi 
unbind -t vi-copy MouseDragEnd1Pane 

avvertimento: questo ha l'effetto collaterale di accensione modalità vi.

ho trovato this issue essere rilevante e ho trovato la configurazione sopra in these dotfiles.

2

Come di tmux 2,5 si dovrebbe usare

unbind -T copy-mode-vi MouseDragEnd1Pane