Add symbols support.
authorHuang Peng <shawn.p.huang@gmail.com>
Sat, 9 Aug 2008 05:24:15 +0000 (13:24 +0800)
committerHuang Peng <shawn.p.huang@gmail.com>
Sat, 9 Aug 2008 05:24:15 +0000 (13:24 +0800)
engine/engine.py
engine/tables.py

index cf8f78a..ee8c1ea 100644 (file)
@@ -201,7 +201,8 @@ class Engine(ibus.EngineBase):
         elif keyval == keysyms.Right:
             return self.__on_key_right()
         elif keyval in xrange(keysyms.a, keysyms.z + 1) or \
-            keyval in xrange(keysyms.A, keysyms.Z + 1):
+            keyval in xrange(keysyms.A, keysyms.Z + 1) or \
+            unichr(keyval) in symbols_set:
             return self.__on_key_common(keyval)
         else:
             return True
index 668a4df..fc3e304 100644 (file)
@@ -260,8 +260,43 @@ romaji_typing_rule = {
     u"_"  : u"_",
 }
 
+symbols_set = set([
+    u",",
+    u".",
+    u"!",
+    u"\"",
+    u"#",
+    u"$",
+    u"%",
+    u"&",
+    u"'",
+    u"(",
+    u")",
+    u"~",
+    u"-",
+    u"=",
+    u"^",
+    u"\\",
+    u"|",
+    u"`",
+    u"@",
+    u"{",
+    u"[",
+    u"+",
+    u";",
+    u"*",
+    u":",
+    u"}",
+    u"]",
+    u"<",
+    u">",
+    u"?",
+    u"/",
+    u"_",
+])
+
 #hiragana, katakana, half_katakana
-hiragana_katakana_table = { 
+hiragana_katakana_table = {
     u"あ" : (u"ア", u"ア"),
     u"い" : (u"イ", u"イ"),
     u"う" : (u"ウ", u"ウ"),