diff options
Diffstat (limited to 'interface/interface.py')
-rw-r--r-- | interface/interface.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/interface/interface.py b/interface/interface.py index 5be5196..7528653 100644 --- a/interface/interface.py +++ b/interface/interface.py @@ -111,9 +111,14 @@ class Interface: def handle_enter(self, fid): with self.w_lock: - if fid not in self.w.functions: - return "No such function" - f = self.w.functions[fid] + if fid is None: + if not self.chaser_views: + return "No chaser loaded" + f = self.chaser_views[0].chaser + else: + if fid not in self.w.functions: + return "No such function" + f = self.w.functions[fid] if self.current_cv is not None: self.current_cv.highlight = False @@ -610,6 +615,7 @@ class Interface: self.context_base = Input.parse_context(( ("edit $num", self.handle_enter), + ("edit", lambda: self.handle_enter(None)), ("delete $num", self.base_delete), ("new scene $quoted_string", lambda n: self.base_new(n, Scene)), ("new chaser $quoted_string", lambda n: self.base_new(n, Chaser)), @@ -744,6 +750,8 @@ class Interface: ("advance $letter", lambda n: self.run_jump(n, None, True)), ("advance $num", lambda n: self.run_jump(n, None, False)), + ("advance", lambda: self.run_jump(0, None, True)), + ("badvance", lambda: self.run_jump(1, None, True)), )) self.output = output |