This Space for Rent

Syntax highlighting considered harmful.

At work, I'm working with r*hd*t Linux. It's not Unix, of course (but then again none of them are; R*dh*t has merely seized the most-incompatable-with banner from AIX and is now fighting with MacOS 10 for possession of it), but I've decided that the WORST thing about it is that sometimes it seems like everything on the system is colorised (and, because R*dh*t is dimly related to Unix, all the colorisation is done in different ways and has different undocumented switches to turn it on and off.)

The big nasty about syntax highlighting is that it assumes that you'll have a particular color scheme, which I suspect is black text on a white background (because, of course, books have black text on a white background, and the teeny detail that books don't glow is not important enough for computer programmers to notice) and if you don't have the particular color scheme, large swaths of the syntax highlighting will become unreadable messes.

color-ls, for instance, likes to display directories in blue, which is not so readable on a black background. vim (the nasty editor that mimics the one true editor) takes that one bit further and does shellscript (and makefile) comments as blue on black. My first reaction when faced with this sort of visual trainwreck (the screen is glowing, so it must have text on it, but I can't read it) is to get out of the editor and go home, but since I'm being paid to work I can't very well do that. (And I can't very easily build the one true editor, because R*sh*t uses ncurses, which is subtly tweaked to not work with code that relies on real curses.)

So to try and fix it; color-ls (aliased to ls) DOES NOT use the dumb little environment variables COLORS and DIR_COLORS (when I unset them, the nasty program still does colors), but if I unalias the bastard it stops being sucky (and then I only have to unalias it in about a dozen .rc files to keep it dead.) vim, on the other hand, has a spiffy little set syntax=no setting that doesn't actually work if you put it into your .exrc, thus leaving me with a screen full of unreadable fuzz.(but, apparently, if you put it into your .exrc and then set something after it it will happily set it. Gotta love Open Source®™© software.)

I've been using color in Mastodon; Redhat has taught me the error of my ways, and in my copious spare time I'll correct this design mistake before the next release.