一. mac 方法
此方法经过测试.可以成功.
来源:http://stackoverflow.com/questions/7116038/python-tab-completion-mac-osx-10-7-lion
1 import readline,rlcompleter 2 3 ### Indenting 4 class TabCompleter(rlcompleter.Completer): 5 """Completer that supports indenting""" 6 def complete(self, text, state): 7 if not text: 8 return (‘ ‘, None)[state] 9 else: 10 return rlcompleter.Completer.complete(self, text, state) 11 12 readline.set_completer(TabCompleter().complete) 13 14 ### Add autocompletion 15 if ‘libedit‘ in readline.__doc__: 16 readline.parse_and_bind("bind -e") 17 readline.parse_and_bind("bind ‘\t‘ rl_complete") 18 else: 19 readline.parse_and_bind("tab: complete") 20 21 ### Add history 22 import os 23 histfile = os.path.join(os.environ["HOME"], ".pyhist") 24 try: 25 readline.read_history_file(histfile) 26 except IOError: 27 pass 28 import atexit 29 atexit.register(readline.write_history_file, histfile) 30 del histfile
二.windows 方法
为进行相关测试.
三.常用linux方法
1. 下载readline模块
http://newcenturycomputers.net/projects/readline.html
2. install readlinemodule
3. edit and configure pythonstartup file
# python startup file import sys import readline import rlcompleter import atexit import os # tab completion readline.parse_and_bind(‘tab: complete‘) # history file histfile = os.path.join(os.environ[‘HOME‘], ‘.pythonhistory‘) try: readline.read_history_file(histfile) except IOError: pass atexit.register(readline.write_history_file, histfile) del os, histfile, readline, rlcompleter
4. add the enviroment varable to system with administrator role
For windowns
pythonstartupf=path/pythonstartup.py
For Linux
add the following to you ~/.bash_profile
export PYTHONSTARTUP=~/.pythonstartup
时间: 2024-10-09 11:30:16