Einige der Control + -Ziffern-Tastenanschläge erzeugen ziemlich standardisierte Sequenzen, aber nicht alle.
Folgendes habe ich in dem xterm gefunden , das ich zur Hand hatte:
C-1: 1 (i.e. not different form a plain 1 keystroke)
C-2: ^@
C-3: ^[
C-4: ^\
C-5: ^]
C-6: ^^
C-7: ^_
C-8: ^?
C-9: 9 (i.e. plain 9)
C-0: 0 (i.e. plain 0)
Die gleichen Sequenzen werden in iTerm 2 generiert (obwohl dies sehr konfigurierbar ist).
Wenn Ihr Terminal - Emulator ähnliche Sequenzen erzeugt, dann Sie könnten die meisten von ihnen binden (obwohl Sie den Standard, nicht-numerischen „Namen“ für die Schlüssel verwenden müssen, zB C-@
oder ^@
, et cetera). Sie müssen eine Möglichkeit finden, Ihr Terminal so zu konfigurieren, dass eine Sequenz für alle Tastenanschläge gesendet wird, die noch nichts anderes als den unveränderten Schlüssel senden (z. B. 1, 9 und 0 oben).
Jedoch ohne Präfix diese Schlüssel - Bindung ( bind -n …
) wird wahrscheinlich viele Sachen brechen. Insbesondere ^[
ist das Escape-Zeichen (das in fast allen Terminal-Steuerungssequenzen verwendet wird) ^?
normalerweise das Delete-Zeichen ^@
(als C-Space), das üblicherweise bei der Bearbeitung von Emacs (im Stil) usw. verwendet wird.
Ein besserer Ansatz besteht wahrscheinlich darin, Ihr Terminal so zu konfigurieren, dass die von tmux 1.8 erkannten xterm-ähnlichen "modifyOtherKeys" -Sequenzen gesendet werden (wenn Ihr xterm dies unterstützt, fordert tmux dies automatisch an):
C-1: ^[[27;5;49~
C-2: ^[[27;5;50~
C-3: ^[[27;5;51~
C-4: ^[[27;5;52~
C-5: ^[[27;5;53~
C-6: ^[[27;5;54~
C-7: ^[[27;5;55~
C-8: ^[[27;5;56~
C-9: ^[[27;5;57~
C-0: ^[[27;5;48~
Die tmux- Namen für diese Schlüssel sind genau C-0
und so weiter.
Hinweis: Diese Schlüsselnamen und Sequenzen werden von tmux- Versionen älter als 1.8 nicht erkannt .
Sie würden sie so binden (in Ihrem .tmux.conf
):
bind-key -n C-0 select-window -t :0
bind-key -n C-1 select-window -t :1
bind-key -n C-2 select-window -t :2
bind-key -n C-3 select-window -t :3
bind-key -n C-4 select-window -t :4
bind-key -n C-5 select-window -t :5
bind-key -n C-6 select-window -t :6
bind-key -n C-7 select-window -t :7
bind-key -n C-8 select-window -t :8
bind-key -n C-9 select-window -t :9