changeset 271:2454d5a1728b

add a email-esque quoting script
author Jeff Hammel <jhammel@mozilla.com>
date Thu, 04 Apr 2013 19:18:01 -0700
parents 3f89de477ff7
children bc8d098a2474
files python/quote.py
diffstat 1 files changed, 31 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
new file mode 100755
--- /dev/null
+++ b/python/quote.py
@@ -0,0 +1,31 @@
+#!/usr/bin/env python
+
+"""
+quote text
+"""
+
+import sys
+import textwrap
+from subprocess import check_output as call
+
+def quote(text, prefix='> ', width=69):
+    """
+    returns quoted text
+    - prefix: string to prepend quote
+    - width: final width (emacs wraps at 70)
+    """
+    width -= len(prefix) # subtract the prefix
+    text = text.strip() # remove surrounding whitespace
+    lines = []
+    for line in text.splitlines():
+        line = line.strip()
+        lines.extend(textwrap.wrap(line, width))
+    return '\n'.join(['%s%s' % (prefix, line)
+                      for line in lines])
+
+def main(args=sys.argv[1:]):
+    text = sys.stdin.read()
+    sys.stdout.write(quote(text))
+
+if __name__ == '__main__':
+    main()