I'll try to do something along these lines. It shouldn't be hard to make it a tooltip.
Robby On Thu, Jun 21, 2012 at 11:03 AM, John Clements <cleme...@brinckerhoff.org> wrote: > > On Jun 21, 2012, at 8:58 AM, Matthias Felleisen wrote: > >> >> +a lot; I'd like that > > Robby, what's the nastiness threshold for getting something like this into > the distribution? > > - is it okay to have a menu item with no action? > - is it okay to just say how many arrows--lines, really--radiate from this > point, or would I need to go to the binding identifier and figure out how > many uses the thing has? > > John > >> >> >> On Jun 20, 2012, at 10:48 PM, John Clements wrote: >> >>> When I'm using online check syntax, I often look at the lines leaving an >>> identifier and wonder: is that just one line, or are there two or three? >>> When lines overlap, there's no easy way to tell. This can be important in >>> refactoring decisions, or in debugging (how many uses of this thing are >>> there to check?). >>> >>> Let me show you what I mean: >>> >>> <Screen Shot 2012-06-20 at 7.44.52 PM.png> >>> >>> How many uses of 'x' are there? >>> >>> I decided to spend a few minutes digging through the source, and came up >>> with this *EXTREMELY ROUGH* hack which helps me. : >>> >>> oiseau:...plt/collects/drracket/private/syncheck clements> git diff gui.rkt >>> diff --git a/collects/drracket/private/syncheck/gui.rkt >>> b/collects/drracket/private/syncheck/gui.rkt >>> index 5f691bd..e69b9c7 100644 >>> --- a/collects/drracket/private/syncheck/gui.rkt >>> +++ b/collects/drracket/private/syncheck/gui.rkt >>> @@ -1069,6 +1069,11 @@ If the namespace does not, they are colored the >>> unbound color. >>> [var-arrows (filter var-arrow? >>> arrows)] >>> [add-menus (append (map cdr (filter >>> pair? vec-ents)) >>> (filter procedure? >>> vec-ents))]) >>> + (make-object menu-item% >>> + (string-append ">> " (number->string >>> (length arrows)) >>> + " arrows from this >>> identifier") >>> + menu >>> + (λ (item evt) (void))) >>> (unless (null? arrows) >>> (make-object menu-item% >>> (string-constant cs-tack/untack-arrow) >>> >>> >>> Let me just emphasize how rough this hack is: when I use it on a use of an >>> identifier rather than a definition, it just shows the number 1, because >>> that's the number of arrows--that is, the one that goes back to the >>> definition. >>> >>> Keeping its limitations in mind, though, it's really nice to be able to see: >>> >>> <Screen Shot 2012-06-20 at 7.46.24 PM.png> >>> >>> >>> Would others find this useful? >>> >>> John >>> >>> >>> _________________________ >>> Racket Developers list: >>> http://lists.racket-lang.org/dev >> > _________________________ Racket Developers list: http://lists.racket-lang.org/dev