rxvt-unicode mit 256 Farben

lme

FreeBSD Committer
Hallo zusammen,

hat jemand rxvt-unicode (urxvt) mit 256 unter FreeBSD laufen?
Das habe ich nie wirklich hinbekommen, maximal 187 Farben.
Extraschön wäre es noch, wenn das mit tmux funktionieren würde, da muss es ja auch noch konfiguriert werden.

Also, bitte her mit einer funktionierenden .Xdefaults, und was sonst noch dazu gehört. :)
 
256 Farben für rxvt-unicode sind tatsächlich so eine Sache. Erstmal muss der Port mit Unterstützung für 256 gebaut sein. Das ist unter FreeBSD nach einer längeren Diskussion inzwischen die Standardeinstellung, einige Linuxe wie z.B. OpenSUSE haben dafür aber noch immer ein extra Paket neben dem "normalen" rxvt-unicode. Um die 256 Farben dann auch wirklich nutzen zu können, muss die TERM Umgebungvariable korrekt gesetzt sein. Dafür in der .Xdefaults:
Code:
URxvt*termName: rxvt-unicode-256color
Aber Achtung. Während FreeBSD rxvt-unicode-256color out of the Box versteht, tun viele Linuxe es nicht. Dort landet man dann in einem unbrauchbaren Standard-Terminal, bis man entweder TERM mit z.B. 'rxvt' überschreibt oder rxvt-unicode installiert. Das ist gerade dann nervig, wenn man oft per SSH zu Linux-Servern verbindet.

urxvtc_256.png
 

Anhänge

  • 256.txt
    622 Bytes · Aufrufe: 311
Hallo @Yamagi,

danke für den Beitrag und den meines Erachtens wichtigen Hinweis mit ssh Verbindung FreeBSD -> GNU/Linux.

Dein Konsolenoutput mit den vielen Farben sieht ja klasse aus.

Viele Grüße,
Holger
 
so viel Farbe war für mich nie ein Thema, aber als ich nach diesem Thread gestern erst mal manuell probierte, funktionierte echo -e gar nicht. Das war seltsam, in einigen Scripts hatte ich Farbe benutzt (nicht immer mit echo, auch mit printf) und ein kurzer Test zeigte, dass dies auch funktionierte. Schließlich fiel mir auf, dass bash und sh es können, aber (t)csh (mein Default) offenbar nicht.
Nun sehe ich, dass offenbar auch Yamagi die bash aufgerufen hatte für seine Darstellung und da suche ich nun erst mal nicht weiter bei einem Fehler auf meiner Seite.
Aber, ist das nicht merkwürdig?
 
Die Bash habe ich einfach genommen, weil das per Google gefundene Testscript die Arithmetik-Erweiterungen der Bash nutzt. Man kann das auch in FreeBSDs sh implementieren, aber ich hatte ehrlich gesagt keine Lust das Script selbst zu schreiben oder zumindest umzubauen. ;) Aber zum eigentlichen Problem: 'echo' ist bei den meisten Shells ein Buildin, was sich komisch verhalten kann. FreeBSDs sh und bash brauchen die Echo-Option -e, damit sie Backslashes in den Escape-Sequenzen korrekt interpretieren. tcsh braucht die Option nicht, es macht es anscheinend immer. FreeBSD /bin/echo habe ich nun gar nicht dazu bekommen, die Escape-Sequenze korrekt auszugeben. Die Manpage empfiehlt printf.
 
Ja und das sogar richtig. Aber die Bash hat da irgendwelche Eigenheiten oder Erweiterungen...
 
Auch mit ncurses? Ich hatte damals TERM vor allem geändert, weil sich ncurses bei TERM=rxvt hartnäckig weigerte mehr als 8 Farben anzuzeigen. Aber das ist schon ein wenig her und vielleicht haben sie das auch repariert.
 
also, bei mir gibt es gar keine ~/.Xdefaults, damit dann TERM=rxvt und es sieht doch irgendwie auch nach 256 Farben aus.

von
http://misc.flogisoft.com/bash/tip_colors_and_formatting
habe ich das Script und damit vergleiche ich dann auch. rxvt-unicode rufe ich so auf, um schwarzen Hintergrund und weiße Schrift in etwas größeren Lettern zu bekommen: urxvt -bg black -fg white -fn "9x15,xft:Courrir New" und dann erhalte ich so etwas:
 

Anhänge

  • screenshot-27.07.2016-201255.jpg
    screenshot-27.07.2016-201255.jpg
    118,8 KB · Aufrufe: 311
Auch mit ncurses?

Hmmm, vermutlich nicht.

Ich hab' eben mal 'nen kleinen Test mit tmux gemacht:
  • export TERM=rxvt; tmux --> nur ANSI Farben
  • export TERM=rxvt; tmux -2 --> volle Farbpracht
  • export TERM=rxvt-unicode-256color; tmux --> volle Farbpracht
Ähnlich sieht's bei xterm aus (mit TERM=xterm bzw. xterm-256color).
 
Zurück
Oben