tmux zeigt unter OSX eine seltsam kodierte Historie
Wenn ich den Befehl "history" in tmux mache, erhalte ich ein wirklich komisches Ergebnis. Hat jemand einen Hinweis darauf, was zu tun ist, um eine normale Ausgabe zu erhalten?
Die Ausgabe sieht folgendermaßen aus:
477 ◆┬▒⎺▒└☃◆ 478 c▒├ ◆┬▒⎺▒└☃◆ 479 ec▒⎺ ◆┬▒⎺▒└☃◆ 48▮ ┴☃└ ·/↓├└┤│↓c⎺┼° 481 ├└┤│ 482 ┌⎽ 483 cd ┐⎺▒┼⎽/ 484 ┌e☃┼ ┐⎺▒┼⎽ ⎼┤┼ 485 ┌⎽ 486 ┌e☃┼ ▮1_e─┤▒┌☃├☃e⎽↓c┌┘ ⎼┤┼ 487 cd ↓↓ 488 ┌e☃┼ ┐⎺▒┼⎽ ⎼┤┼ 489 cd ┐⎺▒┼⎽/ 49▮ ┌e☃┼ ┐⎺▒┼ ⎼┤┼ 491 ┴☃└ ▮1_e─┤▒┌☃├☃e⎽↓c┌┘ 492 ▒☃⎽├⎺⎼≤ 493 ┌e☃┼ ┐⎺▒┼ ⎼┤┼ 494 ├└┤│ ┌⎽ 495 ├⎺⎻ 496 ▒☃⎽├⎺⎼≤ 497 e│☃├ 498 e│☃├ 499 ▒☃⎽├⎺⎼≤ S⎼e┼⎽↑M▒cB⎺⎺┐↑P⎼⎺↑2:· S⎺e⎼e┼$
Ich vermute, es hat mit der Kodierung zu tun.
Ich habe ein MacBook Pro in OSX Lion 10.7.5.
Ich verwende die Terminal-App, die (unter anderem) die UTF-8-Codierung aktiviert hat, und UFT-8 unter "International - Character Encoding:".
Meine Schale ist Bash.
Mein tmux tmux -V
ist laut tmux 1.9a.
In meinem ~/.tmux.conf/
habe ich
set-option -g prefix ^Space bind-key ^Space send-prefix unbind C-b set-option -g status-fg white set-option -g default-command "reattach-to-user-namespace -l bash" set -sg escape-time 1 set -g base-index 1 setw -g pane-base-index 1 bind r source-file ~/.tmux.conf set-window-option -g utf8 on set -g utf8 set -g status-utf8 on
Mein languagesetup
Englisch ist, obwohl ich Dänisch bin und auch mein Tastaturlayout. :) Dies war nur ein Problem für mich, wenn languagesetup
nicht Englisch - insbesondere |
wenn das Pipe mit meinem Dänischen Pipe-Zeichen bedeutet, dass Bash den Befehl nach der Pipe nicht erkennt, wenn Ich habe ein Leerzeichen zwischen der Pipe und dem Pipe geschrieben, also musste ich z
echo $PATH |less
eher, als
echo $PATH | less
Aber wie gesagt, ich habe das mit behoben languagesetup
.
Ich bin sehr gespannt auf tmux, also hoffe ich, dass jemand weiß, wie man das repariert! :)
EDIT 1:
URSACHE:
Die seltsame Ausgabe war, weil ich ^ N (die Ausgabe von der Tastenkombination von Strg + n) in meiner Historie hatte. Die seltsame Ausgabe kann absichtlich erzwungen werden, wenn ich die Tastenkombination Strg + n und dann die Eingabetaste in tmux drücke. Ich habe ein Ticket auf der SourceForge-Seite von tmux eingereicht, falls es ein Fehler war: https://sourceforge.net/p/tmux/tickets/137/ Also, nein ^ N, keine komische Ausgabe!
EDIT 2:
Weitere interessante Details finden Sie in den Kommentaren :)
EDIT 3:
Nachdem ich einen Fehlerbericht für die tmux-Entwickler unter https://sourceforge.net/p/tmux/tickets/137/ eingereicht hatte, wurde mir gesagt, dass der Effekt von ^ N kein Fehler ist. Es ist ein Feature aus den alten Hardwareterminals vor 8 Tagen, in dem Entwickler Steuerzeichen verwendeten, um Zeichensätze zu wechseln, um Zugriff auf eine breitere Palette von Zeichen zu erhalten. ^ N würde sich "herausschieben", ^ O würde sich "einschieben", dh wieder auf den ursprünglichen Zeichensatz zurückgreifen. Das Drücken von ^ O hat für mich weder in Terminal noch in iTerm etwas zu tun. Dies liegt daran, dass ^ O erneut mit "Verwerfen" belegt wird - dies kann man beim Laufen sehen stty -a
. Nachdem Sie ^ N ausgeführt haben, können Sie jedoch ein Shell-Skript ausführen printf '\x0F'
, das das Steuerzeichen eingibt, das von ^ O erzeugt werden soll. Die Ausgabe wird wieder normal, wenn Sie sich "verschieben".
0 Antworten auf die Frage
Verwandte Probleme
-
2
Wie wird das Escape-Zeichen auf dem OS X-Terminal gesendet?
-
1
Wie entsperren Sie eine gesperrte Alias-Datei in OS X?
-
4
Verwenden Sie öffentliche Terminals, um sich mit Ihren persönlichen Zugangsdaten anzumelden
-
3
Wie kodiere ich Videos am besten für den Upload auf YouTube?
-
2
Wie kann ich OSX Terminal.app dazu bringen, den Vollbildmodus zu öffnen und nicht zu kaskadieren?
-
3
Mac OS X: herkömmliche Orte, an denen Binärdateien gespeichert werden sollen
-
2
Mac OS X: einfaches Skript gesucht
-
4
Transparentes Unicode X-Terminal, das nicht an eine Desktop-Umgebung gebunden ist?
-
3
OSX-Fenstergruppen
-
1
Löschen des Verlaufs aus der Google-Symbolleiste für z