[racket] scratching an itch: how do I customize which words get colored as keywords in DrRacket?

From: Christopher (ultimatemacfanatic at gmail.com)
Date: Sat Jun 8 15:05:55 EDT 2013

Greetings all!   First post here.

Just finished my first significant project in Racket: writing parser in Racket for my new Python/Racket fusion programming language (roughly 2000 lines of Racket for the parser).  The next phase is the runtime classes, which seems less straightforward--wish me luck!  

Also happy to report figuring out on my own how to get Command-L reassigned to goto-line instead of Choose Language in DrRacket, using my own home-brewed keybindings file, as I frequently switch between other editors that use this key binding.  (However, DrRacket not only fails when instructed through the menu interface to detach this keybindings file, but does so reporting an internal error, but that's another story and may or may not be due to somebody else's bug.)

Now that I've introduced myself, let me get to the reason I'm writing.

In DrRacket I have gone to Preferences menu item->Colors tab->Racket sub-tab and changed the color associated with "Keyword" to orange, to make it a different color from the blue color for "Symbol".

I have noticed that there are some symbols colored as being in the "Keyword" category that I wish were not, and there are others not so colored that I wish would be thus.  For instance, I'm considered having "match", "class", and "make-object" be colored as "Symbol" instead of "Keyword"; on the other hand, I am dumbfounded that, while "cond", "while", and "unless" are colored as keywords, "if" is colored as an ordinary symbol; this seems like an incontestable error of omission (surely an accident).

I have grepped through all the source files in DrRacket's "collects" folder, but have not been able to isolate the place where DrRacket's list of keywords are stored.

Does anyone know how to tweak the list of symbols that DrRacket colors as keywords?  I would consider using a different, more easily customizable editor like my beloved TextMate 2, but neither it nor any of the other editors I'm familiar with has DrRacket's intelligent indentation assistance that conforms to Racket conventions for indenting--this is a feature without which I would probably lose my mind, given my compulsion for proper and consistent indentation.

Any help would be appreciated!

Thank you,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20130608/475ee905/attachment.html>

Posted on the users mailing list.