I've spent the last couple of days working on a small patch to do much the same thing that the statuscolors patch does, but without most of the suck. Rather than having certain colors assigned to certain ascii characters in the control range, I implemented a way to switch between normfg and selfg in the statusbar by using a single invert character. By default, this is character is mapped to "*".
More explicitly, if you set your status bar to "*123*456*789" with the default invert delimeter, you'd get "123" in your selfg color, "456" in normfg, and "789" in your selfg color. It's not as flexible as the statuscolors patch, but I feel that this is a pretty good compromise between having a full-fledged solution for accessing colors in the status bar and the current solution of only being able to use the default color. For what it's worth - please rip this code apart. My C-fu is weak, and I'd appreciate the criticism.
status_toggle.patch
Description: Binary data