Ich versuche, einige Terminalprobleme zu beheben, die ich von meinem Windows-Laptop zu einem Linux-Server mit der Git Bash-Shell verbinden. Der Bildschirm scheint nicht korrekt zu aktualisieren (clear löscht den Bildschirm nicht, nach dem Beenden von vim und man bleibt auf dem Bildschirm, usw.). Ich schaue mir die stty-Einstellungen an und vergleiche sie mit einem anderen Linux-Server, auf dem ich diese Probleme nicht habe. Eines der Dinge, die ich auf meinem funktionierenden Server sehe, ist eol = M-^?; eol2 = M-^?;
. Kann mir jemand die Notation erklären? Wie kann ich diese Einstellung auf dem anderen Server replizieren?Was bedeutet M- ^? in sty output bedeuten?
Antwort
stty
ist auf Einzelbyte-Zeichen beschränkt.
bash
verwendet die Namenskonvention (wie auch einige andere Programme) eines M-
Präfix, um das Meta-Flag zu bezeichnen. Herkömmlicherweise ist ^?
ASCII DEL (127 dezimal, 0x7f hex), also würde ich erwarten, dass M-^?
255 (0xff) ist.
Je nach Implementierung (Diskussion von _POSIX_VDISABLE
sehen) stty
diesen Wert als undef
zeigen könnte:
$ stty -a
speed 38400 baud; rows 40; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^H; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke
In Bezug auf meta hat ncurses eine Dokumentation in terminfo(5)
:
Wenn das Terminal hat einen "Metaschlüssel", der als eine Verschiebung Schlüssel fungiert, das 8th Bit von setzt jedes übertragene Zeichen, Diese Tatsache kann mit km angegeben werden. Andernfalls wird die Software davon ausgehen, dass das Bit 8th Parität ist, und es wird normalerweise gelöscht werden. Wenn Strings existieren diese „Meta-Modus“ auf und auszuschalten, können sie als
smm
undrmm
gegeben werden.
und mit der keyname
Funktion, es gibt Werte in dieser Form:
Werte über 128 sind entweder meta Zeichen (wenn der Bildschirm nicht initialisiert wurde, oder wenn meta mit genannt worden ist ein TRUE-Parameter), der in der Notation MX dargestellt wird oder als solche angezeigt wird. Im letzteren Fall sind die Werte möglicherweise nicht druckbar. Dies folgt der X/Open-Spezifikation.
Weiterführende Literatur:
- Alt-keys do not work in bash
- 9.13 Why doesn’t my Meta key work in an xterm window? (GNU Emacs FAQ)
- what if _POSIX_VDISABLE value is -1?
- 17.4.9 Special Characters (Die GNU C Library)
- 1. Was bedeutet "Schnecke" bedeuten
- 2. Was bedeutet! Vi bedeuten?
- 3. Was bedeutet: :: in C++ bedeuten?
- 4. Was bedeutet „+“ bedeuten in Scala
- 5. "##" in printk, was bedeutet ## bedeuten
- 6. Was bedeutet: = in vb.net bedeuten?
- 7. Was bedeutet :: in angularJS bedeuten
- 8. Was bedeutet "__asm __ (". Previous "); ' bedeuten?
- 9. was bedeutet das Javascript bedeuten
- 10. Was bedeuten Verzeichnisnamen?. und '..' bedeuten und was bedeutet faDirectory?
- 11. In Haskell, was bedeutet: +: in Datentypdefinition bedeuten?
- 12. Was bedeutet „$ {x %% *}“ in sh bedeuten?
- 13. Was bedeutet ..level .. bedeuten in ggplot :: stat_density2d
- 14. Was bedeutet das `...` bedeuten gehen in bekommen
- 15. Was bedeutet das '/' Symbol in CSS bedeuten
- 16. Was bedeutet '$?' in Bash-Skripten bedeuten?
- 17. Was bedeutet - in der Git-Nutzung bedeuten?
- 18. Was bedeutet. (...) in einem .prof-Bericht bedeuten?
- 19. Was bedeutet das. $ In Angular bedeuten?
- 20. Was bedeutet "|" in einer numpigen Zeichenfolge bedeuten?
- 21. Was bedeutet für (;;) bedeuten in C#
- 22. Was bedeutet '$?' in einem Shell-Skript bedeuten?
- 23. Was bedeutet? V = 2 in css bedeuten?
- 24. Was bedeutet das "?" in einer Abfrage bedeuten?
- 25. Was bedeutet "??" bedeuten in Standard ML
- 26. Was bedeutet M, D genau in Dezimal (M, D)?
- 27. Was bedeutet [-/M] nach Dateiname in NetBeans?
- 28. Was bedeutet X11cairo gefolgt von einer Zahl in R bedeuten
- 29. Was bedeutet Desinfizieren verbotener Attribute Fehler bedeuten?
- 30. Was bedeutet "typedef void (* Etwas)()" bedeuten
wild guess ... Ende der Linie erzeugt eine Kontrolle M ?? !! – SriniV
Würde das dann nicht als '^ M' angezeigt? Zum Beispiel 'intr =^C;' – Archa5238