[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#32501: Bouncing parentheses broken in REPL with vi-mode enabled
From: |
Daniel Tam |
Subject: |
bug#32501: Bouncing parentheses broken in REPL with vi-mode enabled |
Date: |
Fri, 24 Aug 2018 22:42:40 +1000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 |
Hey Mark,
On 08/24/2018 04:09 PM, Mark H Weaver wrote:
> I wrote:
>
>>> The right fix might be to simply remove the 'if' check above.
>> Actually, it probably won't be that simple. Whereas in emacs mode, we
>> can probably rely on these bindings being added to the correct keymap,
>> namely 'emacs_standard_keymap', when in vi mode it's likely that these
>> bindings would end up in the wrong keymap, namely 'vi_movement_keymap'.
>>
>> When in vi mode, these mappings should be added to
>> 'vi_insertion_keymap', and that probably involves using
>> 'rl_bind_key_in_map' instead of 'rl_bind_key'.
> And I guess 'rl_get_keymap_by_name' is the function we should use to get
> the keymap. From keymaps.h in readline:
>
> /* Return the keymap corresponding to a given name. Names look like
> `emacs' or `emacs-meta' or `vi-insert'. */
> extern Keymap rl_get_keymap_by_name PARAMS((const char *));
>
> Mark
I'm excited to have a look but I have 0 knowledge of the code base (and
am just learning Scheme although that's probably not an issue in this
case whatsoever). Do you have any advice for specific
documentation/files (other than README and HACKING) that I should read
if I were to attempt this? As well as which branch to base my changes onto.
Daniel