Hallo, Am Fri, 30 Jan 2004, Axel Heinrici schrieb:
On Thursday 29 January 2004 23:05, David Haller wrote:
1. Wie finde ich heraus in welchem Mode mein xterm denn überhaupt läuft?
xrdb -query | grep -i xterm
Ahh. *ratter_ratter* da war mal was ... da gibt es ja auch dieses file .Xdefaults. Nur leider kommt bei obiger Zeile nur ein "xterm*reverseVideo: False" heraus. Das ist auch in Einklang mit der .Xdefaults.
Hm. Dann laeuft xterm wohl mit den defaults. Steht TERM auf "xterm"?
RTFM: Bash-Prompt-HOWTO, man xterm Ja RTFM, ich weiß. :-) Aber das Bash-Prompt-HOWTO muss man erstmal finden und dann muss man noch drauf kommen das es was mit der Sache zu tun hat, wenn man nach "xterm", "title" etc. sucht. :-)
Interpretier das F als "Fine" :) Achso, die ctrlseqs.ms, auf die in der manpage hingewiesen, aber normal nicht mitinstalliert wird, ist auch interessant: ==== ESC ] Operating System Command (OSC: 0x9d) [..] OSC Ps ; Pt BEL Set Text Parameters Ps = 0 -> Change Icon Name and Window Title to Pt Ps = 1 -> Change Icon Name to Pt Ps = 2 -> Change Window Title to Pt ==== Anders formuliert: ESC]0;STRING\007 setzt den Fenstertitel und Iconnamen auf STRING, ESC]2;STRING\007 aendert nur den Fenstertitel.
xterm -title ...
Die man-page kenn' ich. Das hilft einem in nem laufenden xterm nur leider sehr wenig.
Ja.
TTY="`tty`"; export TTY="${TTY##*[\/a-zA-Z]}" export PS1="\[\033]0;\u@\h[${TTY}]: \w\007\]${PS1}"
Letzteres schreibt z.B. "user@host[TTY]: PFAD" in die Titlezeile. Weitere Beispiele finden sich im Bash-Prompt-HOWTO. Du kannst auch die Variable PROMPT_COMMAND verwenden, aber das verwendet schon der mc, d.h. da gibt's dann Aerger.
Werde mir bei nächster Gelegenheit mal die Zeit nehmen nachzuvollziehen was obige zwei Zeilen genau machen. Danke für die Ausführliche Antwort, aber ich werde mir vermutlich erstmal mit der einfachereren "echo -ne "\033]0;xxx\007"-Variante behelfen.
s.o. Die erste Zeile (TTY) setzt die Shell-Variable TTY auf die Nummer des aktuellen Terminals (/dev/ttyX oder /dev/pts/X), und die zweite Zeile baut das ESC]0;xxx\007 in den PS1-Prompt ein. Da ich im "\u@\h[${TTY}]: \w" ja auch den aktuellen Pfad habe ist das praktisch, da so der Pfad im Titel auch aktualisiert wird, wenn ich das Verzeichnis wechsle. Probier doch einfach mal: PS1="\[\033]0;\u@\h: \w\007${PS1}" -dnh -- "Das Neu starten eines Unix Rechners kann sehr schmerzhafte Folgen haben, je nachdem wie schwer das naechste greifbare Buch ist, welches ihnen dann an den Kopf fliegt." -- frei nach einer sehr alten c't [Jens Link]