On Jun 8, 2013, at 1:31 PM, Robby Findler <ro...@eecs.northwestern.edu> wrote:

> It is the ones that it has special indentation rules for. Not super heplful 
> to you here, I know. 

That sounds like this won't be super easy, but it's a start!  Thank you Robby.

Who knows how to add indentation rules to DrRacket?  Where are they found?  Is 
their modification something that can be attempted by a long-time programmer, 
but Racket novice?  If I can add an indentation rule for "if" that just 
duplicates the current default behavior, then hopefully, it would highlight my 
ifs!

> The specific conditional that you might be looking (if you wish to do things 
> differently) for is in framework/private/racket.rkt around line 1306 in the 
> body of racket-lexer-wrapper. The first case of that 'cond' is the keyword 
> case and that shows how it wires into the preferences. So if you wanted to 
> add a new preference pane or something, that's where you'd look at its values.

I don't really want to add a new preference pane to DrRacket; that sounds like 
a useful and worthy project for someone with more time and experience than I 
have.  I just want to get DrRacket to highlight "if" to start out with.

Any other knowledgable people willing to share some insights to help in this 
quest?

--Christopher

> 
> Robby
> 
> 
> On Sat, Jun 8, 2013 at 2:05 PM, Christopher <ultimatemacfana...@gmail.com> 
> wrote:
> 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,
> 
> Christopher
> 
> ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users
> 
> 

____________________
  Racket Users list:
  http://lists.racket-lang.org/users

Reply via email to