I've been sitting on a few changes to ruby highlighting for a while,
and in general I've found them to be a bit of an improvement over the
current version. There aren't too many changes, but they are fairly
apparent when using ruby consistently (or, at least in my biased
opinion they are):
* Match keywords containing '!' '?' and '=' depending on the context
(based on my best guesses as to the most common uses, which work 99%
of the time - otherwise the entire ruby parser would need to be
integrated to correctly mimic these syntax quirks).
* Remove unmatchable characters from the list of those matched following $.
* Change the instance variable matching to @@?{KEYWORD} instead of @+{KEYWORD}.
* Matching symbols as literals.
* Constants (keywords beginning with a capital) are highlighted with
the Type attribute.
Hopefully this patch is of some use to others.