| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 408260d commit 0811bdd
2 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1286,6 +1286,7 @@ def reprint_line(self, lineno, tokens): | |||
| 1286 | 1286 | self.display_buffer[lineno] = bpythonparse(format(tokens, self.formatter)) | |
| 1287 | 1287 | ||
| 1288 | 1288 | def take_back_buffer_line(self): | |
| 1289 | + self.history = self.history[:-1] | ||
| 1289 | 1290 | self.display_buffer.pop() | |
| 1290 | 1291 | self.buffer.pop() | |
| 1291 | 1292 | ||
@@ -1299,10 +1300,16 @@ def take_back_buffer_line(self): | |||
| 1299 | 1300 | self.cursor_offset = len(self.current_line) | |
| 1300 | 1301 | ||
| 1301 | 1302 | def prompt_undo(self): | |
| 1303 | + if self.buffer: | ||
| 1304 | + return self.take_back_buffer_line() | ||
| 1305 | + | ||
| 1306 | + self.reevaluate() | ||
| 1307 | + | ||
| 1302 | 1308 | def prompt_for_undo(): | |
| 1303 | 1309 | n = BpythonRepl.prompt_undo(self) | |
| 1304 | 1310 | if n > 0: | |
| 1305 | 1311 | self.request_undo(n=n) | |
| 1312 | + | ||
| 1306 | 1313 | greenlet.greenlet(prompt_for_undo).switch() | |
| 1307 | 1314 | ||
| 1308 | 1315 | def reevaluate(self, insert_into_history=False): | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -868,11 +868,7 @@ def undo(self, n=1): | |||
| 868 | 868 | entries = list(self.rl_history.entries) | |
| 869 | 869 | ||
| 870 | 870 | self.history = self.history[:-n] | |
| 871 | - if (n == 1 and self.buffer and | ||
| 872 | - hasattr(self, 'take_back_buffer_line')): | ||
| 873 | - self.take_back_buffer_line() | ||
| 874 | - else: | ||
| 875 | - self.reevaluate() | ||
| 871 | + self.reevaluate() | ||
| 876 | 872 | ||
| 877 | 873 | self.rl_history.entries = entries | |
| 878 | 874 | ||
| Back | FazBrowse Home | New Git URL |
0 commit comments