aboutsummaryrefslogtreecommitdiff
path: root/python/mal_readline.py
blob: e8cf957df48b8aea7449488c40a99f5b9bdee646 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import os, readline as pyreadline

history_loaded = False
histfile = os.path.expanduser("~/.mal-history")

def readline(prompt="user> "):
    if not history_loaded:
        try:
            with open(histfile, "r") as hf:
                for line in hf.readlines():
                    pyreadline.add_history(line.rstrip("\r\n"))
                    pass
        except IOError:
            print("Could not open %s" % histfile)
            pass

    try:
        line = raw_input(prompt)
        pyreadline.add_history(line)
        with open(histfile, "a") as hf:
            hf.write(line + "\n")
        return line
    except EOFError:
        return None