Wie kann ich mit tmux unter OSX befehl + k klarer machen?


20

Wenn ich das Terminal in OSX verwende, verwende ich häufig + K, um den Bildschirm und den Bildlaufpuffer zu löschen. Es ist tief im Muskelgedächtnis.

Ich habe angefangen, mit tmux zu basteln, und ein Kritikpunkt ist, dass + Kden gesamten Bildschirm, die Fenster und alles abwischt. Was ich möchte, ist, dass es nur den fokussierten Bereich betrifft.

Kann ich dieses Verhalten irgendwie konfigurieren?

Antworten:


21

Konfigurieren Sie iTerm2 zum Senden eines Löschbefehls

Einstellungen -> Tasten -> + (neue globale Verknüpfung hinzufügen)

  • Tastaturkürzel: ⌘ + k
  • Aktion: Senden Sie Text
  • Wert:

Löschen \ n

Alternativ können Sie iTerm2 so konfigurieren, dass ⌘ + k effektiv Strg + l zugeordnet wird

  • Tastaturkürzel: ⌘ + k
  • Aktion: Hex-Code senden
  • Wert:

0x0c

Auf diese Weise sehen Sie nicht, dass der Text aufblitzt, und der Befehl zum Löschen verschmutzt nicht Ihren Verlauf.


2
Einfache und elegante Lösung. Danke mein Freund.
Rafael

Schöne Lösung! Sie haben meine tmux-Erfahrung weitaus angenehmer gemacht. Vielen Dank :)
Matt Darby

Nur eine Warnung, dies wird den Text zum Terminal flashen
Jay

1
Das ist großartig, aber es basiert auf dem clearBefehl und funktioniert daher nicht , wenn Sie sich in der Konsole irb oder rail befinden.
Robert

17

Sie können prefix+ rnach dem + verwenden K, um das tmux-Fenster neu zu zeichnen.

Wenn Sie die Gewohnheit abbrechen können, funktioniert ein normales ctrl+ lnormal pro Fenster.


3
ctrl + l ist nicht dasselbe wie cmd + k, da Sie mit ctrl + l immer noch nach oben scrollen und die alte Geschichte sehen können. Wenn Sie beispielsweise ein Protokoll verfolgen, das Ihren Bildlauf schnell rückwärts ausführt, ist cmd + k von unschätzbarem Wert, da Sie genau wissen, wann Sie das letzte Mal aufgehört haben. Strg + l wird dies nicht für Sie tun.
Bjorn

@BjornTipling ⌘ + K ist eine Funktion des Terminal-Emulators und funktioniert nicht in tmux ... Diese Bindung wurde entwickelt, um die statische Standardausgabe, die nicht in tmux vorkommt, und andere Programme wie vim / emacs / weechat / mutt, werden angezeigt.
demure

1
+1 für die Gewohnheit zu brechen, kann ich nicht aufhören, es bis heute zu tun. Am besten clear
tippe

3

Sie können folgende Zeilen hinzufügen .tmux.conf:

# clear the current pane
bind -n C-k send-keys C-l \; clear-history

Dann lade deine tmux config neu. Jetzt können Sie den aktuellen Bereich mit Ihrem Bindungsschlüssel +k(zB: Ctrl+ b, k) löschen.

Ich kenne die Syntax für OSX nicht, aber ich denke, Sie können die Zeile leicht anpassen.


Ich sehe, das C-llöscht den Bildschirm und clear-historylöscht den Scrollback-Puffer. Was macht das \;Teil?
Nathan Long

es läuft beide @ NathanLong
Jay

3

bind -n C-k send-keys -R \; send-keys C-l \; clear-history

Habe das von hier

Requisiten für ihn. Dies funktioniert für mich genauso wie Cmd+kfür den Terminal-Emulator und für MacOS 10.12.5 mit iTerm2.


Funktioniert wie ein Zauber, auch wenn ein Befehl gefällt tail -f ... oder ein Server ausgeführt wird!
Derek
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.