| 466 | f.write(entry + "\n") |
| 467 | |
| 468 | def append_history_file(self, filename: str = gethistoryfile()) -> None: |
| 469 | reader = self.get_reader() |
| 470 | saved_length = self.get_history_length() |
| 471 | length = self.get_current_history_length() - saved_length |
| 472 | history = reader.get_trimmed_history(length) |
| 473 | f = open(os.path.expanduser(filename), "a", |
| 474 | encoding="utf-8", newline="\n") |
| 475 | with f: |
| 476 | for entry in history: |
| 477 | entry = entry.replace("\n", "\r\n") # multiline history support |
| 478 | f.write(entry + "\n") |
| 479 | self.set_history_length(saved_length + length) |
| 480 | |
| 481 | def clear_history(self) -> None: |
| 482 | del self.get_reader().history[:] |