天天看點

mac 終端下設定python tab鍵功能

import readline,rlcompleter

### Indenting

class TabCompleter(rlcompleter.Completer):

    """Completer that supports indenting"""

    def complete(self, text, state):

        if not text:

            return ('    ', None)[state]

        else:

            return rlcompleter.Completer.complete(self, text, state)

readline.set_completer(TabCompleter().complete)

### Add autocompletion

if 'libedit' in readline.__doc__:

    readline.parse_and_bind("bind -e")

    readline.parse_and_bind("bind '\t' rl_complete")

else:

    readline.parse_and_bind("tab: complete")

### Add history

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 histfile

本文轉自 xinsir999 51CTO部落格,原文連結:http://blog.51cto.com/xinsir/1674237,如需轉載請自行聯系原作者