pmacs3/mode/pipe.py

28 lines
861 B
Python
Raw Normal View History

2008-10-29 00:02:50 -04:00
import keyinput
from mode import Fundamental
from method import Method
class PipeInsertChr(Method):
_is_method = False
def __init__(self, i):
self.name = "pipe-insert-chr-%s" % i
self.args = []
self.help = "Insert chr(%d) into the current pipe-buffer." % i
self.string = chr(i)
def _execute(self, w, **vargs):
w.buffer.pipe_write(self.string)
class Pipe(Fundamental):
modename = 'pipe'
def __init__(self, w):
Fundamental.__init__(self, w)
_codes = [1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14] + \
[16, 18, 20, 23, 25] + list(range(32, 128))
for i in _codes:
sym = keyinput.MAP.get(i, chr(i))
obj = PipeInsertChr(i)
w.application.methods[obj.name] = obj
self.add_binding(obj.name, sym)
install = Pipe.install