Python Library Reference
Previous: Up: 15.7 readline Next:


15.7.1 Example

The following example demonstrates how to use the readline module's history reading and writing functions to automatically load and save a history file named .pyhist from the user's home directory. The code below would normally be executed automatically during interactive sessions from the user's PYTHONSTARTUP file.

import os
histfile = os.path.join(os.environ["HOME"], ".pyhist")
try:
 readline.read_history_file(histfile)
except IOError:
 pass
import atexit
atexit.register(readline.write_history_file, histfile)
del os, histfile

The following example extends the code.InteractiveConsole class to support history save/restore.

import code
import readline
import atexit
import os
class HistoryConsole(code.InteractiveConsole):
 def __init__(self, locals=None, filename="<console>",
 histfile=os.path.expanduser("~/.console-history")):
 code.InteractiveConsole.__init__(self)
 self.init_history(histfile)
 def init_history(self, histfile):
 readline.parse_and_bind("tab: complete")
 if hasattr(readline, "read_history_file"):
 try:
 readline.read_history_file(histfile)
 except IOError:
 pass
 atexit.register(self.save_history, histfile)
 def save_history(self, histfile):
 readline.write_history_file(histfile)

Python Library Reference
Previous: Up: 15.7 readline Next:

Release 2.5, documentation updated on 19th September, 2006.
See About this document... for information on suggesting changes.

AltStyle によって変換されたページ (->オリジナル) /