summaryrefslogtreecommitdiff
path: root/src/PyZyConfig.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/PyZyConfig.h')
-rw-r--r--src/PyZyConfig.h61
1 files changed, 53 insertions, 8 deletions
diff --git a/src/PyZyConfig.h b/src/PyZyConfig.h
index 02505b3..0b43a88 100644
--- a/src/PyZyConfig.h
+++ b/src/PyZyConfig.h
@@ -22,15 +22,60 @@
#ifndef __PYZY_CONFIG_H_
#define __PYZY_CONFIG_H_
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <string>
-
namespace PyZy {
-#define MAX_PINYIN_LEN 64
+#define PINYIN_INCOMPLETE_PINYIN (1U << 0)
+
+#define PINYIN_CORRECT_GN_TO_NG (1U << 1)
+#define PINYIN_CORRECT_MG_TO_NG (1U << 2)
+#define PINYIN_CORRECT_IOU_TO_IU (1U << 3)
+#define PINYIN_CORRECT_UEI_TO_UI (1U << 4)
+#define PINYIN_CORRECT_UEN_TO_UN (1U << 5)
+#define PINYIN_CORRECT_UE_TO_VE (1U << 6)
+#define PINYIN_CORRECT_V_TO_U (1U << 7)
+#define PINYIN_CORRECT_ON_TO_ONG (1U << 8)
+#define PINYIN_CORRECT_ALL (0x000001fe)
+
+#define PINYIN_FUZZY_C_CH (1U << 9)
+#define PINYIN_FUZZY_CH_C (1U << 10)
+#define PINYIN_FUZZY_Z_ZH (1U << 11)
+#define PINYIN_FUZZY_ZH_Z (1U << 12)
+#define PINYIN_FUZZY_S_SH (1U << 13)
+#define PINYIN_FUZZY_SH_S (1U << 14)
+#define PINYIN_FUZZY_L_N (1U << 15)
+#define PINYIN_FUZZY_N_L (1U << 16)
+#define PINYIN_FUZZY_F_H (1U << 17)
+#define PINYIN_FUZZY_H_F (1U << 18)
+#define PINYIN_FUZZY_L_R (1U << 19)
+#define PINYIN_FUZZY_R_L (1U << 20)
+#define PINYIN_FUZZY_K_G (1U << 21)
+#define PINYIN_FUZZY_G_K (1U << 22)
+
+#define PINYIN_FUZZY_AN_ANG (1U << 23)
+#define PINYIN_FUZZY_ANG_AN (1U << 24)
+#define PINYIN_FUZZY_EN_ENG (1U << 25)
+#define PINYIN_FUZZY_ENG_EN (1U << 26)
+#define PINYIN_FUZZY_IN_ING (1U << 27)
+#define PINYIN_FUZZY_ING_IN (1U << 28)
+#define PINYIN_FUZZY_IAN_IANG PINYIN_FUZZY_AN_ANG
+#define PINYIN_FUZZY_IANG_IAN PINYIN_FUZZY_ANG_AN
+#define PINYIN_FUZZY_UAN_UANG PINYIN_FUZZY_AN_ANG
+#define PINYIN_FUZZY_UANG_UAN PINYIN_FUZZY_ANG_AN
+#define PINYIN_FUZZY_ALL (0x1ffffe00)
+
+#define DOUBLE_PINYIN_KEYBOARD_MSPY (0)
+#define DOUBLE_PINYIN_KEYBOARD_ZRM (1)
+#define DOUBLE_PINYIN_KEYBOARD_ABC (2)
+#define DOUBLE_PINYIN_KEYBOARD_ZGPY (3)
+#define DOUBLE_PINYIN_KEYBOARD_PYJJ (4)
+#define DOUBLE_PINYIN_KEYBOARD_XHE (5)
+#define DOUBLE_PINYIN_KEYBOARD_LAST (5)
+
+#define BOPOMOFO_KEYBOARD_STANDARD (0)
+#define BOPOMOFO_KEYBOARD_CHING_YEAH (1)
+#define BOPOMOFO_KEYBOARD_ETAN (2)
+#define BOPOMOFO_KEYBOARD_IBM (3)
+#define BOPOMOFO_KEYBOARD_LAST (3)
class Config {
protected:
@@ -74,7 +119,7 @@ private:
PinyinConfigImpl *m_pinyin_impl;
};
-/* Bopomof Config */
+/* Bopomofo Config */
class BopomofoConfig : public Config {
public:
static BopomofoConfig & instance (void);