diff options
| author | David Kaufmann <astra@ionic.at> | 2015-11-17 05:07:20 +0100 |
|---|---|---|
| committer | David Kaufmann <astra@ionic.at> | 2015-11-17 05:07:20 +0100 |
| commit | 87191db5da81673fef4d249de2c5732150182c08 (patch) | |
| tree | f4596169ab3ca881f5e74d9d6b6dca9cb63b066e /skel | |
| parent | cceb7a967a2c4768695a189637e808191d22b639 (diff) | |
| download | config-87191db5da81673fef4d249de2c5732150182c08.tar.gz | |
add proper readline support
Diffstat (limited to 'skel')
| -rw-r--r-- | skel/.pythonrc | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/skel/.pythonrc b/skel/.pythonrc index b1226d8..573e388 100644 --- a/skel/.pythonrc +++ b/skel/.pythonrc @@ -1,10 +1,32 @@ # ~/.pythonrc +# Add auto-completion and a stored history file of commands to your Python +# interactive interpreter. Requires Python 2.0+, readline. Autocomplete is +# bound to the Esc key by default (you can change it - see readline docs). +# +# Store the file in ~/.pystartup, and set an environment variable to point +# to it: "export PYTHONSTARTUP=/home/user/.pystartup" in bash. +# +# Note that PYTHONSTARTUP does *not* expand "~", so you have to put in the +# full path to your home directory. + +import atexit +import os # enable syntax completion try: - import readline + import readline + readline.parse_and_bind("tab: complete") except ImportError: - print ("Module readline not available.") -else: - import rlcompleter - readline.parse_and_bind("tab: complete") - + print ("Module readline not available.") +import rlcompleter + +historyPath = os.path.expanduser("~/.pyhistory") + +def save_history(historyPath=historyPath): + import readline + readline.write_history_file(historyPath) + +if os.path.exists(historyPath): + readline.read_history_file(historyPath) + +atexit.register(save_history) +del os, atexit, readline, rlcompleter, save_history, historyPath |
