# HG changeset patch # User Oleksandr Gavenko # Date 1318595048 -10800 # Node ID 97139da7327399a0459050a2f5042f80bfd43006 # Parent 29a3658af2d372b69c3e387ea7f70c945beca97d Enable python statement readline completion and readline history for interactive Python . diff -r 29a3658af2d3 -r 97139da73273 .bashrc --- a/.bashrc Fri Oct 14 14:57:41 2011 +0300 +++ b/.bashrc Fri Oct 14 15:24:08 2011 +0300 @@ -154,6 +154,8 @@ export INFOPATH=$INFOPATH:~/usr/share/info: fi +export PYTHONSTARTUP=~/.pystartup + ################################################################ # Key binding. diff -r 29a3658af2d3 -r 97139da73273 .pystartup --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.pystartup Fri Oct 14 15:24:08 2011 +0300 @@ -0,0 +1,25 @@ +# -*- mode: python -*- +# 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=~/.pystartup" in bash. + +import atexit +import os +import readline +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 + diff -r 29a3658af2d3 -r 97139da73273 Makefile --- a/Makefile Fri Oct 14 14:57:41 2011 +0300 +++ b/Makefile Fri Oct 14 15:24:08 2011 +0300 @@ -27,7 +27,7 @@ OVERRIDDEN_ITEMS = \ .inputrc .minttyrc .Xdefaults .xinitrc .xserverrc .screenrc .dircolors \ - .bashrc .bash_completion .zshrc .vimrc .ssh \ + .bashrc .bash_completion .zshrc .vimrc .ssh .pystartup \ .mailsign .muttrc .tidy \ .dictrc \ .hgrc .hgignore .bazaar .gitconfig .gitignore .cvs \