summaryrefslogtreecommitdiff
path: root/rtsed.py
diff options
context:
space:
mode:
Diffstat (limited to 'rtsed.py')
-rw-r--r--rtsed.py76
1 files changed, 0 insertions, 76 deletions
diff --git a/rtsed.py b/rtsed.py
deleted file mode 100644
index af17b2b..0000000
--- a/rtsed.py
+++ /dev/null
@@ -1,76 +0,0 @@
-import curses
-import os
-import sys
-import StringIO
-
-from subprocess import *
-import subprocess
-
-# our screen
-screen = curses.initscr()
-curses.noecho()
-curses.cbreak()
-curses.curs_set(0)
-curses.start_color()
-
-curses.init_pair(1, curses.COLOR_WHITE, curses.COLOR_CYAN)
-curses.init_pair(2, curses.COLOR_WHITE, curses.COLOR_RED)
-
-# our stdin input
-input_buffer = ""
-
-# rows and columns of our screen
-cols = int(subprocess.check_output(["tput", "cols"]))
-rows = int(subprocess.check_output(["tput", "lines"]))
-
-def call_sed(string):
- process = Popen(["sed", "-e", string], stdout=PIPE, stdin=PIPE, stderr=PIPE)
- ret = process.communicate(input_buffer)
- if(process.returncode is not 0):
- screen.addstr(ret[1][:-1].ljust(cols), curses.color_pair(2));
- else:
- screen.addstr(ret[0]);
- return
-
-
-def main():
-
- input_string = ""
- global input_buffer
-
- for line in open(sys.argv[1], "r"):
- input_buffer = input_buffer + line
-
- # init our screen
- screen.addstr("".ljust(cols), curses.color_pair(1));
- screen.addstr(input_buffer)
- screen.addstr("EOF")
-
- try:
- while 1:
- key = screen.getch()
- screen.clear()
- if(key > 256):
- continue;
- if(key == 127):
- input_string = input_string[:-1]
- screen.addstr(input_string.ljust(cols), curses.color_pair(1));
- screen.addstr(input_buffer)
- screen.addstr("EOF")
- continue;
- elif(key == 13 or key == 10):
- screen.addstr(input_string.ljust(cols), curses.color_pair(1));
- call_sed(input_string)
- screen.addstr("EOF")
- continue;
- else:
- input_string+=chr(key)
- screen.addstr(input_string.ljust(cols), curses.color_pair(1));
- screen.addstr(input_buffer)
- screen.addstr("EOF")
- finally:
- curses.endwin()
-
-if __name__ == "__main__":
- sys.exit(main())
-