summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHuang Peng <shawn.p.huang@gmail.com>2008-08-09 13:24:15 +0800
committerHuang Peng <shawn.p.huang@gmail.com>2008-08-09 13:24:15 +0800
commit18d4a9bfab3409e95299188757c5dda2c45a6cdb (patch)
treeca9fb6f6c0bfc0c22d7224dd3a1625671f578b48
parent3e3baac2d7adce38ab79411eca3a6901048a8452 (diff)
downloadibus-hangul-18d4a9bfab3409e95299188757c5dda2c45a6cdb.tar.gz
Add symbols support.
-rw-r--r--engine/engine.py3
-rw-r--r--engine/tables.py37
2 files changed, 38 insertions, 2 deletions
diff --git a/engine/engine.py b/engine/engine.py
index cf8f78a..ee8c1ea 100644
--- a/engine/engine.py
+++ b/engine/engine.py
@@ -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
diff --git a/engine/tables.py b/engine/tables.py
index 668a4df..fc3e304 100644
--- a/engine/tables.py
+++ b/engine/tables.py
@@ -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"ウ"),