[racket] How to find code (that implements a widget in drracket)

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Sun Jul 7 05:23:24 EDT 2013

For the case of DrRacket itself, a good technique is to take a literal
string from the GUI and look for it in the string-constants collection and
then grep for the symbolic name you see there.

Robby


On Sun, Jul 7, 2013 at 1:40 AM, Lorenz Köhl <rainbowtwigs at gmail.com> wrote:

> I wanted to read/hack on the code that implements the contour window in
> DrRacket.
>
> But I couldn't find it!
>
> Don't tell me where it is though!
> I'm more interested in the search process a more experienced
> racketeer/hacker would go through to solve this problem. What I did:
>
> - Search the docs: Two results describing the menu entry for hiding
> showing the contour. I didn't see how to get to the code from here
>
> - use 'find' in the shell with search string 'contour': just source
> related to plot
>
> - Grepping the code: grep -RiIl --exclude '*plot*' contour .   from the
> top racket/ directory
>
> ./.git/HEAD
> ./.git/logs/HEAD
> ./pkgs/drracket-pkgs/drracket/drracket/HISTORY.txt
> ./pkgs/drracket-pkgs/drracket/scribblings/drracket/menus.scrbl
> ./pkgs/drracket-pkgs/drracket/scribblings/tools/frame.scrbl
> ./pkgs/drracket-pkgs/drracket/scribblings/tools/unit.scrbl
> ./pkgs/images/scribblings/flomap.scrbl
> ./pkgs/math/scribblings/math-flonum.scrbl
> ./pkgs/math/scribblings/math-special-functions.scrbl
>
> ./pkgs/racket-pkgs/racket-test/tests/racket/benchmarks/common/psyntax-input.txt
> ./pkgs/racklog/racklog.scrbl
> ./pkgs/sgl/gl.rkt
> ./pkgs/sgl/scribblings/gl.scrbl
>
> ./pkgs/string-constants-lib/string-constants/private/english-string-constants.rkt
>
> ./pkgs/string-constants-lib/string-constants/private/french-string-constants.rkt
>
> ./pkgs/string-constants-lib/string-constants/private/portuguese-string-constants.rkt
> ./racket/doc/drracket/doc-index.html
> ./racket/doc/drracket/Menus.html
> ./racket/doc/images/Overview.html
> ./racket/doc/local-redirect/local-redirect.js
> ./racket/doc/math/flonum.html
> ./racket/doc/math/special.html
> ./racket/doc/racklog/racket-w-logic.html
> ./racket/doc/release/HISTORY.txt
> ./racket/doc/search/plt-index.js
> ./racket/doc/sgl/blueboxes.rktd
> ./racket/doc/sgl/doc-index.html
> ./racket/doc/sgl/gl.html
> ./racket/doc/tools/drracket_frame.html
> ./racket/doc/tools/drracket_unit.html
> ./racket/lib/collects/ffi/examples/magick.rkt
>
> I can't see a relevant source file, did I miss it? If not, what do I do
> now?
> Have I missed some crucial source searching techniques, either specific to
> Racket or in general?
>
> [side note: I wish it was possible to click a frame/widget and
> inspect/change it live (I have recently discovered Smalltalk and the
> 'liveliness' aspect of it is pretty rad)]
> ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20130707/3e965027/attachment.html>

Posted on the users mailing list.