diff options
Diffstat (limited to '.config/ipython/profile_default/startup/05-keybindings.py')
-rw-r--r-- | .config/ipython/profile_default/startup/05-keybindings.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/.config/ipython/profile_default/startup/05-keybindings.py b/.config/ipython/profile_default/startup/05-keybindings.py new file mode 100644 index 0000000..11439aa --- /dev/null +++ b/.config/ipython/profile_default/startup/05-keybindings.py @@ -0,0 +1,18 @@ +from IPython import get_ipython +from prompt_toolkit.enums import DEFAULT_BUFFER +from prompt_toolkit.filters import HasFocus, ViInsertMode +from prompt_toolkit.key_binding.vi_state import InputMode + +ip = get_ipython() + +def switch_to_navigation_mode(event): + vi_state = event.cli.vi_state + vi_state.input_mode = InputMode.NAVIGATION + +if getattr(ip, 'pt_app', None): + registry = ip.pt_app.key_bindings + registry.add_binding(u'j',u'k', + filter=(HasFocus(DEFAULT_BUFFER) + & ViInsertMode()))(switch_to_navigation_mode) + + |