Ich habe angefangen zu verwenden, tmux
aber ich finde, dass das Verwenden Ctrlb0-9sehr ärgerlich ist, weil es so oft verwendet wird.
Wie binde ich die Tastatur, damit ich nur Ctrl0-9Fenster wechseln muss (wie in Chrome)?
Ich habe versucht, es in der zu konfigurieren .tmux.conf
, aber ohne Erfolg.
Dies ist meine aktuelle .tmux.conf-Datei
bind C select-pane -t :.+
set -g status-bg black
set -g status-fg white
keyboard-shortcuts
tmux
Johan Bjäreholt
quelle
quelle
Antworten:
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:
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):
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
):quelle
^[[>4;1m
, um die Funktion " modifyOtherKeys" zu aktivieren (siehe XTerm-Steuerungssequenzen , Suche nach " modifyOtherKeys" ). Allerdings tmux 1.9 nicht mehr diese Sequenz senden .Die Antwort von @ChrisJohnsen ist perfekt. Einige Benutzer möchten jedoch möglicherweise Hilfe beim Einrichten von Iterm 2- Schlüsseln, um dieses Verhalten zu erreichen.
Gehen Sie zunächst zu "Iterm2 -> Einstellungen -> Profile -> Schlüssel" wie in:
Klicken Sie anschließend auf das
+
Symbol, um eine Voreinstellung hinzuzufügen, wenn einige Ctrl+ Numbernicht in der Liste enthalten sind (das Format in der Liste wird angezeigt^number
), wie dies bei der der Fall ist^1
, die in der Standardliste nicht verfügbar ist.Drücken Sie Ctrl+, 1wenn Sie die Tastenkombination auswählen, und wählen Sie als Aktion "Escape-Sequenz senden". Fügen Sie dann Chris Johnsens Escape-Sequenzen ohne das ^ [hinzu, das durch die Aktion iterm2 hinzugefügt wird:
Wiederholen Sie diesen Vorgang später für alle anderen Steuertasten und bearbeiten Sie die bereits vorhandenen.
quelle