[racket] Custom Keybindings - Editor Insert Poofed

From: Ray Racine (ray.racine at gmail.com)
Date: Sat Oct 27 21:33:03 EDT 2012

All the standard emacs bindings work. crtl-a, yanks etc.  The ctrl-\ was
working for me for at least several months.  So it looks like something
changed where I'm getting the frame% and not the editor%.

Also some of the standard keybindings do not work for me.  Typical example
is check-syntax.  ctrl-c:ctrl-c doesn't work but F6 does.

On Sat, Oct 27, 2012 at 9:28 PM, Robby Findler
<robby at eecs.northwestern.edu>wrote:

> What happens when you type control-a (with the menu keybindings turned
> off). That should do a similar thing to what your keybinding does (ie
> call a text% method of that first argument without checking to see it
> is a text% object). If it works, it will move the insertion point to
> the beginning of the line.
>
> Robby
>
> On Sat, Oct 27, 2012 at 8:23 PM, Ray Racine <ray.racine at gmail.com> wrote:
> > And to answer your question, can confirm I have the editor window in
> focus.
> > I type a few letters in the editor, then ctrl-\ and popup box.
> >
> >
> > On Sat, Oct 27, 2012 at 9:16 PM, Ray Racine <ray.racine at gmail.com>
> wrote:
> >>
> >> Robby,
> >>
> >> OK, I reduced my keybindings.rkt file to exactly the below.
> >>
> >> #lang s-exp framework/keybinding-lang
> >> ;; insert λ
> >> (keybinding "c:\\" (λ (editor evt)
> >>      (pretty-print editor)
> >>      (send editor insert "λ")))
> >>
> >> When I run drracket from the command line what I see printed is
> >>
> >> ray at rpr:~$ /usr/local/racket/bin/drracket
> >> #(struct:object:...cts/version/tool.rkt:176:9 ...)
> >>
> >> This matches the popup box error as well.  Screenshot is here.
> >>
> >>
> https://plus.google.com/u/0/photos/108838931798929528241/albums/5804161505516624049
> >>
> >> So it doesn't appear to be an instance of editor% but I don't know why.
> >> I'm running Linux Ubuntu 12.10.  It happens in #lang racket.
> >>
> >> Ray
> >>
> >> On Sat, Oct 27, 2012 at 8:12 PM, Robby Findler
> >> <robby at eecs.northwestern.edu> wrote:
> >>>
> >>> I've tried this and I see a lambda char inserted.
> >>>
> >>> Is it possible that the keyboard focus is not in an editor? That would
> >>> mean that the 'editor' argument wouldn't actually be an editor.
> >>>
> >>> Maybe try printing that out, and that'll shed some light on what's
> >>> going on here.
> >>>
> >>> Robby
> >>>
> >>> On Sat, Oct 27, 2012 at 12:37 PM, Ray Racine <ray.racine at gmail.com>
> >>> wrote:
> >>> > I spoke to soon there still is something broken.  But I did find a
> work
> >>> > around.
> >>> >
> >>> > To reproduce:
> >>> >
> >>> > 1) Create a custom keybinding file.
> >>> > 2) Use emacs keybindings by unchecking Enable Menu Keybindings  in
> your
> >>> > Preferences (as in section 3.3 of the Racket doc)
> >>> > 3) Define a simple one-line keybinding in the keybinding file.
> >>> >   (keybinding "c:\\" (λ (editor evt) (send editor insert "λ")))
> >>> > 4) Set the keybinding file and attempt to do a ctr-\ and you see the
> >>> > error.
> >>> >
> >>> > The workaround I have is to use "menu-bind" method in your
> keybindings
> >>> > file.
> >>> > When I use that to bind to the "Insert λ" menu option, it works.
> >>> >
> >>> > Ray
> >>> >
> >>> > On Sat, Oct 27, 2012 at 10:21 AM, Robby Findler
> >>> > <robby at eecs.northwestern.edu> wrote:
> >>> >>
> >>> >> Sorry-- I had this on my list of things to look into (but it sounds
> >>> >> like I was missing a piece anyways). If you saved a copy of that
> >>> >> directory and don't mind sharing it, I'd be happy to try to look
> into
> >>> >> it more.
> >>> >>
> >>> >> Robby
> >>> >>
> >>> >> On Sat, Oct 27, 2012 at 9:14 AM, Ray Racine <ray.racine at gmail.com>
> >>> >> wrote:
> >>> >> > OK, sat down this morning to figure out why my custom Racket
> >>> >> > keybinding
> >>> >> > were
> >>> >> > failing.  No idea of the exact cause, but step 1, clearing out my
> >>> >> > .racket/preferences brought them back.  Working fine now.
> >>> >> >
> >>> >> > Ray
> >>> >> >
> >>> >> >
> >>> >> > On Tue, Oct 23, 2012 at 11:15 AM, Ray Racine <
> ray.racine at gmail.com>
> >>> >> > wrote:
> >>> >> >>
> >>> >> >> Up until recently the following worked for me.  Create a custom
> >>> >> >> keybindings file.  Add the following line.
> >>> >> >>
> >>> >> >> (keybinding "c:\\" (λ (editor evt) (send editor insert "λ")))
> >>> >> >>
> >>> >> >> And a Ctrl:\ would insert a λ for me.  Recently this has stopped
> >>> >> >> working
> >>> >> >> as reported below.  Any ideas on how to bring it back?
> >>> >> >>
> >>> >> >> Thanks,
> >>> >> >>
> >>> >> >> Ray
> >>> >> >>>
> >>> >> >>>
> >>> >> >>> The key binding is invoked, however, I'm seeing the following
> in a
> >>> >> >>> pop-up.
> >>> >> >>>
> >>> >> >>> Error running keybinding
> >>> >> >>> send: no such method
> >>> >> >>> method name: insert
> >>> >> >>> class name: cts/version/tool.rkt:176:9
> >>> >> >>>
> >>> >> >
> >>> >> >
> >>> >> > ____________________
> >>> >> >   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/20121027/db633dc6/attachment.html>

Posted on the users mailing list.