Back to article
Finding Help in the Right Places
June 2, 2000
I was all ready to write a note to the KDE Developers mailing list.
"Here's the problem," (I was going to say). "I run XPlanet as my desktop, with a map of the moon and the whole thing set to be a realtime moonphase clock. And I run Konsole [the excellent KDE terminal emulator] in transparent mode, so that I can see my desktop through it. The problem is, there's little in the way of foreground color choice--white and black are the possibilities, and either one assures that I'll miss some of the text all of the time. Could somebody maybe provide a choice in red, or yellow?"
At that point it hit me: Here are all these guys working their tails off to provide a fine desktop environment for my use and enjoyment, and I'm asking somebody to drop everything for what is really, when you get right down to it, a trivial request. (This is, unfortunately, likely to become more and more common, too, as refugees from the commercial, closed-source world, where one has to demand a new feature if it's to be implemented, move to the open source community.) I was going to make this request without having done the slightest thing, other than scan the Konsole options menu, to see if I could fix it myself.
I closed KMail and started looking at the KDE source code. Sure enough, in /kdebase/konsole/other, there were files for various schema, which is what Konsole calls its color schemes. I opened one, the one that makes Midnight Commander (the great console file manager) transparent, too, when it's run in Konsole. A bunch of color values were there, listed in standard RGB notation, where 255, 255, 255 is white and 0, 0, 0 is black. The top two lines were foreground and background. I don't know the alchemy behind making the background transparent, so I left that line alone (I didn't want to change it, anyway). But the foreground line I changed from 255, 255, 255 to 255, 0, 0. I saved the file, recompiled Konsole, and lo and behold! Bright red text!
Nice, but pretty inelegant. Next pass, I changed the color labels so that the foreground was labeled Red, not White, changed the title line as it would appear in the options menu, and saved the file under a unique name within the .schema naming conventions. I also restored the original file to its pristine state. Another quick recompile--takes less than five minutes--and a setback: My new schema was not on the menu, and the original, having been restored, was back to white.
You can see the steps taken in the four screen shots to the right. In Figure 1, the default KDE2 Konsole transparent background, as you can see, is an eyekiller with my background program, XPlanet, and the moon. In Figure 2, with a little pseudo-hacking, I have some new choices. Figure 3: A lot better, don't you think? Figure 4: Okay, it doesn't change the colors in Midnight Commander, but the effect is cool anyway.