BASH in Terminal.app bricht zu früh die Zeile um

Dieses Thema im Forum "Mac OS - Unix & Terminal" wurde erstellt von sECuRE, 20.12.2005.

  1. sECuRE

    sECuRE Thread Starter MacUser Mitglied

    Beiträge:
    566
    Zustimmungen:
    6
    Mitglied seit:
    25.06.2005
    Hi,

    ich habe meine Shell von tcsh auf bash umgestellt und mein Prompt in "\e[36;40m\u@\e[34;40m[\W]\e[31;1m $\e[0m " geändert. Nun bricht die Zeile zu früh um, das heißt, dass ich, wenn ich einen Befehl eingebe, nicht an das rechte Ende des Fensters komme (welches 80x24 groß ist).

    Hatte das Problem mal jemand? Wie wurde es gelöst?

    Im Netz hab ich das selbe Problem für Linux gefunden, leider ist es hier als "known problem" abgehandelt und mehr als ein "live with it" kam nicht bei raus.

    Danke schonmal
     

    Anhänge:

  2. Es sieht so aus, als ob bash die Länge des Prompts falsch berechnet und deshalb zu früh umbricht, indem auch nicht darstellbare Zeichen (\e[?) berücksichtigt werden.

    Bei fancybash tritt dieser Effekt interessanterweise nicht auf!
     
  3. sECuRE

    sECuRE Thread Starter MacUser Mitglied

    Beiträge:
    566
    Zustimmungen:
    6
    Mitglied seit:
    25.06.2005
    Hi,

    darauf würde ich auch tippen, es hört sich plausibel an. Kann man das nun irgendwie beheben?

    Danke & cu
     
  4. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.693
    Zustimmungen:
    602
    Mitglied seit:
    24.09.2003
    Ja:
    Code:
    PS1="\[\033[36;40m\]\u@\[\033[34;40m\][\W]\[\033[31;1m\] $\[\033[0m\] "
     
  5. sECuRE

    sECuRE Thread Starter MacUser Mitglied

    Beiträge:
    566
    Zustimmungen:
    6
    Mitglied seit:
    25.06.2005
    Hi,

    das funktioniert wunderbar, danke :).

    cu
     
  6. maceis

    maceis MacUser Mitglied

    Beiträge:
    16.693
    Zustimmungen:
    602
    Mitglied seit:
    24.09.2003
    Ach ja, ich habe aus Gewohnheit `\033' geschrieben - Du kannst Du natürlich auch weiterhin `\e`schreiben.
    Wichtig ist die Klammerung. Das steht aber auch in der man page; insofern kann ich das "live with it" nicht so recht nachvollziehen ;).
     
Die Seite wird geladen...

Diese Seite empfehlen