Add some half chars in PunctTable
authorPeng Huang <shawn.p.huang@gmail.com>
Wed, 19 May 2010 00:10:39 +0000 (08:10 +0800)
committerPeng Huang <shawn.p.huang@gmail.com>
Wed, 19 May 2010 00:10:39 +0000 (08:10 +0800)
scripts/punct.py
src/BopomofoEngine.cc
src/PinyinEngine.h
src/PunctTable.h

index b67e838..92bb144 100644 (file)
@@ -18,16 +18,16 @@ punct_map = (
     (u'-', (u'…', u'—', u'-', u'¯', u'﹉', u' ̄', u'﹊', u'ˍ', u'–', u'‥',)),
     (u'.', (u'。', u'·', u'‧', u'﹒', u'.',)),
     (u'/', (u'/', u'÷', u'↗', u'↙', u'∕',)),
-    (u'0', (u'0',)),
-    (u'1', (u'1',)),
-    (u'2', (u'2',)),
-    (u'3', (u'3',)),
-    (u'4', (u'4',)),
-    (u'5', (u'5',)),
-    (u'6', (u'6',)),
-    (u'7', (u'7',)),
-    (u'8', (u'8',)),
-    (u'9', (u'9',)),
+    (u'0', (u'0', u'0')),
+    (u'1', (u'1', u'1')),
+    (u'2', (u'2', u'2')),
+    (u'3', (u'3', u'3')),
+    (u'4', (u'4', u'4')),
+    (u'5', (u'5', u'5')),
+    (u'6', (u'6', u'6')),
+    (u'7', (u'7', u'7')),
+    (u'8', (u'8', u'8')),
+    (u'9', (u'9', u'9')),
     (u':', (u':', u'︰', u'﹕',)),
     (u';', (u';', u'﹔',)),
     (u'<', (u'<', u'〈', u'《', u'︽', u'︿', u'﹤',)),
@@ -35,64 +35,64 @@ punct_map = (
     (u'>', (u'>', u'〉', u'》', u'︾', u'﹀', u'﹥',)),
     (u'?', (u'?', u'﹖', u'⁇', u'⁈',)),
     (u'@', (u'@', u'⊕', u'⊙', u'㊣', u'﹫', u'◉', u'◎',)),
-    (u'A', (u'A',)),
-    (u'B', (u'B',)),
-    (u'C', (u'C',)),
-    (u'D', (u'D',)),
-    (u'E', (u'E',)),
-    (u'F', (u'F',)),
-    (u'G', (u'G',)),
-    (u'H', (u'H',)),
-    (u'I', (u'I',)),
-    (u'J', (u'J',)),
-    (u'K', (u'K',)),
-    (u'L', (u'L',)),
-    (u'M', (u'M',)),
-    (u'N', (u'N',)),
-    (u'O', (u'O',)),
-    (u'P', (u'P',)),
-    (u'Q', (u'Q',)),
-    (u'R', (u'R',)),
-    (u'S', (u'S',)),
-    (u'T', (u'T',)),
-    (u'U', (u'U',)),
-    (u'V', (u'V',)),
-    (u'W', (u'W',)),
-    (u'X', (u'X',)),
-    (u'Y', (u'Y',)),
-    (u'Z', (u'Z',)),
+    (u'A', (u'A', u'A')),
+    (u'B', (u'B', u'B')),
+    (u'C', (u'C', u'C')),
+    (u'D', (u'D', u'D')),
+    (u'E', (u'E', u'E')),
+    (u'F', (u'F', u'F')),
+    (u'G', (u'G', u'G')),
+    (u'H', (u'H', u'H')),
+    (u'I', (u'I', u'I')),
+    (u'J', (u'J', u'J')),
+    (u'K', (u'K', u'K')),
+    (u'L', (u'L', u'L')),
+    (u'M', (u'M', u'M')),
+    (u'N', (u'N', u'N')),
+    (u'O', (u'O', u'O')),
+    (u'P', (u'P', u'P')),
+    (u'Q', (u'Q', u'Q')),
+    (u'R', (u'R', u'R')),
+    (u'S', (u'S', u'S')),
+    (u'T', (u'T', u'T')),
+    (u'U', (u'U', u'U')),
+    (u'V', (u'V', u'V')),
+    (u'W', (u'W', u'W')),
+    (u'X', (u'X', u'X')),
+    (u'Y', (u'Y', u'Y')),
+    (u'Z', (u'Z', u'Z')),
     (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'_', u'╴', u'←', u'→',)),
     (u'`', (u'‵', u'′',)),
-    (u'a', (u'a',)),
-    (u'b', (u'b',)),
-    (u'c', (u'c',)),
-    (u'd', (u'd',)),
-    (u'e', (u'e',)),
-    (u'f', (u'f',)),
-    (u'g', (u'g',)),
-    (u'h', (u'h',)),
-    (u'i', (u'i',)),
-    (u'j', (u'j',)),
-    (u'k', (u'k',)),
-    (u'l', (u'l',)),
-    (u'm', (u'm',)),
-    (u'n', (u'n',)),
-    (u'o', (u'o',)),
-    (u'p', (u'p',)),
-    (u'q', (u'q',)),
-    (u'r', (u'r',)),
-    (u's', (u's',)),
-    (u't', (u't',)),
-    (u'u', (u'u',)),
-    (u'v', (u'v',)),
-    (u'w', (u'w',)),
-    (u'x', (u'x',)),
-    (u'y', (u'y',)),
-    (u'z', (u'z',)),
+    (u'a', (u'a', u'a')),
+    (u'b', (u'b', u'b')),
+    (u'c', (u'c', u'c')),
+    (u'd', (u'd', u'd')),
+    (u'e', (u'e', u'e')),
+    (u'f', (u'f', u'f')),
+    (u'g', (u'g', u'g')),
+    (u'h', (u'h', u'h')),
+    (u'i', (u'i', u'i')),
+    (u'j', (u'j', u'j')),
+    (u'k', (u'k', u'k')),
+    (u'l', (u'l', u'l')),
+    (u'm', (u'm', u'm')),
+    (u'n', (u'n', u'n')),
+    (u'o', (u'o', u'o')),
+    (u'p', (u'p', u'p')),
+    (u'q', (u'q', u'q')),
+    (u'r', (u'r', u'r')),
+    (u's', (u's', u's')),
+    (u't', (u't', u't')),
+    (u'u', (u'u', u'u')),
+    (u'v', (u'v', u'v')),
+    (u'w', (u'w', u'w')),
+    (u'x', (u'x', u'x')),
+    (u'y', (u'y', u'y')),
+    (u'z', (u'z', u'z')),
     (u'{', (u'{', u'︷', u'﹛', u'〔', u'﹝', u'︹',)),
     (u'|', (u'|', u'↑', u'↓', u'∣', u'∥', u'︱', u'︳', u'︴', u'¦',)),
     (u'}', (u'}', u'︸', u'﹜', u'〕', u'﹞', u'︺',)),
index cd51b69..6d827a0 100644 (file)
@@ -3,7 +3,6 @@
 #include <libintl.h>
 #include <string>
 #include <cstdlib>
-#include <ibus.h>
 #include "RawEditor.h"
 #include "PunctEditor.h"
 #include "ExtEditor.h"
index 398c028..e4f8cb8 100644 (file)
@@ -66,6 +66,7 @@ private:
 
     enum {
         MODE_INIT = 0,          // init mode
+        MODE_PUNCT,             // punct mode
         MODE_RAW,               // raw mode
     #if 0
         MODE_ENGLISH,           // press v into English input mode
index 1d1e533..936d83b 100644 (file)
@@ -16,16 +16,16 @@ puncts[] = {
     "-", "…", "—", "-", "¯", "﹉", " ̄", "﹊", "ˍ", "–", "‥", NULL,
     ".", "。", "·", "‧", "﹒", ".", NULL,
     "/", "/", "÷", "↗", "↙", "∕", NULL,
-    "0", "0", NULL,
-    "1", "1", NULL,
-    "2", "2", NULL,
-    "3", "3", NULL,
-    "4", "4", NULL,
-    "5", "5", NULL,
-    "6", "6", NULL,
-    "7", "7", NULL,
-    "8", "8", NULL,
-    "9", "9", NULL,
+    "0", "0", "0", NULL,
+    "1", "1", "1", NULL,
+    "2", "2", "2", NULL,
+    "3", "3", "3", NULL,
+    "4", "4", "4", NULL,
+    "5", "5", "5", NULL,
+    "6", "6", "6", NULL,
+    "7", "7", "7", NULL,
+    "8", "8", "8", NULL,
+    "9", "9", "9", NULL,
     ":", ":", "︰", "﹕", NULL,
     ";", ";", "﹔", NULL,
     "<", "<", "〈", "《", "︽", "︿", "﹤", NULL,
@@ -33,64 +33,64 @@ puncts[] = {
     ">", ">", "〉", "》", "︾", "﹀", "﹥", NULL,
     "?", "?", "﹖", "⁇", "⁈", NULL,
     "@", "@", "⊕", "⊙", "㊣", "﹫", "◉", "◎", NULL,
-    "A", "A", NULL,
-    "B", "B", NULL,
-    "C", "C", NULL,
-    "D", "D", NULL,
-    "E", "E", NULL,
-    "F", "F", NULL,
-    "G", "G", NULL,
-    "H", "H", NULL,
-    "I", "I", NULL,
-    "J", "J", NULL,
-    "K", "K", NULL,
-    "L", "L", NULL,
-    "M", "M", NULL,
-    "N", "N", NULL,
-    "O", "O", NULL,
-    "P", "P", NULL,
-    "Q", "Q", NULL,
-    "R", "R", NULL,
-    "S", "S", NULL,
-    "T", "T", NULL,
-    "U", "U", NULL,
-    "V", "V", NULL,
-    "W", "W", NULL,
-    "X", "X", NULL,
-    "Y", "Y", NULL,
-    "Z", "Z", NULL,
+    "A", "A", "A", NULL,
+    "B", "B", "B", NULL,
+    "C", "C", "C", NULL,
+    "D", "D", "D", NULL,
+    "E", "E", "E", NULL,
+    "F", "F", "F", NULL,
+    "G", "G", "G", NULL,
+    "H", "H", "H", NULL,
+    "I", "I", "I", NULL,
+    "J", "J", "J", NULL,
+    "K", "K", "K", NULL,
+    "L", "L", "L", NULL,
+    "M", "M", "M", NULL,
+    "N", "N", "N", NULL,
+    "O", "O", "O", NULL,
+    "P", "P", "P", NULL,
+    "Q", "Q", "Q", NULL,
+    "R", "R", "R", NULL,
+    "S", "S", "S", NULL,
+    "T", "T", "T", NULL,
+    "U", "U", "U", NULL,
+    "V", "V", "V", NULL,
+    "W", "W", "W", NULL,
+    "X", "X", "X", NULL,
+    "Y", "Y", "Y", NULL,
+    "Z", "Z", "Z", NULL,
     "[", "「", "[", "『", "【", "「", "︻", "﹁", "﹃", NULL,
     "\\", "\", "↖", "↘", "﹨", NULL,
     "]", "」", "]", "』", "】", "」", "︼", "﹂", "﹄", NULL,
     "^", "︿", "〈", "《", "︽", "﹤", "<", NULL,
     "_", "_", "╴", "←", "→", NULL,
     "`", "‵", "′", NULL,
-    "a", "a", NULL,
-    "b", "b", NULL,
-    "c", "c", NULL,
-    "d", "d", NULL,
-    "e", "e", NULL,
-    "f", "f", NULL,
-    "g", "g", NULL,
-    "h", "h", NULL,
-    "i", "i", NULL,
-    "j", "j", NULL,
-    "k", "k", NULL,
-    "l", "l", NULL,
-    "m", "m", NULL,
-    "n", "n", NULL,
-    "o", "o", NULL,
-    "p", "p", NULL,
-    "q", "q", NULL,
-    "r", "r", NULL,
-    "s", "s", NULL,
-    "t", "t", NULL,
-    "u", "u", NULL,
-    "v", "v", NULL,
-    "w", "w", NULL,
-    "x", "x", NULL,
-    "y", "y", NULL,
-    "z", "z", NULL,
+    "a", "a", "a", NULL,
+    "b", "b", "b", NULL,
+    "c", "c", "c", NULL,
+    "d", "d", "d", NULL,
+    "e", "e", "e", NULL,
+    "f", "f", "f", NULL,
+    "g", "g", "g", NULL,
+    "h", "h", "h", NULL,
+    "i", "i", "i", NULL,
+    "j", "j", "j", NULL,
+    "k", "k", "k", NULL,
+    "l", "l", "l", NULL,
+    "m", "m", "m", NULL,
+    "n", "n", "n", NULL,
+    "o", "o", "o", NULL,
+    "p", "p", "p", NULL,
+    "q", "q", "q", NULL,
+    "r", "r", "r", NULL,
+    "s", "s", "s", NULL,
+    "t", "t", "t", NULL,
+    "u", "u", "u", NULL,
+    "v", "v", "v", NULL,
+    "w", "w", "w", NULL,
+    "x", "x", "x", NULL,
+    "y", "y", "y", NULL,
+    "z", "z", "z", NULL,
     "{", "{", "︷", "﹛", "〔", "﹝", "︹", NULL,
     "|", "|", "↑", "↓", "∣", "∥", "︱", "︳", "︴", "¦", NULL,
     "}", "}", "︸", "﹜", "〕", "﹞", "︺", NULL,
@@ -116,82 +116,82 @@ punct_table[] = {
     &puncts[96],    // "."
     &puncts[103],    // "/"
     &puncts[110],    // "0"
-    &puncts[113],    // "1"
-    &puncts[116],    // "2"
-    &puncts[119],    // "3"
-    &puncts[122],    // "4"
-    &puncts[125],    // "5"
-    &puncts[128],    // "6"
-    &puncts[131],    // "7"
-    &puncts[134],    // "8"
-    &puncts[137],    // "9"
-    &puncts[140],    // ":"
-    &puncts[145],    // ";"
-    &puncts[149],    // "<"
-    &puncts[157],    // "="
-    &puncts[166],    // ">"
-    &puncts[174],    // "?"
-    &puncts[180],    // "@"
-    &puncts[189],    // "A"
-    &puncts[192],    // "B"
-    &puncts[195],    // "C"
-    &puncts[198],    // "D"
-    &puncts[201],    // "E"
-    &puncts[204],    // "F"
-    &puncts[207],    // "G"
-    &puncts[210],    // "H"
-    &puncts[213],    // "I"
-    &puncts[216],    // "J"
-    &puncts[219],    // "K"
-    &puncts[222],    // "L"
-    &puncts[225],    // "M"
-    &puncts[228],    // "N"
-    &puncts[231],    // "O"
-    &puncts[234],    // "P"
-    &puncts[237],    // "Q"
-    &puncts[240],    // "R"
-    &puncts[243],    // "S"
-    &puncts[246],    // "T"
-    &puncts[249],    // "U"
-    &puncts[252],    // "V"
-    &puncts[255],    // "W"
-    &puncts[258],    // "X"
-    &puncts[261],    // "Y"
-    &puncts[264],    // "Z"
-    &puncts[267],    // "["
-    &puncts[277],    // "\\"
-    &puncts[283],    // "]"
-    &puncts[293],    // "^"
-    &puncts[301],    // "_"
-    &puncts[307],    // "`"
-    &puncts[311],    // "a"
-    &puncts[314],    // "b"
-    &puncts[317],    // "c"
-    &puncts[320],    // "d"
-    &puncts[323],    // "e"
-    &puncts[326],    // "f"
-    &puncts[329],    // "g"
-    &puncts[332],    // "h"
-    &puncts[335],    // "i"
-    &puncts[338],    // "j"
-    &puncts[341],    // "k"
-    &puncts[344],    // "l"
-    &puncts[347],    // "m"
-    &puncts[350],    // "n"
-    &puncts[353],    // "o"
-    &puncts[356],    // "p"
-    &puncts[359],    // "q"
-    &puncts[362],    // "r"
-    &puncts[365],    // "s"
-    &puncts[368],    // "t"
-    &puncts[371],    // "u"
-    &puncts[374],    // "v"
-    &puncts[377],    // "w"
-    &puncts[380],    // "x"
-    &puncts[383],    // "y"
-    &puncts[386],    // "z"
-    &puncts[389],    // "{"
-    &puncts[397],    // "|"
-    &puncts[408],    // "}"
-    &puncts[416],    // "~"
+    &puncts[114],    // "1"
+    &puncts[118],    // "2"
+    &puncts[122],    // "3"
+    &puncts[126],    // "4"
+    &puncts[130],    // "5"
+    &puncts[134],    // "6"
+    &puncts[138],    // "7"
+    &puncts[142],    // "8"
+    &puncts[146],    // "9"
+    &puncts[150],    // ":"
+    &puncts[155],    // ";"
+    &puncts[159],    // "<"
+    &puncts[167],    // "="
+    &puncts[176],    // ">"
+    &puncts[184],    // "?"
+    &puncts[190],    // "@"
+    &puncts[199],    // "A"
+    &puncts[203],    // "B"
+    &puncts[207],    // "C"
+    &puncts[211],    // "D"
+    &puncts[215],    // "E"
+    &puncts[219],    // "F"
+    &puncts[223],    // "G"
+    &puncts[227],    // "H"
+    &puncts[231],    // "I"
+    &puncts[235],    // "J"
+    &puncts[239],    // "K"
+    &puncts[243],    // "L"
+    &puncts[247],    // "M"
+    &puncts[251],    // "N"
+    &puncts[255],    // "O"
+    &puncts[259],    // "P"
+    &puncts[263],    // "Q"
+    &puncts[267],    // "R"
+    &puncts[271],    // "S"
+    &puncts[275],    // "T"
+    &puncts[279],    // "U"
+    &puncts[283],    // "V"
+    &puncts[287],    // "W"
+    &puncts[291],    // "X"
+    &puncts[295],    // "Y"
+    &puncts[299],    // "Z"
+    &puncts[303],    // "["
+    &puncts[313],    // "\\"
+    &puncts[319],    // "]"
+    &puncts[329],    // "^"
+    &puncts[337],    // "_"
+    &puncts[343],    // "`"
+    &puncts[347],    // "a"
+    &puncts[351],    // "b"
+    &puncts[355],    // "c"
+    &puncts[359],    // "d"
+    &puncts[363],    // "e"
+    &puncts[367],    // "f"
+    &puncts[371],    // "g"
+    &puncts[375],    // "h"
+    &puncts[379],    // "i"
+    &puncts[383],    // "j"
+    &puncts[387],    // "k"
+    &puncts[391],    // "l"
+    &puncts[395],    // "m"
+    &puncts[399],    // "n"
+    &puncts[403],    // "o"
+    &puncts[407],    // "p"
+    &puncts[411],    // "q"
+    &puncts[415],    // "r"
+    &puncts[419],    // "s"
+    &puncts[423],    // "t"
+    &puncts[427],    // "u"
+    &puncts[431],    // "v"
+    &puncts[435],    // "w"
+    &puncts[439],    // "x"
+    &puncts[443],    // "y"
+    &puncts[447],    // "z"
+    &puncts[451],    // "{"
+    &puncts[459],    // "|"
+    &puncts[470],    // "}"
+    &puncts[478],    // "~"
 };