3737else :
3838 from trepan .inout .prompt_bindkeys import bindings , read_inputrc , read_init_file
3939
40- USER_INPUTRC = os .environ .get (
41- "TREPAN3K_INPUTRC" , default_configfile ("inputrc" )
42- )
40+ USER_INPUTRC = os .environ .get ("TREPAN3K_INPUTRC" , default_configfile ("inputrc" ))
4341
4442 read_inputrc (read_init_file , use_unicode = False )
4543 if osp .isfile (USER_INPUTRC ):
@@ -56,17 +54,28 @@ class DebuggerUserInput(Mbase.DebuggerInputBase):
5654
5755 def __init__ (self , inp = None , opts = dict ()):
5856
59- self .edit_mode = opts .get ("edit_mode" , "emacs" )
6057 if opts .get ("readline" ) == "prompt_toolkit" :
58+
59+ edit_mode = opts .get ("edit_mode" , "emacs" )
6160 prompt_editing_mode = (
62- EditingMode .EMACS if self . edit_mode == "emacs" else EditingMode .VI
61+ EditingMode .EMACS if edit_mode == "emacs" else EditingMode .VI
6362 )
6463 self .session = PromptSession (
6564 editing_mode = prompt_editing_mode ,
6665 enable_history_search = True ,
6766 history = FileHistory (opts .get ("histfile" )),
6867 key_bindings = bindings ,
6968 )
69+
70+ @bindings .add ("escape" , "c-j" )
71+ def toggle_editmode (_ ):
72+ self .session .editing_mode = (
73+ EditingMode .VI
74+ if self .session .editing_mode == EditingMode .EMACS
75+ else EditingMode .EMACS
76+ )
77+ print (f"\n edit mode is now { self .session .editing_mode } " )
78+
7079 self .input = self .session .input
7180 self .line_edit = True
7281 self .closed = False
0 commit comments