GNOME Bugzilla – Bug 480063
Add "Retro ANSI feel" colour scheme
Last modified: 2019-11-20 22:22:15 UTC
Hi there, First, this request is almost the pure definition of bikeshedding. I ask for your consideration anyway :-). When switching to gnome-terminal from xterm, I found that none of the default colour schemes held up to what I consider a truly decent set. To me, a decent colour set should satisfy these two measures: - important: no combination of pale background/foreground is unreadable by having too large a saturation/brightness difference between any colour pair - desirable: must preserve the theme and recognizability of the ANSI colour set, so that coloured applications can use names like "Red" and this colour can be recognised by the user This theme satisfies these conditions, and adds: - basic theme: background is a yellowish off-white, foreground off-black - nostalgic: all colours bar the off-black derive from a named colour from the classic X11 rgb.txt - quirk: add important missing colour (orange) into previously worthless colour position (bright white) Actually there are still some shortfalls between what xterm colour selection could do and gnome-terminal can. With XTerm, you can set various text attributes for otherwise uncoloured text (eg, bold, underline, blink, reverse video) to step outside of the colour chart. It would be nice if gnome-terminal could do that too. I submit this in the form of X resources for xterm; load via xrdb and then start xterm and run the perl script at the end to show them in action. I can of course perform the no doubt trivial amount of work to convert this into a patch if required. -- xterm*color0: #306 xterm*color1: firebrick xterm*color2: chartreuse4 xterm*color3: darkgoldenrod xterm*color4: steelblue4 xterm*color5: violetred xterm*color6: aquamarine4 xterm*color7: lightyellow2 xterm*color8: grey50 xterm*color9: orangered2 xterm*color10: limegreen xterm*color11: gold xterm*color12: CornflowerBlue xterm*color13: hotpink xterm*color14: turquoise3 xterm*color15: DarkOrange xterm*colorBDMode: true xterm*colorBD: midnightblue xterm*colorBLMode: true xterm*colorBL: slategray3 xterm*colorRVMode: true xterm*colorRV: snow3 xterm*colorULMode: true xterm*colorUL: tan2 xterm*dynamicColors: false xterm*colorAttrMode: false xterm*AttrMode: false -- #!/usr/bin/perl -w use strict; my %special = ( 0 => "normal", 1 => "bold", 4 => "underline", 5 => "blinking", 7 => "reverse video", 8 => "invisible" ); sub ansi { return "\e[".join(";", @_)."m"; } my @colours = qw(Black Red Green Yellow Blue Magenta Cyan White); print join(", ", map { ansi($_).$special{$_}.ansi(0) } sort keys %special), "\n", map { join("", ansi( 40 + $_ ), join(", ", ( map { ansi( 30 + $_ ). $colours[$_] } ( 0..7 ) ), ( map { ansi( 1, 30 + $_ ). $colours[$_] } ( 0..7 ) ), ), ansi( 0 ), "\n", ), } (0..7);
Not adding new colour themes at this point, sorry.