Usando Ctrl + B in meno all'interno di tmux


17

Uso il Ctrl+Bprefisso del comando in tmux, tuttavia questo si scontra con Ctrl+Bin less, che viene utilizzato per scorrere verso l'alto un file.

Come posso farlo funzionare? Devo impostare un prefisso di comando diverso in tmux? Non voglio davvero imparare nuove combinazioni di tasti se posso evitarlo.

Risposte:


18

Ovviamente non puoi avere due chiavi che fanno la stessa cosa quando entrambi i programmi sono in ascolto. Tmux lo capirà per primo. Non hai specificato quale set di combinazioni di tasti non desideri riapprendere, ma devi fare qualcosa di diverso perché la stessa chiave viene utilizzata per entrambe le app.

Se lo usi solo occasionalmente, lesspuoi semplicemente passare la cosa reale premendo hit Ctrl+ BB(che è Ctrl-B due volte) tmuxper passare un singolo Ctrl-B all'app nel riquadro corrente.

Se vuoi cambiare l' tmuxassociazione per essere qualcos'altro (diciamo like Ctrl+ Alike screen) puoi aggiungerlo al tuo file `~ / .tmux.conf:

unbind C-b
set -g prefix C-a

Se vuoi usare qualcos'altro per less, la Gchiave di solito è già destinata ad andare all'inizio del file, quindi non sono necessarie modifiche. Se la modifica non ti soddisfa, puoi ricollegare le chiavi usando lesskey.


Se cambio l'associazione tmux in Ctrl+A, ciò si scontrerà con l'inizio del comando. Ho anche 'Ctrl + B + B' associato alla finestra precedentemente selezionata.
dogbane,

1
@Caleb: Nel mio tmux(Ubuntu 11.04 con la configurazione predefinita), "Ctrl + B B" non fa nulla (né è documentato nella pagina man); bisogna usare "Ctrl + B Ctrl + B" per inviare un Ctrl + B all'applicazione. (Al contrario, per screenimpostazione predefinita viene utilizzato "Ctrl + A A" per inviare un "Ctrl + A" all'applicazione.) Risposta eccellente, comunque.
Riccardo Murri,

1
@RiccardoMurri: questo è un problema di nomenclatura. Non ho lasciato uno spazio tra i Btasti che indicherebbe il rilascio del controllo. Normalmente con chiavi in ​​stile come quelle si inserisce uno spazio o una virgola tra le chiavi se la chiave di controllo dovesse essere rilasciata, ma non è uno standard ben definito. Alcune persone non usano nemmeno la stessa +sintassi ...
Caleb

@dogbane: se ricolleghi un doppio CTRL-B a qualcosa di diverso da quello predefinito, è colpa tua e dovrai rimappare, mappare la versione pass-through di CTRL-B a qualcos'altro o usare una chiave diversa per meno.
Caleb,

2
@dogbane che uso Ctrl+\ , ma questa è ovviamente una questione di preferenze personali. Non ti piacerà la mia scelta se non hai un modo di scrivere Ctrl+\ sulla tastiera senza contorsioni delle dita.
Gilles 'SO- smetti di essere malvagio' il


6

È possibile utilizzare il comando tmux send-prefix. Invierà il prefisso di associazione chiave tmux alla finestra corrente

Ad esempio, in .tmux.conf:

set-option -g prefix C-a
bind-key v send-prefix

Quindi, premendo Ctrl-a+ vverrà inviato Ctrl-aal terminale.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.