diff bin/rot13 @ 11109:0aef5f39601f

<Jafet> ` mv bin/rot13{,_stdin} && echo \'print_args_or_input "$@" | rot13_stdin\' >bin/rot13 && chmod +x bin/rot13
author HackBot
date Fri, 21 Jul 2017 12:38:28 +0000
parents 8f3c7e3a6f51
children ea74d235ff72
line wrap: on
line diff
--- a/bin/rot13	Fri Jul 21 12:36:10 2017 +0000
+++ b/bin/rot13	Fri Jul 21 12:38:28 2017 +0000
@@ -1,29 +1,1 @@
-#!/usr/bin/env python
-
-import re, sys, unicodedata as U
-def tr(c):
-    m = re.match(r'(.*\bLATIN\b.*\bLETTER )([A-Z])\b(.*)', U.name(c, ''))
-    if m:
-        p, q, r = m.groups()
-        n = ord(q) - ord('A')
-        try:
-            return U.lookup(p + chr(ord('A') + (n + 13) % 26) + r)
-        except KeyError:
-            return c
-    return c
-
-def tr2(c):
-    d = tr(c)
-    if d != c:
-        return d
-    else:
-        cs = [unichr(int(x, 16)) for x in U.decomposition(c).split()]
-        ds = [tr(x) for x in cs]
-        if cs != ds:
-            return u''.join(ds)
-        else:
-            return c
-
-for c in unicode(sys.stdin.read(), 'utf8'):
-    sys.stdout.write(tr2(c).encode('utf8'))
-
+print_args_or_input "$@" | rot13_stdin