summaryrefslogtreecommitdiff
path: root/modules/common/profiles/dev/pystartup.py
diff options
context:
space:
mode:
Diffstat (limited to 'modules/common/profiles/dev/pystartup.py')
-rw-r--r--modules/common/profiles/dev/pystartup.py121
1 files changed, 0 insertions, 121 deletions
diff --git a/modules/common/profiles/dev/pystartup.py b/modules/common/profiles/dev/pystartup.py
deleted file mode 100644
index adde66c..0000000
--- a/modules/common/profiles/dev/pystartup.py
+++ /dev/null
@@ -1,121 +0,0 @@
-import atexit
-import os
-import readline
-import rlcompleter
-import sys
-from code import InteractiveConsole
-from tempfile import mkstemp
-
-readline.parse_and_bind("tab: complete")
-
-
-class TermColors(dict):
- color_templates = (
- ("Normal", "0"),
- ("Black", "0;30"),
- ("Red", "0;31"),
- ("Green", "0;32"),
- ("Brown", "0;33"),
- ("Blue", "0;34"),
- ("Purple", "0;35"),
- ("Cyan", "0;36"),
- ("LightGray", "0;37"),
- ("DarkGray", "1;30"),
- ("LightRed", "1;31"),
- ("LightGreen", "1;32"),
- ("Yellow", "1;33"),
- ("LightBlue", "1;34"),
- ("LightPurple", "1;35"),
- ("LightCyan", "1;36"),
- ("White", "1;37"),
- )
- color_base = "\001\033[%sm\002"
-
- def __init__(self):
- self.update(dict([(k, self.color_base % v) for k, v in self.color_templates]))
-
-
-class Completer(object):
- def save_history(self):
- import readline
-
- readline.write_history_file(self.python_histfile)
-
- def __init__(self):
- self.python_dir = os.path.expanduser("%s/python" % os.environ["XDG_DATA_HOME"])
-
- if not os.path.exists(self.python_dir):
- os.mkdir(self.python_dir)
-
- self.python_histfile = os.path.expanduser("%s/history" % self.python_dir)
-
- if os.path.exists(self.python_histfile):
- readline.read_history_file(self.python_histfile)
-
- readline.set_history_length(1000)
- atexit.register(self.save_history)
-
-
-def DisplayHook(value):
- if value is not None:
- try:
- import __builtin__
-
- __builtin__._ = value
- except ImportError:
- __builtins__._ = value
-
- import pprint
-
- pprint.pprint(value)
- del pprint
-
-
-class EditableBufferInteractiveConsole(InteractiveConsole):
- def __init__(self, *args, **kwargs):
- self.last_buffer = []
- InteractiveConsole.__init__(self, *args, **kwargs)
-
- def runsource(self, source, *args):
- self.last_buffer = [source.encode("utf-8")]
- return InteractiveConsole.runsource(self, source, *args)
-
- def raw_input(self, *args):
- line = InteractiveConsole.raw_input(self, *args)
-
- if line == EDIT_CMD:
- tmp_fd, tmp_file = mkstemp(".py")
-
- os.write(tmp_fd, b"\n".join(self.last_buffer))
- os.close(tmp_fd)
-
- os.system("%s %s" % (EDITOR, tmp_file))
-
- line = open(tmp_file).read()
-
- os.unlink(tmp_file)
- tmp_file = ""
-
- lines = line.split("\n")
-
- for i in range(len(lines) - 1):
- self.push(lines[i])
-
- line = lines[-1]
- return line
-
-
-TC = TermColors()
-ps1 = "%sλ%s %s>%s "
-sys.ps1 = ps1 % (TC["Blue"], TC["Normal"], TC["White"], TC["Normal"])
-ps2 = " %s…%s %s>%s "
-sys.ps2 = ps2 % (TC["Blue"], TC["Normal"], TC["White"], TC["Normal"])
-sys.displayhook = DisplayHook
-
-C = Completer()
-EDITOR = os.environ.get("EDITOR", "vim")
-EDIT_CMD = ":e"
-C = EditableBufferInteractiveConsole(locals=locals())
-C.interact(banner="")
-
-sys.exit()