The below python script I cranked out will convert mail from the
">" style of commenting to blocks marked by text (and for deeper
levels, will note what level of quoting it is).
It can just be used as a filter, if your mailer supports it, as
it reads from stdin and writes to stdout.
That way, if you need to convert the "usual" style of quoting to
a more TTS-friendly style of quoting, this should automate the
process for you.
Consider it public domain :)
Hope someone finds it useful,
-tim
#!/bin/env python
# By Tim Chase, June 2006
# Public Domain
from sys import stdin
# if you have more than one character that
# can be a leading quote character, you can just
# add it to this string. E.g.
# QUOTECHAR = ">!#"
# will treat leading ">", "!", and "#" characters
# as quote-leaders.
QUOTECHAR = ">"
def getLineQuoteDepth(line):
depth = 0
for char in line:
if char in QUOTECHAR:
depth += 1
elif char != " ": break
return depth
levels = []
for line in stdin:
line = line.rstrip("\r\n")
depth = getLineQuoteDepth(line)
if depth:
if levels and depth < levels[-1]:
depth = levels[-1]
del levels[-1]
print "Ending quote",
if depth > 1:
print "(level %i)" % levels[-1]
else: print ""
elif levels and depth == levels[-1]:
pass
else:
levels.append(depth)
print "Begining quote:",
if depth > 1:
print "(level %i)" % levels[-1]
else: print
line = line.lstrip(QUOTECHAR + " ")
else:
if levels:
del levels[-1]
print "Ending quote"
print line
_______________________________________________
Blinux-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/blinux-list