Fix handling of some fullwidth Latin characters in romanization.
authorZhorken <zhorken@gmail.com>
Fri, 24 Sep 2010 08:18:20 +0000 (04:18 -0400)
committerZhorken <zhorken@gmail.com>
Fri, 24 Sep 2010 08:27:36 +0000 (04:27 -0400)
Including fullwidth 0, which was acutally a problem.

pokedex/roomaji.py

index 7740f0d..e91c960 100644 (file)
@@ -86,11 +86,12 @@ def romanize(string):
     last_char = None  # Used for small kana combos
     for char in string:
         # Full-width Latin
-        if ord(char) >= 0xff11 and ord(char) <= 0xff5e:
+        if 0xff01 <= ord(char) <= 0xff5e:
             if last_kana == 'sokuon':
                 raise ValueError("Sokuon cannot precede Latin characters.")
 
-            char = chr(ord(char) - 0xff11 + 0x31)
+            # XXX Real Unicode decomposition would be nicer
+            char = chr(ord(char) - 0xff01 + 0x21)
             characters.append(char)
 
             last_kana = None