|
|
b8e643 |
diff --git a/autogen.sh b/autogen.sh
|
|
|
b8e643 |
index 99be006..f8bf2b0 100755
|
|
|
b8e643 |
--- a/autogen.sh
|
|
|
b8e643 |
+++ b/autogen.sh
|
|
|
b8e643 |
@@ -18,10 +18,10 @@ which gnome-autogen.sh || {
|
|
|
b8e643 |
exit 1
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
-export CFLAGS="-g -O0"
|
|
|
b8e643 |
-export CXXFLAGS="$CFLAGS"
|
|
|
b8e643 |
+export CFLAGS=${CFLAGS-"-Wall"}
|
|
|
b8e643 |
+export CXXFLAGS=${CXXFLAGS-"$CFLAGS"}
|
|
|
b8e643 |
|
|
|
b8e643 |
ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I m4"
|
|
|
b8e643 |
REQUIRED_AUTOMAKE_VERSION=1.10
|
|
|
b8e643 |
|
|
|
b8e643 |
-. gnome-autogen.sh
|
|
|
b8e643 |
+. gnome-autogen.sh "$@"
|
|
|
b8e643 |
diff --git a/configure.ac b/configure.ac
|
|
|
b8e643 |
index 0548537..30d44ff 100644
|
|
|
b8e643 |
--- a/configure.ac
|
|
|
b8e643 |
+++ b/configure.ac
|
|
|
b8e643 |
@@ -48,6 +48,7 @@ AM_PROG_CC_C_O
|
|
|
b8e643 |
AC_PROG_CXX
|
|
|
b8e643 |
AC_ISC_POSIX
|
|
|
b8e643 |
AC_HEADER_STDC
|
|
|
b8e643 |
+IT_PROG_INTLTOOL([0.35.0])
|
|
|
b8e643 |
AM_PROG_LIBTOOL
|
|
|
b8e643 |
|
|
|
b8e643 |
# check ibus
|
|
|
b8e643 |
@@ -111,8 +112,6 @@ AC_CONFIG_FILES([ po/Makefile.in
|
|
|
b8e643 |
Makefile
|
|
|
b8e643 |
ibus-m17n.spec
|
|
|
b8e643 |
src/Makefile
|
|
|
b8e643 |
-src/m17n.xml.in
|
|
|
b8e643 |
-src/default.xml.in
|
|
|
b8e643 |
icons/Makefile
|
|
|
b8e643 |
m4/Makefile
|
|
|
b8e643 |
])
|
|
|
b8e643 |
diff --git a/po/POTFILES.in b/po/POTFILES.in
|
|
|
b8e643 |
index a426e33..bb3bd6e 100644
|
|
|
b8e643 |
--- a/po/POTFILES.in
|
|
|
b8e643 |
+++ b/po/POTFILES.in
|
|
|
b8e643 |
@@ -1,3 +1,5 @@
|
|
|
b8e643 |
src/engine.c
|
|
|
b8e643 |
src/m17nutil.c
|
|
|
b8e643 |
src/main.c
|
|
|
b8e643 |
+[type: gettext/glade]src/ibus-m17n-preferences.ui
|
|
|
b8e643 |
+src/ibus-setup-m17n.desktop.in.in
|
|
|
b8e643 |
diff --git a/po/POTFILES.skip b/po/POTFILES.skip
|
|
|
b8e643 |
new file mode 100644
|
|
|
b8e643 |
index 0000000..3667f37
|
|
|
b8e643 |
--- /dev/null
|
|
|
b8e643 |
+++ b/po/POTFILES.skip
|
|
|
b8e643 |
@@ -0,0 +1 @@
|
|
|
b8e643 |
+src/ibus-setup-m17n.desktop.in
|
|
|
b8e643 |
diff --git a/src/Makefile.am b/src/Makefile.am
|
|
|
b8e643 |
index 39d6523..68ec953 100644
|
|
|
b8e643 |
--- a/src/Makefile.am
|
|
|
b8e643 |
+++ b/src/Makefile.am
|
|
|
b8e643 |
@@ -19,15 +19,14 @@
|
|
|
b8e643 |
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
|
b8e643 |
|
|
|
b8e643 |
AM_CFLAGS = \
|
|
|
b8e643 |
- @IBUS_CFLAGS@ \
|
|
|
b8e643 |
- @M17N_CFLAGS@ \
|
|
|
b8e643 |
+ $(IBUS_CFLAGS) \
|
|
|
b8e643 |
+ $(M17N_CFLAGS) \
|
|
|
b8e643 |
-DPKGDATADIR=\"$(pkgdatadir)\" \
|
|
|
b8e643 |
-DLIBEXECDIR=\"$(libexecdir)\" \
|
|
|
b8e643 |
- -DSETUPDIR=\"$(setupdir)\" \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
AM_LDADD = \
|
|
|
b8e643 |
- @IBUS_LIBS@ \
|
|
|
b8e643 |
- @M17N_LIBS@ \
|
|
|
b8e643 |
+ $(IBUS_LIBS) \
|
|
|
b8e643 |
+ $(M17N_LIBS) \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
|
|
|
b8e643 |
check_PROGRAMS = \
|
|
|
b8e643 |
@@ -38,6 +37,7 @@ TESTS = \
|
|
|
b8e643 |
$(check_PROGRAMS) \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
|
|
|
b8e643 |
+TESTS_ENVIRONMENT = IBUS_M17N_PKGDATADIR=$(builddir)
|
|
|
b8e643 |
|
|
|
b8e643 |
test_m17n_SOURCES = \
|
|
|
b8e643 |
test.c \
|
|
|
b8e643 |
@@ -46,10 +46,13 @@ test_m17n_CFLAGS = \
|
|
|
b8e643 |
$(AM_CFLAGS) \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
test_m17n_LDADD = \
|
|
|
b8e643 |
- libm17ncommon.a \
|
|
|
b8e643 |
+ libm17ncommon.la \
|
|
|
b8e643 |
$(AM_LDADD) \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
|
|
|
b8e643 |
+test: ibus-engine-m17n
|
|
|
b8e643 |
+ $(builddir)/ibus-engine-m17n
|
|
|
b8e643 |
+
|
|
|
b8e643 |
libexec_PROGRAMS = ibus-engine-m17n
|
|
|
b8e643 |
|
|
|
b8e643 |
noinst_LTLIBRARIES = libm17ncommon.la
|
|
|
b8e643 |
@@ -67,8 +70,8 @@ ibus_engine_m17n_SOURCES = \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
ibus_engine_m17n_LDADD = \
|
|
|
b8e643 |
libm17ncommon.la \
|
|
|
b8e643 |
- @IBUS_LIBS@ \
|
|
|
b8e643 |
- @M17N_LIBS@ \
|
|
|
b8e643 |
+ $(IBUS_LIBS) \
|
|
|
b8e643 |
+ $(M17N_LIBS) \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
|
|
|
b8e643 |
if HAVE_GTK
|
|
|
b8e643 |
@@ -78,58 +81,61 @@ ibus_setup_m17n_SOURCES = \
|
|
|
b8e643 |
setup.c \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
ibus_setup_m17n_CFLAGS = \
|
|
|
b8e643 |
- @GTK_CFLAGS@ \
|
|
|
b8e643 |
+ $(GTK_CFLAGS) \
|
|
|
b8e643 |
$(AM_CFLAGS) \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
ibus_setup_m17n_LDADD = \
|
|
|
b8e643 |
libm17ncommon.la \
|
|
|
b8e643 |
- @IBUS_LIBS@ \
|
|
|
b8e643 |
- @M17N_LIBS@ \
|
|
|
b8e643 |
- @GTK_LIBS@ \
|
|
|
b8e643 |
+ $(IBUS_LIBS) \
|
|
|
b8e643 |
+ $(M17N_LIBS) \
|
|
|
b8e643 |
+ $(GTK_LIBS) \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+setupdir = $(pkgdatadir)/setup
|
|
|
b8e643 |
dist_setup_DATA = \
|
|
|
b8e643 |
ibus-m17n-preferences.ui \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
endif
|
|
|
b8e643 |
|
|
|
b8e643 |
-setup_DATA = \
|
|
|
b8e643 |
+pkgdata_DATA = \
|
|
|
b8e643 |
default.xml \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
-setupdir = $(pkgdatadir)/setup
|
|
|
b8e643 |
|
|
|
b8e643 |
component_DATA = \
|
|
|
b8e643 |
m17n.xml \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
-componentdir = @datadir@/ibus/component
|
|
|
b8e643 |
+componentdir = $(datadir)/ibus/component
|
|
|
b8e643 |
|
|
|
b8e643 |
EXTRA_DIST = \
|
|
|
b8e643 |
- m17n.xml.in.in \
|
|
|
b8e643 |
- default.xml.in \
|
|
|
b8e643 |
+ m17n.xml.in \
|
|
|
b8e643 |
+ $(desktop_in_in_files) \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
|
|
|
b8e643 |
DISTCLEANFILES = \
|
|
|
b8e643 |
m17n.xml.in \
|
|
|
b8e643 |
- default.xml.in \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
|
|
|
b8e643 |
CLEANFILES = \
|
|
|
b8e643 |
m17n.xml \
|
|
|
b8e643 |
- default.xml \
|
|
|
b8e643 |
+ $(desktop_DATA) \
|
|
|
b8e643 |
+ $(desktop_in_files) \
|
|
|
b8e643 |
$(NULL)
|
|
|
b8e643 |
|
|
|
b8e643 |
+edit = sed \
|
|
|
b8e643 |
+ -e 's|@VERSION[@]|$(VERSION)|g' \
|
|
|
b8e643 |
+ -e 's|@libexecdir[@]|$(libexecdir)|g' \
|
|
|
b8e643 |
+ -e 's|@pkgdatadir[@]|$(pkgdatadir)|g'
|
|
|
b8e643 |
+
|
|
|
b8e643 |
m17n.xml: m17n.xml.in
|
|
|
b8e643 |
-default.xml: default.xml.in
|
|
|
b8e643 |
-
|
|
|
b8e643 |
-SUFFIXES = .xml.in .xml
|
|
|
b8e643 |
-.xml.in.xml:
|
|
|
b8e643 |
- $(AM_V_GEN) \
|
|
|
b8e643 |
- ( \
|
|
|
b8e643 |
- libexecdir=${libexecdir}; \
|
|
|
b8e643 |
- pkgdatadir=${pkgdatadir}; \
|
|
|
b8e643 |
- setupdir=${setupdir}; \
|
|
|
b8e643 |
- s=`cat $<`; \
|
|
|
b8e643 |
- eval "echo \"$${s}\""; \
|
|
|
b8e643 |
- ) > $@
|
|
|
b8e643 |
+ $(AM_V_GEN) $(edit) $< > $@.tmp && mv $@.tmp $@
|
|
|
b8e643 |
|
|
|
b8e643 |
-test: ibus-engine-m17n
|
|
|
b8e643 |
- $(builddir)/ibus-engine-m17n
|
|
|
b8e643 |
+desktop_in_in_files = ibus-setup-m17n.desktop.in.in
|
|
|
b8e643 |
+desktop_in_files = $(desktop_in_in_files:.in.in=.in)
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+$(desktop_in_files): %.desktop.in: %.desktop.in.in Makefile
|
|
|
b8e643 |
+ $(AM_V_GEN) $(edit) $< > $@.tmp && mv $@.tmp $@
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+desktopdir=$(datadir)/applications
|
|
|
b8e643 |
+desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+@INTLTOOL_DESKTOP_RULE@
|
|
|
b8e643 |
diff --git a/src/default.xml b/src/default.xml
|
|
|
b8e643 |
new file mode 100644
|
|
|
b8e643 |
index 0000000..ffd733a
|
|
|
b8e643 |
--- /dev/null
|
|
|
b8e643 |
+++ b/src/default.xml
|
|
|
b8e643 |
@@ -0,0 +1,434 @@
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+<engines>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ engine. A "name" element in an "engine" element allows
|
|
|
b8e643 |
+ wildcard patterns. "engine" elements are evaluated in
|
|
|
b8e643 |
+ first-to-last order and the latter match may override the
|
|
|
b8e643 |
+ existing default. -->
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:*</name>
|
|
|
b8e643 |
+ <rank>0</rank>
|
|
|
b8e643 |
+ <preedit-highlight>FALSE</preedit-highlight>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:*:kbd</name>
|
|
|
b8e643 |
+ <rank>-1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:py</name>
|
|
|
b8e643 |
+ <rank>-1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ja:anthy</name>
|
|
|
b8e643 |
+ <rank>-1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ko:han2</name>
|
|
|
b8e643 |
+ <rank>-1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ko:romaja</name>
|
|
|
b8e643 |
+ <rank>-1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ https://bugzilla.redhat.com/show_bug.cgi?id=640896 -->
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:as:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:bn:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:gu:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:hi:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:kn:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ks:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:mai:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ml:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:mr:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ne:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:or:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:pa:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:sa:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:sd:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:si:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ta:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:te:*</name>
|
|
|
b8e643 |
+ <rank>1</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ language. -->
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:as:phonetic</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:bn:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:gu:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:hi:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:kn:kgp</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ks:kbd</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:mai:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ml:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:mr:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ne:rom</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:or:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:pa:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:sa:harvard-kyoto</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:sd:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:si:wijesekera</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ta:tamil99</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:te:inscript</name>
|
|
|
b8e643 |
+ <rank>2</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ non-keyboard input method in Sinhala. -->
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:si:samanala</name>
|
|
|
b8e643 |
+ <rank>0</rank>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:cangjie</name>
|
|
|
b8e643 |
+ <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:py-b5</name>
|
|
|
b8e643 |
+ <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:py-gb</name>
|
|
|
b8e643 |
+ <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:py</name>
|
|
|
b8e643 |
+ <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:quick</name>
|
|
|
b8e643 |
+ <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:tonepy-b5</name>
|
|
|
b8e643 |
+ <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:tonepy-gb</name>
|
|
|
b8e643 |
+ <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:tonepy</name>
|
|
|
b8e643 |
+ <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ja:anthy</name>
|
|
|
b8e643 |
+ <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:as:*</name>
|
|
|
b8e643 |
+ <symbol>অ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:bn:*</name>
|
|
|
b8e643 |
+ <symbol>বা</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:gu:*</name>
|
|
|
b8e643 |
+ <symbol>ગુ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:hi:*</name>
|
|
|
b8e643 |
+ <symbol>हिं</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:kn:*</name>
|
|
|
b8e643 |
+ <symbol>ಕ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ks:*</name>
|
|
|
b8e643 |
+ <symbol>क</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:mai:*</name>
|
|
|
b8e643 |
+ <symbol>मै</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ml:*</name>
|
|
|
b8e643 |
+ <symbol>മ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:mr:*</name>
|
|
|
b8e643 |
+ <symbol>म</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ne:*</name>
|
|
|
b8e643 |
+ <symbol>ने</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:or:*</name>
|
|
|
b8e643 |
+ <symbol>ଓ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:pa:*</name>
|
|
|
b8e643 |
+ <symbol>ਪੰ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:sa:*</name>
|
|
|
b8e643 |
+ <symbol>सं</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:sd:*</name>
|
|
|
b8e643 |
+ <symbol>सिं</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:si:*</name>
|
|
|
b8e643 |
+ <symbol>සි</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ta:*</name>
|
|
|
b8e643 |
+ <symbol>த</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:te:*</name>
|
|
|
b8e643 |
+ <symbol>తె</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:*:kbd</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:*:pre</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:*:post</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:am:sera</name>
|
|
|
b8e643 |
+ <symbol>አ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:bo:*</name>
|
|
|
b8e643 |
+ <symbol>ཀ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:cr:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:dv:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:eo:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:fa:*</name>
|
|
|
b8e643 |
+ <symbol>ف</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:fr:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ii:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:iu:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ja:anthy</name>
|
|
|
b8e643 |
+ <symbol>あ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:kk:*</name>
|
|
|
b8e643 |
+ <symbol>قا</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:km:*</name>
|
|
|
b8e643 |
+ <symbol>ក</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:lo:*</name>
|
|
|
b8e643 |
+ <symbol>ກ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:nsk:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:oj:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ps:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ru:*</name>
|
|
|
b8e643 |
+ <symbol>Я</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:sv:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:syrc:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:tai:*</name>
|
|
|
b8e643 |
+ <symbol>꫞</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:th:*</name>
|
|
|
b8e643 |
+ <symbol>ท</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:ur:*</name>
|
|
|
b8e643 |
+ <symbol>خ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:vi:han</name>
|
|
|
b8e643 |
+ <symbol>越</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:vi:nom*</name>
|
|
|
b8e643 |
+ <symbol>喃</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:vi:*</name>
|
|
|
b8e643 |
+ <symbol>ắ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:yi:*</name>
|
|
|
b8e643 |
+ <symbol></symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:bopomofo</name>
|
|
|
b8e643 |
+ <symbol>ㄅ</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:cangjie</name>
|
|
|
b8e643 |
+ <symbol>倉</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:pinyin</name>
|
|
|
b8e643 |
+ <symbol>PY</symbol>
|
|
|
b8e643 |
+ <longname>hanyu pinyin (m17n)</longname>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:py*</name>
|
|
|
b8e643 |
+ <symbol>拼</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:quick</name>
|
|
|
b8e643 |
+ <symbol>簡</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+ <engine>
|
|
|
b8e643 |
+ <name>m17n:zh:tonepy*</name>
|
|
|
b8e643 |
+ <symbol>调</symbol>
|
|
|
b8e643 |
+ </engine>
|
|
|
b8e643 |
+</engines>
|
|
|
b8e643 |
diff --git a/src/default.xml.in.in b/src/default.xml.in.in
|
|
|
b8e643 |
deleted file mode 100644
|
|
|
b8e643 |
index 9f5a01e..0000000
|
|
|
b8e643 |
--- a/src/default.xml.in.in
|
|
|
b8e643 |
+++ /dev/null
|
|
|
b8e643 |
@@ -1,408 +0,0 @@
|
|
|
b8e643 |
-
|
|
|
b8e643 |
-<engines>
|
|
|
b8e643 |
-
|
|
|
b8e643 |
- engine. A "name" element in an "engine" element allows
|
|
|
b8e643 |
- wildcard patterns. "engine" elements are evaluated in
|
|
|
b8e643 |
- first-to-last order and the latter match may override the
|
|
|
b8e643 |
- existing default. -->
|
|
|
b8e643 |
-
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:*</name>
|
|
|
b8e643 |
- <rank>0</rank>
|
|
|
b8e643 |
- <preedit-highlight>FALSE</preedit-highlight>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
-
|
|
|
b8e643 |
- https://bugzilla.redhat.com/show_bug.cgi?id=640896 -->
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:as:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:bn:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:gu:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:hi:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:kn:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ks:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:mai:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ml:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:mr:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ne:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:or:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:pa:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:sa:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:sd:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:si:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ta:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:te:*</name>
|
|
|
b8e643 |
- <rank>1</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
-
|
|
|
b8e643 |
- language. -->
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:as:phonetic</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:bn:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:gu:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:hi:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:kn:kgp</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ks:kbd</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:mai:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ml:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:mr:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ne:rom</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:or:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:pa:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:sa:harvard-kyoto</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:sd:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:si:wijesekera</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ta:tamil99</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:te:inscript</name>
|
|
|
b8e643 |
- <rank>2</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
-
|
|
|
b8e643 |
- non-keyboard input method in Sinhala. -->
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:si:samanala</name>
|
|
|
b8e643 |
- <rank>0</rank>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
-
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:cangjie</name>
|
|
|
b8e643 |
- <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:py-b5</name>
|
|
|
b8e643 |
- <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:py-gb</name>
|
|
|
b8e643 |
- <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:py</name>
|
|
|
b8e643 |
- <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:quick</name>
|
|
|
b8e643 |
- <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:tonepy-b5</name>
|
|
|
b8e643 |
- <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:tonepy-gb</name>
|
|
|
b8e643 |
- <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:tonepy</name>
|
|
|
b8e643 |
- <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ja:anthy</name>
|
|
|
b8e643 |
- <preedit-highlight>TRUE</preedit-highlight>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
-
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:as:*</name>
|
|
|
b8e643 |
- <symbol>অ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:bn:*</name>
|
|
|
b8e643 |
- <symbol>বা</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:gu:*</name>
|
|
|
b8e643 |
- <symbol>ગુ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:hi:*</name>
|
|
|
b8e643 |
- <symbol>हिं</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:kn:*</name>
|
|
|
b8e643 |
- <symbol>ಕ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ks:*</name>
|
|
|
b8e643 |
- <symbol>क</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:mai:*</name>
|
|
|
b8e643 |
- <symbol>मै</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ml:*</name>
|
|
|
b8e643 |
- <symbol>മ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:mr:*</name>
|
|
|
b8e643 |
- <symbol>म</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ne:*</name>
|
|
|
b8e643 |
- <symbol>ने</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:or:*</name>
|
|
|
b8e643 |
- <symbol>ଓ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:pa:*</name>
|
|
|
b8e643 |
- <symbol>ਪੰ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:sa:*</name>
|
|
|
b8e643 |
- <symbol>सं</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:sd:*</name>
|
|
|
b8e643 |
- <symbol>सिं</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:si:*</name>
|
|
|
b8e643 |
- <symbol>සි</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ta:*</name>
|
|
|
b8e643 |
- <symbol>த</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:te:*</name>
|
|
|
b8e643 |
- <symbol>తె</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:*:kbd</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:*:pre</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:*:post</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:am:sera</name>
|
|
|
b8e643 |
- <symbol>አ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:bo:*</name>
|
|
|
b8e643 |
- <symbol>ཀ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:cr:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:dv:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:eo:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:fa:*</name>
|
|
|
b8e643 |
- <symbol>ف</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:fr:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ii:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:iu:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ja:anthy</name>
|
|
|
b8e643 |
- <symbol>あ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:kk:*</name>
|
|
|
b8e643 |
- <symbol>قا</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:km:*</name>
|
|
|
b8e643 |
- <symbol>ក</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:lo:*</name>
|
|
|
b8e643 |
- <symbol>ກ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:nsk:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:oj:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ps:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ru:*</name>
|
|
|
b8e643 |
- <symbol>Я</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:sv:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:syrc:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:tai:*</name>
|
|
|
b8e643 |
- <symbol>꫞</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:th:*</name>
|
|
|
b8e643 |
- <symbol>ท</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:ur:*</name>
|
|
|
b8e643 |
- <symbol>خ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:vi:han</name>
|
|
|
b8e643 |
- <symbol>越</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:vi:nom*</name>
|
|
|
b8e643 |
- <symbol>喃</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:vi:*</name>
|
|
|
b8e643 |
- <symbol>Ắ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:yi:*</name>
|
|
|
b8e643 |
- <symbol></symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:bopomofo</name>
|
|
|
b8e643 |
- <symbol>ㄅ</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:cangjie</name>
|
|
|
b8e643 |
- <symbol>倉</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:pinyin</name>
|
|
|
b8e643 |
- <symbol>PY</symbol>
|
|
|
b8e643 |
- <longname>hanyu pinyin (m17n)</longname>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:py*</name>
|
|
|
b8e643 |
- <symbol>拼</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:quick</name>
|
|
|
b8e643 |
- <symbol>簡</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
- <engine>
|
|
|
b8e643 |
- <name>m17n:zh:tonepy*</name>
|
|
|
b8e643 |
- <symbol>调</symbol>
|
|
|
b8e643 |
- </engine>
|
|
|
b8e643 |
-</engines>
|
|
|
b8e643 |
diff --git a/src/engine.c b/src/engine.c
|
|
|
b8e643 |
index bd7ea0f..bcc1a71 100644
|
|
|
b8e643 |
--- a/src/engine.c
|
|
|
b8e643 |
+++ b/src/engine.c
|
|
|
b8e643 |
@@ -23,6 +23,7 @@ struct _IBusM17NEngine {
|
|
|
b8e643 |
IBusProperty *setup_prop;
|
|
|
b8e643 |
#endif /* HAVE_SETUP */
|
|
|
b8e643 |
IBusPropList *prop_list;
|
|
|
b8e643 |
+ IBusKeymap *us_keymap;
|
|
|
b8e643 |
};
|
|
|
b8e643 |
|
|
|
b8e643 |
struct _IBusM17NEngineClass {
|
|
|
b8e643 |
@@ -35,6 +36,7 @@ struct _IBusM17NEngineClass {
|
|
|
b8e643 |
gint preedit_underline;
|
|
|
b8e643 |
IBusPreeditFocusMode preedit_focus_mode;
|
|
|
b8e643 |
gint lookup_table_orientation;
|
|
|
b8e643 |
+ gboolean use_us_layout;
|
|
|
b8e643 |
|
|
|
b8e643 |
MInputMethod *im;
|
|
|
b8e643 |
};
|
|
|
b8e643 |
@@ -64,14 +66,6 @@ static void ibus_m17n_engine_focus_out (IBusEngine *engine);
|
|
|
b8e643 |
static void ibus_m17n_engine_reset (IBusEngine *engine);
|
|
|
b8e643 |
static void ibus_m17n_engine_enable (IBusEngine *engine);
|
|
|
b8e643 |
static void ibus_m17n_engine_disable (IBusEngine *engine);
|
|
|
b8e643 |
-static void ibus_engine_set_cursor_location (IBusEngine *engine,
|
|
|
b8e643 |
- gint x,
|
|
|
b8e643 |
- gint y,
|
|
|
b8e643 |
- gint w,
|
|
|
b8e643 |
- gint h);
|
|
|
b8e643 |
-static void ibus_m17n_engine_set_capabilities
|
|
|
b8e643 |
- (IBusEngine *engine,
|
|
|
b8e643 |
- guint caps);
|
|
|
b8e643 |
static void ibus_m17n_engine_page_up (IBusEngine *engine);
|
|
|
b8e643 |
static void ibus_m17n_engine_page_down (IBusEngine *engine);
|
|
|
b8e643 |
static void ibus_m17n_engine_cursor_up (IBusEngine *engine);
|
|
|
b8e643 |
@@ -80,12 +74,6 @@ static void ibus_m17n_engine_property_activate
|
|
|
b8e643 |
(IBusEngine *engine,
|
|
|
b8e643 |
const gchar *prop_name,
|
|
|
b8e643 |
guint prop_state);
|
|
|
b8e643 |
-static void ibus_m17n_engine_property_show
|
|
|
b8e643 |
- (IBusEngine *engine,
|
|
|
b8e643 |
- const gchar *prop_name);
|
|
|
b8e643 |
-static void ibus_m17n_engine_property_hide
|
|
|
b8e643 |
- (IBusEngine *engine,
|
|
|
b8e643 |
- const gchar *prop_name);
|
|
|
b8e643 |
|
|
|
b8e643 |
static void ibus_m17n_engine_commit_string
|
|
|
b8e643 |
(IBusM17NEngine *m17n,
|
|
|
b8e643 |
@@ -263,6 +251,7 @@ ibus_m17n_engine_class_init (IBusM17NEngineClass *klass)
|
|
|
b8e643 |
IBUS_ENGINE_PREEDIT_COMMIT :
|
|
|
b8e643 |
IBUS_ENGINE_PREEDIT_CLEAR;
|
|
|
b8e643 |
klass->lookup_table_orientation = IBUS_ORIENTATION_SYSTEM;
|
|
|
b8e643 |
+ klass->use_us_layout = FALSE;
|
|
|
b8e643 |
|
|
|
b8e643 |
ibus_m17n_engine_config_free (engine_config);
|
|
|
b8e643 |
|
|
|
b8e643 |
@@ -304,6 +293,14 @@ ibus_m17n_engine_class_init (IBusM17NEngineClass *klass)
|
|
|
b8e643 |
klass->lookup_table_orientation = g_variant_get_int32 (value);
|
|
|
b8e643 |
g_variant_unref (value);
|
|
|
b8e643 |
}
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ value = g_variant_lookup_value (values,
|
|
|
b8e643 |
+ "use_us_layout",
|
|
|
b8e643 |
+ G_VARIANT_TYPE_BOOLEAN);
|
|
|
b8e643 |
+ if (value != NULL) {
|
|
|
b8e643 |
+ klass->use_us_layout = g_variant_get_boolean (value);
|
|
|
b8e643 |
+ g_variant_unref (value);
|
|
|
b8e643 |
+ }
|
|
|
b8e643 |
g_variant_unref (values);
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
@@ -340,6 +337,8 @@ ibus_m17n_config_value_changed (IBusConfig *config,
|
|
|
b8e643 |
klass->preedit_underline = g_variant_get_int32 (value);
|
|
|
b8e643 |
} else if (g_strcmp0 (name, "lookup_table_orientation") == 0) {
|
|
|
b8e643 |
klass->lookup_table_orientation = g_variant_get_int32 (value);
|
|
|
b8e643 |
+ } else if (g_strcmp0 (name, "use_us_layout") == 0) {
|
|
|
b8e643 |
+ klass->use_us_layout = g_variant_get_boolean (value);
|
|
|
b8e643 |
}
|
|
|
b8e643 |
}
|
|
|
b8e643 |
}
|
|
|
b8e643 |
@@ -384,6 +383,7 @@ ibus_m17n_engine_init (IBusM17NEngine *m17n)
|
|
|
b8e643 |
m17n->table = ibus_lookup_table_new (9, 0, TRUE, TRUE);
|
|
|
b8e643 |
g_object_ref_sink (m17n->table);
|
|
|
b8e643 |
m17n->context = NULL;
|
|
|
b8e643 |
+ m17n->us_keymap = ibus_keymap_get ("us");
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
static GObject*
|
|
|
b8e643 |
@@ -476,6 +476,11 @@ ibus_m17n_engine_destroy (IBusM17NEngine *m17n)
|
|
|
b8e643 |
m17n->context = NULL;
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
+ if (m17n->us_keymap) {
|
|
|
b8e643 |
+ g_object_unref (m17n->us_keymap);
|
|
|
b8e643 |
+ m17n->us_keymap = NULL;
|
|
|
b8e643 |
+ }
|
|
|
b8e643 |
+
|
|
|
b8e643 |
IBUS_OBJECT_CLASS (parent_class)->destroy ((IBusObject *)m17n);
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
@@ -531,28 +536,25 @@ ibus_m17n_engine_commit_string (IBusM17NEngine *m17n,
|
|
|
b8e643 |
Since IBus engines are supposed to be cross-platform, the code
|
|
|
b8e643 |
should go into IBus core, instead of ibus-m17n. */
|
|
|
b8e643 |
static MSymbol
|
|
|
b8e643 |
-ibus_m17n_key_event_to_symbol (guint keycode,
|
|
|
b8e643 |
- guint keyval,
|
|
|
b8e643 |
- guint modifiers)
|
|
|
b8e643 |
+ibus_m17n_key_event_to_symbol (IBusM17NEngine *m17n,
|
|
|
b8e643 |
+ guint keycode,
|
|
|
b8e643 |
+ guint keyval,
|
|
|
b8e643 |
+ guint modifiers)
|
|
|
b8e643 |
{
|
|
|
b8e643 |
GString *keysym;
|
|
|
b8e643 |
MSymbol mkeysym = Mnil;
|
|
|
b8e643 |
guint mask = 0;
|
|
|
b8e643 |
- IBusKeymap *keymap;
|
|
|
b8e643 |
|
|
|
b8e643 |
if (keyval >= IBUS_Shift_L && keyval <= IBUS_Hyper_R) {
|
|
|
b8e643 |
return Mnil;
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
- /* Here, keyval is already translated by IBUS_MOD5_MASK. Obtain
|
|
|
b8e643 |
- the untranslated keyval from the underlying keymap and
|
|
|
b8e643 |
- represent the translated keyval as the form "G-
|
|
|
b8e643 |
- keyval>", which m17n-lib accepts. */
|
|
|
b8e643 |
+ /* If keyval is already translated by IBUS_MOD5_MASK. Try to
|
|
|
b8e643 |
+ obtain the untranslated keyval from the US keymap. */
|
|
|
b8e643 |
if (modifiers & IBUS_MOD5_MASK) {
|
|
|
b8e643 |
- keymap = ibus_keymap_get ("us");
|
|
|
b8e643 |
- keyval = ibus_keymap_lookup_keysym (keymap, keycode,
|
|
|
b8e643 |
+ keyval = ibus_keymap_lookup_keysym (m17n->us_keymap,
|
|
|
b8e643 |
+ keycode,
|
|
|
b8e643 |
modifiers & ~IBUS_MOD5_MASK);
|
|
|
b8e643 |
- g_object_unref (keymap);
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
keysym = g_string_new ("");
|
|
|
b8e643 |
@@ -656,15 +658,38 @@ ibus_m17n_engine_process_key_event (IBusEngine *engine,
|
|
|
b8e643 |
guint modifiers)
|
|
|
b8e643 |
{
|
|
|
b8e643 |
IBusM17NEngine *m17n = (IBusM17NEngine *) engine;
|
|
|
b8e643 |
+ IBusM17NEngineClass *klass =
|
|
|
b8e643 |
+ (IBusM17NEngineClass *) G_OBJECT_GET_CLASS (m17n);
|
|
|
b8e643 |
+ guint original_keyval = keyval;
|
|
|
b8e643 |
|
|
|
b8e643 |
if (modifiers & IBUS_RELEASE_MASK)
|
|
|
b8e643 |
return FALSE;
|
|
|
b8e643 |
- MSymbol m17n_key = ibus_m17n_key_event_to_symbol (keycode, keyval, modifiers);
|
|
|
b8e643 |
|
|
|
b8e643 |
- if (m17n_key == Mnil)
|
|
|
b8e643 |
- return FALSE;
|
|
|
b8e643 |
+ if (klass->use_us_layout) {
|
|
|
b8e643 |
+ keyval = ibus_keymap_lookup_keysym (m17n->us_keymap,
|
|
|
b8e643 |
+ keycode,
|
|
|
b8e643 |
+ modifiers);
|
|
|
b8e643 |
+ }
|
|
|
b8e643 |
|
|
|
b8e643 |
- return ibus_m17n_engine_process_key (m17n, m17n_key);
|
|
|
b8e643 |
+ MSymbol m17n_key = ibus_m17n_key_event_to_symbol (m17n,
|
|
|
b8e643 |
+ keycode,
|
|
|
b8e643 |
+ keyval,
|
|
|
b8e643 |
+ modifiers);
|
|
|
b8e643 |
+ if (m17n_key != Mnil && ibus_m17n_engine_process_key (m17n, m17n_key)) {
|
|
|
b8e643 |
+ return TRUE;
|
|
|
b8e643 |
+ }
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ /* If keyval is translated in US layout, send the new keyval and
|
|
|
b8e643 |
+ notify that the event is handled. */
|
|
|
b8e643 |
+ if (keyval != original_keyval && 0x20 <= keyval && keyval < 0x7F) {
|
|
|
b8e643 |
+ gchar buf[2];
|
|
|
b8e643 |
+ buf[0] = keyval;
|
|
|
b8e643 |
+ buf[1] = '\0';
|
|
|
b8e643 |
+ ibus_m17n_engine_commit_string (m17n, buf);
|
|
|
b8e643 |
+ return TRUE;
|
|
|
b8e643 |
+ }
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ return FALSE;
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
static void
|
|
|
b8e643 |
@@ -704,8 +729,6 @@ ibus_m17n_engine_reset (IBusEngine *engine)
|
|
|
b8e643 |
static void
|
|
|
b8e643 |
ibus_m17n_engine_enable (IBusEngine *engine)
|
|
|
b8e643 |
{
|
|
|
b8e643 |
- IBusM17NEngine *m17n = (IBusM17NEngine *) engine;
|
|
|
b8e643 |
-
|
|
|
b8e643 |
parent_class->enable (engine);
|
|
|
b8e643 |
|
|
|
b8e643 |
/* Issue a dummy ibus_engine_get_surrounding_text() call to tell
|
|
|
b8e643 |
@@ -716,8 +739,6 @@ ibus_m17n_engine_enable (IBusEngine *engine)
|
|
|
b8e643 |
static void
|
|
|
b8e643 |
ibus_m17n_engine_disable (IBusEngine *engine)
|
|
|
b8e643 |
{
|
|
|
b8e643 |
- IBusM17NEngine *m17n = (IBusM17NEngine *) engine;
|
|
|
b8e643 |
-
|
|
|
b8e643 |
ibus_m17n_engine_focus_out (engine);
|
|
|
b8e643 |
parent_class->disable (engine);
|
|
|
b8e643 |
}
|
|
|
b8e643 |
@@ -951,7 +972,9 @@ ibus_m17n_engine_callback (MInputContext *context,
|
|
|
b8e643 |
&anchor_pos);
|
|
|
b8e643 |
nchars = ibus_text_get_length (text);
|
|
|
b8e643 |
nbytes = g_utf8_offset_to_pointer (text->text, nchars) - text->text;
|
|
|
b8e643 |
- mt = mconv_decode_buffer (Mcoding_utf_8, text->text, nbytes);
|
|
|
b8e643 |
+ mt = mconv_decode_buffer (Mcoding_utf_8,
|
|
|
b8e643 |
+ (const unsigned char *) text->text,
|
|
|
b8e643 |
+ nbytes);
|
|
|
b8e643 |
g_object_unref (text);
|
|
|
b8e643 |
|
|
|
b8e643 |
len = (long) mplist_value (m17n->context->plist);
|
|
|
b8e643 |
diff --git a/src/ibus-m17n-preferences.ui b/src/ibus-m17n-preferences.ui
|
|
|
b8e643 |
index a46ab49..e85fb15 100644
|
|
|
b8e643 |
--- a/src/ibus-m17n-preferences.ui
|
|
|
b8e643 |
+++ b/src/ibus-m17n-preferences.ui
|
|
|
b8e643 |
@@ -1,8 +1,8 @@
|
|
|
b8e643 |
-
|
|
|
b8e643 |
+
|
|
|
b8e643 |
<interface>
|
|
|
b8e643 |
<requires lib="gtk+" version="2.14"/>
|
|
|
b8e643 |
|
|
|
b8e643 |
- <object class="GtkListStore" id="liststore_underline">
|
|
|
b8e643 |
+ <object class="GtkListStore" id="liststore_orientation">
|
|
|
b8e643 |
<columns>
|
|
|
b8e643 |
|
|
|
b8e643 |
<column type="gchararray"/>
|
|
|
b8e643 |
@@ -11,24 +11,20 @@
|
|
|
b8e643 |
</columns>
|
|
|
b8e643 |
<data>
|
|
|
b8e643 |
<row>
|
|
|
b8e643 |
- Single
|
|
|
b8e643 |
- 1
|
|
|
b8e643 |
- </row>
|
|
|
b8e643 |
- <row>
|
|
|
b8e643 |
- Double
|
|
|
b8e643 |
+ System
|
|
|
b8e643 |
2
|
|
|
b8e643 |
</row>
|
|
|
b8e643 |
<row>
|
|
|
b8e643 |
- Low
|
|
|
b8e643 |
- 3
|
|
|
b8e643 |
+ Vertical
|
|
|
b8e643 |
+ 1
|
|
|
b8e643 |
</row>
|
|
|
b8e643 |
<row>
|
|
|
b8e643 |
- None
|
|
|
b8e643 |
+ Horizontal
|
|
|
b8e643 |
0
|
|
|
b8e643 |
</row>
|
|
|
b8e643 |
</data>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
- <object class="GtkListStore" id="liststore_orientation">
|
|
|
b8e643 |
+ <object class="GtkListStore" id="liststore_underline">
|
|
|
b8e643 |
<columns>
|
|
|
b8e643 |
|
|
|
b8e643 |
<column type="gchararray"/>
|
|
|
b8e643 |
@@ -37,32 +33,67 @@
|
|
|
b8e643 |
</columns>
|
|
|
b8e643 |
<data>
|
|
|
b8e643 |
<row>
|
|
|
b8e643 |
- System
|
|
|
b8e643 |
+ Single
|
|
|
b8e643 |
+ 1
|
|
|
b8e643 |
+ </row>
|
|
|
b8e643 |
+ <row>
|
|
|
b8e643 |
+ Double
|
|
|
b8e643 |
2
|
|
|
b8e643 |
</row>
|
|
|
b8e643 |
<row>
|
|
|
b8e643 |
- Vertical
|
|
|
b8e643 |
- 1
|
|
|
b8e643 |
+ Low
|
|
|
b8e643 |
+ 3
|
|
|
b8e643 |
</row>
|
|
|
b8e643 |
<row>
|
|
|
b8e643 |
- Horizontal
|
|
|
b8e643 |
+ None
|
|
|
b8e643 |
0
|
|
|
b8e643 |
</row>
|
|
|
b8e643 |
</data>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
<object class="GtkDialog" id="dialog">
|
|
|
b8e643 |
<property name="width_request">400</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="border_width">5</property>
|
|
|
b8e643 |
<property name="title" translatable="yes">Preferences</property>
|
|
|
b8e643 |
<property name="window_position">center-always</property>
|
|
|
b8e643 |
<property name="icon_name">gtk-preferences</property>
|
|
|
b8e643 |
<property name="type_hint">normal</property>
|
|
|
b8e643 |
- <property name="has_separator">False</property>
|
|
|
b8e643 |
<child internal-child="vbox">
|
|
|
b8e643 |
<object class="GtkVBox" id="dialog-vbox1">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
- <property name="orientation">vertical</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="spacing">2</property>
|
|
|
b8e643 |
+ <child internal-child="action_area">
|
|
|
b8e643 |
+ <object class="GtkHButtonBox" id="dialog-action_area1">
|
|
|
b8e643 |
+ <property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
+ <property name="layout_style">end</property>
|
|
|
b8e643 |
+ <child>
|
|
|
b8e643 |
+ <object class="GtkButton" id="buttonClose">
|
|
|
b8e643 |
+ <property name="label">gtk-close</property>
|
|
|
b8e643 |
+ <property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">True</property>
|
|
|
b8e643 |
+ <property name="has_focus">True</property>
|
|
|
b8e643 |
+ <property name="is_focus">True</property>
|
|
|
b8e643 |
+ <property name="can_default">True</property>
|
|
|
b8e643 |
+ <property name="has_default">True</property>
|
|
|
b8e643 |
+ <property name="receives_default">True</property>
|
|
|
b8e643 |
+ <property name="use_stock">True</property>
|
|
|
b8e643 |
+ </object>
|
|
|
b8e643 |
+ <packing>
|
|
|
b8e643 |
+ <property name="expand">False</property>
|
|
|
b8e643 |
+ <property name="fill">False</property>
|
|
|
b8e643 |
+ <property name="position">0</property>
|
|
|
b8e643 |
+ </packing>
|
|
|
b8e643 |
+ </child>
|
|
|
b8e643 |
+ </object>
|
|
|
b8e643 |
+ <packing>
|
|
|
b8e643 |
+ <property name="expand">False</property>
|
|
|
b8e643 |
+ <property name="fill">True</property>
|
|
|
b8e643 |
+ <property name="pack_type">end</property>
|
|
|
b8e643 |
+ <property name="position">0</property>
|
|
|
b8e643 |
+ </packing>
|
|
|
b8e643 |
+ </child>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkNotebook" id="pages">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
@@ -71,6 +102,7 @@
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkAlignment" id="pageGeneral">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="top_padding">12</property>
|
|
|
b8e643 |
<property name="bottom_padding">12</property>
|
|
|
b8e643 |
<property name="left_padding">12</property>
|
|
|
b8e643 |
@@ -78,20 +110,23 @@
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkVBox" id="vbox1">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
- <property name="orientation">vertical</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkFrame" id="frame1">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="label_xalign">0</property>
|
|
|
b8e643 |
<property name="shadow_type">none</property>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkAlignment" id="alignment1">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="top_padding">6</property>
|
|
|
b8e643 |
<property name="left_padding">12</property>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkTable" id="table1">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="n_rows">3</property>
|
|
|
b8e643 |
<property name="n_columns">2</property>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
@@ -123,6 +158,7 @@
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkComboBox" id="combobox_underline">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="model">liststore_underline</property>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
<packing>
|
|
|
b8e643 |
@@ -157,6 +193,7 @@
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkLabel" id="label3">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="label" translatable="yes">Underline:</property>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
<packing>
|
|
|
b8e643 |
@@ -171,31 +208,39 @@
|
|
|
b8e643 |
<child type="label">
|
|
|
b8e643 |
<object class="GtkLabel" id="label2">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="label" translatable="yes"><b>Pre-edit Appearance</b></property>
|
|
|
b8e643 |
<property name="use_markup">True</property>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
</child>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
<packing>
|
|
|
b8e643 |
+ <property name="expand">True</property>
|
|
|
b8e643 |
+ <property name="fill">True</property>
|
|
|
b8e643 |
<property name="position">0</property>
|
|
|
b8e643 |
</packing>
|
|
|
b8e643 |
</child>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkFrame" id="frame2">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="label_xalign">0</property>
|
|
|
b8e643 |
<property name="shadow_type">none</property>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkAlignment" id="alignment2">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="left_padding">12</property>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkTable" id="table2">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
+ <property name="n_rows">2</property>
|
|
|
b8e643 |
<property name="n_columns">2</property>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkLabel" id="label9">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="yalign">0.46000000834465027</property>
|
|
|
b8e643 |
<property name="label" translatable="yes">Lookup Table Orientation: </property>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
@@ -203,6 +248,7 @@
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkComboBox" id="combobox_orientation">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="model">liststore_orientation</property>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
<packing>
|
|
|
b8e643 |
@@ -210,6 +256,20 @@
|
|
|
b8e643 |
<property name="right_attach">2</property>
|
|
|
b8e643 |
</packing>
|
|
|
b8e643 |
</child>
|
|
|
b8e643 |
+ <child>
|
|
|
b8e643 |
+ <object class="GtkCheckButton" id="checkbutton_use_us_layout">
|
|
|
b8e643 |
+ <property name="label" translatable="yes">Use US keyboard layout</property>
|
|
|
b8e643 |
+ <property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">True</property>
|
|
|
b8e643 |
+ <property name="receives_default">False</property>
|
|
|
b8e643 |
+ <property name="draw_indicator">True</property>
|
|
|
b8e643 |
+ </object>
|
|
|
b8e643 |
+ <packing>
|
|
|
b8e643 |
+ <property name="right_attach">2</property>
|
|
|
b8e643 |
+ <property name="top_attach">1</property>
|
|
|
b8e643 |
+ <property name="bottom_attach">2</property>
|
|
|
b8e643 |
+ </packing>
|
|
|
b8e643 |
+ </child>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
</child>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
@@ -217,12 +277,15 @@
|
|
|
b8e643 |
<child type="label">
|
|
|
b8e643 |
<object class="GtkLabel" id="label8">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="label" translatable="yes"><b>Other</b></property>
|
|
|
b8e643 |
<property name="use_markup">True</property>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
</child>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
<packing>
|
|
|
b8e643 |
+ <property name="expand">True</property>
|
|
|
b8e643 |
+ <property name="fill">True</property>
|
|
|
b8e643 |
<property name="position">1</property>
|
|
|
b8e643 |
</packing>
|
|
|
b8e643 |
</child>
|
|
|
b8e643 |
@@ -233,6 +296,7 @@
|
|
|
b8e643 |
<child type="tab">
|
|
|
b8e643 |
<object class="GtkLabel" id="label6">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="label" translatable="yes">General</property>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
<packing>
|
|
|
b8e643 |
@@ -242,6 +306,7 @@
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkAlignment" id="pageAdvanced">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="top_padding">12</property>
|
|
|
b8e643 |
<property name="bottom_padding">12</property>
|
|
|
b8e643 |
<property name="left_padding">12</property>
|
|
|
b8e643 |
@@ -249,11 +314,13 @@
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkFrame" id="frame4">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="label_xalign">0</property>
|
|
|
b8e643 |
<property name="shadow_type">none</property>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
<object class="GtkAlignment" id="alignment7">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="top_padding">6</property>
|
|
|
b8e643 |
<property name="left_padding">12</property>
|
|
|
b8e643 |
<child>
|
|
|
b8e643 |
@@ -277,6 +344,7 @@
|
|
|
b8e643 |
<child type="label">
|
|
|
b8e643 |
<object class="GtkLabel" id="label7">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="label" translatable="yes"><b>m17n-lib Configuration</b></property>
|
|
|
b8e643 |
<property name="use_markup">True</property>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
@@ -291,6 +359,7 @@
|
|
|
b8e643 |
<child type="tab">
|
|
|
b8e643 |
<object class="GtkLabel" id="label1">
|
|
|
b8e643 |
<property name="visible">True</property>
|
|
|
b8e643 |
+ <property name="can_focus">False</property>
|
|
|
b8e643 |
<property name="label" translatable="yes">Advanced</property>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
<packing>
|
|
|
b8e643 |
@@ -300,38 +369,11 @@
|
|
|
b8e643 |
</child>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
<packing>
|
|
|
b8e643 |
+ <property name="expand">True</property>
|
|
|
b8e643 |
+ <property name="fill">True</property>
|
|
|
b8e643 |
<property name="position">1</property>
|
|
|
b8e643 |
</packing>
|
|
|
b8e643 |
</child>
|
|
|
b8e643 |
- <child internal-child="action_area">
|
|
|
b8e643 |
- <object class="GtkHButtonBox" id="dialog-action_area1">
|
|
|
b8e643 |
- <property name="visible">True</property>
|
|
|
b8e643 |
- <property name="layout_style">end</property>
|
|
|
b8e643 |
- <child>
|
|
|
b8e643 |
- <object class="GtkButton" id="buttonClose">
|
|
|
b8e643 |
- <property name="label">gtk-close</property>
|
|
|
b8e643 |
- <property name="visible">True</property>
|
|
|
b8e643 |
- <property name="can_focus">True</property>
|
|
|
b8e643 |
- <property name="has_focus">True</property>
|
|
|
b8e643 |
- <property name="is_focus">True</property>
|
|
|
b8e643 |
- <property name="can_default">True</property>
|
|
|
b8e643 |
- <property name="has_default">True</property>
|
|
|
b8e643 |
- <property name="receives_default">True</property>
|
|
|
b8e643 |
- <property name="use_stock">True</property>
|
|
|
b8e643 |
- </object>
|
|
|
b8e643 |
- <packing>
|
|
|
b8e643 |
- <property name="expand">False</property>
|
|
|
b8e643 |
- <property name="fill">False</property>
|
|
|
b8e643 |
- <property name="position">0</property>
|
|
|
b8e643 |
- </packing>
|
|
|
b8e643 |
- </child>
|
|
|
b8e643 |
- </object>
|
|
|
b8e643 |
- <packing>
|
|
|
b8e643 |
- <property name="expand">False</property>
|
|
|
b8e643 |
- <property name="pack_type">end</property>
|
|
|
b8e643 |
- <property name="position">0</property>
|
|
|
b8e643 |
- </packing>
|
|
|
b8e643 |
- </child>
|
|
|
b8e643 |
</object>
|
|
|
b8e643 |
</child>
|
|
|
b8e643 |
<action-widgets>
|
|
|
b8e643 |
diff --git a/src/ibus-setup-m17n.desktop.in.in b/src/ibus-setup-m17n.desktop.in.in
|
|
|
b8e643 |
new file mode 100644
|
|
|
b8e643 |
index 0000000..a380cb3
|
|
|
b8e643 |
--- /dev/null
|
|
|
b8e643 |
+++ b/src/ibus-setup-m17n.desktop.in.in
|
|
|
b8e643 |
@@ -0,0 +1,7 @@
|
|
|
b8e643 |
+[Desktop Entry]
|
|
|
b8e643 |
+_Name=IBus M17N Setup
|
|
|
b8e643 |
+_Comment=Set up IBus M17N engine
|
|
|
b8e643 |
+Exec=@libexecdir@/ibus-setup-m17n
|
|
|
b8e643 |
+NoDisplay=true
|
|
|
b8e643 |
+Type=Application
|
|
|
b8e643 |
+StartupNotify=true
|
|
|
b8e643 |
diff --git a/src/m17n.xml.in b/src/m17n.xml.in
|
|
|
b8e643 |
new file mode 100644
|
|
|
b8e643 |
index 0000000..fc215ab
|
|
|
b8e643 |
--- /dev/null
|
|
|
b8e643 |
+++ b/src/m17n.xml.in
|
|
|
b8e643 |
@@ -0,0 +1,18 @@
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+<component>
|
|
|
b8e643 |
+ <name>org.freedesktop.IBus.M17N</name>
|
|
|
b8e643 |
+ <description>M17N Component</description>
|
|
|
b8e643 |
+ <exec>@libexecdir@/ibus-engine-m17n --ibus</exec>
|
|
|
b8e643 |
+ <version>@VERSION@</version>
|
|
|
b8e643 |
+ <author>Peng Huang <shawn.p.huang@gmail.com></author>
|
|
|
b8e643 |
+ <license>GPL</license>
|
|
|
b8e643 |
+ <homepage>http://code.google.com/p/ibus</homepage>
|
|
|
b8e643 |
+ <textdomain>ibus-m17n</textdomain>
|
|
|
b8e643 |
+ <observed-paths>
|
|
|
b8e643 |
+ <path>/usr/share/m17n/</path>
|
|
|
b8e643 |
+ <path>@pkgdatadir@/default.xml</path>
|
|
|
b8e643 |
+ <path>~/.m17n.d/</path>
|
|
|
b8e643 |
+ </observed-paths>
|
|
|
b8e643 |
+ <engines exec="@libexecdir@/ibus-engine-m17n --xml" />
|
|
|
b8e643 |
+</component>
|
|
|
b8e643 |
diff --git a/src/m17n.xml.in.in b/src/m17n.xml.in.in
|
|
|
b8e643 |
deleted file mode 100644
|
|
|
b8e643 |
index 2f18ad5..0000000
|
|
|
b8e643 |
--- a/src/m17n.xml.in.in
|
|
|
b8e643 |
+++ /dev/null
|
|
|
b8e643 |
@@ -1,18 +0,0 @@
|
|
|
b8e643 |
-
|
|
|
b8e643 |
-
|
|
|
b8e643 |
-<component>
|
|
|
b8e643 |
- <name>org.freedesktop.IBus.M17N</name>
|
|
|
b8e643 |
- <description>M17N Component</description>
|
|
|
b8e643 |
- <exec>${libexecdir}/ibus-engine-m17n --ibus</exec>
|
|
|
b8e643 |
- <version>@VERSION@</version>
|
|
|
b8e643 |
- <author>Peng Huang <shawn.p.huang@gmail.com></author>
|
|
|
b8e643 |
- <license>GPL</license>
|
|
|
b8e643 |
- <homepage>http://code.google.com/p/ibus</homepage>
|
|
|
b8e643 |
- <textdomain>ibus-m17n</textdomain>
|
|
|
b8e643 |
- <observed-paths>
|
|
|
b8e643 |
- <path>/usr/share/m17n/</path>
|
|
|
b8e643 |
- <path>${setupdir}/default.xml</path>
|
|
|
b8e643 |
- <path>~/.m17n.d/</path>
|
|
|
b8e643 |
- </observed-paths>
|
|
|
b8e643 |
- <engines exec=\"${libexecdir}/ibus-engine-m17n --xml\" />
|
|
|
b8e643 |
-</component>
|
|
|
b8e643 |
diff --git a/src/m17nutil.c b/src/m17nutil.c
|
|
|
b8e643 |
index 51026b2..d82b855 100644
|
|
|
b8e643 |
--- a/src/m17nutil.c
|
|
|
b8e643 |
+++ b/src/m17nutil.c
|
|
|
b8e643 |
@@ -11,7 +11,7 @@
|
|
|
b8e643 |
|
|
|
b8e643 |
static MConverter *utf8_converter = NULL;
|
|
|
b8e643 |
|
|
|
b8e643 |
-#define DEFAULT_XML (SETUPDIR "/default.xml")
|
|
|
b8e643 |
+#define DEFAULT_XML (PKGDATADIR "/default.xml")
|
|
|
b8e643 |
|
|
|
b8e643 |
typedef enum {
|
|
|
b8e643 |
ENGINE_CONFIG_RANK_MASK = 1 << 0,
|
|
|
b8e643 |
@@ -53,7 +53,9 @@ ibus_m17n_mtext_to_utf8 (MText *text)
|
|
|
b8e643 |
bufsize = (mtext_len (text) + 1) * 6;
|
|
|
b8e643 |
buf = (gchar *) g_malloc (bufsize);
|
|
|
b8e643 |
|
|
|
b8e643 |
- mconv_rebind_buffer (utf8_converter, buf, bufsize);
|
|
|
b8e643 |
+ mconv_rebind_buffer (utf8_converter,
|
|
|
b8e643 |
+ (const unsigned char *) buf,
|
|
|
b8e643 |
+ bufsize);
|
|
|
b8e643 |
mconv_encode (utf8_converter, text);
|
|
|
b8e643 |
|
|
|
b8e643 |
buf [utf8_converter->nbytes] = 0;
|
|
|
b8e643 |
@@ -76,7 +78,9 @@ ibus_m17n_mtext_to_ucs4 (MText *text, glong *nchars)
|
|
|
b8e643 |
bufsize = (mtext_len (text) + 1) * 6;
|
|
|
b8e643 |
buf = (gchar *) g_malloc (bufsize);
|
|
|
b8e643 |
|
|
|
b8e643 |
- mconv_rebind_buffer (utf8_converter, buf, bufsize);
|
|
|
b8e643 |
+ mconv_rebind_buffer (utf8_converter,
|
|
|
b8e643 |
+ (const unsigned char *) buf,
|
|
|
b8e643 |
+ bufsize);
|
|
|
b8e643 |
if (mconv_encode (utf8_converter, text) < 0) {
|
|
|
b8e643 |
g_free (buf);
|
|
|
b8e643 |
return NULL;
|
|
|
b8e643 |
@@ -133,7 +137,7 @@ ibus_m17n_engine_new (MSymbol lang,
|
|
|
b8e643 |
"language", msymbol_name (lang),
|
|
|
b8e643 |
"license", "GPL",
|
|
|
b8e643 |
"icon", engine_icon ? engine_icon : "",
|
|
|
b8e643 |
- "layout", "us",
|
|
|
b8e643 |
+ "layout", "default",
|
|
|
b8e643 |
"rank", config->rank,
|
|
|
b8e643 |
"symbol", config->symbol ? config->symbol : "",
|
|
|
b8e643 |
"setup", engine_setup,
|
|
|
b8e643 |
@@ -202,17 +206,12 @@ ibus_m17n_list_engines (void)
|
|
|
b8e643 |
if (l) {
|
|
|
b8e643 |
/* check candidates encoding */
|
|
|
b8e643 |
MPlist *sl;
|
|
|
b8e643 |
- MSymbol varname;
|
|
|
b8e643 |
- MText *vardesc;
|
|
|
b8e643 |
- MSymbol varunknown;
|
|
|
b8e643 |
MSymbol varcharset;
|
|
|
b8e643 |
|
|
|
b8e643 |
sl = mplist_value (l);
|
|
|
b8e643 |
- varname = mplist_value (sl);
|
|
|
b8e643 |
+ /* L = (VAR-NAME DESCRIPTION 'nil' VALUE) */
|
|
|
b8e643 |
sl = mplist_next (sl);
|
|
|
b8e643 |
- vardesc = mplist_value (sl);
|
|
|
b8e643 |
sl = mplist_next (sl);
|
|
|
b8e643 |
- varunknown = mplist_value (sl);
|
|
|
b8e643 |
sl = mplist_next (sl);
|
|
|
b8e643 |
varcharset = mplist_value (sl);
|
|
|
b8e643 |
|
|
|
b8e643 |
@@ -336,17 +335,24 @@ ibus_m17n_get_component (void)
|
|
|
b8e643 |
GList *engines, *p;
|
|
|
b8e643 |
IBusComponent *component;
|
|
|
b8e643 |
XMLNode *node;
|
|
|
b8e643 |
+ const gchar *pkgdatadir;
|
|
|
b8e643 |
+ gchar *default_xml;
|
|
|
b8e643 |
|
|
|
b8e643 |
component = ibus_component_new ("org.freedesktop.IBus.M17n",
|
|
|
b8e643 |
N_("M17N"),
|
|
|
b8e643 |
- "0.1.0",
|
|
|
b8e643 |
+ PACKAGE_VERSION,
|
|
|
b8e643 |
"GPL",
|
|
|
b8e643 |
"Peng Huang <shawn.p.huang@gmail.com>",
|
|
|
b8e643 |
"http://code.google.com/p/ibus/",
|
|
|
b8e643 |
"",
|
|
|
b8e643 |
- "ibus-m17n");
|
|
|
b8e643 |
+ PACKAGE_NAME);
|
|
|
b8e643 |
|
|
|
b8e643 |
- node = ibus_xml_parse_file (DEFAULT_XML);
|
|
|
b8e643 |
+ pkgdatadir = g_getenv ("IBUS_M17N_PKGDATADIR");
|
|
|
b8e643 |
+ if (pkgdatadir == NULL)
|
|
|
b8e643 |
+ pkgdatadir = PKGDATADIR;
|
|
|
b8e643 |
+ default_xml = g_build_filename (pkgdatadir, "default.xml", NULL);
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ node = ibus_xml_parse_file (default_xml);
|
|
|
b8e643 |
if (node && g_strcmp0 (node->name, "engines") == 0) {
|
|
|
b8e643 |
for (p = node->sub_nodes; p != NULL; p = p->next) {
|
|
|
b8e643 |
XMLNode *sub_node = p->data;
|
|
|
b8e643 |
@@ -367,10 +373,12 @@ ibus_m17n_get_component (void)
|
|
|
b8e643 |
}
|
|
|
b8e643 |
config_list = g_slist_reverse (config_list);
|
|
|
b8e643 |
} else
|
|
|
b8e643 |
- g_warning ("failed to parse %s", DEFAULT_XML);
|
|
|
b8e643 |
+ g_warning ("failed to parse %s", default_xml);
|
|
|
b8e643 |
if (node)
|
|
|
b8e643 |
ibus_xml_free (node);
|
|
|
b8e643 |
|
|
|
b8e643 |
+ g_free (default_xml);
|
|
|
b8e643 |
+
|
|
|
b8e643 |
engines = ibus_m17n_list_engines ();
|
|
|
b8e643 |
|
|
|
b8e643 |
for (p = engines; p != NULL; p = p->next)
|
|
|
b8e643 |
diff --git a/src/setup.c b/src/setup.c
|
|
|
b8e643 |
index cc5cb09..513fabf 100644
|
|
|
b8e643 |
--- a/src/setup.c
|
|
|
b8e643 |
+++ b/src/setup.c
|
|
|
b8e643 |
@@ -25,6 +25,7 @@ struct _SetupDialog {
|
|
|
b8e643 |
GtkWidget *colorbutton_foreground;
|
|
|
b8e643 |
GtkWidget *checkbutton_background;
|
|
|
b8e643 |
GtkWidget *colorbutton_background;
|
|
|
b8e643 |
+ GtkWidget *checkbutton_use_us_layout;
|
|
|
b8e643 |
GtkWidget *treeview;
|
|
|
b8e643 |
GtkListStore *store;
|
|
|
b8e643 |
|
|
|
b8e643 |
@@ -73,7 +74,9 @@ parse_m17n_value (MPlist *plist, gchar *text)
|
|
|
b8e643 |
if (mplist_key (plist) == Mtext) {
|
|
|
b8e643 |
MText *mtext;
|
|
|
b8e643 |
|
|
|
b8e643 |
- mtext = mtext_from_data (text, strlen (text), MTEXT_FORMAT_UTF_8);
|
|
|
b8e643 |
+ mtext = mconv_decode_buffer (Mcoding_utf_8,
|
|
|
b8e643 |
+ (const unsigned char *) text,
|
|
|
b8e643 |
+ strlen (text));
|
|
|
b8e643 |
value = mplist ();
|
|
|
b8e643 |
mplist_add (value, Mtext, mtext);
|
|
|
b8e643 |
return value;
|
|
|
b8e643 |
@@ -288,6 +291,25 @@ load_choice (GVariant *values,
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
static void
|
|
|
b8e643 |
+load_toggle (GVariant *values,
|
|
|
b8e643 |
+ GtkToggleButton *togglebutton,
|
|
|
b8e643 |
+ const gchar *name,
|
|
|
b8e643 |
+ gboolean defval)
|
|
|
b8e643 |
+{
|
|
|
b8e643 |
+ GVariant *value;
|
|
|
b8e643 |
+ gboolean bvalue;
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ bvalue = defval;
|
|
|
b8e643 |
+ value = g_variant_lookup_value (values, name, G_VARIANT_TYPE_BOOLEAN);
|
|
|
b8e643 |
+ if (value != NULL) {
|
|
|
b8e643 |
+ bvalue = g_variant_get_boolean (value);
|
|
|
b8e643 |
+ g_variant_unref (value);
|
|
|
b8e643 |
+ }
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ gtk_toggle_button_set_active (togglebutton, bvalue);
|
|
|
b8e643 |
+}
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+static void
|
|
|
b8e643 |
setup_dialog_load_config (SetupDialog *dialog)
|
|
|
b8e643 |
{
|
|
|
b8e643 |
GVariant *values;
|
|
|
b8e643 |
@@ -336,6 +358,12 @@ setup_dialog_load_config (SetupDialog *dialog)
|
|
|
b8e643 |
"lookup_table_orientation",
|
|
|
b8e643 |
IBUS_ORIENTATION_SYSTEM);
|
|
|
b8e643 |
|
|
|
b8e643 |
+ /* Use US keyboard layout */
|
|
|
b8e643 |
+ load_toggle (values,
|
|
|
b8e643 |
+ GTK_TOGGLE_BUTTON (dialog->checkbutton_use_us_layout),
|
|
|
b8e643 |
+ "use_us_layout",
|
|
|
b8e643 |
+ FALSE);
|
|
|
b8e643 |
+
|
|
|
b8e643 |
/* Advanced -> m17n-lib configuration */
|
|
|
b8e643 |
dialog->store = gtk_list_store_new (NUM_COLS,
|
|
|
b8e643 |
G_TYPE_STRING,
|
|
|
b8e643 |
@@ -372,10 +400,10 @@ setup_dialog_load_config (SetupDialog *dialog)
|
|
|
b8e643 |
static gchar *
|
|
|
b8e643 |
_gdk_color_to_string (GdkColor *color)
|
|
|
b8e643 |
{
|
|
|
b8e643 |
- g_strdup_printf ("#%02X%02X%02X",
|
|
|
b8e643 |
- (color->red & 0xFF00) >> 8,
|
|
|
b8e643 |
- (color->green & 0xFF00) >> 8,
|
|
|
b8e643 |
- (color->blue & 0xFF00) >> 8);
|
|
|
b8e643 |
+ return g_strdup_printf ("#%02X%02X%02X",
|
|
|
b8e643 |
+ (color->red & 0xFF00) >> 8,
|
|
|
b8e643 |
+ (color->green & 0xFF00) >> 8,
|
|
|
b8e643 |
+ (color->blue & 0xFF00) >> 8);
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
static void
|
|
|
b8e643 |
@@ -418,6 +446,20 @@ save_choice (SetupDialog *dialog,
|
|
|
b8e643 |
ibus_config_set_value (dialog->config, dialog->section, name, value);
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
+static void
|
|
|
b8e643 |
+save_toggle (SetupDialog *dialog,
|
|
|
b8e643 |
+ GtkToggleButton *togglebutton,
|
|
|
b8e643 |
+ const gchar *name)
|
|
|
b8e643 |
+{
|
|
|
b8e643 |
+ GVariant *value;
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ value = g_variant_new_boolean (gtk_toggle_button_get_active (togglebutton));
|
|
|
b8e643 |
+ ibus_config_set_value (dialog->config,
|
|
|
b8e643 |
+ dialog->section,
|
|
|
b8e643 |
+ name,
|
|
|
b8e643 |
+ value);
|
|
|
b8e643 |
+}
|
|
|
b8e643 |
+
|
|
|
b8e643 |
static gboolean
|
|
|
b8e643 |
save_m17n_options (SetupDialog *dialog)
|
|
|
b8e643 |
{
|
|
|
b8e643 |
@@ -428,7 +470,7 @@ save_m17n_options (SetupDialog *dialog)
|
|
|
b8e643 |
gboolean retval = TRUE;
|
|
|
b8e643 |
|
|
|
b8e643 |
if (!gtk_tree_model_get_iter_first (model, &iter))
|
|
|
b8e643 |
- return;
|
|
|
b8e643 |
+ return FALSE;
|
|
|
b8e643 |
|
|
|
b8e643 |
do {
|
|
|
b8e643 |
gtk_tree_model_get (model, &iter,
|
|
|
b8e643 |
@@ -499,6 +541,9 @@ setup_dialog_save_config (SetupDialog *dialog)
|
|
|
b8e643 |
save_choice (dialog,
|
|
|
b8e643 |
GTK_COMBO_BOX (dialog->combobox_orientation),
|
|
|
b8e643 |
"lookup_table_orientation");
|
|
|
b8e643 |
+ save_toggle (dialog,
|
|
|
b8e643 |
+ GTK_TOGGLE_BUTTON (dialog->checkbutton_use_us_layout),
|
|
|
b8e643 |
+ "use_us_layout");
|
|
|
b8e643 |
save_m17n_options (dialog);
|
|
|
b8e643 |
}
|
|
|
b8e643 |
|
|
|
b8e643 |
@@ -525,7 +570,7 @@ setup_dialog_new (IBusConfig *config,
|
|
|
b8e643 |
|
|
|
b8e643 |
error = NULL;
|
|
|
b8e643 |
if (gtk_builder_add_from_file (builder,
|
|
|
b8e643 |
- SETUPDIR "/ibus-m17n-preferences.ui",
|
|
|
b8e643 |
+ PKGDATADIR "setup/ibus-m17n-preferences.ui",
|
|
|
b8e643 |
&error) == 0) {
|
|
|
b8e643 |
g_warning ("can't read ibus-m17n-preferences.ui: %s",
|
|
|
b8e643 |
error->message);
|
|
|
b8e643 |
@@ -547,6 +592,8 @@ setup_dialog_new (IBusConfig *config,
|
|
|
b8e643 |
dialog->combobox_underline = GTK_WIDGET (object);
|
|
|
b8e643 |
object = gtk_builder_get_object (builder, "combobox_orientation");
|
|
|
b8e643 |
dialog->combobox_orientation = GTK_WIDGET (object);
|
|
|
b8e643 |
+ object = gtk_builder_get_object (builder, "checkbutton_use_us_layout");
|
|
|
b8e643 |
+ dialog->checkbutton_use_us_layout = GTK_WIDGET (object);
|
|
|
b8e643 |
object = gtk_builder_get_object (builder, "treeview_mim_config");
|
|
|
b8e643 |
dialog->treeview = GTK_WIDGET (object);
|
|
|
b8e643 |
|
|
|
b8e643 |
@@ -567,9 +614,8 @@ start (const gchar *engine_name)
|
|
|
b8e643 |
{
|
|
|
b8e643 |
IBusBus *bus;
|
|
|
b8e643 |
IBusConfig *config;
|
|
|
b8e643 |
- gchar **strv, *section;
|
|
|
b8e643 |
+ gchar **strv;
|
|
|
b8e643 |
SetupDialog *dialog;
|
|
|
b8e643 |
- GObject *object;
|
|
|
b8e643 |
|
|
|
b8e643 |
ibus_init ();
|
|
|
b8e643 |
ibus_m17n_init_common ();
|
|
|
b8e643 |
@@ -610,6 +656,11 @@ main (gint argc, gchar **argv)
|
|
|
b8e643 |
g_option_context_free (context);
|
|
|
b8e643 |
|
|
|
b8e643 |
gtk_init (&argc, &argv);
|
|
|
b8e643 |
+
|
|
|
b8e643 |
+ if (!opt_name) {
|
|
|
b8e643 |
+ opt_name = (gchar *) g_getenv ("IBUS_ENGINE_NAME");
|
|
|
b8e643 |
+ }
|
|
|
b8e643 |
+
|
|
|
b8e643 |
if (!opt_name) {
|
|
|
b8e643 |
fprintf (stderr, "can't determine IBus engine name; use --name\n");
|
|
|
b8e643 |
exit (1);
|