summaryrefslogtreecommitdiff
path: root/.config/ipython/profile_default/startup/05-keybindings.py
blob: 11439aae0f057cb2422dd646585d27f2aa77649f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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)