summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/make-check.yml2
-rw-r--r--NEWS33
-rw-r--r--configure.ac35
-rw-r--r--data/com.github.libpinyin.ibus-libpinyin.gschema.xml24
-rw-r--r--data/icons/Makefile.am1
-rw-r--r--data/icons/lua-converter.svg229
-rw-r--r--data/wordlist2
-rw-r--r--lua/lua-ext-console.c4
-rw-r--r--lua/lua-plugin-init.c13
-rw-r--r--lua/lua-plugin.c10
-rw-r--r--po/LINGUAS1
-rw-r--r--po/POTFILES.in1
-rw-r--r--po/ca.po414
-rw-r--r--po/cs.po317
-rw-r--r--po/de.po322
-rw-r--r--po/el.po774
-rw-r--r--po/es.po354
-rw-r--r--po/fr.po321
-rw-r--r--po/ibus-libpinyin.pot312
-rw-r--r--po/ka.po477
-rw-r--r--po/pt_BR.po310
-rw-r--r--po/ru.po316
-rw-r--r--po/si.po310
-rw-r--r--po/uk.po324
-rw-r--r--po/zh_CN.po320
-rw-r--r--po/zh_HK.po315
-rw-r--r--po/zh_TW.po315
-rw-r--r--setup/Makefile.am1
-rw-r--r--setup/enginefile.py92
-rw-r--r--setup/ibus-libpinyin-preferences.ui166
-rw-r--r--setup/main2.py45
-rw-r--r--src/Makefile.am38
-rw-r--r--src/PYConfig.cc4
-rw-r--r--src/PYConfig.h11
-rw-r--r--src/PYEnglishDatabase.cc7
-rw-r--r--src/PYEnglishDatabase.h2
-rw-r--r--src/PYEnglishEditor.cc19
-rw-r--r--src/PYEnglishEditor.h2
-rw-r--r--src/PYExtEditor.cc15
-rw-r--r--src/PYLibPinyin.cc59
-rw-r--r--src/PYLibPinyin.h4
-rw-r--r--src/PYMain.cc86
-rw-r--r--src/PYPBopomofoEditor.cc2
-rw-r--r--src/PYPCloudCandidates.cc43
-rw-r--r--src/PYPConfig.cc46
-rw-r--r--src/PYPConfig.h1
-rw-r--r--src/PYPDoublePinyinEditor.cc2
-rw-r--r--src/PYPEnhancedCandidates.h3
-rw-r--r--src/PYPFullPinyinEditor.cc1
-rw-r--r--src/PYPLibPinyinCandidates.cc7
-rw-r--r--src/PYPPhoneticEditor.cc31
-rw-r--r--src/PYPPhoneticEditor.h1
-rw-r--r--src/PYPPinyinEditor.cc12
-rw-r--r--src/PYPPinyinEngine.cc12
-rw-r--r--src/PYPSuggestionCandidates.cc6
-rw-r--r--src/PYPSuggestionEditor.cc15
-rw-r--r--src/PYPinyinProperties.cc124
-rw-r--r--src/PYPinyinProperties.h24
-rw-r--r--src/PYProperty.h15
-rw-r--r--src/PYTableDatabase.cc30
-rw-r--r--src/PYTableEditor.cc12
-rw-r--r--src/PYXMLUtil.cc188
-rw-r--r--src/PYXMLUtil.h43
-rw-r--r--src/default.inputmethod.xml.in.in44
-rw-r--r--src/libpinyin.inputmethod.xml.in.in19
-rw-r--r--src/libpinyin.xml.in.in53
66 files changed, 4987 insertions, 2154 deletions
diff --git a/.github/workflows/make-check.yml b/.github/workflows/make-check.yml
index 21a9adb..a8a25d4 100644
--- a/.github/workflows/make-check.yml
+++ b/.github/workflows/make-check.yml
@@ -17,7 +17,7 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: install build dependency
- run: sudo dnf install -y gettext python3-gobject gcc-c++ gettext-devel libtool pkgconfig sqlite-devel libuuid-devel lua-devel python3-devel json-glib-devel libsoup3-devel desktop-file-utils ibus-devel libpinyin-devel make gnome-common which
+ run: sudo dnf install -y gettext python3-gobject gcc-c++ gettext-devel libtool pkgconfig sqlite-devel libuuid-devel lua-devel python3-devel json-glib-devel libsoup3-devel desktop-file-utils ibus-devel libpinyin-devel libnotify-devel make gnome-common which awk
- name: autoconf
run: ./autogen.sh
- name: configure
diff --git a/NEWS b/NEWS
index f3a6c9b..a797b98 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,36 @@
+version 1.16.4
+* bug fixes
+
+version 1.16.3
+* fix cloud input
+
+version 1.16.2
+* fix some random file creation issue
+
+version 1.16.1
+* bug fixes
+
+version 1.16.0
+* bug fixes
+
+version 1.15.94
+* notify user when import file finished
+* display lua converters in ibus panel
+* support square bracket page option
+
+version 1.15.93
+* fix the about icon in setup dialog
+* support custom keyboard layout option
+
+version 1.15.92
+* support punctuation candidate
+
+version 1.15.91
+* support to export bigram phrase
+
+version 1.15.8
+* bug fixes
+
version 1.15.7
* bug fixes
diff --git a/configure.ac b/configure.ac
index 20aa2c9..44bb868 100644
--- a/configure.ac
+++ b/configure.ac
@@ -21,8 +21,8 @@
# if not 1, append datestamp to the version number.
m4_define([ibus_released], [1])
m4_define([ibus_major_version], [1])
-m4_define([ibus_minor_version], [15])
-m4_define([ibus_micro_version], [7])
+m4_define([ibus_minor_version], [16])
+m4_define([ibus_micro_version], [4])
m4_define(ibus_maybe_datestamp,
m4_esyscmd([if test x]ibus_released[ != x1; then date +.%Y%m%d | tr -d '\n\r'; fi]))
@@ -67,7 +67,7 @@ if test -z "$SQLITE3"; then
fi
PKG_CHECK_MODULES(LIBPINYIN, [
- libpinyin >= 2.7.91
+ libpinyin >= 2.9.92
], [enable_libpinyin=yes])
LIBPINYIN_DATADIR=`$PKG_CONFIG --variable=pkgdatadir libpinyin`
@@ -83,13 +83,19 @@ AC_CHECK_FUNCS([ibus_config_get_values])
CFLAGS="$save_CFLAGS"
LIBS="$save_LIBS"
-
# check env
AC_PATH_PROG(ENV, env)
AC_SUBST(ENV)
# check python
-AM_PATH_PYTHON([3.7])
+AM_PATH_PYTHON([3.2])
+
+# assign the specified python version
+AC_ARG_WITH(python,
+ AS_HELP_STRING([--with-python[=PATH]], [Select python version]),
+ [PYTHON=$with_python],
+ []
+)
# check icon_prop_key in IBus.EngineDesc
AC_MSG_CHECKING([if IBus.EngineDesc has get_icon_prop_key])
@@ -220,6 +226,21 @@ AC_ARG_ENABLE(table-input-mode,
AM_CONDITIONAL(IBUS_BUILD_TABLE_INPUT_MODE, [test x"$enable_table_input_mode" = x"yes"])
+# --disable-libnotify
+AC_ARG_ENABLE(libnotify,
+ AS_HELP_STRING([--disable-libnotify],
+ [Disable to link libnotify]),
+ [enable_libnotify=$enableval],
+ [enable_libnotify=yes]
+)
+AM_CONDITIONAL([ENABLE_LIBNOTIFY], [test x"$enable_libnotify" = x"yes"])
+if test x"$enable_libnotify" = x"yes"; then
+ PKG_CHECK_MODULES(LIBNOTIFY, [
+ libnotify >= 0.7
+ ])
+ enable_libnotify="yes"
+fi
+
# OUTPUT files
AC_CONFIG_FILES([ po/Makefile.in
Makefile
@@ -227,7 +248,8 @@ ibus-libpinyin.spec
lua/Makefile
scripts/Makefile
src/Makefile
-src/libpinyin.xml.in
+src/libpinyin.inputmethod.xml.in
+src/default.inputmethod.xml.in
setup/Makefile
setup/ibus-setup-libpinyin
setup/config.py
@@ -244,6 +266,7 @@ Build options:
Install prefix $prefix
Use boost $enable_boost
Use opencc $enable_opencc
+ Enable libnotify $enable_libnotify
Use libpinyin $enable_libpinyin
Build lua extension $enable_lua_extension
Build cloud input mode $enable_cloud_input_mode
diff --git a/data/com.github.libpinyin.ibus-libpinyin.gschema.xml b/data/com.github.libpinyin.ibus-libpinyin.gschema.xml
index 588439b..23b9c9d 100644
--- a/data/com.github.libpinyin.ibus-libpinyin.gschema.xml
+++ b/data/com.github.libpinyin.ibus-libpinyin.gschema.xml
@@ -9,6 +9,10 @@
<default>false</default>
<summary>Use comma and period to flip page</summary>
</key>
+ <key name="square-bracket-page" type="b">
+ <default>false</default>
+ <summary>Use square brackets to flip page</summary>
+ </key>
<key name="correct-pinyin" type="b">
<default>true</default>
<summary>Enable correct pinyin</summary>
@@ -194,7 +198,7 @@
<summary>Use Lua Converter</summary>
</key>
<key name="opencc-config" type="s">
- <default>'s2t.json'</default>
+ <default>'s2tw.json'</default>
<summary>The config file which should be used by OpenCC for traditional input. Please consult the OpenCC documentation for more information</summary>
</key>
<key name="emoji-candidate" type="b">
@@ -262,6 +266,18 @@
<default>600</default>
<summary>Sending Cloud request with delay</summary>
</key>
+ <key name="export-user-phrase" type="b">
+ <default>true</default>
+ <summary>Export user phrases</summary>
+ </key>
+ <key name="export-bigram-phrase" type="b">
+ <default>true</default>
+ <summary>Export bigram phrases</summary>
+ </key>
+ <key name="keyboard-layout" type="s">
+ <default>'default'</default>
+ <summary>The keyboard layout used with ibus-libpinyin</summary>
+ </key>
</schema>
<schema path="/com/github/libpinyin/ibus-libpinyin/libbopomofo/" id="com.github.libpinyin.ibus-libpinyin.libbopomofo">
<key name="auxiliary-select-key-f" type="i">
@@ -401,7 +417,7 @@
<summary>Sort candidate option</summary>
</key>
<key name="opencc-config" type="s">
- <default>'s2t.json'</default>
+ <default>'s2tw.json'</default>
<summary>The config file which should be used by OpenCC for traditional input. Please consult the OpenCC documentation for more information</summary>
</key>
<key name="emoji-candidate" type="b">
@@ -441,5 +457,9 @@
<default>600</default>
<summary>Sending Cloud request with delay</summary>
</key>
+ <key name="keyboard-layout" type="s">
+ <default>'default'</default>
+ <summary>The keyboard layout used with ibus-libpinyin</summary>
+ </key>
</schema>
</schemalist>
diff --git a/data/icons/Makefile.am b/data/icons/Makefile.am
index 545242f..580ded2 100644
--- a/data/icons/Makefile.am
+++ b/data/icons/Makefile.am
@@ -30,6 +30,7 @@ icons_DATA = \
half-punct.svg \
simp-chinese.svg \
trad-chinese.svg \
+ lua-converter.svg \
$(NULL)
iconsdir = $(pkgdatadir)/icons
diff --git a/data/icons/lua-converter.svg b/data/icons/lua-converter.svg
new file mode 100644
index 0000000..129ecaa
--- /dev/null
+++ b/data/icons/lua-converter.svg
@@ -0,0 +1,229 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ width="48px"
+ height="48px"
+ id="svg2383"
+ sodipodi:version="0.32"
+ inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
+ sodipodi:docname="lua-converter.svg"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
+ version="1.1"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:dc="http://purl.org/dc/elements/1.1/">
+ <defs
+ id="defs2385">
+ <linearGradient
+ id="linearGradient4">
+ <stop
+ style="stop-color:#3e9bde;stop-opacity:1;"
+ offset="0"
+ id="stop3" />
+ <stop
+ style="stop-color:#e5e5ff;stop-opacity:1;"
+ offset="1"
+ id="stop4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3165">
+ <stop
+ style="stop-color:#3e9ade;stop-opacity:1;"
+ offset="0"
+ id="stop3167" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop3169" />
+ </linearGradient>
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 24 : 1"
+ inkscape:vp_y="6.1230318e-14 : 1000 : 0"
+ inkscape:vp_z="48 : 24 : 1"
+ inkscape:persp3d-origin="24 : 16 : 1"
+ id="perspective2391" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3165"
+ id="linearGradient3170"
+ x1="9.4285707"
+ y1="16.928572"
+ x2="21.285713"
+ y2="16.928572"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3165"
+ id="linearGradient3182"
+ x1="4"
+ y1="22.214285"
+ x2="24.428572"
+ y2="22.214285"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3165"
+ id="linearGradient3209"
+ gradientUnits="userSpaceOnUse"
+ x1="7.746789"
+ y1="27.427807"
+ x2="22.480242"
+ y2="13.872649" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3165"
+ id="linearGradient3213"
+ gradientUnits="userSpaceOnUse"
+ x1="8.4049778"
+ y1="28.256899"
+ x2="23.510868"
+ y2="13.821767" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3165"
+ id="linearGradient3220"
+ gradientUnits="userSpaceOnUse"
+ x1="8.4049778"
+ y1="28.256899"
+ x2="23.510868"
+ y2="13.821767" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3165"
+ id="linearGradient3226"
+ gradientUnits="userSpaceOnUse"
+ x1="8.4049778"
+ y1="28.256899"
+ x2="23.510868"
+ y2="13.821767" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3165"
+ id="linearGradient3231"
+ gradientUnits="userSpaceOnUse"
+ x1="8.4049778"
+ y1="28.256899"
+ x2="23.510868"
+ y2="13.821767" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3165"
+ id="linearGradient3234"
+ gradientUnits="userSpaceOnUse"
+ x1="8.4049778"
+ y1="28.256899"
+ x2="23.510868"
+ y2="13.821767"
+ gradientTransform="matrix(0.7783402,0,0,0.8510982,20.293591,5.3791756)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3165"
+ id="linearGradient3236"
+ gradientUnits="userSpaceOnUse"
+ x1="7.746789"
+ y1="27.427807"
+ x2="22.480242"
+ y2="13.872649" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4"
+ id="linearGradient2"
+ x1="12.428571"
+ y1="24.009487"
+ x2="40.64732"
+ y2="24.009487"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1.2857144,0.42857143)" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="7"
+ inkscape:cx="5.7142857"
+ inkscape:cy="21.214286"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1920"
+ inkscape:window-height="844"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:showpageshadow="2"
+ inkscape:pagecheckerboard="0"
+ inkscape:deskcolor="#d1d1d1"
+ inkscape:window-maximized="1" />
+ <metadata
+ id="metadata2388">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ sodipodi:type="arc"
+ style="opacity:1;fill:#6b6b6b;fill-opacity:0.22110554;stroke:none;stroke-width:0.37799999;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="path2390"
+ sodipodi:cx="25.357143"
+ sodipodi:cy="45.357143"
+ sodipodi:rx="15.642858"
+ sodipodi:ry="2.3571429"
+ d="M 41.000001,45.357143 A 15.642858,2.3571429 0 1 1 9.7142859,45.357143 A 15.642858,2.3571429 0 1 1 41.000001,45.357143 z"
+ transform="matrix(1.2304582,0,0,1.4687983,-6.0580467,-22.40621)" />
+ <g
+ id="g4"
+ transform="translate(-4.8571429,0.14285714)">
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:bold;line-height:0%;font-family:'Bitstream Vera Sans';fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="14.428571"
+ y="15.714286"
+ id="text2387"><tspan
+ sodipodi:role="line"
+ id="tspan2389"
+ x="14.428571"
+ y="15.714286"
+ style="font-size:12px;line-height:1.25"> </tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-weight:normal;line-height:0%;font-family:'Bitstream Vera Sans';fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="17"
+ y="16.714287"
+ id="text2396"><tspan
+ sodipodi:role="line"
+ id="tspan2398"
+ x="17"
+ y="16.714287"
+ style="font-style:normal;font-weight:bold;font-size:12px;line-height:1.25"> </tspan></text>
+ <path
+ d="m 42.628348,10.274551 v 4.992188 q -2.390625,-2.226563 -5.109375,-3.328125 -2.695312,-1.101563 -5.742187,-1.101563 -6,0 -9.1875,3.679688 -3.1875,3.65625 -3.1875,10.59375 0,6.914062 3.1875,10.59375 3.1875,3.65625 9.1875,3.65625 3.046875,0 5.742187,-1.101563 2.71875,-1.101562 5.109375,-3.328125 v 4.945313 q -2.484375,1.6875 -5.273437,2.53125 -2.765625,0.84375 -5.859375,0.84375 -7.945313,0 -12.515625,-4.851563 -4.570313,-4.875 -4.570313,-13.289062 0,-8.4375 4.570313,-13.289063 4.570312,-4.8749996 12.515625,-4.8749996 3.140625,0 5.90625,0.84375 2.789062,0.8203125 5.226562,2.4843746 z"
+ id="text1"
+ style="font-size:48px;fill:#000066;fill-opacity:1"
+ aria-label="C" />
+ <path
+ d="m 41.933035,9.6138412 v 4.9921878 q -2.390625,-2.226563 -5.109375,-3.328126 -2.695313,-1.101562 -5.742188,-1.101562 -6,0 -9.1875,3.679688 -3.1875,3.65625 -3.1875,10.59375 0,6.914062 3.1875,10.59375 3.1875,3.65625 9.1875,3.65625 3.046875,0 5.742188,-1.101562 2.71875,-1.101563 5.109375,-3.328126 v 4.945313 q -2.484375,1.6875 -5.273438,2.53125 -2.765625,0.84375 -5.859375,0.84375 -7.945312,0 -12.515625,-4.851562 -4.570312,-4.875001 -4.570312,-13.289063 0,-8.4375 4.570312,-13.289063 4.570313,-4.8749998 12.515625,-4.8749998 3.140625,0 5.90625,0.84375 2.789063,0.820312 5.226563,2.484375 z"
+ id="text1-3"
+ style="font-size:48px;fill:url(#linearGradient2)"
+ aria-label="C" />
+ </g>
+ </g>
+</svg>
diff --git a/data/wordlist b/data/wordlist
index b8f7b75..a28e957 100644
--- a/data/wordlist
+++ b/data/wordlist
@@ -4772,7 +4772,6 @@ implemented 0.001838
excessive 0.001838
iraqi 0.001837
enterprises 0.001837
-hitler 0.001836
dining 0.001836
exceptional 0.001836
greece 0.001835
@@ -21953,7 +21952,6 @@ Harrogate 0.000769
Hartley 0.000294
Hegel 0.000251
Herr 0.000609
-Hitler 0.001836
Honduras 0.000222
Horne 0.000316
HP 0.001127
diff --git a/lua/lua-ext-console.c b/lua/lua-ext-console.c
index 80bf291..4225359 100644
--- a/lua/lua-ext-console.c
+++ b/lua/lua-ext-console.c
@@ -106,7 +106,9 @@ int do_simple_lua_call(IBusEnginePlugin * plugin, const char * lua_function_name
int num = ibus_engine_plugin_call(plugin, lua_function_name, string);
g_assert(num == ibus_engine_plugin_get_n_result(plugin));
for (i = 0; i < num ; ++i){
- printf("%d.%s >\t", i, ibus_engine_plugin_get_nth_result(plugin, i));
+ gchar * str = ibus_engine_plugin_get_nth_result(plugin, i);
+ printf("%d.%s >\t", i, str);
+ g_free(str);
}
printf("\n");
ibus_engine_plugin_clear_results(plugin);
diff --git a/lua/lua-plugin-init.c b/lua/lua-plugin-init.c
index e6e86ec..1c122b0 100644
--- a/lua/lua-plugin-init.c
+++ b/lua/lua-plugin-init.c
@@ -19,6 +19,10 @@
*/
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
#include <stdio.h>
#include <string.h>
#include <glib.h>
@@ -87,8 +91,7 @@ static int ime_get_last_commit(lua_State* L){
}
static int ime_get_version(lua_State* L){
- /* TODO: replace this with C macros. */
- lua_pushliteral(L, "ibus-libpinyin 1.4.0");
+ lua_pushliteral(L, PACKAGE_STRING);
return 1;
}
@@ -99,7 +102,7 @@ static int ime_int_to_hex_string(lua_State* L){
luaL_Buffer buf;
luaL_buffinit(L, &buf);
- gchar * str = g_strdup_printf("%0*x", width, val);
+ gchar * str = g_strdup_printf("%0*x", (int)width, (int)val);
luaL_addstring(&buf, str);
g_free(str);
@@ -131,7 +134,7 @@ static int ime_join_string(lua_State* L){
for ( i = 1; i < vec_len; ++i){
lua_pushinteger(L, i);
lua_gettable(L, 1);
- str = luaL_checklstring(L, 3, NULL);
+ str = luaL_checklstring(L, -1, NULL);
luaL_addstring(&buf, str);
lua_pop(L, 1);
luaL_addstring(&buf, sep);
@@ -140,7 +143,7 @@ static int ime_join_string(lua_State* L){
/* add tail of string list */
lua_pushinteger(L, i);
lua_gettable(L, 1);
- str = luaL_checklstring(L, 3, NULL);
+ str = luaL_checklstring(L, -1, NULL);
luaL_addstring(&buf, str);
lua_pop(L, 1);
/* remove the args. */
diff --git a/lua/lua-plugin.c b/lua/lua-plugin.c
index 0fa4c96..fa7b33a 100644
--- a/lua/lua-plugin.c
+++ b/lua/lua-plugin.c
@@ -331,6 +331,16 @@ gboolean ibus_engine_plugin_set_converter(IBusEnginePlugin * plugin, const char
IBusEnginePluginPrivate * priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE(plugin);
GArray * lua_converters = priv->lua_converters;
+ if (lua_function_name == NULL || *lua_function_name == '\0') {
+ g_free(priv->use_converter);
+ priv->use_converter = NULL;
+ return TRUE;
+ }
+
+ /* The Lua converter is not changed. */
+ if (g_strcmp0 (priv->use_converter, lua_function_name) == 0)
+ return TRUE;
+
gint i;
for (i = 0; i < lua_converters->len; ++i) {
lua_converter_t * converter = &g_array_index
diff --git a/po/LINGUAS b/po/LINGUAS
index f101f2b..c29122a 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -11,3 +11,4 @@ uk
de
si
ka
+el
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 0704944..082490e 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,4 +1,5 @@
src/PYConfig.cc
+src/PYPConfig.cc
src/PYPDoublePinyinEditor.cc
src/PYEditor.cc
src/PYEngine.cc
diff --git a/po/ca.po b/po/ca.po
index ef2d895..be153f8 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -1,149 +1,181 @@
# Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>, 2015. #zanata
+# naly zzwd <xeanhort007@gmail.com>, 2025.
+# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2025.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
-"PO-Revision-Date: 2015-09-24 09:36-0400\n"
-"Last-Translator: Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>\n"
-"Language-Team: Catalan\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
+"PO-Revision-Date: 2025-05-18 11:00+0000\n"
+"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
+"memory@weblate.org>\n"
+"Language-Team: Catalan <https://translate.fedoraproject.org/projects/"
+"ibus-libpinyin/main/ca/>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Zanata 3.7.2\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.11.3\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr "S'importa el fitxer de taula."
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr "S'exporta el fitxer de taula."
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr "S'ha importat el fitxer del diccionari pinyin."
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr "S'ha exportat el fitxer del diccionari pinyin."
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "Mètode d'entrada Libpinyin"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "Pinyin intel·ligent (depuració)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "Mètode d'entrada pinyin intel·ligent (depuració)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "Bopomofo (depuració)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "Mètode d'entrada bopomofo (depuració)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "Xinès"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "Anglès"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "Commuta al mode anglès"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "Commuta al mode xinès"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "Lletra d'amplada completa"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "Lletra d'amplada mitjana"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "Commuta al mode de lletra d'amplada mitjana"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "Commuta al mode de lletra d'amplada completa"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "Puntuació d'amplada completa"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "Puntuació d'amplada mitjana"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "Commuta al mode de puntuació d'amplada mitjana"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "Commuta al mode de puntuació d'amplada completa"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "Xinès simplificat"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "Xinès tradicional"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "Commuta al mode xinès tradicional"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "Commuta al mode xinès simplificat"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "Preferències"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr "Convertidor Lua"
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr "Utilitzeu el Convertidor Lua"
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr "Cap"
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr "Si us plau, introduïu la paraula anglesa."
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "Si us plau, utilitzeu \"hspnz\" per a l'entrada."
-#: src/PYTableEditor.cc:294
-#, fuzzy
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
-msgstr "Si us plau, utilitzeu \"hspnz\" per a l'entrada."
+msgstr "Si us plau, utilitzeu el codi de la taula per entrar."
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "Si us plau, seleccioneu un fitxer"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "Si us plau, deseu un fitxer"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>Pinyin intel·ligent %s</b></big>"
#: setup/config.py:30
-#, fuzzy
msgid "Intelligent Pinyin"
-msgstr "Pinyin intel·ligent (depuració)"
+msgstr "Pinyin intel·ligent"
#: setup/dicttreeview.py:52
msgid "Art"
@@ -175,11 +207,11 @@ msgstr "Natura"
#: setup/dicttreeview.py:59
msgid "People"
-msgstr ""
+msgstr "Gent"
#: setup/dicttreeview.py:60
msgid "Science"
-msgstr ""
+msgstr "Ciència"
#: setup/dicttreeview.py:61
msgid "Society"
@@ -190,9 +222,8 @@ msgid "Sport"
msgstr "Esport"
#: setup/dicttreeview.py:63
-#, fuzzy
msgid "Technology"
-msgstr "Geologia"
+msgstr "Tecnologia"
#: setup/dicttreeview.py:110
msgid "Active"
@@ -301,28 +332,28 @@ msgstr "IBM"
#: setup/ibus-libpinyin-preferences.ui:40
msgid "Baidu"
-msgstr ""
+msgstr "Baidu"
#: setup/ibus-libpinyin-preferences.ui:43
msgid "Google"
-msgstr ""
+msgstr "Google"
#: setup/ibus-libpinyin-preferences.ui:46
msgid "Google CN"
-msgstr ""
+msgstr "Google CN"
#: setup/ibus-libpinyin-preferences.ui:57
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
-msgstr "Pre_determinat"
+msgstr "Per defecte"
#: setup/ibus-libpinyin-preferences.ui:60
msgid "Compact"
-msgstr ""
+msgstr "Compacte"
#: setup/ibus-libpinyin-preferences.ui:63
msgid "Compatibility"
-msgstr ""
+msgstr "Compatibilitat"
#: setup/ibus-libpinyin-preferences.ui:74
msgid "MSPY"
@@ -348,307 +379,316 @@ msgstr "PYJJ"
msgid "XHE"
msgstr "XHE"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "Horitzontal"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "Vertical"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
-msgstr ""
+msgstr "Freqüència"
-#: setup/ibus-libpinyin-preferences.ui:152
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
-msgstr "Mode pinyin"
+msgstr "Longitud del Pinyin"
+
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "Idioma:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "Amplada mitjana/completa:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "Puntuacions:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "Completa"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "Mitjana"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "Xinès:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "Simplificat"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "Tradicional"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>Estat inicial</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
-msgstr ""
+msgstr "Estil de Visualització:"
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "Orientació dels candidats:"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "Nombre de candidats:"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>Interfície d'usuari</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr "Ajusta dinàmicament l'ordre dels candidats."
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr "Recorda cada entrada com a una frase."
-#: setup/ibus-libpinyin-preferences.ui:659
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
-msgstr "Nombre de candidats:"
+msgstr "Ordena els candidats per:"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>Candidats</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr "Disposició del teclat:"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr "Consell: aquests canvis poden tenir efecte després de reiniciar l'ime."
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr "<b>Teclat</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "General"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "Pinyin complet"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "Pinyin doble"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr "Mostra l'entrada raw del pinyin doble"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "Pinyin incomplet"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>Mode pinyin</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "[Maj.] selecciona el candidat"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "[-] [=] gira la pàgina"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "[,] [.] gira la pàgina"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "Consignació automàtica:"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr " [ ] gira la pàgina"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr "<b>Entrada personalitzada</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr "Habilita la correcció de pinyin"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr "<b>Correcció de pinyin</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
-msgstr ""
+msgstr "Activa l'Entrada del Núvol"
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
-msgstr ""
+msgstr "Font des de:"
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
-msgstr "<b>Entrada personalitzada</b>"
+msgstr "<b>Opció d'Entrada al Núvol</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr "Mode pinyin"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr "Bopomofo incomplet"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr "Assignació del teclat:"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr "<b>Mode bopomofo</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr "Tecles de selecció:"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr "Habilita Guidekey per a la selecció de candidats"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr "Habilita les tecles auxiliars de selecció F1..F10"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr "Habilita les tecles auxiliars de selecció del teclat de números"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr "<b>Mode de selecció</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr "Funcionalitat de la tecla de Retorn:"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr "Consigna el primer candidat"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr "Consigna el text original"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>Altres</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr "Mode bopomofo"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr "Habilita la síl·laba difusa"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr "Síl·laba difusa"
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr "Consell: aquests canvis poden tenir efecte després de reiniciar l'ime."
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr "<b>Opció del diccionari</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "Diccionari"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
-msgstr ""
+msgstr "Extensió Lua"
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
-msgstr ""
+msgstr "Mode Taula"
-#: setup/ibus-libpinyin-preferences.ui:2158
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2313
msgid "English Mode"
-msgstr "Anglès"
+msgstr "Mode Anglès"
-#: setup/ibus-libpinyin-preferences.ui:2172
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2327
msgid "English Candidate"
-msgstr "Anglès"
+msgstr "Candidat Anglès"
-#: setup/ibus-libpinyin-preferences.ui:2186
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
-msgstr "Nombre de candidats:"
+msgstr "Candidat Emoji"
-#: setup/ibus-libpinyin-preferences.ui:2200
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
-msgstr "Orientació dels candidats:"
+msgstr "Suggeriment Candidat"
-#: setup/ibus-libpinyin-preferences.ui:2220
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
-msgstr "<b>Entrada personalitzada</b>"
+msgstr "<b>Modes d'Entrada</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr "Script lua d'usuari"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "Edita"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr "<b>Personalitza l'IME</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "Exporta"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "Importa"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr "Directori d'usuari"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "Neteja totes les dades"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "Neteja"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -660,59 +700,54 @@ msgstr ""
" \"frase pinyin\" o \"frase pinyin freqüència\"\n"
" com ara \"你好 ni'hao\" o \"你好 ni'hao 5\"."
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "Ajuda"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr "<b>Diccionari d'usuari</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
-msgstr "Dades de l'usuari"
+msgstr "Taula d'Usuari"
-#: setup/ibus-libpinyin-preferences.ui:2573
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
" \"table_code phrase frequency\" like \"a 啊 100\"."
msgstr ""
-"<b>Format del fitxer de diccionari:</b>\n"
-" Cada línia conté una de les següents:\n"
-" \"frase pinyin\" o \"frase pinyin freqüència\"\n"
-" com ara \"你好 ni'hao\" o \"你好 ni'hao 5\"."
+"<b>Format de fitxer de taula:</b>\n"
+" Cada línia conté el següent:\n"
+" \"codi_taula frase freqüència\" com ara \"a 啊 100\"."
-#: setup/ibus-libpinyin-preferences.ui:2601
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2756
msgid "<b>User Table</b>"
-msgstr "<b>Diccionari d'usuari</b>"
+msgstr "<b>Taula d'Usuari</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "Dades de l'usuari"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "Dreceres"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr "Mètode d'entrada pinyin intel·ligent per a l'IBus"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
-msgstr "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr "<small>Copyright (c) 2011-2024 Peng Wu</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -733,29 +768,32 @@ msgstr ""
"Peng Huang\n"
"BYVoid\n"
"\n"
+"<b>Contribuïdors principals:</b>\n"
+"Weixuan XIAO, Linyu XU\n"
+"\n"
"<b>Contribuïdors:</b>\n"
"koterpilla, Zerng07, Hillwood Yang\n"
"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "Quant a"
#: data/ibus-setup-libpinyin.desktop.in:3
msgid "IBus LibPinyin Setup"
-msgstr ""
+msgstr "Configuració de IBus LibPinyin"
#: data/ibus-setup-libpinyin.desktop.in:4
msgid "Set ibus-libpinyin Preferences"
-msgstr ""
+msgstr "Estableix les preferències ibus-libpinyin"
#: data/ibus-setup-libbopomofo.desktop.in:3
msgid "IBus LibBopomofo Preferences"
-msgstr ""
+msgstr "Preferències de IBus LibBopomofo"
#: data/ibus-setup-libbopomofo.desktop.in:4
msgid "Set ibus-libbopomofo Preferences"
-msgstr ""
+msgstr "Estableix les preferències d'ibus-libbopomofo"
#~ msgid "Low Frequent Characters"
#~ msgstr "Caràcters amb freqüència baixa"
diff --git a/po/cs.po b/po/cs.po
index aba14cf..9d1e652 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
"PO-Revision-Date: 2017-11-29 09:48-0500\n"
"Last-Translator: Zdenek <chmelarz@gmail.com>\n"
"Language-Team: Czech\n"
@@ -17,128 +17,158 @@ msgstr ""
"X-Generator: Zanata 4.6.2\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr ""
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr ""
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "Vstupní metoda libpinyin"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "Inteligentní pinyin (debug)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "Inteligentní vstupní metoda pinyin (debug)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "Bopomofo (debug)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "Vstupní metoda Bopomofo (debug)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "Čínština"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "Angličtina"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "Přepnout do anglického módu"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "Přepnout do čínského módu"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "Plná šířka písma"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "Poloviční šířka písma"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "Přepnout do módu poloviční šířky písma"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "Přepnout do módu plné šířky písma"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "Plná šířka interpunkce"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "Poloviční šířka interpunkce"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "Přepnout do módu poloviční šířky interpunkce"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "Přepnout do módu plné šířky interpunkce"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "Zjednodušená čínština"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "Tradiční čínština"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "Přepnout do módu tradiční čínštiny"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "Přepnout do módu zjednodušené čínštiny"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "Předvolby"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr ""
+
+#: src/PYEnglishEditor.cc:307
#, fuzzy
msgid "Please input the English word."
msgstr "Vložte prosím anglické slovo."
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "Použijte \"hpsnz\" pro vstup."
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
#, fuzzy
msgid "Please use table code to input."
msgstr "Použijte \"hpsnz\" pro vstup."
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "Vyberte prosím soubor"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "Uložte prosím soubor"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>Inteligentní pinyin %s</b></big>"
@@ -317,6 +347,7 @@ msgid "Google CN"
msgstr ""
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
#, fuzzy
msgid "Default"
msgstr "_Výchozí"
@@ -353,310 +384,330 @@ msgstr "PYJJ"
msgid "XHE"
msgstr "XHE"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "Vodorovně"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "Svisle"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
#, fuzzy
msgid "Pinyin Length"
msgstr "Mód pinyinu"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "Jazyk:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "Poloviční/plná šířka:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "Interpunkce:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "Plná"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "Poloviční"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "Čínština:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "Zjednodušená"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "Tradiční"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>Výchozí stav</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "Orientace návrhů:"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "Počet návrhů:"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>Uživatelské rozhraní</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
#, fuzzy
msgid "Dynamically adjust the candidates order."
msgstr "Dynamicky upravovat pořadí návrhů."
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr "Pamatovat si každý vstup jako výraz."
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
#, fuzzy
msgid "Sort candidates by:"
msgstr "Počet návrhů:"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>Návrhy</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+#, fuzzy
+msgid "Keyboard Layout:"
+msgstr "Mapování klávesnice:"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+#, fuzzy
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr "Tip: Tyto změny se projeví po restartu vstupní metody."
+
+#: setup/ibus-libpinyin-preferences.ui:842
+#, fuzzy
+msgid "<b>Keyboard</b>"
+msgstr "<b>Jiné</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "Obecné"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "Plný pinyin"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "Dvojitý pinyin"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr "Zobrazit nezpracovaný vstup dvojitého pinyinu"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "Nekopletní pinyin"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>Mód pinyinu</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "[Shift] vybrat návrh"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "[-] [=] obrátit stránku"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "[,] [.] obrátit stránku"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "Automaticky zadávat"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+#, fuzzy
+msgid " [ ] flip page"
+msgstr "[-] [=] obrátit stránku"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr "<b>Vlastní vstupy</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
#, fuzzy
msgid "Enable pinyin correction"
msgstr "Povolit spisovný pinyin"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr "<b>Spisovný pinyin</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
#, fuzzy
msgid "<b>Cloud Input Option</b>"
msgstr "<b>Vlastní vstupy</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr "Mód pinyinu"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr "Nekopletní Bopomofo"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr "Mapování klávesnice:"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr "<b>Mód Bopomofo</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr "Výběrové klávesy:"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr "Aktivovat Průvodce kláves pro kandidáty výběru"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr "Aktivovat pomocné výběrové klávesy F1 .. F10"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr "Aktivovat pomocné výběrové klávesy čísla na klávesnici"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr "<b>Mód výběru</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr "Chování klávesy Enter:"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr "Zadávat první návrh"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr "Zadávat původní text"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>Jiné</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr "Mód Bopomofo"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr "Aktivovat nejasné slabiky"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr "Nejasné slabiky"
-#: setup/ibus-libpinyin-preferences.ui:2044
-#, fuzzy
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr "Tip: Tyto změny se projeví po restartu vstupní metody."
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr "<b>Možnosti slovníku</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "Slovník"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
#, fuzzy
msgid "English Mode"
msgstr "Angličtina"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
#, fuzzy
msgid "English Candidate"
msgstr "Angličtina"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
#, fuzzy
msgid "Emoji Candidate"
msgstr "Počet návrhů:"
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
#, fuzzy
msgid "Suggestion Candidate"
msgstr "Orientace návrhů:"
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
#, fuzzy
msgid "<b>Input Modes</b>"
msgstr "<b>Vlastní vstupy</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr "Uživatelské skripty Lua"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "Upravit"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr "<b>Přizpůsobit vstupní metodu</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "Exportovat"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "Importovat"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr "Uživatelské slovník"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "Vymazat všechna data"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "Vymazat"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -668,21 +719,21 @@ msgstr ""
" „výraz pinyin“ nebo „výraz pinyin frekvence“\n"
" např. „你好 ni'hao“ nebo „你好 ni'hao 5“."
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "Nápověda"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr "<b>Uživatelský slovník</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
#, fuzzy
msgid "User Table"
msgstr "Uživatelská data"
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
#, fuzzy
msgid ""
"<b>Table File Format:</b>\n"
@@ -694,32 +745,32 @@ msgstr ""
" „výraz pinyin“ nebo „výraz pinyin frekvence“\n"
" např. „你好 ni'hao“ nebo „你好 ni'hao 5“."
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
#, fuzzy
msgid "<b>User Table</b>"
msgstr "<b>Uživatelský slovník</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "Uživatelská data"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "Zkratky"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr "Inteligentní vstupní metoda pinyin pro IBus"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
-msgstr "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr "<small>Copyright (c) 2011-2024 Peng Wu</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
#, fuzzy
msgid ""
"<small>\n"
@@ -745,7 +796,7 @@ msgstr ""
"koterpilla, Zerng07\n"
"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "O programu"
diff --git a/po/de.po b/po/de.po
index 600a1e4..e5afd14 100644
--- a/po/de.po
+++ b/po/de.po
@@ -1,14 +1,14 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Peng Huang <shawn.p.huang@gmail.com>
# This file is distributed under the same license as the ibus-libpinyin package.
-# Mike FABIAN <mfabian@redhat.com>, 2020, 2022, 2023.
+# Mike FABIAN <mfabian@redhat.com>, 2020, 2022, 2023, 2024, 2025.
msgid ""
msgstr ""
"Project-Id-Version: ibus-libpinyin 1.11.93\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
-"PO-Revision-Date: 2023-07-28 16:21+0000\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
+"PO-Revision-Date: 2025-01-09 08:38+0000\n"
"Last-Translator: Mike FABIAN <mfabian@redhat.com>\n"
"Language-Team: German <https://translate.fedoraproject.org/projects/"
"ibus-libpinyin/main/de/>\n"
@@ -17,128 +17,158 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.18.2\n"
+"X-Generator: Weblate 5.9.2\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr "Die Tabellendatei wird importiert."
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr "Die Tabellendatei wird exportiert."
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr "Die Pinyin-Wörterbuchdatei wird importiert."
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr "Die Pinyin-Wörterbuchdatei wird exportiert."
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "Libpinyin inputmethode"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "Intelligentes Pinyin (debug)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "Intelligente Pinyin inputmethode (debug)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "Bopomofo (debug)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "Bopomofo inputmethode (debug)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "Chinesisch"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "Englisch"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "Auf englischen Modus umschalten"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "Auf chinesischen Modus umschalten"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "Buchstaben in voller Breite"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "Buchstaben in halber Breite"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "Wechseln zu „Buchstaben in halber Breite“"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "Wechseln zu „Buchstaben in voller Breite“"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "Zeichensetzung in voller Breite"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "Zeichensetzung in halber Breite"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "Wechseln zu „Zeichensetzung in halber Breite“"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "Wechseln zu „Zeichensetzung in voller Breite“"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "Vereinfachtes Chinesisch"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "Traditionelles Chinesisch"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "Wechsel zum traditionellen chinesischen Modus"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "Wechseln zum vereinfachten chinesischen Modus"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "Einstellungen"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr "Lua-Konverter"
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr "Benutze den Lua-Konverter"
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr "Keiner"
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr "Bitte das englische Wort eintippen."
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "Bitte „hspnz“ zum Eingeben benutzen."
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
msgstr "Bitte den Tabellencode zum Eingeben benutzen."
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "Bitte wähle eine Datei"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "Bitte speichere eine Datei"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>Intelligentes Pinyin %s</b></big>"
@@ -312,6 +342,7 @@ msgid "Google CN"
msgstr "Google CN"
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr "Standardeinstellung"
@@ -347,301 +378,318 @@ msgstr "PYJJ"
msgid "XHE"
msgstr "XHE"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "Horizontal"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "Vertikal"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr "Frequenz"
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr "Pinyin Länge"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr "Altverhalten"
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "Sprache:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "Halbe/volle Breite:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "Zeichensetzung:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "Voll"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "Halb"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "Chinesisch:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "Vereinfacht"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "Traditionell"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>Anfangszustand</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr "Anzeigestil:"
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "Orientierung der Kandidaten:"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "Anzahl der Kandidaten:"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>UI</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr "Dynamisch die Reihenfolge der Kandidaten anpassen."
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr "Jede Eingabe als Wort merken."
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr "Kandidaten sortieren nach:"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>Kandidaten</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr "Tastaturbelegung:"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr ""
+"Tips: Änderungen werden vielleicht nicht wirksam bis die Inputmethode "
+"neustartet."
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr "<b>Tastatur</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "Allgemein"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "Volle Pinyin"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "Doppelte Pinyin"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr "Roheingabe der doppelten Pinyin zeigen"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "Unvollständige Pinyin"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>Pinyin Modus</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "[Shift] Kandidaten auswählen"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "[-] [=] Seite wechseln"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "[,] [.] Seite wechseln"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "Autocommit"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr " [ ] Seite wechseln"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr "<b>Eingabe benutzerdefiniert</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr "Pinyin Korrektur aktivieren"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr "<b>Pinyin korrigieren</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr "Cloud Input aktivieren"
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr "Quelle von:"
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr "<b>Cloud Input Option</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr "Pinyin Modus"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr "Unvollständiges Bopomofo"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr "Tastaturbelegung:"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr "<b>Bopomofo Modus</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr "Auswahltasten:"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr "Guide-Taste zur Kandidatenauswahl aktivieren"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr "Zusätzliche Auswahltasten F1…F10 aktivieren"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr "Ziffern auf Ziffernblock als zusätzliche Auswahltasten aktivieren"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr "<b>Auswahl Modus</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr "Verhalten der Entertaste:"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr "Ersten Kandidaten committen"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr "Originaltext committen"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>Sonstiges</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr "Bopomofo Modus"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr "Fuzzy Silben aktivieren"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr "Fuzzy Silben"
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr ""
-"Tips: Änderungen werden vielleicht nicht wirksam bis die Inputmethode "
-"neustartet."
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr "<b>Wörterbuch Option</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "Wörterbuch"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr "Lua Erweiterung"
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr "Tabellenmodus"
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
msgid "English Mode"
msgstr "Englischer Modus"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
msgid "English Candidate"
msgstr "Englischer Kandidat"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
msgstr "Emojikandidat"
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
msgstr "Vorschlagskandidat"
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
msgstr "<b>Eingabemodes</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr "Benutzer Lua Skript"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "Editieren"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr "<b>IME individualisieren</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "Export"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "Import"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr "Benutzerwörterbuch"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "Alle Daten löschen"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "Löschen"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -653,20 +701,20 @@ msgstr ""
" \"Wort Pinyin\" or \"Wort Pinyin Frequenz\"\n"
" zum Beispiel \"你好 ni'hao\" or \"你好 ni'hao 5\"."
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "Hilfe"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr "<b>Benutzer Wörterbuch</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
msgstr "Benutzertabelle"
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
@@ -676,31 +724,31 @@ msgstr ""
" Jede Zeile enthält sieht wie folgt aus:\n"
" \"Tabellencode Phrase Frequenz\" wie zum Beispiel \"a 啊 100\"."
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
msgid "<b>User Table</b>"
msgstr "<b>Benutzer Tabelle</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "Benutzerdaten"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "Abkürzungen"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr "Intelligente Pinyin Eingabemethode für IBus"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
-msgstr "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr "<small>Copyright (c) 2011-2024 Peng Wu</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -728,7 +776,7 @@ msgstr ""
"koterpilla, Zerng07, Hillwood Yang\n"
"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "Info"
diff --git a/po/el.po b/po/el.po
new file mode 100644
index 0000000..33d6228
--- /dev/null
+++ b/po/el.po
@@ -0,0 +1,774 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Peng Huang <shawn.p.huang@gmail.com>
+# This file is distributed under the same license as the ibus-libpinyin package.
+# Giannis Antypas <gianni.antypas@gmail.com>, 2024.
+msgid ""
+msgstr ""
+"Project-Id-Version: ibus-libpinyin 1.12.91\n"
+"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
+"new\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
+"PO-Revision-Date: 2024-09-08 13:38+0000\n"
+"Last-Translator: Giannis Antypas <gianni.antypas@gmail.com>\n"
+"Language-Team: Greek <https://translate.fedoraproject.org/projects/ibus-"
+"libpinyin/main/el/>\n"
+"Language: el\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 5.7.2\n"
+
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr ""
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr ""
+
+#: src/PYMain.cc:117
+msgid "Libpinyin input method"
+msgstr ""
+
+#: src/PYMain.cc:127
+msgid "Intelligent Pinyin (debug)"
+msgstr ""
+
+#: src/PYMain.cc:128
+msgid "Intelligent Pinyin input method (debug)"
+msgstr ""
+
+#: src/PYMain.cc:138
+msgid "Bopomofo (debug)"
+msgstr ""
+
+#: src/PYMain.cc:139
+msgid "Bopomofo input method (debug)"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
+msgid "Chinese"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
+msgid "English"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
+msgid "Switch to English Mode"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
+msgid "Switch to Chinese Mode"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
+msgid "Full Width Letter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
+msgid "Half Width Letter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
+msgid "Switch to Half Width Letter Mode"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
+msgid "Switch to Full Width Letter Mode"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
+msgid "Full Width Punct"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
+msgid "Half Width Punct"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
+msgid "Switch to Half Width Punctuation Mode"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
+msgid "Switch to Full Width Punctuation Mode"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
+msgid "Simplified Chinese"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
+msgid "Traditional Chinese"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
+msgid "Switch to Traditional Chinese Mode"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
+msgid "Switch to Simplfied Chinese Mode"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
+msgid "Preferences"
+msgstr "Προτιμήσεις"
+
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
+msgid "中"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
+msgid "英"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr ""
+
+#: src/PYEnglishEditor.cc:307
+msgid "Please input the English word."
+msgstr ""
+
+#: src/PYTableEditor.cc:306
+msgid "Please use \"hspnz\" to input."
+msgstr ""
+
+#: src/PYTableEditor.cc:309
+msgid "Please use table code to input."
+msgstr ""
+
+#: setup/main2.py:493
+msgid "Please choose a file"
+msgstr "Παρακαλώ επιλέξτε ένα αρχείο"
+
+#: setup/main2.py:514
+msgid "Please save a file"
+msgstr "Παρακαλώ αποθηκεύστε ένα αρχείο"
+
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
+#, python-format
+msgid "<big><b>Intelligent Pinyin %s</b></big>"
+msgstr ""
+
+#: setup/config.py:30
+msgid "Intelligent Pinyin"
+msgstr ""
+
+#: setup/dicttreeview.py:52
+msgid "Art"
+msgstr "Τέχνη"
+
+#: setup/dicttreeview.py:53
+msgid "Culture"
+msgstr "Πολιτισμός"
+
+#: setup/dicttreeview.py:54
+msgid "Economy"
+msgstr "Οικονομία"
+
+#: setup/dicttreeview.py:55
+msgid "Geology"
+msgstr "Γεωλογία"
+
+#: setup/dicttreeview.py:56
+msgid "History"
+msgstr "Ιστορία"
+
+#: setup/dicttreeview.py:57
+msgid "Life"
+msgstr "Ζωή"
+
+#: setup/dicttreeview.py:58
+msgid "Nature"
+msgstr "Φύση"
+
+#: setup/dicttreeview.py:59
+msgid "People"
+msgstr "Άνθρωποι"
+
+#: setup/dicttreeview.py:60
+msgid "Science"
+msgstr "Επιστήμη"
+
+#: setup/dicttreeview.py:61
+msgid "Society"
+msgstr "Κοινωνία"
+
+#: setup/dicttreeview.py:62
+msgid "Sport"
+msgstr "Άθληση"
+
+#: setup/dicttreeview.py:63
+msgid "Technology"
+msgstr "Τεχνολογία"
+
+#: setup/dicttreeview.py:110
+msgid "Active"
+msgstr ""
+
+#: setup/dicttreeview.py:115 setup/shortcuteditor.py:83
+msgid "Description"
+msgstr "Περιγραφή"
+
+#: setup/keyboardshortcut.py:54
+msgid "Shortcut:"
+msgstr "Συντόμευση:"
+
+#: setup/keyboardshortcut.py:67
+msgid "Key code:"
+msgstr ""
+
+#: setup/keyboardshortcut.py:82
+msgid "Modifiers:"
+msgstr ""
+
+#: setup/keyboardshortcut.py:171
+msgid ""
+"Please press a key (or a key combination).\n"
+"The dialog will close when the key is released."
+msgstr ""
+
+#: setup/keyboardshortcut.py:174
+msgid "Please press a key (or a key combination)"
+msgstr ""
+
+#: setup/keyboardshortcut.py:186
+msgid "Shorcut Editor"
+msgstr "Επεξεργαστής συντόμευσης"
+
+#: setup/keyboardshortcut.py:239 setup/shortcuteditor.py:196
+#: setup/shortcuteditor.py:233
+msgid "_Cancel"
+msgstr "_Ακύρωση"
+
+#: setup/keyboardshortcut.py:240 setup/shortcuteditor.py:197
+#: setup/shortcuteditor.py:234
+msgid "_OK"
+msgstr "_Εντάξει"
+
+#: setup/shortcuteditor.py:46
+msgid "Switch Chinese/English"
+msgstr ""
+
+#: setup/shortcuteditor.py:47
+msgid "Full/Half Width Letter"
+msgstr ""
+
+#: setup/shortcuteditor.py:48
+msgid "Full/Half Width Punct"
+msgstr ""
+
+#: setup/shortcuteditor.py:49
+msgid "Full/Half Width Both Switch"
+msgstr ""
+
+#: setup/shortcuteditor.py:50
+msgid "Switch Traditional/Simplfied Chinese"
+msgstr ""
+
+#: setup/shortcuteditor.py:88
+msgid "Accelerator"
+msgstr ""
+
+#: setup/shortcuteditor.py:106
+msgid "This shortcut key is already in use."
+msgstr ""
+
+#. set default button
+#: setup/shortcuteditor.py:164
+msgid "_Default"
+msgstr "_Προεπιλογή"
+
+#. edit button
+#: setup/shortcuteditor.py:169
+msgid "_Edit"
+msgstr "_Επεξεργασία"
+
+#: setup/shortcuteditor.py:195
+msgid "Select Switching Key"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:20
+msgid "Standard"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:23
+msgid "GinYieh"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:26
+msgid "Eten"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:29
+msgid "IBM"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:40
+msgid "Baidu"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:43
+msgid "Google"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:46
+msgid "Google CN"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
+msgid "Default"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:60
+msgid "Compact"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:63
+msgid "Compatibility"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:74
+msgid "MSPY"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:77
+msgid "ZRM"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:80
+msgid "ABC"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:83
+msgid "ZGPY"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:86
+msgid "PYJJ"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:89
+msgid "XHE"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:122
+msgid "Horizontal"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:125
+msgid "Vertical"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:171
+msgid "Frequency"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:174
+msgid "Pinyin Length"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:268
+msgid "Language:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:276
+msgid "Half/full width:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:288
+msgid "Punctuations:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
+msgid "Full"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
+msgid "Half"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:398
+msgid "Chinese:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:408
+msgid "Simplified"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:425
+msgid "Traditional"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:448
+msgid "<b>Initial state</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:486
+msgid "Display Style:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:532
+msgid "Orientation of candidates:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:578
+msgid "Number of candidates:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:617
+msgid "<b>UI</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:646
+msgid "Dynamically adjust the candidates order."
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:661
+msgid "Remember every input as a phrase."
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:684
+msgid "Sort candidates by:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:727
+msgid "<b>Candidates</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:861
+msgid "General"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:901
+msgid "Full pinyin"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:922
+msgid "Double pinyin"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:965
+msgid "Show raw input of Double Pinyin"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:980
+msgid "Incomplete pinyin"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1002
+msgid "<b>Pinyin mode</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1044
+msgid "[Shift] select candidate"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1054
+msgid "[-] [=] flip page"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1069
+msgid "[,] [.] flip page"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1084
+msgid "Auto commit"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1126
+msgid "<b>Input Custom</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1274
+msgid "Enable pinyin correction"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1310
+msgid "<b>Correct pinyin</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
+msgid "Enable Cloud Input"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
+msgid "Source From:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
+msgid "<b>Cloud Input Option</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1431
+msgid "Pinyin mode"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1470
+msgid "Incomplete Bopomofo"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1493
+msgid "Keyboard Mapping:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1536
+msgid "<b>Bopomofo mode</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1572
+msgid "Selection Keys:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1609
+msgid "Enable Guidekey for Candidates Selection"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1626
+msgid "Enable Auxiliary Select Keys F1 .. F10"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1643
+msgid "Enable Auxiliary Select Keys Numbers on Keypad"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1666
+msgid "<b>Selection mode</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1698
+msgid "Feature of Enter key:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1709
+msgid "Commit first candidate"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1727
+msgid "Commit original text"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1749
+msgid "<b>Other</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1870
+msgid "Bopomofo mode"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2032
+msgid "Enable fuzzy syllable"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2133
+msgid "Fuzzy syllable"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2222
+msgid "<b>Dictionary option</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2244
+msgid "Dictionary"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2285
+msgid "Lua Extension"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2299
+msgid "Table Mode"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2313
+msgid "English Mode"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2327
+msgid "English Candidate"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2341
+msgid "Emoji Candidate"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2355
+msgid "Suggestion Candidate"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2375
+msgid "<b>Input Modes</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2406
+msgid "User Lua Script"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2416
+msgid "Edit"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2436
+msgid "<b>Customize IME</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
+msgid "Export"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
+msgid "Import"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2502
+msgid "User Dictionary"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2527
+msgid "Clear All Data"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
+msgid "Clear"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2575
+msgid ""
+"<b>Dictionary File Format:</b>\n"
+" Each line contains one of the following:\n"
+" \"phrase pinyin\" or \"phrase pinyin frequency\"\n"
+" like \"你好 ni'hao\" or \"你好 ni'hao 5\"."
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
+msgid "Help"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2606
+msgid "<b>User Dictionary</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2642
+msgid "User Table"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2728
+msgid ""
+"<b>Table File Format:</b>\n"
+" Each line contains the following:\n"
+" \"table_code phrase frequency\" like \"a 啊 100\"."
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2756
+msgid "<b>User Table</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2778
+msgid "User data"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2808
+msgid "Shortcuts"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2864
+msgid "Intelligent Pinyin input method for IBus"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2890
+msgid "https://github.com/libpinyin/ibus-libpinyin"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2907
+msgid ""
+"<small>\n"
+"<b>Authors:</b>\n"
+"Peng Wu\n"
+"Peng Huang\n"
+"BYVoid\n"
+"\n"
+"<b>Main Contributors:</b>\n"
+"Weixuan XIAO, Linyu XU\n"
+"\n"
+"<b>Contributors:</b>\n"
+"koterpilla, Zerng07, Hillwood Yang\n"
+"</small>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:2947
+msgid "About"
+msgstr ""
+
+#: data/ibus-setup-libpinyin.desktop.in:3
+msgid "IBus LibPinyin Setup"
+msgstr ""
+
+#: data/ibus-setup-libpinyin.desktop.in:4
+msgid "Set ibus-libpinyin Preferences"
+msgstr ""
+
+#: data/ibus-setup-libbopomofo.desktop.in:3
+msgid "IBus LibBopomofo Preferences"
+msgstr ""
+
+#: data/ibus-setup-libbopomofo.desktop.in:4
+msgid "Set ibus-libbopomofo Preferences"
+msgstr ""
diff --git a/po/es.po b/po/es.po
index 661f6de..ce78d14 100644
--- a/po/es.po
+++ b/po/es.po
@@ -1,13 +1,16 @@
# Emilio Herrera <ehespinosa57@gmail.com>, 2018. #zanata, 2020, 2021, 2022.
# Adolfo Jayme Barrientos <fitoschido@gmail.com>, 2020.
+# Javier Francisco <fserrador@gmail.com>, 2025.
+# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2025.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
-"PO-Revision-Date: 2022-10-17 09:19+0000\n"
-"Last-Translator: Emilio Herrera <ehespinosa57@gmail.com>\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
+"PO-Revision-Date: 2025-04-12 11:53+0000\n"
+"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
+"memory@weblate.org>\n"
"Language-Team: Spanish <https://translate.fedoraproject.org/projects/"
"ibus-libpinyin/main/es/>\n"
"Language: es\n"
@@ -15,128 +18,158 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.14.1\n"
+"X-Generator: Weblate 5.10.4\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr "El archivo de tabla está importado."
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr "El archivo de tabla está exportado."
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr "El diccionario pinyin está importado."
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr "El diccionario pinyin está exportado."
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "Método de entrada Libpinyin"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "Pinyin inteligente (depurar)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "Método de entrada pinyin inteligente (depurar)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "Bopomofo (depurar)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "Método de entrada bopomofo (depurar)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "Chino"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "Inglés"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "Cambiar a modo inglés"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "Cambiar a modo chino"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "Letra de anchura completa"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "Letra de anchura media"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "Pasar a modo de letras de anchura media"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "Pasar a modo de letras de anchura completa"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "Puntuación de anchura completa"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "Puntuación de anchura media"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "Pasar a modo de puntuación de anchura media"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "Pasar a modo de puntuación de anchura completa"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "Chino simplificado"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "Chino tradicional"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "Pasar a modo chino tradicional"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "Pasar a modo chino simplificado"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "Preferencias"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr "Convertidor Lua"
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr "Utilice el Conversor Lua"
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr "Ninguno"
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr "Escriba la palabra en inglés."
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "Utilice «hspnz» para la introducción."
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
msgstr "Utiice el código de la tabla para entrar."
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "Elija un archivo"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "Guarde un archivo"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>Pinyin inteligente %s</b></big>"
@@ -310,6 +343,7 @@ msgid "Google CN"
msgstr "Google CN"
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr "Predeterminado"
@@ -345,305 +379,317 @@ msgstr "PYJJ"
msgid "XHE"
msgstr "XHE"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "Horizontal"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "Vertical"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr "Frecuencia"
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr "Longitud de pinyin"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr "Heredado"
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "Idioma:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "Anchura media/completa:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "Signos de puntuación:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "Completo"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "Medio"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "Chino:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "Simplificado"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "Tradicional"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>Estado inicial</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr "Estilo de visualización:"
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "Orientación de los candidatos:"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "Número de candidatos:"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>Interfaz</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr "Ajuste dinámico del orden de los candidatos."
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr "Recordar cada entrada como una frase."
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr "Ordenar candidatos por:"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>Candidatos</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr "Distribución de teclado:"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr ""
+"Consejo: estos cambios pueden no surtir efecto salvo que reinicie el IME."
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr "<b>Teclado</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "General"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "Pinyin completo"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "Pinyin doble"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr "Mostrar la entrada cruda de Pinyin Doble"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "Pinyin incompleto"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>Modo pinyin</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "[Mayús] seleccionar candidato"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "[-] [=] cambio de página"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "[,] [.] cambio de página"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "Validar automáticamente"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr " [ ] voltear página"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr "<b>Entrada personalizada</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr "Activar corrección de pinyin"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr "<b>Pinyin correcto</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr "Activar entrada por nube"
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr "Fuente Desde:"
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr "<b>Opción de entrada por nube</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr "Modo de pinyin"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr "Bopomofo incompleto"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr "Asignación de teclado:"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr "<b>Modo bopomofo</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr "Teclas de selección:"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr "Activar guía de selección de candidatos"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr "Activar teclas auxiliares (F1 .. F10)"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr "Activar selección auxiliar en teclado numérico"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr "<b>Modo de selección</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr "Función de la tecla Intro:"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr "Validar primer candidato"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr "Validar texto bruto"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>Otro</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr "Modo bopomofo"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr "Habilitar sílaba borrosa"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr "Sílaba borrosa"
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr ""
-"Consejo: estos cambios pueden no surtir efecto salvo que reinicie el IME."
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr "<b>Opción del diccionario</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "Diccionario"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr "Extensión Lua"
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
-msgstr ""
+msgstr "Modo Tabla"
-#: setup/ibus-libpinyin-preferences.ui:2158
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2313
msgid "English Mode"
-msgstr "Inglés"
+msgstr "Modo Inglés"
-#: setup/ibus-libpinyin-preferences.ui:2172
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2327
msgid "English Candidate"
-msgstr "Inglés"
+msgstr "Candidato Inglés"
-#: setup/ibus-libpinyin-preferences.ui:2186
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
-msgstr "Número de candidatos:"
+msgstr "Candidatos Emoji"
-#: setup/ibus-libpinyin-preferences.ui:2200
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
-msgstr "Orientación de los candidatos:"
+msgstr "Sugerencia Candidata"
-#: setup/ibus-libpinyin-preferences.ui:2220
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
-msgstr "<b>Entrada personalizada</b>"
+msgstr "<b>Modos de Entrada</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr "Secuencia en Lua de usuario"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "Editar"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr "<b>Personalizar IME</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "Exportar"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "Importar"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr "Diccionario del usuario"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "Vaciar todos los datos"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "Vaciar"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -655,58 +701,54 @@ msgstr ""
" \"frase pinyin\" o \"frecuencia de frase pinyin\"\n"
" como \"你好 ni'hao\" o \"你好 ni'hao 5\"."
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "Ayuda"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr "<b>Diccionario del usuario</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
-msgstr "Datos del usuario"
+msgstr "Tabla de Usuario"
-#: setup/ibus-libpinyin-preferences.ui:2573
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
" \"table_code phrase frequency\" like \"a 啊 100\"."
msgstr ""
-"<b>Formato de archivo del diccionario:</b>\n"
-" Cada renglón contiene uno de lo siguiente:\n"
-" \"frase pinyin\" o \"frecuencia de frase pinyin\"\n"
-" como \"你好 ni'hao\" o \"你好 ni'hao 5\"."
+"<b>Formato de archivo de tabla:</b>\n"
+" Cada línea contiene uno de lo siguiente:\n"
+" \"código_tabla frase frecuencia\" como \"un 啊 100\"."
-#: setup/ibus-libpinyin-preferences.ui:2601
-#, fuzzy
+#: setup/ibus-libpinyin-preferences.ui:2756
msgid "<b>User Table</b>"
-msgstr "<b>Diccionario del usuario</b>"
+msgstr "<b>Tabla de usuario</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "Datos del usuario"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "Atajos"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr "Método de entrada pinyin inteligente para IBus"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
-msgstr "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr "<small>Copyright (c) 2011-2024 Peng Wu</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -734,7 +776,7 @@ msgstr ""
"koterpilla, Zerng07, Hillwood Yang\n"
"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "Acerca de"
diff --git a/po/fr.po b/po/fr.po
index bbd8f21..4a6da7a 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -13,11 +13,11 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
"PO-Revision-Date: 2024-01-16 13:37+0000\n"
"Last-Translator: Damien Pou <dampato+linux@ik.me>\n"
-"Language-Team: French <https://translate.fedoraproject.org/projects/"
-"ibus-libpinyin/main/fr/>\n"
+"Language-Team: French <https://translate.fedoraproject.org/projects/ibus-"
+"libpinyin/main/fr/>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -25,126 +25,156 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 5.3.1\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr ""
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr ""
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "Méthode de saisie libpinyin"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "Pinyin intelligent (débogage)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "Méthode de saisie Pinyin intelligente (débogage)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "Bopomofo (débogage)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "Méthode de saisie Bopomofo (débogage)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "Chinois"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "Anglais"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "Passer en mode Anglais"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "Passer en mode Chinois"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "Pleine chasse"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "Demi-chasse"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "Passer en mode Demi-chasse"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "Passer en mode Pleine chasse"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "Ponctuation pleine chasse"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "Ponctuation demi-chasse"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "Passer en ponctuation demi-chasse"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "Passer en ponctuation pleine chasse"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "Chinois simplifié"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "Chinois traditionnel"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "Passer en mode Chinois traditionnel"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "Passer en mode Chinois simplifié"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "Préférences"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr ""
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr "Veuillez saisir le mot anglais."
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "Veuillez utiliser « hspnz » pour saisir."
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
msgstr "Veuillez utiliser le code de la table pour la saisie."
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "Veuillez choisir un fichier"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "Veuillez enregistrer le fichier"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>%s intelligent Pinyin</b></big>"
@@ -318,6 +348,7 @@ msgid "Google CN"
msgstr "Google CN"
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr "Par défaut"
@@ -353,300 +384,320 @@ msgstr "PYJJ"
msgid "XHE"
msgstr "XHE"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "Horizontal"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "Vertical"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr "Fréquence"
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr "Taille du pinyin"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "Langue :"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "Chasse :"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "Chasse de la ponctuation :"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "Pleine"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "Demi"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "Chinois :"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "Simplifié"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "Traditionnel"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>État initial</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr "Style d'affichage :"
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "Orientation des candidats :"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "Nombre de candidats :"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>UI</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr "Ajustement dynamique de l'ordre des candidats."
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr "Se souvenir de chaque entrée en tant que phrase."
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr "Trier les candidats par :"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>Candidats</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+#, fuzzy
+msgid "Keyboard Layout:"
+msgstr "Type de clavier :"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr ""
+"Note : ce changement peut ne prendre effet qu’après le redémarrage de l’IME."
+
+#: setup/ibus-libpinyin-preferences.ui:842
+#, fuzzy
+msgid "<b>Keyboard</b>"
+msgstr "<b>Autre</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "Général"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "Pinyin complet"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "Pinyin double"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr "Montrer le pinyin non formaté du pinyin double"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "Pinyin incomplet"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>Mode Pinyin</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "[Shift] sélectionne le candidat"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "[-] [=] change de page"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "[,] [.] change de page"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "Validation automatique"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+#, fuzzy
+msgid " [ ] flip page"
+msgstr "[-] [=] change de page"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr "<b>Entrée personnalisée</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr "Activer la correction automatique du pinyin"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr "<b>Correction pinyin</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr "Activer l’entrée Cloud"
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr "Source :"
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr "<b>Options entrée Cloud</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr "Mode Pinyin"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr "Bopomofo incomplet"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr "Type de clavier :"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr "<b>Mode Bopomofo</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr "Touches de sélection :"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr "Activer le guide de sélection des candidats"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr "Activer les touches auxiliaires (F1…F10)"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr "Activer la sélection auxiliaire au pavé numérique"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr "<b>Mode de sélection</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr "Action de la toucher Entrer :"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr "Valider le premier candidat"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr "Valider le texte brut"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>Autre</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr "Mode Bopomofo"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr "Activer les syllabes floues"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr "Syllabes floues"
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr ""
-"Note : ce changement peut ne prendre effet qu’après le redémarrage de l’IME."
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr "<b>Dictionnaire</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "Dictionnaire"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr "Extension Lua"
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr "Mode table"
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
msgid "English Mode"
msgstr "Mode en anglais"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
msgid "English Candidate"
msgstr "Candidat anglais"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
msgstr "Nombre de candidats"
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
msgstr "Orientation des candidats"
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
msgstr "<b>Mode de saisie</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr "Script Lua utilisateur"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "Modifier"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr "<b>Personnaliser l'IME</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "Exporter"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "Importer"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr "Dictionnaire utilisateur"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "Effacer toutes les données"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "Effacer"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -658,20 +709,20 @@ msgstr ""
" « phrase pinyin » ou « phrase pinyin  fréquence »\n"
" tels que « 你好 ni’hao » ou « 你好 ni’hao 5 »."
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "Aide"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr "<b>Dictionnaire utilisateur</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
msgstr "Table utilisateur"
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
@@ -681,31 +732,31 @@ msgstr ""
" Chaque ligne contient ce qui suit :\n"
" \"table_code phrase frequency\" comme \"a 啊 100\"."
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
msgid "<b>User Table</b>"
msgstr "<b>Table utilisateur</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "Donnés utilisateur"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "Raccourcis"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr "Méthode de saisie Pinyin intelligente pour IBus"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
-msgstr "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr "<small>Copyright (c) 2011-2024 Peng Wu</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -733,7 +784,7 @@ msgstr ""
"koterpilla, Zerng07, Hillwood Yang\n"
"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "À propos"
diff --git a/po/ibus-libpinyin.pot b/po/ibus-libpinyin.pot
index 305737f..c9de760 100644
--- a/po/ibus-libpinyin.pot
+++ b/po/ibus-libpinyin.pot
@@ -6,10 +6,10 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: ibus-libpinyin 1.12.91\n"
+"Project-Id-Version: ibus-libpinyin 1.15.94\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,126 +18,156 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr ""
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr ""
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr ""
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr ""
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr ""
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr ""
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr ""
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr ""
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr ""
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr ""
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr ""
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr ""
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr ""
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr ""
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr ""
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr ""
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr ""
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr ""
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr ""
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr ""
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr ""
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
msgstr ""
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr ""
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr ""
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr ""
@@ -309,6 +339,7 @@ msgid "Google CN"
msgstr ""
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr ""
@@ -344,299 +375,316 @@ msgstr ""
msgid "XHE"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr ""
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
msgid "English Mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
msgid "English Candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -644,51 +692,51 @@ msgid ""
" like \"你好 ni'hao\" or \"你好 ni'hao 5\"."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
" \"table_code phrase frequency\" like \"a 啊 100\"."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
msgid "<b>User Table</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -704,7 +752,7 @@ msgid ""
"</small>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr ""
diff --git a/po/ka.po b/po/ka.po
index 5a8702f..563b815 100644
--- a/po/ka.po
+++ b/po/ka.po
@@ -1,15 +1,17 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Peng Huang <shawn.p.huang@gmail.com>
# This file is distributed under the same license as the ibus-libpinyin package.
-# Temuri Doghonadze <temuri.doghonadze@gmail.com>, 2022, 2023.
+# Temuri Doghonadze <temuri.doghonadze@gmail.com>, 2022, 2023, 2024, 2025.
+# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2025.
msgid ""
msgstr ""
"Project-Id-Version: ibus-libpinyin 1.12.91\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
-"PO-Revision-Date: 2023-05-31 05:20+0000\n"
-"Last-Translator: Temuri Doghonadze <temuri.doghonadze@gmail.com>\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
+"PO-Revision-Date: 2025-05-05 13:51+0000\n"
+"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
+"memory@weblate.org>\n"
"Language-Team: Georgian <https://translate.fedoraproject.org/projects/"
"ibus-libpinyin/main/ka/>\n"
"Language: ka\n"
@@ -17,131 +19,161 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.17\n"
+"X-Generator: Weblate 5.11.3\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr "ცხრილის ფაილი შემოტანილია."
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr "ცხრილის ფაილი გატანილია."
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr "ფინინის ლექსიკონის ფაილი შემოტანილია."
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr "ფინინის ლექსიკონის ფაილი გატანილია."
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "Libpinyin-ით შეტანის მეთოდი"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
-msgstr ""
+msgstr "ჭკვიანი ფინინი (გამართვა)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
-msgstr ""
+msgstr "ჭკვიანი ფიფინის შეყვანის მეთოდი (გამართვა)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "ბოპომოფო (გამართვა)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
-msgstr ""
+msgstr "ბოპომოფოს შეყვანის მეთოდი (გამართვა)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "ჩინური"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "ინგლისური"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "ინგლისურ რეჟიმზე გადართვა"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "ჩინურ რეჟიმზე გადართვა"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
-msgstr ""
+msgstr "სრულსიგანიანი ასო"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
-msgstr ""
+msgstr "ნახევარსიგანიანი ასო"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
-msgstr ""
+msgstr "ნახევარსიგანიანი ასოს რეჟიმზე გადასვლა"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
-msgstr ""
+msgstr "სრულსიგანიანი ასოს რეჟიმზე გადართვა"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
-msgstr ""
+msgstr "სრულსიგანიანი პუნქტ"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
-msgstr ""
+msgstr "ნახევარსიგანიანი პუნქტ"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
-msgstr ""
+msgstr "ნახევარსიგანიანი პუნქტუაციის რეჟიმზე გადართვა"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
-msgstr ""
+msgstr "სრულსიგანიანი პუნქტუაციის რეჟიმზე გადართვა"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "გამარტივებული ჩინური"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "ტრადიციული ჩინური"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "ტრადიციულ ჩინურზე გადართვა"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "მარტივ ჩინურზე გადართვა"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "პარამეტრები"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr "Lua-ში გადამყვანი"
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr "Lua-ში გადამყვანის გამოყენება"
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr "არაფერი"
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
-msgstr ""
+msgstr "შეიყვანეთ ინგლისური სიტყვა."
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
-msgstr ""
+msgstr "შესაყვანად გამოიყენეთ \"hspnz\"."
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
-msgstr ""
+msgstr "გამოიყენეთ ცხრილის კოდი შესაყვანად."
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "გთხოვთ, აირჩიოთ ფაილი"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "გთხოვთ, შეინახოთ ფაილი"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
-msgstr ""
+msgstr "<big><b>ჭკვიანი ფინინი %s</b></big>"
#: setup/config.py:30
msgid "Intelligent Pinyin"
@@ -220,6 +252,8 @@ msgid ""
"Please press a key (or a key combination).\n"
"The dialog will close when the key is released."
msgstr ""
+"დააჭირეთ ღილაკს (ან მათ კომბინაციას).\n"
+"დიალოგი დაიხურება, როცა ღილაკს გაუშვებთ."
#: setup/keyboardshortcut.py:174
msgid "Please press a key (or a key combination)"
@@ -245,19 +279,19 @@ msgstr "ჩინური/ინგლისურის გადართვ
#: setup/shortcuteditor.py:47
msgid "Full/Half Width Letter"
-msgstr ""
+msgstr "სრულ/ნახევარსიგანიანი ასო"
#: setup/shortcuteditor.py:48
msgid "Full/Half Width Punct"
-msgstr ""
+msgstr "სრულ/ნახევარსიგანიანი პუნქტ"
#: setup/shortcuteditor.py:49
msgid "Full/Half Width Both Switch"
-msgstr ""
+msgstr "სრულ/ნახევარსიგანიანის ორივეს გადართვა"
#: setup/shortcuteditor.py:50
msgid "Switch Traditional/Simplfied Chinese"
-msgstr ""
+msgstr "ტრადიციული/გამარტივებული ჩინურის გადართვა"
#: setup/shortcuteditor.py:88
msgid "Accelerator"
@@ -265,7 +299,7 @@ msgstr "ამაჩქარებელი"
#: setup/shortcuteditor.py:106
msgid "This shortcut key is already in use."
-msgstr ""
+msgstr "ეს მალსახმობი ღილაკი უკვე გამოიყენება."
#. set default button
#: setup/shortcuteditor.py:164
@@ -279,7 +313,7 @@ msgstr "_ჩასწორება"
#: setup/shortcuteditor.py:195
msgid "Select Switching Key"
-msgstr ""
+msgstr "აირჩიეთ გადართვის ღილაკი"
#: setup/ibus-libpinyin-preferences.ui:20
msgid "Standard"
@@ -310,6 +344,7 @@ msgid "Google CN"
msgstr "Google CN"
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr "ნაგულისხმები"
@@ -345,351 +380,375 @@ msgstr "PYJJ"
msgid "XHE"
msgstr "XHE"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "ჰორიზონტალური"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "ვერტიკალური"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr "სიხშირე"
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr "პინინის სიგრძე"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr "მოძველებული"
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "ენა:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "ნახევარი/სრული სიგანე:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "პუნქტუაციები:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "სრული"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "ნახევარი"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "ჩინური:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "გამარტივებული"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "ტრადიციული"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>საწყისი მდგომარეობა</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr "ჩვენების სტილი:"
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
-msgstr ""
+msgstr "კანდიდატების ორიენტაცია:"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
-msgstr ""
+msgstr "კანდიდატების რაოდენობა:"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>UI</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
-msgstr ""
+msgstr "კანდიდატების მიმდევრობის დინამიკური გასწორება."
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
-msgstr ""
+msgstr "თითოეული შეყვანის დამახსოვრება ფრაზის სახით."
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
-msgstr ""
+msgstr "კანდიდატების დალაგების პირობა:"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>კანდიდატი</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr "კლავიატურის განლაგება:"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr "მინიშნება: ცვლილებები ძალაში ime-ის რესტარტის შემდეგ შევა."
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr "<b>კლავიატურა</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "ზოგადი"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "სრული პინინი"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "ორმაგი პინინი"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
-msgstr ""
+msgstr "ორმაგი ფინინის დაუმუშავებელი შეყვანის ჩვენება"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "არასდრული პინინი"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>პინინის რეჟიმი</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
-msgstr ""
+msgstr "[Shift] კანდიდატის არჩევა"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
-msgstr ""
+msgstr "[-] [=] გვერდის გადაბრუნება"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
-msgstr ""
+msgstr "[,] [.] გვერდის გადაბრუნება"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "ავტომატური კომიტი"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr " [ ] გვერდის გადაბრუნება"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
-msgstr ""
+msgstr "<b>შეყვანის მორგება</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
-msgstr ""
+msgstr "ფინინის შესწორების ჩართვა"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
-msgstr ""
+msgstr "<b>ფინინის გასწორება</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
-msgstr ""
+msgstr "ღრუბლოვანი შეყვანის ჩართვა"
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
-msgstr ""
+msgstr "წყარო საიდან:"
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
-msgstr ""
+msgstr "<b>ღრუბლოვანი შეყვანის მორგება</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
-msgstr ""
+msgstr "ფინინის რეჟიმი"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
-msgstr ""
+msgstr "დაუსრულებელი ბოპომოფო"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
-msgstr ""
+msgstr "კლავიატურის ასახვა:"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
-msgstr ""
+msgstr "<b>ბოპომოფოს რეჟიმი</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
-msgstr ""
+msgstr "მონიშვნის ღილაკები:"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
-msgstr ""
+msgstr "გამძღოლი ღილაკის გამოყენება კანდიდატების არჩევისას"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
-msgstr ""
+msgstr "დამატებითი არჩევი ღილაკების (F1..F10) ჩართვა"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
-msgstr ""
+msgstr "დამატებითი მონიშვნის ღილაკების რიცხვების ჩართვა დამატებით კლავიატურაზე"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
-msgstr ""
+msgstr "<b>მონიშვნის რეჟიმი</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
-msgstr ""
+msgstr "Enter ღილაკის ფუნქცია:"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
-msgstr ""
+msgstr "პირველი კანდიდატის გადაცემა"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
-msgstr ""
+msgstr "ორიგინალი ტექსტის გადაცემა"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>სხვა</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
-msgstr ""
+msgstr "მოპომოფოს რეჟიმი"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
-msgstr ""
+msgstr "გაურკვეველი ფინინის ჩართვა"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
-msgstr ""
-
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr ""
+msgstr "გაურკვეველი მარცვალი"
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
-msgstr ""
+msgstr "<b>ლექსიკონის პარამეტრი</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "ლექსიკონი"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
-msgstr ""
+msgstr "Lua-ის გაფართოება"
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
-msgstr ""
+msgstr "ცხრილის რეჟიმი"
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
msgid "English Mode"
-msgstr ""
+msgstr "ინგლისურის რეჟიმი"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
msgid "English Candidate"
-msgstr ""
+msgstr "ინგლისურის კანდიდატი"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
-msgstr ""
+msgstr "ემოჯის კანდიდატი"
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
-msgstr ""
+msgstr "მინიშნების კანდიდატი"
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
-msgstr ""
+msgstr "<b>შეყვანის რეჟიმები</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
-msgstr ""
+msgstr "მომხმარებლის Lua-ის სკრიპტი"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "ჩასოწრება"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
-msgstr ""
+msgstr "<b>IME-ის მორგება</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "გატანა"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "შემოტანა"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
-msgstr ""
+msgstr "მომხმარებლის ლექსიკონი"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "მონაცემების გაწმენდა"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "გაწმენდა"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
" \"phrase pinyin\" or \"phrase pinyin frequency\"\n"
" like \"你好 ni'hao\" or \"你好 ni'hao 5\"."
msgstr ""
+"<b>ლექსიკონის ფაილის ფორმატი:</b>\n"
+" თითოეული ხაზი შეიცავს ერთ-ერთს ამათგან:\n"
+" \"phrase pinyin\" ან \"phrase pinyin frequency\"\n"
+" მაგ: \"你好 ni'hao\" ან \"你好 ni'hao 5\"."
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "დახმარება"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
-msgstr ""
+msgstr "<b>მომხმარებლის ლექსიკონი</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
-msgstr ""
+msgstr "მომხმარებლის ცხრილი"
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
" \"table_code phrase frequency\" like \"a 啊 100\"."
msgstr ""
+"<b>ცხრილის ფაილის ფორმატი:</b>\n"
+" თითოეული ხაზი შეიცავს:\n"
+" \"table_code phrase frequency\" მაგ \"a 啊 100\"."
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
msgid "<b>User Table</b>"
-msgstr ""
+msgstr "<b>მომხმარებლის ცხრილი</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "სამომხმარებლო მონაცემები"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "მალსახმობები"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
-msgstr ""
+msgstr "ჭკვიანი ფინინის შეყვანის მეთოდი IBus-სთვის"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
-msgstr "<small>(c) 2011-2012 Peng Wu, ყველა უფლება დაცულია</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr "<small>(c) 2011-2024 Peng Wu, ყველა უფლება დაცულია</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -704,8 +763,20 @@ msgid ""
"koterpilla, Zerng07, Hillwood Yang\n"
"</small>"
msgstr ""
+"<small>\n"
+"<b>ავტორი:</b>\n"
+"Peng Wu\n"
+"Peng Huang\n"
+"BYVoid\n"
+"\n"
+"<b>მთავარი მოხალისეები:</b>\n"
+"Weixuan XIAO, Linyu XU\n"
+"\n"
+"<b>მოხალისეები:</b>\n"
+"koterpilla, Zerng07, Hillwood Yang\n"
+"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "შესახებ"
@@ -719,7 +790,7 @@ msgstr "მოირგეთ ibus-libpinyin-ის პარამეტრე
#: data/ibus-setup-libbopomofo.desktop.in:3
msgid "IBus LibBopomofo Preferences"
-msgstr ""
+msgstr "IBus LibBopomofo-ის მორგება"
#: data/ibus-setup-libbopomofo.desktop.in:4
msgid "Set ibus-libbopomofo Preferences"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index e5954e1..b4cdd11 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -5,7 +5,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
"PO-Revision-Date: 2022-12-01 00:20+0000\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"Language-Team: Portuguese (Brazil) <https://translate.fedoraproject.org/"
@@ -17,126 +17,156 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Weblate 4.14.2\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr ""
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr ""
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "Método de entrada Libpinyin"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "Pinyin inteligente (depurar)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "Método de entrada pinyin inteligente (depurar)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "Bopomofo (depurar)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "Método de entrada bopomofo (depurar)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "Chinês"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "Inglês"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "Trocar para modo inglês"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "Trocar para modo chinês"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "Letra de largura completa"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "Letra de meia largura"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "Trocar para modo de letra de meia largura"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "Trocar para modo de letra de largura completa"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "Pontuação de largura completa"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "Pontuação de meia largura"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "Trocar para modo de pontuação de meia largura"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "Trocar para modo de pontuação de largura completa"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "Chinês Simplificado"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "Chinês Tradicional"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "Trocar para o modo Chinês Tradicional"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "Trocar para o modo Chinês Simplificado"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "Preferências"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr ""
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr "Insira a palavra em inglês."
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "Use \"hspnz\" para inserir."
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
msgstr "Use um código da tabela para inserir."
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "Escolha um arquivo"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "Salve um arquivo"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>Pinyin inteligente %s</b></big>"
@@ -310,6 +340,7 @@ msgid "Google CN"
msgstr "Google CN"
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr "Padrão"
@@ -345,301 +376,318 @@ msgstr "PYJJ"
msgid "XHE"
msgstr "XHE"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "Horizontal"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "Vertical"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr "Frequência"
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr "Comprimento de pinyin"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "Idioma:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "Cheio"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "Meio"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "Chinês:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "Simplificado"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "Tradicional"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>UI</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "Geral"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr ""
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
#, fuzzy
msgid "English Mode"
msgstr "Inglês"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
#, fuzzy
msgid "English Candidate"
msgstr "Inglês"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -647,52 +695,52 @@ msgid ""
" like \"你好 ni'hao\" or \"你好 ni'hao 5\"."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
" \"table_code phrase frequency\" like \"a 啊 100\"."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
#, fuzzy
msgid "<b>User Table</b>"
msgstr "<b>UI</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -708,7 +756,7 @@ msgid ""
"</small>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr ""
diff --git a/po/ru.po b/po/ru.po
index 6d4e8a1..aa315be 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
"PO-Revision-Date: 2009-10-14 09:44+0300\n"
"Last-Translator: Alexey Kotlyarov <koterpillar@gmail.com>\n"
"Language-Team: Russian\n"
@@ -16,142 +16,172 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr ""
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr ""
+
+#: src/PYMain.cc:117
#, fuzzy
msgid "Libpinyin input method"
msgstr "Метод ввода пиньинь"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
#, fuzzy
msgid "Intelligent Pinyin (debug)"
msgstr "Пиньинь"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
#, fuzzy
msgid "Intelligent Pinyin input method (debug)"
msgstr "Метод ввода пиньинь"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
#, fuzzy
msgid "Bopomofo (debug)"
msgstr "Метод ввода пиньинь"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
#, fuzzy
msgid "Bopomofo input method (debug)"
msgstr "Метод ввода пиньинь"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "Китайский"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "Английский"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr ""
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr ""
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
#, fuzzy
msgid "Full Width Punct"
msgstr "Знаки препинания полной/половинной ширины"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
#, fuzzy
msgid "Half Width Punct"
msgstr "Знаки препинания половинной ширины:"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
#, fuzzy
msgid "Switch to Half Width Punctuation Mode"
msgstr "Знаки препинания половинной ширины:"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
#, fuzzy
msgid "Switch to Full Width Punctuation Mode"
msgstr "Знаки препинания полной/половинной ширины"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
#, fuzzy
msgid "Simplified Chinese"
msgstr "Упрощенные/традиционные иероглифы"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
#, fuzzy
msgid "Traditional Chinese"
msgstr "Упрощенные/традиционные иероглифы"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
#, fuzzy
msgid "Switch to Traditional Chinese Mode"
msgstr "Упрощенные/традиционные иероглифы"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
#, fuzzy
msgid "Preferences"
msgstr "Настройки пиньиня"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr ""
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr ""
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr ""
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr ""
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr ""
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
msgstr ""
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr ""
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr ""
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, fuzzy, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>IBus Пиньинь %s</b></big>"
@@ -328,6 +358,7 @@ msgid "Google CN"
msgstr ""
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr ""
@@ -363,323 +394,342 @@ msgstr "PYJJ"
msgid "XHE"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
#, fuzzy
msgid "Pinyin Length"
msgstr "<b>Пиньинь</b>"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "Язык:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "Полная/половинная ширина:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "Знаки препинания:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "Полная"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "Половинная"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "Иероглифы:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "Упрощенные"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "Традиционные"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>Начальное состояние</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "Число кандидатов"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "Число кандидатов"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
#, fuzzy
msgid "<b>UI</b>"
msgstr "<b>Другие</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
#, fuzzy
msgid "Sort candidates by:"
msgstr "Число кандидатов"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
#, fuzzy
msgid "<b>Candidates</b>"
msgstr "<b>Другие</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:842
+#, fuzzy
+msgid "<b>Keyboard</b>"
+msgstr "<b>Другие</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "Общие"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "Полный пиньинь"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "Двойной пиньинь"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "Неполный пиньинь"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
#, fuzzy
msgid "<b>Pinyin mode</b>"
msgstr "<b>Пиньинь</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "Использовать [Shift] для выбора кандидатов"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "Использовать клавиши [-] [=] для переключения страниц"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "Использовать клавиши [,] [.] для переключения страниц"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "Автоматически подтверждать фразу"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+#, fuzzy
+msgid " [ ] flip page"
+msgstr "Использовать клавиши [-] [=] для переключения страниц"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
#, fuzzy
msgid "<b>Input Custom</b>"
msgstr "<b>Начальное состояние</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
#, fuzzy
msgid "Enable pinyin correction"
msgstr "Исправления"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
#, fuzzy
msgid "<b>Correct pinyin</b>"
msgstr "Исправления"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
#, fuzzy
msgid "<b>Cloud Input Option</b>"
msgstr "<b>Начальное состояние</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
#, fuzzy
msgid "Pinyin mode"
msgstr "<b>Пиньинь</b>"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
#, fuzzy
msgid "Incomplete Bopomofo"
msgstr "Неполный пиньинь"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
#, fuzzy
msgid "<b>Bopomofo mode</b>"
msgstr "<b>Пиньинь</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
#, fuzzy
msgid "<b>Selection mode</b>"
msgstr "<b>Пиньинь</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
#, fuzzy
msgid "Commit first candidate"
msgstr "Использовать [Shift] для выбора кандидатов"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
#, fuzzy
msgid "<b>Other</b>"
msgstr "<b>Другие</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
#, fuzzy
msgid "Bopomofo mode"
msgstr "Метод ввода пиньинь"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
#, fuzzy
msgid "Enable fuzzy syllable"
msgstr "Включить нечеткий пиньинь."
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr ""
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
#, fuzzy
msgid "<b>Dictionary option</b>"
msgstr "<b>Другие</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
#, fuzzy
msgid "English Mode"
msgstr "Английский"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
#, fuzzy
msgid "English Candidate"
msgstr "Английский"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
#, fuzzy
msgid "Emoji Candidate"
msgstr "Число кандидатов"
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
#, fuzzy
msgid "Suggestion Candidate"
msgstr "Число кандидатов"
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
#, fuzzy
msgid "<b>Input Modes</b>"
msgstr "<b>Начальное состояние</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
#, fuzzy
msgid "<b>Customize IME</b>"
msgstr "<b>Начальное состояние</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -687,54 +737,54 @@ msgid ""
" like \"你好 ni'hao\" or \"你好 ni'hao 5\"."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
#, fuzzy
msgid "<b>User Dictionary</b>"
msgstr "<b>Другие</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
" \"table_code phrase frequency\" like \"a 啊 100\"."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
#, fuzzy
msgid "<b>User Table</b>"
msgstr "<b>Другие</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
#, fuzzy
msgid "Intelligent Pinyin input method for IBus"
msgstr "Метод ввода пиньинь для IBus"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -750,7 +800,7 @@ msgid ""
"</small>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "О программе"
diff --git a/po/si.po b/po/si.po
index 4fb379c..d93658c 100644
--- a/po/si.po
+++ b/po/si.po
@@ -7,7 +7,7 @@ msgstr ""
"Project-Id-Version: ibus-libpinyin 1.11.94\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
"PO-Revision-Date: 2021-08-19 06:05+0000\n"
"Last-Translator: Hela Basa <r45xveza@pm.me>\n"
"Language-Team: Sinhala <https://translate.fedoraproject.org/projects/ibus-"
@@ -19,126 +19,156 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.7.2\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr ""
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr ""
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "ලිබ්පින්යින් ආදාන ක්‍රමය"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr ""
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr ""
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr ""
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr ""
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "චීන"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr ""
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr ""
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr ""
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr ""
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr ""
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr ""
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr ""
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr ""
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr ""
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr ""
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr ""
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr ""
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr ""
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr ""
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
msgstr ""
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr ""
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr ""
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr ""
@@ -310,6 +340,7 @@ msgid "Google CN"
msgstr ""
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr ""
@@ -345,299 +376,316 @@ msgstr ""
msgid "XHE"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr ""
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
msgid "English Mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
msgid "English Candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -645,51 +693,51 @@ msgid ""
" like \"你好 ni'hao\" or \"你好 ni'hao 5\"."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
" \"table_code phrase frequency\" like \"a 啊 100\"."
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
msgid "<b>User Table</b>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -705,7 +753,7 @@ msgid ""
"</small>"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr ""
diff --git a/po/uk.po b/po/uk.po
index ba08744..09a9d0b 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -1,143 +1,173 @@
-# Yuri Chornoivan <yurchor@ukr.net>, 2015, 2020, 2022.
-# Yuri Chornoivan <yurchor@ukr.net>, 2015. #zanata, 2020, 2022.
+# Yuri Chornoivan <yurchor@ukr.net>, 2015, 2020, 2022, 2024, 2025.
+# Yuri Chornoivan <yurchor@ukr.net>, 2015. #zanata, 2020, 2022, 2024, 2025.
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
-"PO-Revision-Date: 2022-04-13 07:16+0000\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
+"PO-Revision-Date: 2025-01-09 08:38+0000\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <https://translate.fedoraproject.org/projects/"
-"ibus-libpinyin/master/uk/>\n"
+"ibus-libpinyin/main/uk/>\n"
"Language: uk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"X-Generator: Weblate 4.11.2\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 5.9.2\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr "Файл таблиці імпортовано."
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr "Файл таблиці експортовано."
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr "Файл словника піньїн імпортовано."
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr "Файл словника піньїн експортовано."
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "Спосід введення Libpinyin"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "Кмітливий піньїн (діагностика)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "Кмітливий спосіб введення піньїн (діагностика)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "Бопомофо (діагностика)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "Спосіб введення бопомофо (діагностика)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "Китайська"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "Англійська"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "Перемкнутися на режим англійської"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "Перемкнутися на режим китайської"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "Повноширинна літера"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "Півширинна літера"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "Перемкнутися на режим півширинних літер"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "Перемкнутися на режим повноширинних літер"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "Повноширинна пунктуація"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "Півширинна пунктуація"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "Перемкнутися на режим півширинної пунктуації"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "Перемкнутися на режим повноширинної пунктуації"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "Спрощена китайська"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "Традиційна китайська"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "Перемкнутися на режим традиційної китайської"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "Перемкнутися на режим спрощеної китайської"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "Параметри"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr "Перетворювач Lua"
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr "Використати перетворювач Lua"
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr "Немає"
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr "Будь ласка, введіть слово англійською."
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "Будь ласка, використовуйте «hspnz» для введення."
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
msgstr "Будь ласка, скористайтеся кодом таблиці для введення."
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "Будь ласка, виберіть файл"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "Будь ласка, збережіть файл"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>Кмітливий піньїн, %s</b></big>"
@@ -311,6 +341,7 @@ msgid "Google CN"
msgstr "Google CN"
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr "Типовий"
@@ -346,300 +377,317 @@ msgstr "PYJJ"
msgid "XHE"
msgstr "XHE"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "Горизонтально"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "Вертикально"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr "Частота"
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr "Довжина піньїну"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr "Застаріле"
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "Мова:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "Половинна/Повна ширина:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "Пунктуація:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "Повні"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "Половинні"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "Китайська:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "Спрощена"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "Традиційна"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>Початковий стан</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr "Стиль показу:"
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "Орієнтація варіантів:"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "Кількість варіантів:"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>Інтерфейс</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr "Динамічне коригування порядку варіантів."
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr "Запам’ятовувати усе введене як фразу."
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr "Критерій упорядковування варіантів:"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>Варіанти</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr "Розкладка клавіатури:"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr "Підказка: зміни набудуть чинності після перезапуску ime."
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr "<b>Клавіатура</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "Загальне"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "Повна піньїн"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "Подвійна піньїн"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr "Показати необроблене введення подвійної піньїн"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "Неповний піньїн"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>Режим піньїну</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "[Shift] вибрати варіант"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "[-] [=] перегорнути сторінку"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "[,] [.] перегорнути сторінку"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "Автонадсилання"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr " [ ] перегорнути сторінку"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr "<b>Налаштовування введення</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr "Увімкнути виправлення піньїну"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr "<b>Виправлення піньїн</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr "Увімкнути «хмарне» введення"
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr "Джерело:"
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr "<b>Параметр «хмарного» введення</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr "Режим піньїну"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr "Неповний бопомофо"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr "Прив’язка клавіатури:"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr "<b>Режим бопомофо</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr "Клавіші вибору:"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr "Увімкнути напрямну клавішу для вибору варіанта"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr "Увімкнути допоміжні клавіші вибору F1 .. F10"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr ""
"Увімкнути допоміжні клавіші вибору номерів на цифровій панелі клавіатури"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr "<b>Режим позначення</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr "Робота клавіші Enter:"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr "Надіслати перший варіант"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr "Надіслати початковий текст"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>Інше</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr "Режим бопомофо"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr "Увімкнути неточні склади"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr "Неточні склади"
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr "Підказка: зміни набудуть чинності після перезапуску ime."
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr "<b>Параметр словника</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "Словник"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr "Розширення Lua"
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr "Режим таблиці"
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
msgid "English Mode"
msgstr "Режим англійської"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
msgid "English Candidate"
msgstr "Варіант з англійської"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
msgstr "Варіант з емодзі"
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
msgstr "Варіант з пропозицій"
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
msgstr "<b>Режими введення</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr "Скрипт користувача мовою Lua"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "Змінити"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr "<b>Налаштовування IME</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "Експортувати"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "Імпортувати"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr "Словник користувача"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "Вилучити усі дані"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "Спорожнити"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -651,20 +699,20 @@ msgstr ""
" «фраза піньїн» або «фраза піньїн частота»\n"
" Приклади: «你好 ni'hao» або «你好 ni'hao 5»."
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "Довідка"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr "<b>Словник користувача</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
msgstr "Таблиця користувача"
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
@@ -674,31 +722,31 @@ msgstr ""
" Кожен рядок має містити такі дані:\n"
" «код_таблиці фраза частота», приклад: «a 啊 100»."
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
msgid "<b>User Table</b>"
msgstr "<b>Таблиця користувача</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "Дані користувача"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "Скорочення"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr "Кмітливий спосіб введення піньїн для IBus"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
msgstr "<small>© Peng Wu, 2011–2012</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -726,7 +774,7 @@ msgstr ""
"koterpilla, Zerng07, Hillwood Yang\n"
"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "Про програму"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index bf0a40c..6c01fbb 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -4,7 +4,7 @@
# Peng Huang <shawn.p.huang@gmail.com>, 2009.
# Harry Chen <harrychen0314@gmail.com>, 2020.
# Hillwood Yang <hillwoodroc@gmail.com>, 2020.
-# Peng Wu <pwu@redhat.com>, 2020, 2022.
+# Peng Wu <pwu@redhat.com>, 2020, 2022, 2024, 2025.
# Dingzhong Chen <wsxy162@gmail.com>, 2021.
# Liu Tao <lyuutau@outlook.com>, 2021.
msgid ""
@@ -12,138 +12,168 @@ msgstr ""
"Project-Id-Version: ibus-libpinyin 1.2.99\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
-"PO-Revision-Date: 2022-04-12 07:17+0000\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
+"PO-Revision-Date: 2025-01-09 08:49+0000\n"
"Last-Translator: Peng Wu <pwu@redhat.com>\n"
"Language-Team: Chinese (Simplified) <https://translate.fedoraproject.org/"
-"projects/ibus-libpinyin/master/zh_CN/>\n"
+"projects/ibus-libpinyin/main/zh_CN/>\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 4.11.2\n"
+"X-Generator: Weblate 5.9.2\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr "码表文件已导入。"
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr "码表文件已导出。"
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr "拼音词典已导入。"
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr "拼音词典已导出。"
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "智能拼音输入法"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "智能拼音(调试)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "智能拼音输入法(调试)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "注音(调试)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "注音输入法(调试)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "中文"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "英文"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "切换到英文模式"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "切换到中文模式"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "全角字母"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "半角字母"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "切换到半母字母模式"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "切换到全角字母模式"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "全角标点"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "半角标点"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "切换到半角标点模式"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "切换到全角标点模式"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "简体中文"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "繁体中文"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "切换到繁体中文模式"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "切换到简体中文模式"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "首选项"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr "Lua Converter"
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr "使用 Lua Convertor"
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr "无"
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr "请输入英文单词。"
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "请用 \"hspnz\" 笔画输入中文字符。"
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
msgid "Please use table code to input."
msgstr "请用导入的码表输入中文字符。"
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "请选择文件"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "请保存文件"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>IBus 智能拼音 %s</b></big>"
@@ -317,6 +347,7 @@ msgid "Google CN"
msgstr "谷歌"
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr "默认"
@@ -352,299 +383,316 @@ msgstr "拼音加加"
msgid "XHE"
msgstr "小鹤"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "水平"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "竖直"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr "词频"
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr "拼音长度"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr "词语模式"
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "语言:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "全角/半角:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "标点符号:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "全角"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "半角"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "中文:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "简体"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "繁体"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>初始状态</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr "显示风格:"
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "候选词排列方向:"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "每页显示候选词数:"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>外观</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr "动态调整候选词序"
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr "将每个输入记录为新的词汇"
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr "候选词排列顺序:"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>候选词</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+msgid "Keyboard Layout:"
+msgstr "键盘布局:"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr "提示:此更改可能需要重启智能拼音输入法后生效。"
+
+#: setup/ibus-libpinyin-preferences.ui:842
+msgid "<b>Keyboard</b>"
+msgstr "<b>键盘</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "常规"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "全拼"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "双拼"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr "显示双拼原始输入"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "简拼"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>拼音模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "[Shift] 键选次候选词"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "[-][=] 键翻页"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "[,][.] 键翻页"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "自动上词"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+msgid " [ ] flip page"
+msgstr " 【】 键翻页"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr "<b>输入个性化</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr "启动拼音纠错"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr "<b>拼音纠错</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr "启用云输入"
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr "云输入源:"
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr "<b>云输入选项</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr "拼音模式"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr "简拼"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr "键盘映射:"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr "<b>注音模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr "选词键:"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr "启用选词引导键"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr "启用辅助选词键 F1~ F10"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr "启用数字键盘辅助选词键"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr "<b>选词模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr "Enter 键功能:"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr "输出第一个候选词"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr "输出原本的英文字"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>其他</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr "注音模式"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr "启动模糊音"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr "模糊音"
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr "提示:此更改可能需要重启智能拼音输入法后生效。"
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr "<b>词典选项</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "词典"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr "Lua 脚本模式"
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr "码表模式"
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
msgid "English Mode"
msgstr "英文模式"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
msgid "English Candidate"
msgstr "英文候选词"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
msgid "Emoji Candidate"
msgstr "表情候选词"
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
msgid "Suggestion Candidate"
msgstr "联想候选词"
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
msgid "<b>Input Modes</b>"
msgstr "<b>输入模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr "用户 Lua 脚本"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "编辑"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr "<b>定制输入法</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "导出"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "导入"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr "用户词典"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "清除所有数据"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "清除"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -656,20 +704,20 @@ msgstr ""
" \"短语 拼音\" 或 \"短语 拼音 频率\"\n"
" 例如 \"你好 ni'hao\" 或 \"你好 ni'hao 5\"。"
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "帮助"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr "<b>用户词典</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
msgid "User Table"
msgstr "用户码表"
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
msgid ""
"<b>Table File Format:</b>\n"
" Each line contains the following:\n"
@@ -679,31 +727,31 @@ msgstr ""
" 每一行包含以下内容:\n"
" \"码表 短语 频率\", 例如 \"a 啊 100\"。"
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
msgid "<b>User Table</b>"
msgstr "<b>用户码表</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "用户数据"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "快捷键"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr "IBus 智能拼音输入法"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
-msgstr "<small>版权所有 (c) 2011-2012 吴鹏</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr "<small>版权所有 (c) 2011-2024 吴鹏</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -731,7 +779,7 @@ msgstr ""
"koterpilla, Zerng07, Hillwood Yang\n"
"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "关于"
diff --git a/po/zh_HK.po b/po/zh_HK.po
index cba749f..34976d0 100644
--- a/po/zh_HK.po
+++ b/po/zh_HK.po
@@ -4,7 +4,7 @@ msgstr ""
"Project-Id-Version: ibus-libpinyin 1.3.5\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
"PO-Revision-Date: 2020-09-15 02:08+0000\n"
"Last-Translator: Hillwood Yang <hillwoodroc@gmail.com>\n"
"Language-Team: Chinese (Hong Kong) <https://translate.fedoraproject.org/"
@@ -16,127 +16,157 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.2.2\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr ""
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr ""
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "智能拼音輸入法"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "智能拼音(調試)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "智能拼音輸入法(調試)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "注音模式(調試)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "注音輸入法(調試)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "中文"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "英文"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "切換至英文模式"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "切換至中文模式"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "全角字母"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "半角字母"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "切換至半角字母模式"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "切換至全角字母模式"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "全形符號"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "半形符號"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "切換至半形符號模式"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "切換至全形符號模式"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "簡體中文"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "繁體中文"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "切換至繁體中文模式"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "切換至簡體中文模式"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "偏好設定"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr ""
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr "請輸入英文單詞。"
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "請用 \"hspnz\" 筆畫輸入中文字符。"
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
#, fuzzy
msgid "Please use table code to input."
msgstr "請用 \"hspnz\" 筆畫輸入中文字符。"
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "請選定文件"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "請保存文件"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>智能 拼音 %s</b></big>"
@@ -311,6 +341,7 @@ msgid "Google CN"
msgstr "谷歌"
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr "默認值"
@@ -347,304 +378,324 @@ msgstr "拼音加加"
msgid "XHE"
msgstr "小鶴"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "水平"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "豎直"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr "詞頻"
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr "拼音長度"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "語言:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "全形/半形:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "標點符號:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "全形"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "半形"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "中文:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "簡體"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "繁體"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>初始狀態</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr "顯示風格:"
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "候選詞排列方向:"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "每頁顯示候選詞條目數量:"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>外觀</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr "動態調整候詞序。"
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr "將每個輸入記錄為新詞。"
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr "候選詞排列順序:"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>候選詞</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+#, fuzzy
+msgid "Keyboard Layout:"
+msgstr "鍵盤映射:"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr "提示:變更可能需要重啓生效。"
+
+#: setup/ibus-libpinyin-preferences.ui:842
+#, fuzzy
+msgid "<b>Keyboard</b>"
+msgstr "<b>其他</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "常規"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "全拼"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "雙拼"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr "顯示雙拼原始輸入"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "簡拼"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>拼音模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "[Shift]鍵選詞"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "[-][=]鍵翻頁"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "[,][.]鍵翻頁"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "自動上詞"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+#, fuzzy
+msgid " [ ] flip page"
+msgstr "[-][=]鍵翻頁"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr "<b>輸入配置</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr "啓用拼音糾錯"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr "<b>拼音糾錯</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr "激活雲輸入"
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr "輸入源:"
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr "<b>雲輸入配置</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr "拼音模式"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr "簡拼"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr "鍵盤映射:"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr "<b>注音模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr "選詞鍵:"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr "啓用選詞引導鍵"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr "啓用輔助選詞鍵F1 .. F10"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr "啓用數字鍵盤輔助選詞鍵"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr "<b>選詞模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr "Enter 鍵功能:"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr "輸出第一個候選詞"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr "輸出原本的英文字"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>其他</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr "注音模式"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr "啓用模糊音"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr "模糊音"
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr "提示:變更可能需要重啓生效。"
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr "<b>詞典選項</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "詞典"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
#, fuzzy
msgid "English Mode"
msgstr "英文"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
#, fuzzy
msgid "English Candidate"
msgstr "英文"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
#, fuzzy
msgid "Emoji Candidate"
msgstr "每頁顯示候選詞條目數量:"
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
#, fuzzy
msgid "Suggestion Candidate"
msgstr "候選詞排列方向:"
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
#, fuzzy
msgid "<b>Input Modes</b>"
msgstr "<b>輸入配置</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr "用戶 Lua 腳本"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "編輯"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr "<b>定製輸入法</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "導出"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "導入"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr "用戶詞典"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "清除全部數據"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "清除"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -656,21 +707,21 @@ msgstr ""
" \"短語 拼音\" 或 \"短語 拼音 頻率\"\n"
" 例如 \"你好 ni'hao\" 或 \"你好 ni'hao 5\"。"
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "幫助"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr "<b>用戶詞典</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
#, fuzzy
msgid "User Table"
msgstr "用戶數據"
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
#, fuzzy
msgid ""
"<b>Table File Format:</b>\n"
@@ -682,32 +733,32 @@ msgstr ""
" \"短語 拼音\" 或 \"短語 拼音 頻率\"\n"
" 例如 \"你好 ni'hao\" 或 \"你好 ni'hao 5\"。"
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
#, fuzzy
msgid "<b>User Table</b>"
msgstr "<b>用戶詞典</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "用戶數據"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "快捷鍵"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr "IBus 智能拼音輸入法"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
-msgstr "<small>版權所有 (c) 2011-2012 吳鵬</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr "<small>版權所有 (c) 2011-2024 吳鵬</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -735,7 +786,7 @@ msgstr ""
"koterpilla, Zerng07, Hillwood Yang\n"
"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "關於"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index daf23d3..54cd267 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -4,7 +4,7 @@ msgstr ""
"Project-Id-Version: ibus-libpinyin 1.3.5\n"
"Report-Msgid-Bugs-To: https://github.com/libpinyin/ibus-libpinyin/issues/"
"new\n"
-"POT-Creation-Date: 2022-04-12 15:07+0800\n"
+"POT-Creation-Date: 2025-01-08 11:58+0800\n"
"PO-Revision-Date: 2020-09-15 02:09+0000\n"
"Last-Translator: Hillwood Yang <hillwoodroc@gmail.com>\n"
"Language-Team: Chinese (Traditional) <https://translate.fedoraproject.org/"
@@ -16,127 +16,157 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.2.2\n"
-#: src/PYMain.cc:111
+#: src/PYPConfig.cc:695
+msgid "The table file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:702
+msgid "The table file is exported."
+msgstr ""
+
+#: src/PYPConfig.cc:714
+msgid "The pinyin dictionary file is imported."
+msgstr ""
+
+#: src/PYPConfig.cc:721
+msgid "The pinyin dictionary file is exported."
+msgstr ""
+
+#: src/PYMain.cc:117
msgid "Libpinyin input method"
msgstr "智能拼音輸入法"
-#: src/PYMain.cc:121
+#: src/PYMain.cc:127
msgid "Intelligent Pinyin (debug)"
msgstr "智能拼音(調試)"
-#: src/PYMain.cc:122
+#: src/PYMain.cc:128
msgid "Intelligent Pinyin input method (debug)"
msgstr "智能拼音輸入法(調試)"
-#: src/PYMain.cc:132
+#: src/PYMain.cc:138
msgid "Bopomofo (debug)"
msgstr "注音模式(調試)"
-#: src/PYMain.cc:133
+#: src/PYMain.cc:139
msgid "Bopomofo input method (debug)"
msgstr "注音輸入法(調試)"
-#: src/PYPinyinProperties.cc:39 src/PYPinyinProperties.cc:104
-#: setup/ibus-libpinyin-preferences.ui:273
+#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:128
+#: setup/ibus-libpinyin-preferences.ui:111
+#: setup/ibus-libpinyin-preferences.ui:298
msgid "Chinese"
msgstr "中文"
-#: src/PYPinyinProperties.cc:40 src/PYPinyinProperties.cc:105
-#: setup/ibus-libpinyin-preferences.ui:288
+#: src/PYPinyinProperties.cc:41 src/PYPinyinProperties.cc:129
+#: setup/ibus-libpinyin-preferences.ui:107
+#: setup/ibus-libpinyin-preferences.ui:313
msgid "English"
msgstr "英文"
-#: src/PYPinyinProperties.cc:45 src/PYPinyinProperties.cc:116
+#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:140
msgid "Switch to English Mode"
msgstr "切換至英文模式"
-#: src/PYPinyinProperties.cc:46 src/PYPinyinProperties.cc:117
+#: src/PYPinyinProperties.cc:47 src/PYPinyinProperties.cc:141
msgid "Switch to Chinese Mode"
msgstr "切換至中文模式"
-#: src/PYPinyinProperties.cc:50 src/PYPinyinProperties.cc:129
+#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:153
msgid "Full Width Letter"
msgstr "全角字母"
-#: src/PYPinyinProperties.cc:51 src/PYPinyinProperties.cc:130
+#: src/PYPinyinProperties.cc:52 src/PYPinyinProperties.cc:154
msgid "Half Width Letter"
msgstr "半角字母"
-#: src/PYPinyinProperties.cc:56 src/PYPinyinProperties.cc:135
+#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:159
msgid "Switch to Half Width Letter Mode"
msgstr "切換至半角字母模式"
-#: src/PYPinyinProperties.cc:57 src/PYPinyinProperties.cc:136
+#: src/PYPinyinProperties.cc:58 src/PYPinyinProperties.cc:160
msgid "Switch to Full Width Letter Mode"
msgstr "切換至全角字母模式"
-#: src/PYPinyinProperties.cc:61 src/PYPinyinProperties.cc:145
+#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:169
msgid "Full Width Punct"
msgstr "全形符號"
-#: src/PYPinyinProperties.cc:62 src/PYPinyinProperties.cc:146
+#: src/PYPinyinProperties.cc:63 src/PYPinyinProperties.cc:170
msgid "Half Width Punct"
msgstr "半形符號"
-#: src/PYPinyinProperties.cc:67 src/PYPinyinProperties.cc:151
+#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:175
msgid "Switch to Half Width Punctuation Mode"
msgstr "切換至半形符號模式"
-#: src/PYPinyinProperties.cc:68 src/PYPinyinProperties.cc:152
+#: src/PYPinyinProperties.cc:69 src/PYPinyinProperties.cc:176
msgid "Switch to Full Width Punctuation Mode"
msgstr "切換至全形符號模式"
-#: src/PYPinyinProperties.cc:72 src/PYPinyinProperties.cc:161
+#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:185
msgid "Simplified Chinese"
msgstr "簡體中文"
-#: src/PYPinyinProperties.cc:73 src/PYPinyinProperties.cc:162
+#: src/PYPinyinProperties.cc:74 src/PYPinyinProperties.cc:186
msgid "Traditional Chinese"
msgstr "正體中文"
-#: src/PYPinyinProperties.cc:78 src/PYPinyinProperties.cc:167
+#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:191
msgid "Switch to Traditional Chinese Mode"
msgstr "切換至正體中文模式"
-#: src/PYPinyinProperties.cc:79 src/PYPinyinProperties.cc:168
+#: src/PYPinyinProperties.cc:80 src/PYPinyinProperties.cc:192
msgid "Switch to Simplfied Chinese Mode"
msgstr "切換至簡體中文模式"
-#: src/PYPinyinProperties.cc:82 src/PYPinyinProperties.cc:84
-#: setup/ibus-libpinyin-preferences.ui:160
+#: src/PYPinyinProperties.cc:83 src/PYPinyinProperties.cc:85
+#: setup/ibus-libpinyin-preferences.ui:185
msgid "Preferences"
msgstr "偏好設定"
-#: src/PYPinyinProperties.cc:87 src/PYPinyinProperties.cc:108
+#: src/PYPinyinProperties.cc:88 src/PYPinyinProperties.cc:132
msgid "中"
msgstr "中"
-#: src/PYPinyinProperties.cc:89 src/PYPinyinProperties.cc:110
+#: src/PYPinyinProperties.cc:90 src/PYPinyinProperties.cc:134
msgid "英"
msgstr "英"
-#: src/PYEnglishEditor.cc:276
+#: src/PYPinyinProperties.cc:270
+msgid "Lua Converter"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:272
+msgid "Use the Lua Convertor"
+msgstr ""
+
+#: src/PYPinyinProperties.cc:279
+msgid "None"
+msgstr ""
+
+#: src/PYEnglishEditor.cc:307
msgid "Please input the English word."
msgstr "請輸入英文單詞。"
-#: src/PYTableEditor.cc:291
+#: src/PYTableEditor.cc:306
msgid "Please use \"hspnz\" to input."
msgstr "請用 \"hspnz\" 筆畫輸入中文字符。"
-#: src/PYTableEditor.cc:294
+#: src/PYTableEditor.cc:309
#, fuzzy
msgid "Please use table code to input."
msgstr "請用 \"hspnz\" 筆畫輸入中文字符。"
-#: setup/main2.py:471
+#: setup/main2.py:493
msgid "Please choose a file"
msgstr "請選定文件"
-#: setup/main2.py:492
+#: setup/main2.py:514
msgid "Please save a file"
msgstr "請保存文件"
-#: setup/main2.py:636 setup/ibus-libpinyin-preferences.ui:2695
+#: setup/main2.py:662 setup/ibus-libpinyin-preferences.ui:2850
#, python-format
msgid "<big><b>Intelligent Pinyin %s</b></big>"
msgstr "<big><b>智能拼音 %s</b></big>"
@@ -311,6 +341,7 @@ msgid "Google CN"
msgstr "谷歌"
#: setup/ibus-libpinyin-preferences.ui:57
+#: setup/ibus-libpinyin-preferences.ui:103
msgid "Default"
msgstr "默認值"
@@ -347,304 +378,324 @@ msgstr "拼音加加"
msgid "XHE"
msgstr "小鶴"
-#: setup/ibus-libpinyin-preferences.ui:100
+#: setup/ibus-libpinyin-preferences.ui:122
msgid "Horizontal"
msgstr "水平"
-#: setup/ibus-libpinyin-preferences.ui:103
+#: setup/ibus-libpinyin-preferences.ui:125
msgid "Vertical"
msgstr "豎直"
-#: setup/ibus-libpinyin-preferences.ui:149
+#: setup/ibus-libpinyin-preferences.ui:171
msgid "Frequency"
msgstr "詞頻"
-#: setup/ibus-libpinyin-preferences.ui:152
+#: setup/ibus-libpinyin-preferences.ui:174
msgid "Pinyin Length"
msgstr "拼音長度"
-#: setup/ibus-libpinyin-preferences.ui:243
+#: setup/ibus-libpinyin-preferences.ui:177
+msgid "Legacy"
+msgstr ""
+
+#: setup/ibus-libpinyin-preferences.ui:268
msgid "Language:"
msgstr "語言:"
-#: setup/ibus-libpinyin-preferences.ui:251
+#: setup/ibus-libpinyin-preferences.ui:276
msgid "Half/full width:"
msgstr "全形/半形:"
-#: setup/ibus-libpinyin-preferences.ui:263
+#: setup/ibus-libpinyin-preferences.ui:288
msgid "Punctuations:"
msgstr "標點符號:"
-#: setup/ibus-libpinyin-preferences.ui:303
-#: setup/ibus-libpinyin-preferences.ui:337
+#: setup/ibus-libpinyin-preferences.ui:328
+#: setup/ibus-libpinyin-preferences.ui:362
msgid "Full"
msgstr "全形"
-#: setup/ibus-libpinyin-preferences.ui:320
-#: setup/ibus-libpinyin-preferences.ui:354
+#: setup/ibus-libpinyin-preferences.ui:345
+#: setup/ibus-libpinyin-preferences.ui:379
msgid "Half"
msgstr "半形"
-#: setup/ibus-libpinyin-preferences.ui:373
+#: setup/ibus-libpinyin-preferences.ui:398
msgid "Chinese:"
msgstr "中文:"
-#: setup/ibus-libpinyin-preferences.ui:383
+#: setup/ibus-libpinyin-preferences.ui:408
msgid "Simplified"
msgstr "簡體"
-#: setup/ibus-libpinyin-preferences.ui:400
+#: setup/ibus-libpinyin-preferences.ui:425
msgid "Traditional"
msgstr "繁體"
-#: setup/ibus-libpinyin-preferences.ui:423
+#: setup/ibus-libpinyin-preferences.ui:448
msgid "<b>Initial state</b>"
msgstr "<b>初始狀態</b>"
-#: setup/ibus-libpinyin-preferences.ui:461
+#: setup/ibus-libpinyin-preferences.ui:486
msgid "Display Style:"
msgstr "顯示風格:"
-#: setup/ibus-libpinyin-preferences.ui:507
+#: setup/ibus-libpinyin-preferences.ui:532
msgid "Orientation of candidates:"
msgstr "候選詞排列方向:"
-#: setup/ibus-libpinyin-preferences.ui:553
+#: setup/ibus-libpinyin-preferences.ui:578
msgid "Number of candidates:"
msgstr "每頁顯示候選詞條目數量:"
-#: setup/ibus-libpinyin-preferences.ui:592
+#: setup/ibus-libpinyin-preferences.ui:617
msgid "<b>UI</b>"
msgstr "<b>外觀</b>"
-#: setup/ibus-libpinyin-preferences.ui:621
+#: setup/ibus-libpinyin-preferences.ui:646
msgid "Dynamically adjust the candidates order."
msgstr "動態調整候詞序。"
-#: setup/ibus-libpinyin-preferences.ui:636
+#: setup/ibus-libpinyin-preferences.ui:661
msgid "Remember every input as a phrase."
msgstr "將每個輸入記錄為新詞。"
-#: setup/ibus-libpinyin-preferences.ui:659
+#: setup/ibus-libpinyin-preferences.ui:684
msgid "Sort candidates by:"
msgstr "候選詞排列順序:"
-#: setup/ibus-libpinyin-preferences.ui:702
+#: setup/ibus-libpinyin-preferences.ui:727
msgid "<b>Candidates</b>"
msgstr "<b>候選詞</b>"
-#: setup/ibus-libpinyin-preferences.ui:721
+#: setup/ibus-libpinyin-preferences.ui:763
+#, fuzzy
+msgid "Keyboard Layout:"
+msgstr "鍵盤映射:"
+
+#: setup/ibus-libpinyin-preferences.ui:819
+#: setup/ibus-libpinyin-preferences.ui:2199
+msgid "Tips: Changes may not take effect until ime restarts."
+msgstr "提示:變更可能需要重啓生效。"
+
+#: setup/ibus-libpinyin-preferences.ui:842
+#, fuzzy
+msgid "<b>Keyboard</b>"
+msgstr "<b>其他</b>"
+
+#: setup/ibus-libpinyin-preferences.ui:861
msgid "General"
msgstr "常規"
-#: setup/ibus-libpinyin-preferences.ui:761
+#: setup/ibus-libpinyin-preferences.ui:901
msgid "Full pinyin"
msgstr "全拼"
-#: setup/ibus-libpinyin-preferences.ui:782
+#: setup/ibus-libpinyin-preferences.ui:922
msgid "Double pinyin"
msgstr "雙拼"
-#: setup/ibus-libpinyin-preferences.ui:825
+#: setup/ibus-libpinyin-preferences.ui:965
msgid "Show raw input of Double Pinyin"
msgstr "顯示雙拼原始輸入"
-#: setup/ibus-libpinyin-preferences.ui:840
+#: setup/ibus-libpinyin-preferences.ui:980
msgid "Incomplete pinyin"
msgstr "簡拼"
-#: setup/ibus-libpinyin-preferences.ui:862
+#: setup/ibus-libpinyin-preferences.ui:1002
msgid "<b>Pinyin mode</b>"
msgstr "<b>拼音模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:901
+#: setup/ibus-libpinyin-preferences.ui:1044
msgid "[Shift] select candidate"
msgstr "[Shift]鍵選詞"
-#: setup/ibus-libpinyin-preferences.ui:911
+#: setup/ibus-libpinyin-preferences.ui:1054
msgid "[-] [=] flip page"
msgstr "[-][=]鍵翻頁"
-#: setup/ibus-libpinyin-preferences.ui:926
+#: setup/ibus-libpinyin-preferences.ui:1069
msgid "[,] [.] flip page"
msgstr "[,][.]鍵翻頁"
-#: setup/ibus-libpinyin-preferences.ui:941
+#: setup/ibus-libpinyin-preferences.ui:1084
msgid "Auto commit"
msgstr "自動上詞"
-#: setup/ibus-libpinyin-preferences.ui:970
+#: setup/ibus-libpinyin-preferences.ui:1098
+#, fuzzy
+msgid " [ ] flip page"
+msgstr "[-][=]鍵翻頁"
+
+#: setup/ibus-libpinyin-preferences.ui:1126
msgid "<b>Input Custom</b>"
msgstr "<b>輸入配置</b>"
-#: setup/ibus-libpinyin-preferences.ui:1118
+#: setup/ibus-libpinyin-preferences.ui:1274
msgid "Enable pinyin correction"
msgstr "啓用拼音糾錯"
-#: setup/ibus-libpinyin-preferences.ui:1154
+#: setup/ibus-libpinyin-preferences.ui:1310
msgid "<b>Correct pinyin</b>"
msgstr "<b>拼音糾錯</b>"
-#: setup/ibus-libpinyin-preferences.ui:1184
-#: setup/ibus-libpinyin-preferences.ui:1623
+#: setup/ibus-libpinyin-preferences.ui:1340
+#: setup/ibus-libpinyin-preferences.ui:1779
msgid "Enable Cloud Input"
msgstr "激活雲輸入"
-#: setup/ibus-libpinyin-preferences.ui:1208
-#: setup/ibus-libpinyin-preferences.ui:1647
+#: setup/ibus-libpinyin-preferences.ui:1364
+#: setup/ibus-libpinyin-preferences.ui:1803
msgid "Source From:"
msgstr "輸入源:"
-#: setup/ibus-libpinyin-preferences.ui:1253
-#: setup/ibus-libpinyin-preferences.ui:1692
+#: setup/ibus-libpinyin-preferences.ui:1409
+#: setup/ibus-libpinyin-preferences.ui:1848
msgid "<b>Cloud Input Option</b>"
msgstr "<b>雲輸入選項</b>"
-#: setup/ibus-libpinyin-preferences.ui:1275
+#: setup/ibus-libpinyin-preferences.ui:1431
msgid "Pinyin mode"
msgstr "拼音模式"
-#: setup/ibus-libpinyin-preferences.ui:1314
+#: setup/ibus-libpinyin-preferences.ui:1470
msgid "Incomplete Bopomofo"
msgstr "簡拼"
-#: setup/ibus-libpinyin-preferences.ui:1337
+#: setup/ibus-libpinyin-preferences.ui:1493
msgid "Keyboard Mapping:"
msgstr "鍵盤映射:"
-#: setup/ibus-libpinyin-preferences.ui:1380
+#: setup/ibus-libpinyin-preferences.ui:1536
msgid "<b>Bopomofo mode</b>"
msgstr "<b>注音模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:1416
+#: setup/ibus-libpinyin-preferences.ui:1572
msgid "Selection Keys:"
msgstr "選詞鍵:"
-#: setup/ibus-libpinyin-preferences.ui:1453
+#: setup/ibus-libpinyin-preferences.ui:1609
msgid "Enable Guidekey for Candidates Selection"
msgstr "啓用選詞引導鍵"
-#: setup/ibus-libpinyin-preferences.ui:1470
+#: setup/ibus-libpinyin-preferences.ui:1626
msgid "Enable Auxiliary Select Keys F1 .. F10"
msgstr "啓用輔助選詞鍵F1 .. F10"
-#: setup/ibus-libpinyin-preferences.ui:1487
+#: setup/ibus-libpinyin-preferences.ui:1643
msgid "Enable Auxiliary Select Keys Numbers on Keypad"
msgstr "啓用數字鍵盤輔助選詞鍵"
-#: setup/ibus-libpinyin-preferences.ui:1510
+#: setup/ibus-libpinyin-preferences.ui:1666
msgid "<b>Selection mode</b>"
msgstr "<b>選詞模式</b>"
-#: setup/ibus-libpinyin-preferences.ui:1542
+#: setup/ibus-libpinyin-preferences.ui:1698
msgid "Feature of Enter key:"
msgstr "Enter 鍵功能:"
-#: setup/ibus-libpinyin-preferences.ui:1553
+#: setup/ibus-libpinyin-preferences.ui:1709
msgid "Commit first candidate"
msgstr "輸出第一個候選詞"
-#: setup/ibus-libpinyin-preferences.ui:1571
+#: setup/ibus-libpinyin-preferences.ui:1727
msgid "Commit original text"
msgstr "輸出原本的英文字"
-#: setup/ibus-libpinyin-preferences.ui:1593
+#: setup/ibus-libpinyin-preferences.ui:1749
msgid "<b>Other</b>"
msgstr "<b>其他</b>"
-#: setup/ibus-libpinyin-preferences.ui:1714
+#: setup/ibus-libpinyin-preferences.ui:1870
msgid "Bopomofo mode"
msgstr "注音模式"
-#: setup/ibus-libpinyin-preferences.ui:1876
+#: setup/ibus-libpinyin-preferences.ui:2032
msgid "Enable fuzzy syllable"
msgstr "啓用模糊音"
-#: setup/ibus-libpinyin-preferences.ui:1977
+#: setup/ibus-libpinyin-preferences.ui:2133
msgid "Fuzzy syllable"
msgstr "模糊音"
-#: setup/ibus-libpinyin-preferences.ui:2044
-msgid "Tips: Changes may not take effect until ime restarts."
-msgstr "提示:變更可能需要重啓生效。"
-
-#: setup/ibus-libpinyin-preferences.ui:2067
+#: setup/ibus-libpinyin-preferences.ui:2222
msgid "<b>Dictionary option</b>"
msgstr "<b>詞典選項</b>"
-#: setup/ibus-libpinyin-preferences.ui:2089
+#: setup/ibus-libpinyin-preferences.ui:2244
msgid "Dictionary"
msgstr "詞典"
-#: setup/ibus-libpinyin-preferences.ui:2130
+#: setup/ibus-libpinyin-preferences.ui:2285
msgid "Lua Extension"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2144
+#: setup/ibus-libpinyin-preferences.ui:2299
msgid "Table Mode"
msgstr ""
-#: setup/ibus-libpinyin-preferences.ui:2158
+#: setup/ibus-libpinyin-preferences.ui:2313
#, fuzzy
msgid "English Mode"
msgstr "英文"
-#: setup/ibus-libpinyin-preferences.ui:2172
+#: setup/ibus-libpinyin-preferences.ui:2327
#, fuzzy
msgid "English Candidate"
msgstr "英文"
-#: setup/ibus-libpinyin-preferences.ui:2186
+#: setup/ibus-libpinyin-preferences.ui:2341
#, fuzzy
msgid "Emoji Candidate"
msgstr "每頁顯示候選詞條目數量:"
-#: setup/ibus-libpinyin-preferences.ui:2200
+#: setup/ibus-libpinyin-preferences.ui:2355
#, fuzzy
msgid "Suggestion Candidate"
msgstr "候選詞排列方向:"
-#: setup/ibus-libpinyin-preferences.ui:2220
+#: setup/ibus-libpinyin-preferences.ui:2375
#, fuzzy
msgid "<b>Input Modes</b>"
msgstr "<b>輸入配置</b>"
-#: setup/ibus-libpinyin-preferences.ui:2251
+#: setup/ibus-libpinyin-preferences.ui:2406
msgid "User Lua Script"
msgstr "用戶 Lua 腳本"
-#: setup/ibus-libpinyin-preferences.ui:2261
+#: setup/ibus-libpinyin-preferences.ui:2416
msgid "Edit"
msgstr "編輯"
-#: setup/ibus-libpinyin-preferences.ui:2281
+#: setup/ibus-libpinyin-preferences.ui:2436
msgid "<b>Customize IME</b>"
msgstr "<b>定製輸入法</b>"
-#: setup/ibus-libpinyin-preferences.ui:2316
-#: setup/ibus-libpinyin-preferences.ui:2500
+#: setup/ibus-libpinyin-preferences.ui:2471
+#: setup/ibus-libpinyin-preferences.ui:2655
msgid "Export"
msgstr "導出"
-#: setup/ibus-libpinyin-preferences.ui:2331
-#: setup/ibus-libpinyin-preferences.ui:2515
+#: setup/ibus-libpinyin-preferences.ui:2486
+#: setup/ibus-libpinyin-preferences.ui:2670
msgid "Import"
msgstr "導入"
-#: setup/ibus-libpinyin-preferences.ui:2347
+#: setup/ibus-libpinyin-preferences.ui:2502
msgid "User Dictionary"
msgstr "用戶詞典"
-#: setup/ibus-libpinyin-preferences.ui:2372
+#: setup/ibus-libpinyin-preferences.ui:2527
msgid "Clear All Data"
msgstr "清除全部數據"
-#: setup/ibus-libpinyin-preferences.ui:2392
-#: setup/ibus-libpinyin-preferences.ui:2545
+#: setup/ibus-libpinyin-preferences.ui:2547
+#: setup/ibus-libpinyin-preferences.ui:2700
msgid "Clear"
msgstr "清除"
-#: setup/ibus-libpinyin-preferences.ui:2420
+#: setup/ibus-libpinyin-preferences.ui:2575
msgid ""
"<b>Dictionary File Format:</b>\n"
" Each line contains one of the following:\n"
@@ -656,21 +707,21 @@ msgstr ""
" \"短語 拼音\" 或 \"短語 拼音 頻率\"\n"
" 例如 \"你好 ni'hao\" 或 \"你好 ni'hao 5\"。"
-#: setup/ibus-libpinyin-preferences.ui:2433
-#: setup/ibus-libpinyin-preferences.ui:2583
+#: setup/ibus-libpinyin-preferences.ui:2588
+#: setup/ibus-libpinyin-preferences.ui:2738
msgid "Help"
msgstr "幫助"
-#: setup/ibus-libpinyin-preferences.ui:2451
+#: setup/ibus-libpinyin-preferences.ui:2606
msgid "<b>User Dictionary</b>"
msgstr "<b>用戶詞典</b>"
-#: setup/ibus-libpinyin-preferences.ui:2487
+#: setup/ibus-libpinyin-preferences.ui:2642
#, fuzzy
msgid "User Table"
msgstr "用戶數據"
-#: setup/ibus-libpinyin-preferences.ui:2573
+#: setup/ibus-libpinyin-preferences.ui:2728
#, fuzzy
msgid ""
"<b>Table File Format:</b>\n"
@@ -682,32 +733,32 @@ msgstr ""
" \"短語 拼音\" 或 \"短語 拼音 頻率\"\n"
" 例如 \"你好 ni'hao\" 或 \"你好 ni'hao 5\"。"
-#: setup/ibus-libpinyin-preferences.ui:2601
+#: setup/ibus-libpinyin-preferences.ui:2756
#, fuzzy
msgid "<b>User Table</b>"
msgstr "<b>用戶詞典</b>"
-#: setup/ibus-libpinyin-preferences.ui:2623
+#: setup/ibus-libpinyin-preferences.ui:2778
msgid "User data"
msgstr "用戶數據"
-#: setup/ibus-libpinyin-preferences.ui:2653
+#: setup/ibus-libpinyin-preferences.ui:2808
msgid "Shortcuts"
msgstr "快捷鍵"
-#: setup/ibus-libpinyin-preferences.ui:2709
+#: setup/ibus-libpinyin-preferences.ui:2864
msgid "Intelligent Pinyin input method for IBus"
msgstr "IBus 智能拼音輸入法"
-#: setup/ibus-libpinyin-preferences.ui:2722
-msgid "<small>Copyright (c) 2011-2012 Peng Wu</small>"
-msgstr "<small>版權所有 (c) 2011-2012 吳鵬</small>"
+#: setup/ibus-libpinyin-preferences.ui:2877
+msgid "<small>Copyright (c) 2011-2024 Peng Wu</small>"
+msgstr "<small>版權所有 (c) 2011-2024 吳鵬</small>"
-#: setup/ibus-libpinyin-preferences.ui:2735
+#: setup/ibus-libpinyin-preferences.ui:2890
msgid "https://github.com/libpinyin/ibus-libpinyin"
msgstr "https://github.com/libpinyin/ibus-libpinyin"
-#: setup/ibus-libpinyin-preferences.ui:2752
+#: setup/ibus-libpinyin-preferences.ui:2907
msgid ""
"<small>\n"
"<b>Authors:</b>\n"
@@ -735,7 +786,7 @@ msgstr ""
"koterpilla, Zerng07, Hillwood Yang\n"
"</small>"
-#: setup/ibus-libpinyin-preferences.ui:2792
+#: setup/ibus-libpinyin-preferences.ui:2947
msgid "About"
msgstr "關於"
diff --git a/setup/Makefile.am b/setup/Makefile.am
index 411a0dc..d14e62e 100644
--- a/setup/Makefile.am
+++ b/setup/Makefile.am
@@ -21,6 +21,7 @@ setup_libpinyin_PYTHON = \
main2.py \
config.py \
dicttreeview.py \
+ enginefile.py \
shortcuteditor.py \
keyboardshortcut.py \
ibus-libpinyin-preferences.ui \
diff --git a/setup/enginefile.py b/setup/enginefile.py
new file mode 100644
index 0000000..9e48ca2
--- /dev/null
+++ b/setup/enginefile.py
@@ -0,0 +1,92 @@
+# vim:set et ts=4 sts=4:
+# -*- coding: utf-8 -*-
+#
+# ibus-libpinyin - Intelligent Pinyin engine based on libpinyin for IBus
+#
+# Copyright (c) 2024 Peng Wu <alexepico@gmail.com>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+import os
+import xml.dom.minidom
+import codecs
+
+from gi import require_version as gi_require_version
+gi_require_version('GLib', '2.0')
+gi_require_version('Gio', '2.0')
+
+from gi.repository import GLib
+from gi.repository import Gio
+
+pkgdatadir = os.getenv("IBUS_PKGDATADIR") or "."
+
+def save_layout():
+ # assume the name and layout tag has the same order,
+ # save both libpinyin and libbopomofo value here.
+ system_config = os.path.join(pkgdatadir, 'default.xml')
+
+ dom = xml.dom.minidom.parse(system_config)
+ names = dom.getElementsByTagName('name')
+ layouts = dom.getElementsByTagName('layout')
+ assert len(names) == len(layouts)
+ for i, name in enumerate(names):
+ engine = name.childNodes[0].data
+ config_namespace = "com.github.libpinyin.ibus-libpinyin." + engine
+ config = Gio.Settings.new(config_namespace)
+ var = config.get_value("keyboard-layout")
+ assert 's' == var.get_type_string()
+ layout = var.get_string()
+ layouts[i].childNodes[0].data = layout
+
+ user_config = os.path.join(GLib.get_user_config_dir(),
+ 'ibus', 'libpinyin', 'engines.xml')
+ dir = os.path.dirname(user_config)
+ os.path.exists(dir) or os.makedirs(dir, 0o700)
+ # io.open() causes TypeError for unicode.
+ f = codecs.open(user_config, 'w', 'utf-8')
+ dom.writexml(f, '', '', '', 'utf-8')
+ f.close()
+ os.chmod(user_config, 0o600)
+
+def resync_engine_file():
+ user_config = os.path.join(GLib.get_user_config_dir(),
+ 'ibus', 'libpinyin', 'engines.xml')
+ system_config = os.path.join(pkgdatadir, 'default.xml')
+ if not os.path.exists(user_config):
+ return
+ if not os.path.exists(system_config):
+ os.unlink(user_config)
+ return
+
+ # path.getmtime depends on the build time rather than install time.
+ def __get_engine_file_version(engine_file):
+ version_str = ''
+ dom = xml.dom.minidom.parse(engine_file)
+ # there are two versions in the engines.xml, only use the first one
+ elements = dom.getElementsByTagName('version')
+ nodes = []
+ if len(elements) > 0:
+ nodes = elements[0].childNodes
+ if len(nodes) > 0:
+ version_str = nodes[0].data
+ if version_str != '':
+ version_str = version_str.strip()
+ return version_str
+
+ user_config_version = __get_engine_file_version(user_config)
+ system_config_version = __get_engine_file_version(system_config)
+ if system_config_version != user_config_version:
+ # generate the user config from gsettings
+ save_layout()
diff --git a/setup/ibus-libpinyin-preferences.ui b/setup/ibus-libpinyin-preferences.ui
index f6a5bc1..214e3a4 100644
--- a/setup/ibus-libpinyin-preferences.ui
+++ b/setup/ibus-libpinyin-preferences.ui
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.38.2 -->
+<!-- Generated with glade 3.40.0 -->
<interface>
<requires lib="gtk+" version="3.0"/>
<object class="GtkAdjustment" id="LookupTablePageSize">
@@ -90,6 +90,28 @@
</row>
</data>
</object>
+ <object class="GtkListStore" id="liststoreKeyboardLayout">
+ <columns>
+ <!-- column-name keyboardlayout -->
+ <column type="gchararray"/>
+ <!-- column-name layoutdisplayname -->
+ <column type="gchararray"/>
+ </columns>
+ <data>
+ <row>
+ <col id="0">default</col>
+ <col id="1" translatable="yes">Default</col>
+ </row>
+ <row>
+ <col id="0">us</col>
+ <col id="1" translatable="yes">English</col>
+ </row>
+ <row>
+ <col id="0">cn</col>
+ <col id="1" translatable="yes">Chinese</col>
+ </row>
+ </data>
+ </object>
<object class="GtkListStore" id="liststoreLookupTableOrientation">
<columns>
<!-- column-name orientation -->
@@ -713,6 +735,121 @@
<property name="position">2</property>
</packing>
</child>
+ <child>
+ <object class="GtkFrame">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label-xalign">0</property>
+ <property name="shadow-type">none</property>
+ <child>
+ <object class="GtkAlignment">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="left-padding">12</property>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="homogeneous">True</property>
+ <child>
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">Keyboard Layout:</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBox" id="KeyboardLayout">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="model">liststoreKeyboardLayout</property>
+ <property name="id-column">0</property>
+ <child>
+ <object class="GtkCellRendererText" id="render7"/>
+ <attributes>
+ <attribute name="text">1</attribute>
+ </attributes>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="KeyboardLayoutInformation">
+ <property name="can-focus">False</property>
+ <property name="valign">end</property>
+ <child>
+ <object class="GtkImage" id="image1">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="stock">gtk-dialog-info</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label35">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="valign">end</property>
+ <property name="label" translatable="yes">Tips: Changes may not take effect until ime restarts.</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can-focus">False</property>
+ <property name="label" translatable="yes">&lt;b&gt;Keyboard&lt;/b&gt;</property>
+ <property name="use-markup">True</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
</object>
</child>
</object>
@@ -894,12 +1031,15 @@
<object class="GtkTable" id="table2">
<property name="visible">True</property>
<property name="can-focus">False</property>
- <property name="n-rows">2</property>
+ <property name="n-rows">3</property>
<property name="n-columns">2</property>
<property name="column-spacing">6</property>
<property name="row-spacing">6</property>
<property name="homogeneous">True</property>
<child>
+ <placeholder/>
+ </child>
+ <child>
<object class="GtkCheckButton" id="ShiftSelectCandidate">
<property name="label" translatable="yes">[Shift] select candidate</property>
<property name="visible">True</property>
@@ -945,7 +1085,20 @@
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">False</property>
- <property name="xalign">0.5</property>
+ <property name="xalign">0</property>
+ <property name="draw-indicator">True</property>
+ </object>
+ <packing>
+ <property name="top-attach">2</property>
+ <property name="bottom-attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="SquareBracketPage">
+ <property name="label" translatable="yes"> [ ] flip page</property>
+ <property name="visible">True</property>
+ <property name="can-focus">True</property>
+ <property name="receives-default">False</property>
<property name="draw-indicator">True</property>
</object>
<packing>
@@ -2023,8 +2176,7 @@
</packing>
</child>
<child>
- <object class="GtkBox" id="hbox31">
- <property name="visible">True</property>
+ <object class="GtkBox" id="DictionaryInformation">
<property name="can-focus">False</property>
<property name="valign">end</property>
<child>
@@ -2679,7 +2831,7 @@
<property name="can-focus">False</property>
<property name="spacing">6</property>
<child>
- <object class="GtkImage" id="image1">
+ <object class="GtkImage" id="AboutIcon">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="pixel-size">32</property>
@@ -2722,7 +2874,7 @@
<object class="GtkLabel" id="label15">
<property name="visible">True</property>
<property name="can-focus">False</property>
- <property name="label" translatable="yes">&lt;small&gt;Copyright (c) 2011-2012 Peng Wu&lt;/small&gt;</property>
+ <property name="label" translatable="yes">&lt;small&gt;Copyright (c) 2011-2024 Peng Wu&lt;/small&gt;</property>
<property name="use-markup">True</property>
<property name="wrap">True</property>
<property name="selectable">True</property>
diff --git a/setup/main2.py b/setup/main2.py
index 5dacad6..47796b6 100644
--- a/setup/main2.py
+++ b/setup/main2.py
@@ -5,7 +5,7 @@
#
# Copyright (c) 2008-2010 Peng Huang <shawn.p.huang@gmail.com>
# Copyright (c) 2010 BYVoid <byvoid1@gmail.com>
-# Copyright (c) 2011-2012 Peng Wu <alexepico@gmail.com>
+# Copyright (c) 2011-2024 Peng Wu <alexepico@gmail.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -22,6 +22,7 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
import gettext
+from enginefile import resync_engine_file, save_layout
import locale
import os
@@ -153,6 +154,9 @@ class PreferencesDialog:
self.__remember_every_input = self.__builder.get_object("RememberEveryInput")
self.__sort_candidate_option = self.__builder.get_object("SortCandidateOption")
+ self.__keyboard_layout = self.__builder.get_object("KeyboardLayout")
+ self.__keyboard_layout_information = self.__builder.get_object("KeyboardLayoutInformation")
+
# read values
self.__init_chinese.set_active(self.__get_value("init-chinese"))
self.__init_full.set_active(self.__get_value("init-full"))
@@ -166,6 +170,9 @@ class PreferencesDialog:
self.__dynamic_adjust.set_active(self.__get_value("dynamic-adjust"))
self.__remember_every_input.set_active(self.__get_value("remember-every-input"))
self.__sort_candidate_option.set_active(self.__get_value("sort-candidate-option"))
+
+ self.__keyboard_layout.set_active_id(self.__get_value("keyboard-layout"))
+
# connect signals
self.__init_chinese.connect("toggled", self.__toggled_cb, "init-chinese")
self.__init_full.connect("toggled", self.__toggled_cb, "init-full")
@@ -186,10 +193,16 @@ class PreferencesDialog:
def __sort_candidate_option_changed_cb(widget):
self.__set_value("sort-candidate-option", widget.get_active())
+ def __keyboard_layout_changed_cb(widget):
+ self.__set_value("keyboard-layout", widget.get_active_id())
+ save_layout()
+ self.__keyboard_layout_information.show()
+
self.__display_style.connect("changed", __display_size_changed_cb)
self.__lookup_table_orientation.connect("changed", __lookup_table_orientation_changed_cb)
self.__lookup_table_page_size.connect("value-changed", __lookup_table_page_size_changed_cb)
self.__sort_candidate_option.connect("changed", __sort_candidate_option_changed_cb)
+ self.__keyboard_layout.connect("changed", __keyboard_layout_changed_cb)
def __init_pinyin(self):
# page
@@ -283,18 +296,21 @@ class PreferencesDialog:
self.__shift_select_candidate = self.__builder.get_object("ShiftSelectCandidate")
self.__minus_equal_page = self.__builder.get_object("MinusEqualPage")
self.__comma_period_page = self.__builder.get_object("CommaPeriodPage")
+ self.__square_bracket_page = self.__builder.get_object("SquareBracketPage")
self.__auto_commit = self.__builder.get_object("AutoCommit")
# read values
self.__shift_select_candidate.set_active(self.__get_value("shift-select-candidate"))
self.__minus_equal_page.set_active(self.__get_value("minus-equal-page"))
self.__comma_period_page.set_active(self.__get_value("comma-period-page"))
+ self.__square_bracket_page.set_active(self.__get_value("square-bracket-page"))
self.__auto_commit.set_active(self.__get_value("auto-commit"))
# connect signals
self.__shift_select_candidate.connect("toggled", self.__toggled_cb, "shift-select-candidate")
self.__minus_equal_page.connect("toggled", self.__toggled_cb, "minus-equal-page")
self.__comma_period_page.connect("toggled", self.__toggled_cb, "comma-period-page")
+ self.__square_bracket_page.connect("toggled", self.__toggled_cb, "square-bracket-page")
self.__auto_commit.connect("toggled", self.__toggled_cb, "auto-commit")
def __init_correct_pinyin(self):
@@ -392,8 +408,11 @@ class PreferencesDialog:
self.__dict_treeview.show()
self.__dict_treeview.set_dictionaries(self.__get_value("dictionaries"))
+ self.__dictionary_information = self.__builder.get_object("DictionaryInformation")
+
def __notified_dicts_cb(self, param, dialog):
dialog.__set_value("dictionaries", self.get_dictionaries())
+ dialog.__dictionary_information.show()
# connect notify signal
self.__dict_treeview.connect("notify::dictionaries", __notified_dicts_cb, self)
@@ -477,6 +496,8 @@ class PreferencesDialog:
dialog.add_buttons(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
Gtk.STOCK_OPEN, Gtk.ResponseType.OK)
+ dialog.set_current_folder(os.path.expanduser("~"))
+
filter_text = Gtk.FileFilter()
filter_text.set_name("Text files")
filter_text.add_mime_type("text/plain")
@@ -498,6 +519,8 @@ class PreferencesDialog:
dialog.add_buttons(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
Gtk.STOCK_SAVE, Gtk.ResponseType.OK)
+ dialog.set_current_folder(os.path.expanduser("~"))
+
dialog.set_do_overwrite_confirmation(True)
filter_text = Gtk.FileFilter()
@@ -635,6 +658,10 @@ class PreferencesDialog:
# page About
self.__page_about.show()
+ self.__about_icon = self.__builder.get_object("AboutIcon")
+ icon_path = os.path.join(pkgdatadir, 'icons', 'ibus-pinyin.svg')
+ self.__about_icon.set_from_file(icon_path)
+
self.__name_version = self.__builder.get_object("NameVersion")
self.__name_version.set_markup(_("<big><b>Intelligent Pinyin %s</b></big>") % config.get_version())
@@ -675,12 +702,18 @@ class PreferencesDialog:
return self.__dialog.run()
def main():
- name = "libpinyin"
+ command_name = "libpinyin"
if len(sys.argv) == 2:
- name = sys.argv[1]
- if name not in ("libpinyin", "libbopomofo"):
- name = "libpinyin"
- PreferencesDialog(name).run()
+ command_name = sys.argv[1]
+
+ resync_engine_file()
+ if command_name == "resync-engine":
+ return
+
+ if command_name not in ("libpinyin", "libbopomofo"):
+ command_name = "libpinyin"
+
+ PreferencesDialog(command_name).run()
if __name__ == "__main__":
diff --git a/src/Makefile.am b/src/Makefile.am
index 8098b2a..a241bea 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -80,6 +80,7 @@ ibus_engine_libpinyin_h_sources = \
PYPSuggestionCandidates.h \
PYPEmojiTable.h \
PYPEmojiCandidates.h \
+ PYXMLUtil.h \
$(NULL)
ibus_engine_libpinyin_c_sources += \
@@ -97,6 +98,7 @@ ibus_engine_libpinyin_c_sources += \
PYPSuggestionEditor.cc \
PYPSuggestionCandidates.cc \
PYPEmojiCandidates.cc \
+ PYXMLUtil.cc \
$(NULL)
@@ -204,17 +206,28 @@ ibus_engine_libpinyin_LDADD += \
endif
if IBUS_BUILD_ENGLISH_INPUT_MODE
- ibus_engine_libpinyin_CXXFLAGS += \
+ibus_engine_libpinyin_CXXFLAGS += \
-DIBUS_BUILD_ENGLISH_INPUT_MODE \
$(NULL)
endif
if IBUS_BUILD_TABLE_INPUT_MODE
- ibus_engine_libpinyin_CXXFLAGS += \
+ibus_engine_libpinyin_CXXFLAGS += \
-DIBUS_BUILD_TABLE_INPUT_MODE \
$(NULL)
endif
+if ENABLE_LIBNOTIFY
+ibus_engine_libpinyin_CXXFLAGS += \
+ @LIBNOTIFY_CFLAGS@ \
+ -DENABLE_LIBNOTIFY \
+ $(NULL)
+
+ibus_engine_libpinyin_LDADD += \
+ @LIBNOTIFY_LIBS@ \
+ $(NULL)
+endif
+
BUILT_SOURCES = \
$(ibus_engine_built_c_sources) \
$(ibus_engine_built_h_sources) \
@@ -225,12 +238,19 @@ component_DATA = \
$(NULL)
componentdir = @datadir@/ibus/component
+engine_DATA = \
+ default.xml \
+ $(NULL)
+enginedir = ${pkgdatadir}
+
EXTRA_DIST = \
- libpinyin.xml.in \
+ libpinyin.inputmethod.xml.in \
+ default.inputmethod.xml.in \
$(NULL)
CLEANFILES = \
libpinyin.xml \
+ default.xml \
$(NULL)
PYPunctTable.h:
@@ -248,14 +268,10 @@ update-simptrad-table:
$(MAKE) -C $(top_srcdir)/scripts ZhConversion.py
$(MAKE) PYSimpTradConverterTable.h
-libpinyin.xml: libpinyin.xml.in
- $(AM_V_GEN) \
- ( \
- libexecdir=${libexecdir}; \
- pkgdatadir=${pkgdatadir}; \
- s=`cat $<`; \
- eval "echo \"$${s}\""; \
- ) > $@
+%.xml: %.inputmethod.xml.in
+ sed -e "s|\@LIBEXECDIR\@|$(libexecdir)|g" \
+ -e "s|\@PKGDATADIR\@|$(pkgdatadir)|g" \
+ $< > $@
test: ibus-engine-libpinyin
$(ENV) \
diff --git a/src/PYConfig.cc b/src/PYConfig.cc
index 1ba6704..e5f93b1 100644
--- a/src/PYConfig.cc
+++ b/src/PYConfig.cc
@@ -48,6 +48,7 @@ Config::initDefaultValues (void)
m_shift_select_candidate = FALSE;
m_minus_equal_page = TRUE;
m_comma_period_page = FALSE;
+ m_square_bracket_page = FALSE;
m_auto_commit = FALSE;
m_double_pinyin = FALSE;
@@ -79,6 +80,9 @@ Config::initDefaultValues (void)
m_english_candidate = TRUE;
m_suggestion_candidate = FALSE;
+ m_export_user_phrase = TRUE;
+ m_export_bigram_phrase = TRUE;
+
m_network_dictionary_start_timestamp = 0;
m_network_dictionary_end_timestamp = 0;
diff --git a/src/PYConfig.h b/src/PYConfig.h
index 4929e7a..e04fd2d 100644
--- a/src/PYConfig.h
+++ b/src/PYConfig.h
@@ -62,6 +62,7 @@ public:
gboolean shiftSelectCandidate (void) const { return m_shift_select_candidate; }
gboolean minusEqualPage (void) const { return m_minus_equal_page; }
gboolean commaPeriodPage (void) const { return m_comma_period_page; }
+ gboolean squareBracketPage (void) const { return m_square_bracket_page; }
gboolean autoCommit (void) const { return m_auto_commit; }
gboolean doublePinyin (void) const { return m_double_pinyin; }
DoublePinyinScheme doublePinyinSchema (void) const { return m_double_pinyin_schema; }
@@ -84,6 +85,9 @@ public:
gboolean englishCandidate (void) const { return m_english_candidate; }
gboolean suggestionCandidate (void) const { return m_suggestion_candidate; }
+ gboolean exportUserPhrase (void) const { return m_export_user_phrase; }
+ gboolean exportBigramPhrase (void) const { return m_export_bigram_phrase; }
+
std::string mainSwitch (void) const { return m_main_switch; }
std::string letterSwitch (void) const { return m_letter_switch; }
std::string punctSwitch (void) const { return m_punct_switch; }
@@ -98,6 +102,9 @@ public:
public:
/* write option */
+ virtual gboolean luaConverter (std::string converter)
+ { return FALSE; }
+
virtual gboolean networkDictionaryStartTimestamp (gint64 timestamp)
{ return FALSE; }
virtual gboolean networkDictionaryEndTimestamp (gint64 timestamp)
@@ -149,6 +156,7 @@ protected:
gboolean m_shift_select_candidate;
gboolean m_minus_equal_page;
gboolean m_comma_period_page;
+ gboolean m_square_bracket_page;
gboolean m_auto_commit;
gboolean m_double_pinyin;
@@ -176,6 +184,9 @@ protected:
gboolean m_english_candidate;
gboolean m_suggestion_candidate;
+ gboolean m_export_user_phrase;
+ gboolean m_export_bigram_phrase;
+
std::string m_main_switch;
std::string m_letter_switch;
std::string m_punct_switch;
diff --git a/src/PYEnglishDatabase.cc b/src/PYEnglishDatabase.cc
index c027a51..b68b407 100644
--- a/src/PYEnglishDatabase.cc
+++ b/src/PYEnglishDatabase.cc
@@ -45,6 +45,8 @@ EnglishDatabase::init ()
(PKGDATADIR G_DIR_SEPARATOR_S "db" G_DIR_SEPARATOR_S "english.db", path);
if (!result)
g_warning ("can't open English word list database.\n");
+
+ g_free (path);
}
@@ -52,7 +54,7 @@ EnglishDatabase::init ()
EnglishDatabase::EnglishDatabase(){
m_sqlite = NULL;
m_sql = "";
- m_user_db = "";
+ m_user_db = NULL;
m_timeout_id = 0;
m_timer = g_timer_new ();
}
@@ -69,6 +71,7 @@ EnglishDatabase::~EnglishDatabase(){
m_sqlite = NULL;
}
m_sql = "";
+ g_free (m_user_db);
m_user_db = NULL;
}
@@ -164,7 +167,7 @@ EnglishDatabase::openDatabase(const char *system_db, const char *user_db){
return FALSE;
}
/* cache the user db name. */
- m_user_db = user_db;
+ m_user_db = g_strdup (user_db);
/* do database attach here. :) */
if (sqlite3_open_v2 (system_db, &m_sqlite,
diff --git a/src/PYEnglishDatabase.h b/src/PYEnglishDatabase.h
index 002a474..ca1407c 100644
--- a/src/PYEnglishDatabase.h
+++ b/src/PYEnglishDatabase.h
@@ -59,7 +59,7 @@ private:
private:
sqlite3 *m_sqlite;
String m_sql;
- const char *m_user_db;
+ gchar *m_user_db;
guint m_timeout_id;
GTimer *m_timer;
diff --git a/src/PYEnglishEditor.cc b/src/PYEnglishEditor.cc
index 7e6e52b..9b9aaac 100644
--- a/src/PYEnglishEditor.cc
+++ b/src/PYEnglishEditor.cc
@@ -97,6 +97,12 @@ EnglishEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers)
m_text.insert (m_cursor, keyval);
m_cursor ++;
}
+
+ if (!m_config.squareBracketPage () &&
+ (IBUS_bracketleft == keyval || IBUS_bracketright == keyval)) {
+ m_text.insert (m_cursor, keyval);
+ m_cursor ++;
+ }
}
/* Deal other staff with updateStateFromInput (). */
@@ -140,6 +146,12 @@ EnglishEditor::processPageKey (guint keyval)
return TRUE;
}
break;
+ case IBUS_bracketleft:
+ if (m_config.squareBracketPage ()) {
+ pageUp ();
+ return TRUE;
+ }
+ break;
case IBUS_period:
if (m_config.commaPeriodPage ()) {
pageDown ();
@@ -152,6 +164,13 @@ EnglishEditor::processPageKey (guint keyval)
return TRUE;
}
break;
+ case IBUS_bracketright:
+ if (m_config.squareBracketPage ()) {
+ pageDown ();
+ return TRUE;
+ }
+ break;
+
case IBUS_Up:
case IBUS_KP_Up:
cursorUp ();
diff --git a/src/PYEnglishEditor.h b/src/PYEnglishEditor.h
index 780c8c7..8f00ed2 100644
--- a/src/PYEnglishEditor.h
+++ b/src/PYEnglishEditor.h
@@ -29,7 +29,7 @@ namespace PY {
class EnglishDatabase;
-static const std::string EnglishSymbols = "`~!@*()+[]{}\\|:\"/<>?";
+static const std::string EnglishSymbols = "`~!@*()+{}\\|:\"/<>?";
class EnglishEditor : public Editor {
private:
diff --git a/src/PYExtEditor.cc b/src/PYExtEditor.cc
index 44aecf0..6630b2c 100644
--- a/src/PYExtEditor.cc
+++ b/src/PYExtEditor.cc
@@ -271,6 +271,14 @@ ExtEditor::processPageKey (guint keyval)
return TRUE;
}
break;
+#endif
+ case IBUS_bracketleft:
+ if (m_config.squareBracketPage ()) {
+ pageUp ();
+ return TRUE;
+ }
+ break;
+#if 0
//For "2.5" input.
case IBUS_period:
if (m_config.commaPeriodPage ()) {
@@ -285,6 +293,13 @@ ExtEditor::processPageKey (guint keyval)
return TRUE;
}
break;
+ case IBUS_bracketright:
+ if (m_config.squareBracketPage ()) {
+ pageDown ();
+ return TRUE;
+ }
+ break;
+
case IBUS_Up:
case IBUS_KP_Up:
cursorUp ();
diff --git a/src/PYLibPinyin.cc b/src/PYLibPinyin.cc
index 0a60612..d4f47c0 100644
--- a/src/PYLibPinyin.cc
+++ b/src/PYLibPinyin.cc
@@ -277,20 +277,13 @@ LibPinyinBackEnd::importPinyinDictionary (const char *filename)
}
gboolean
-LibPinyinBackEnd::exportPinyinDictionary (const char *filename)
+LibPinyinBackEnd::exportUserPhrase (FILE *dictfile)
{
- /* user phrase library should be already loaded here. */
- FILE * dictfile = fopen (filename, "w");
- if (NULL == dictfile)
- return FALSE;
-
export_iterator_t * iter = pinyin_begin_get_phrases
(m_pinyin_context, USER_DICTIONARY);
- if (NULL == iter) {
- fclose(dictfile);
+ if (NULL == iter)
return FALSE;
- }
/* use " " as the separator. */
while (pinyin_iterator_has_next_phrase (iter)) {
@@ -308,6 +301,54 @@ LibPinyinBackEnd::exportPinyinDictionary (const char *filename)
}
pinyin_end_get_phrases(iter);
+ return TRUE;
+}
+
+gboolean
+LibPinyinBackEnd::exportBigramPhrase (FILE *dictfile)
+{
+ bigram_export_iterator_t * iter = pinyin_begin_get_bigram_phrases
+ (m_pinyin_context);
+
+ if (NULL == iter)
+ return FALSE;
+
+ /* use " " as the separator. */
+ while (pinyin_bigram_iterator_has_next_phrase (iter)) {
+ gchar * phrase = NULL; gchar * pinyin = NULL;
+ gint count = -1;
+
+ check_result (pinyin_bigram_iterator_get_next_phrase (iter, &phrase, &pinyin, &count));
+
+ if (-1 == count) /* skip output the default count. */
+ fprintf (dictfile, "%s %s\n", phrase, pinyin);
+ else /* output the count. */
+ fprintf (dictfile, "%s %s %d\n", phrase, pinyin, count);
+
+ g_free (phrase); g_free (pinyin);
+ }
+
+ pinyin_end_get_bigram_phrases(iter);
+ return TRUE;
+}
+
+gboolean
+LibPinyinBackEnd::exportPinyinDictionary (const char *filename)
+{
+ if (NULL == m_pinyin_context)
+ return FALSE;
+
+ /* user phrase library should be already loaded here. */
+ FILE * dictfile = fopen (filename, "w");
+ if (NULL == dictfile)
+ return FALSE;
+
+ if (PinyinConfig::instance ().exportUserPhrase ())
+ exportUserPhrase (dictfile);
+
+ if (PinyinConfig::instance ().exportBigramPhrase ())
+ exportBigramPhrase (dictfile);
+
fclose (dictfile);
return TRUE;
}
diff --git a/src/PYLibPinyin.h b/src/PYLibPinyin.h
index e623f27..f8e0866 100644
--- a/src/PYLibPinyin.h
+++ b/src/PYLibPinyin.h
@@ -24,6 +24,7 @@
#include <memory>
#include <time.h>
#include <glib.h>
+#include <stdio.h>
typedef struct _pinyin_context_t pinyin_context_t;
typedef struct _pinyin_instance_t pinyin_instance_t;
@@ -50,6 +51,9 @@ public:
void freeChewingInstance (pinyin_instance_t *instance);
void modified (void);
+ gboolean exportUserPhrase (FILE *dictfile);
+ gboolean exportBigramPhrase (FILE *dictfile);
+
gboolean importPinyinDictionary (const char *filename);
gboolean exportPinyinDictionary (const char *filename);
gboolean clearPinyinUserData (const char *target);
diff --git a/src/PYMain.cc b/src/PYMain.cc
index a1c3040..7568e53 100644
--- a/src/PYMain.cc
+++ b/src/PYMain.cc
@@ -37,6 +37,10 @@
#ifdef IBUS_BUILD_TABLE_INPUT_MODE
#include "PYTableDatabase.h"
#endif
+#include "PYXMLUtil.h"
+#ifdef ENABLE_LIBNOTIFY
+#include <libnotify/notify.h>
+#endif
using namespace PY;
@@ -46,6 +50,7 @@ static Pointer<IBusFactory> factory;
/* options */
static gboolean ibus = FALSE;
+static gboolean xml = FALSE;
static gboolean verbose = FALSE;
static void
@@ -60,6 +65,7 @@ static const GOptionEntry entries[] =
{ "version", 'V', G_OPTION_FLAG_NO_ARG, G_OPTION_ARG_CALLBACK,
(gpointer) show_version_and_quit, "Show the application's version.", NULL },
{ "ibus", 'i', 0, G_OPTION_ARG_NONE, &ibus, "component is executed by ibus", NULL },
+ { "xml", 'x', 0, G_OPTION_ARG_NONE, &xml, "list engines", NULL },
{ "verbose", 'v', 0, G_OPTION_ARG_NONE, &verbose, "verbose", NULL },
{ NULL },
};
@@ -162,6 +168,10 @@ sigterm_cb (int sig)
{
LibPinyinBackEnd::finalize ();
+#ifdef ENABLE_LIBNOTIFY
+ notify_uninit();
+#endif
+
::exit (EXIT_FAILURE);
}
@@ -169,6 +179,69 @@ static void
atexit_cb (void)
{
LibPinyinBackEnd::finalize ();
+
+#ifdef ENABLE_LIBNOTIFY
+ notify_uninit();
+#endif
+}
+
+static void
+print_engine_xml (void)
+{
+ gboolean success = FALSE;
+ gchar * content = NULL;
+
+ /* check the user engines.xml first. */
+ gchar * user_config = g_build_filename (g_get_user_config_dir (),
+ "ibus", "libpinyin", "engines.xml", NULL);
+ gchar * system_config = g_build_filename (PKGDATADIR, "default.xml", NULL);
+
+ /* if not, print the default.xml and exit. */
+ if (!g_file_test (user_config, G_FILE_TEST_IS_REGULAR)) {
+ if (!g_file_test (system_config, G_FILE_TEST_IS_REGULAR)) {
+ g_free (system_config);
+ g_free (user_config);
+ return;
+ }
+ content = load_file_content (system_config);
+ printf ("%s", content);
+ g_free (content);
+ g_free (system_config);
+ g_free (user_config);
+
+ return;
+ }
+
+ /* if the engines.xml exists, compare the version of two xml files. */
+ gchar * system_version = NULL;
+ success = parse_engine_version (system_config, &system_version);
+ gchar * user_version = NULL;
+ success = success && parse_engine_version (user_config, &user_version);
+ success = success && 0 == g_strcmp0 (system_version, user_version);
+ g_free (system_version);
+ g_free (user_version);
+ if (success) {
+ content = load_file_content (user_config);
+ printf ("%s", content);
+ g_free (content);
+ g_free (system_config);
+ g_free (user_config);
+ return;
+ }
+
+ /* if the version mis-match, create the new engines.xml by ibus-setup-libpinyin. */
+ g_spawn_command_line_sync (LIBEXECDIR"/ibus-setup-libpinyin resync-engine",
+ NULL, NULL, NULL, NULL);
+
+ /* print the user engines.xml. */
+ if (g_file_test (user_config, G_FILE_TEST_IS_REGULAR)) {
+ content = load_file_content (user_config);
+ printf ("%s", content);
+ g_free (content);
+ g_free (system_config);
+ g_free (user_config);
+ return;
+ }
}
int
@@ -192,10 +265,23 @@ main (gint argc, gchar **argv)
exit (-1);
}
+ if (xml) {
+ print_engine_xml ();
+ return 0;
+ }
+
::signal (SIGTERM, sigterm_cb);
::signal (SIGINT, sigterm_cb);
atexit (atexit_cb);
+#ifdef ENABLE_LIBNOTIFY
+ if (!notify_init("ibus-libpinyin")) {
+ g_error("notify_init failed");
+ exit(1);
+ }
+#endif
+
start_component ();
+
return 0;
}
diff --git a/src/PYPBopomofoEditor.cc b/src/PYPBopomofoEditor.cc
index 1e03b12..b91b594 100644
--- a/src/PYPBopomofoEditor.cc
+++ b/src/PYPBopomofoEditor.cc
@@ -73,6 +73,8 @@ BopomofoEditor::insert (gint ch)
return TRUE;
m_text.insert (m_cursor++, ch);
+ m_lookup_cursor = 0;
+
updatePinyin ();
update ();
diff --git a/src/PYPCloudCandidates.cc b/src/PYPCloudCandidates.cc
index f553ff9..3e2ef4c 100644
--- a/src/PYPCloudCandidates.cc
+++ b/src/PYPCloudCandidates.cc
@@ -496,6 +496,15 @@ CloudCandidates::selectCandidate (EnhancedCandidate & enhanced)
}
void
+releaseUserData (gpointer user_data)
+{
+ CloudAsyncRequestUserData *data = static_cast<CloudAsyncRequestUserData *> (user_data);
+ if (data->event_id != 0) {
+ g_free (user_data);
+ }
+}
+
+void
CloudCandidates::delayedCloudAsyncRequest (const gchar* pinyin)
{
gpointer user_data;
@@ -514,9 +523,11 @@ CloudCandidates::delayedCloudAsyncRequest (const gchar* pinyin)
data->cloud_candidates = this;
/* record the latest timer */
- m_source_event_id = g_timeout_add (m_editor->m_config.cloudRequestDelayTime (),
- delayedCloudAsyncRequestCallBack,
- user_data);
+ m_source_event_id = g_timeout_add_full (G_PRIORITY_DEFAULT,
+ m_editor->m_config.cloudRequestDelayTime (),
+ delayedCloudAsyncRequestCallBack,
+ user_data,
+ releaseUserData);
data->event_id = m_source_event_id;
data->message = NULL;
data->cancel_message = NULL;
@@ -537,6 +548,7 @@ CloudCandidates::delayedCloudAsyncRequestCallBack (gpointer user_data)
/* only send with a latest timer */
if (data->event_id == cloud_candidates->m_source_event_id) {
+ data->event_id = 0;
cloud_candidates->m_source_event_id = 0;
cloud_candidates->cloudAsyncRequest (user_data);
}
@@ -564,7 +576,7 @@ CloudCandidates::cloudAsyncRequest (gpointer user_data)
m_cancel_message = g_cancellable_new ();
data->cancel_message = m_cancel_message;
- SoupMessage *m_message = soup_message_new ("GET", query_request);
+ m_message = soup_message_new ("GET", query_request);
soup_session_send_async (m_session, m_message, SOUP_MESSAGE_PRIORITY_NORMAL, m_cancel_message, cloudResponseCallBack, user_data);
data->message = m_message;
@@ -576,23 +588,34 @@ CloudCandidates::cloudAsyncRequest (gpointer user_data)
void
CloudCandidates::cloudResponseCallBack (GObject *source_object, GAsyncResult *result, gpointer user_data)
{
- GInputStream *stream = soup_session_send_finish (SOUP_SESSION (source_object), result, NULL);
+ GError *error = NULL;
+ GInputStream *stream = soup_session_send_finish (SOUP_SESSION (source_object), result, &error);
CloudAsyncRequestUserData *data = static_cast<CloudAsyncRequestUserData *> (user_data);
CloudCandidates *cloud_candidates = data->cloud_candidates;
- /* process results */
- cloud_candidates->processCloudResponse (stream, cloud_candidates->m_editor->m_candidates, data->requested_pinyin);
+ if (!g_error_matches(error, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
+ /* process results */
+ cloud_candidates->processCloudResponse (stream, cloud_candidates->m_editor->m_candidates, data->requested_pinyin);
+
+ cloud_candidates->updateLookupTable ();
- cloud_candidates->updateLookupTable ();
+ /* reset m_message pointer only when it is not replaced with a new m_message */
+ cloud_candidates->m_message = NULL;
+ cloud_candidates->m_cancel_message = NULL;
+ }
+
+ if (error) {
+ g_error_free (error);
+ } else {
+ g_object_unref (stream);
+ }
/* clean up message */
g_object_unref (data->message);
- cloud_candidates->m_message = NULL;
/* clean up cancellable */
g_object_unref (data->cancel_message);
- cloud_candidates->m_cancel_message = NULL;
g_free (user_data);
}
diff --git a/src/PYPConfig.cc b/src/PYPConfig.cc
index 06b3ff8..f472ea9 100644
--- a/src/PYPConfig.cc
+++ b/src/PYPConfig.cc
@@ -20,8 +20,10 @@
#include "PYPConfig.h"
#include <string.h>
+#include <libintl.h>
#include <pinyin.h>
#include "PYBus.h"
+#include "PYXMLUtil.h"
#include "PYLibPinyin.h"
#include "PYTableDatabase.h"
@@ -29,6 +31,9 @@
namespace PY {
+#define _(text) (dgettext (GETTEXT_PACKAGE, text))
+#define N_(text) text
+
const gchar * const CONFIG_CORRECT_PINYIN = "correct-pinyin";
const gchar * const CONFIG_FUZZY_PINYIN = "fuzzy-pinyin";
const gchar * const CONFIG_ORIENTATION = "lookup-table-orientation";
@@ -39,6 +44,7 @@ const gchar * const CONFIG_SORT_OPTION = "sort-candidate-option";
const gchar * const CONFIG_SHIFT_SELECT_CANDIDATE = "shift-select-candidate";
const gchar * const CONFIG_MINUS_EQUAL_PAGE = "minus-equal-page";
const gchar * const CONFIG_COMMA_PERIOD_PAGE = "comma-period-page";
+const gchar * const CONFIG_SQUARE_BRACKET_PAGE = "square-bracket-page";
const gchar * const CONFIG_AUTO_COMMIT = "auto-commit";
const gchar * const CONFIG_DOUBLE_PINYIN = "double-pinyin";
const gchar * const CONFIG_DOUBLE_PINYIN_SCHEMA = "double-pinyin-schema";
@@ -63,6 +69,8 @@ const gchar * const CONFIG_USE_CUSTOM_TABLE = "use-custom-table";
const gchar * const CONFIG_EMOJI_CANDIDATE = "emoji-candidate";
const gchar * const CONFIG_ENGLISH_CANDIDATE = "english-candidate";
const gchar * const CONFIG_SUGGESTION_CANDIDATE = "suggestion-candidate";
+const gchar * const CONFIG_EXPORT_USER_PHRASE = "export-user-phrase";
+const gchar * const CONFIG_EXPORT_BIGRAM_PHRASE = "export-bigram-phrase";
const gchar * const CONFIG_IMPORT_CUSTOM_TABLE = "import-custom-table";
const gchar * const CONFIG_EXPORT_CUSTOM_TABLE = "export-custom-table";
const gchar * const CONFIG_CLEAR_CUSTOM_TABLE = "clear-custom-table";
@@ -109,6 +117,14 @@ LibPinyinConfig::~LibPinyinConfig (void)
}
gboolean
+LibPinyinConfig::luaConverter (std::string converter)
+{
+ m_lua_converter = converter;
+ return write (CONFIG_LUA_CONVERTER, converter.c_str ());
+}
+
+
+gboolean
LibPinyinConfig::networkDictionaryStartTimestamp (gint64 timestamp)
{
m_network_dictionary_start_timestamp = timestamp;
@@ -138,6 +154,9 @@ LibPinyinConfig::initDefaultValues (void)
m_english_candidate = TRUE;
m_suggestion_candidate = FALSE;
+ m_export_user_phrase = TRUE;
+ m_export_bigram_phrase = TRUE;
+
m_shift_select_candidate = FALSE;
m_minus_equal_page = TRUE;
m_comma_period_page = FALSE;
@@ -576,6 +595,7 @@ PinyinConfig::readDefaultValues (void)
m_shift_select_candidate = read (CONFIG_SHIFT_SELECT_CANDIDATE, false);
m_minus_equal_page = read (CONFIG_MINUS_EQUAL_PAGE, true);
m_comma_period_page = read (CONFIG_COMMA_PERIOD_PAGE, false);
+ m_square_bracket_page = read (CONFIG_SQUARE_BRACKET_PAGE, false);
m_auto_commit = read (CONFIG_AUTO_COMMIT, false);
m_lua_extension = read (CONFIG_LUA_EXTENSION, true);
@@ -583,6 +603,10 @@ PinyinConfig::readDefaultValues (void)
m_table_input_mode = read (CONFIG_TABLE_INPUT_MODE, true);
m_use_custom_table = read (CONFIG_USE_CUSTOM_TABLE, false);
+ /* export phrases */
+ m_export_user_phrase = read (CONFIG_EXPORT_USER_PHRASE, true);
+ m_export_bigram_phrase = read (CONFIG_EXPORT_BIGRAM_PHRASE, true);
+
/* lua */
m_lua_converter = read (CONFIG_LUA_CONVERTER, "");
@@ -646,6 +670,8 @@ PinyinConfig::valueChanged (const std::string &schema_id,
m_minus_equal_page = normalizeGVariant (value, true);
else if (CONFIG_COMMA_PERIOD_PAGE == name)
m_comma_period_page = normalizeGVariant (value, false);
+ else if (CONFIG_SQUARE_BRACKET_PAGE == name)
+ m_square_bracket_page = normalizeGVariant (value, false);
else if (CONFIG_LUA_CONVERTER == name)
m_lua_converter = normalizeGVariant (value, std::string (""));
else if (CONFIG_AUTO_COMMIT == name)
@@ -658,15 +684,23 @@ PinyinConfig::valueChanged (const std::string &schema_id,
m_table_input_mode = normalizeGVariant (value, true);
else if (CONFIG_USE_CUSTOM_TABLE == name)
m_use_custom_table = normalizeGVariant (value, false);
+ else if (CONFIG_EXPORT_USER_PHRASE == name)
+ m_export_user_phrase = normalizeGVariant (value, true);
+ else if (CONFIG_EXPORT_BIGRAM_PHRASE == name)
+ m_export_bigram_phrase = normalizeGVariant (value, true);
else if (CONFIG_IMPORT_CUSTOM_TABLE == name) {
std::string filename = normalizeGVariant (value, std::string(""));
- if (!filename.empty ())
+ if (!filename.empty ()) {
TableDatabase::userInstance ().importTable (filename.c_str ());
+ show_message (_("The table file is imported."), NULL);
+ }
}
else if (CONFIG_EXPORT_CUSTOM_TABLE == name) {
std::string filename = normalizeGVariant (value, std::string(""));
- if (!filename.empty ())
+ if (!filename.empty ()) {
TableDatabase::userInstance ().exportTable (filename.c_str ());
+ show_message (_("The table file is exported."), NULL);
+ }
}
else if (CONFIG_CLEAR_CUSTOM_TABLE == name) {
std::string target = normalizeGVariant (value, std::string(""));
@@ -675,13 +709,17 @@ PinyinConfig::valueChanged (const std::string &schema_id,
}
else if (CONFIG_IMPORT_DICTIONARY == name) {
std::string filename = normalizeGVariant (value, std::string(""));
- if (!filename.empty ())
+ if (!filename.empty ()) {
LibPinyinBackEnd::instance ().importPinyinDictionary (filename.c_str ());
+ show_message (_("The pinyin dictionary file is imported."), NULL);
+ }
}
else if (CONFIG_EXPORT_DICTIONARY == name) {
std::string filename = normalizeGVariant (value, std::string(""));
- if (!filename.empty ())
+ if (!filename.empty ()) {
LibPinyinBackEnd::instance ().exportPinyinDictionary (filename.c_str ());
+ show_message (_("The pinyin dictionary file is exported."), NULL);
+ }
}
else if (CONFIG_CLEAR_USER_DATA == name) {
std::string target = normalizeGVariant (value, std::string(""));
diff --git a/src/PYPConfig.h b/src/PYPConfig.h
index b08fd5a..b1a2dfd 100644
--- a/src/PYPConfig.h
+++ b/src/PYPConfig.h
@@ -39,6 +39,7 @@ protected:
virtual ~LibPinyinConfig (void);
public:
+ virtual gboolean luaConverter (std::string converter);
virtual gboolean networkDictionaryStartTimestamp (gint64 timestamp);
virtual gboolean networkDictionaryEndTimestamp (gint64 timestamp);
diff --git a/src/PYPDoublePinyinEditor.cc b/src/PYPDoublePinyinEditor.cc
index 22aa401..fe53ab1 100644
--- a/src/PYPDoublePinyinEditor.cc
+++ b/src/PYPDoublePinyinEditor.cc
@@ -73,6 +73,8 @@ DoublePinyinEditor::insert (gint ch)
#endif
m_text.insert (m_cursor++, ch);
+ m_lookup_cursor = 0;
+
updatePinyin ();
update ();
diff --git a/src/PYPEnhancedCandidates.h b/src/PYPEnhancedCandidates.h
index e5bc62f..bffdac9 100644
--- a/src/PYPEnhancedCandidates.h
+++ b/src/PYPEnhancedCandidates.h
@@ -42,7 +42,8 @@ enum CandidateType {
CANDIDATE_LUA_CONVERTER,
CANDIDATE_CLOUD_INPUT,
CANDIDATE_EMOJI,
- CANDIDATE_ENGLISH
+ CANDIDATE_ENGLISH,
+ CANDIDATE_PREDICTED_PUNCTUATION
};
enum SelectCandidateAction {
diff --git a/src/PYPFullPinyinEditor.cc b/src/PYPFullPinyinEditor.cc
index bd41572..b20a47c 100644
--- a/src/PYPFullPinyinEditor.cc
+++ b/src/PYPFullPinyinEditor.cc
@@ -58,6 +58,7 @@ FullPinyinEditor::insert (gint ch)
#endif
m_text.insert (m_cursor++, ch);
+ m_lookup_cursor = 0;
updatePinyin ();
update ();
diff --git a/src/PYPLibPinyinCandidates.cc b/src/PYPLibPinyinCandidates.cc
index dd3d409..6726739 100644
--- a/src/PYPLibPinyinCandidates.cc
+++ b/src/PYPLibPinyinCandidates.cc
@@ -167,7 +167,12 @@ LibPinyinCandidates::selectCandidate (EnhancedCandidate & enhanced)
guint16 begin = 0;
pinyin_get_pinyin_key_rest_positions (instance, pos, &begin, NULL);
- m_editor->m_cursor = begin;
+
+ /* The cursor is at the end of the text input. */
+ if (m_editor->m_cursor == m_editor->m_text.length ())
+ m_editor->m_lookup_cursor = begin;
+ else
+ m_editor->m_cursor = begin;
return SELECT_CANDIDATE_UPDATE;
}
diff --git a/src/PYPPhoneticEditor.cc b/src/PYPPhoneticEditor.cc
index 00fa610..42d759c 100644
--- a/src/PYPPhoneticEditor.cc
+++ b/src/PYPPhoneticEditor.cc
@@ -31,6 +31,7 @@ PhoneticEditor::PhoneticEditor (PinyinProperties &props,
: Editor (props, config),
m_pinyin_len (0),
m_lookup_table (m_config.pageSize ()),
+ m_lookup_cursor (0),
m_libpinyin_candidates (this),
#ifdef IBUS_BUILD_LUA_EXTENSION
m_lua_trigger_candidates (this),
@@ -379,12 +380,13 @@ PhoneticEditor::getPinyinCursor ()
guint
PhoneticEditor::getLookupCursor (void)
{
- guint lookup_cursor = getPinyinCursor ();
+ guint pinyin_cursor = getPinyinCursor ();
- /* show candidates when pinyin cursor is at end. */
- if (lookup_cursor == m_text.length ())
- lookup_cursor = 0;
- return lookup_cursor;
+ /* show candidates when pinyin cursor is at the end. */
+ if (m_cursor == m_text.length ())
+ return m_lookup_cursor;
+
+ return pinyin_cursor;
}
int
@@ -564,6 +566,8 @@ PhoneticEditor::removeCharBefore (void)
return FALSE;
m_cursor --;
+ m_lookup_cursor = 0;
+
m_text.erase (m_cursor, 1);
updatePinyin ();
@@ -579,6 +583,7 @@ PhoneticEditor::removeCharAfter (void)
return FALSE;
m_text.erase (m_cursor, 1);
+ m_lookup_cursor = 0;
updatePinyin ();
update ();
@@ -593,6 +598,8 @@ PhoneticEditor::moveCursorLeft (void)
return FALSE;
m_cursor --;
+ m_lookup_cursor = 0;
+
update ();
return TRUE;
}
@@ -604,6 +611,8 @@ PhoneticEditor::moveCursorRight (void)
return FALSE;
m_cursor ++;
+ m_lookup_cursor = 0;
+
update ();
return TRUE;
}
@@ -615,6 +624,8 @@ PhoneticEditor::moveCursorToBegin (void)
return FALSE;
m_cursor = 0;
+ m_lookup_cursor = 0;
+
update ();
return TRUE;
}
@@ -626,6 +637,8 @@ PhoneticEditor::moveCursorToEnd (void)
return FALSE;
m_cursor = m_text.length ();
+ m_lookup_cursor = 0;
+
update ();
return TRUE;
}
@@ -670,6 +683,8 @@ PhoneticEditor::removeWordBefore (void)
guint cursor = getCursorLeftByWord ();
m_text.erase (cursor, m_cursor - cursor);
m_cursor = cursor;
+ m_lookup_cursor = 0;
+
updatePinyin ();
update ();
return TRUE;
@@ -683,6 +698,8 @@ PhoneticEditor::removeWordAfter (void)
guint cursor = getCursorRightByWord ();
m_text.erase (m_cursor, cursor - m_cursor);
+ m_lookup_cursor = 0;
+
updatePinyin ();
update ();
return TRUE;
@@ -697,6 +714,8 @@ PhoneticEditor::moveCursorLeftByWord (void)
guint cursor = getCursorLeftByWord ();
m_cursor = cursor;
+ m_lookup_cursor = 0;
+
update ();
return TRUE;
}
@@ -710,6 +729,8 @@ PhoneticEditor::moveCursorRightByWord (void)
guint cursor = getCursorRightByWord ();
m_cursor = cursor;
+ m_lookup_cursor = 0;
+
update ();
return TRUE;
}
diff --git a/src/PYPPhoneticEditor.h b/src/PYPPhoneticEditor.h
index 03e61aa..2032cf1 100644
--- a/src/PYPPhoneticEditor.h
+++ b/src/PYPPhoneticEditor.h
@@ -117,6 +117,7 @@ protected:
/* varibles */
guint m_pinyin_len;
LookupTable m_lookup_table;
+ guint m_lookup_cursor;
String m_buffer;
/* use LibPinyinBackEnd here. */
diff --git a/src/PYPPinyinEditor.cc b/src/PYPPinyinEditor.cc
index 99efbe3..f2b2d7e 100644
--- a/src/PYPPinyinEditor.cc
+++ b/src/PYPPinyinEditor.cc
@@ -109,6 +109,12 @@ PinyinEditor::processPunct (guint keyval, guint keycode,
return TRUE;
}
break;
+ case IBUS_bracketleft:
+ if (m_config.squareBracketPage ()) {
+ pageUp ();
+ return TRUE;
+ }
+ break;
case IBUS_period:
if (m_config.commaPeriodPage ()) {
pageDown ();
@@ -121,6 +127,12 @@ PinyinEditor::processPunct (guint keyval, guint keycode,
return TRUE;
}
break;
+ case IBUS_bracketright:
+ if (m_config.squareBracketPage ()) {
+ pageDown ();
+ return TRUE;
+ }
+ break;
}
if (m_config.autoCommit ()) {
diff --git a/src/PYPPinyinEngine.cc b/src/PYPPinyinEngine.cc
index 2e06d13..16366f2 100644
--- a/src/PYPPinyinEngine.cc
+++ b/src/PYPPinyinEngine.cc
@@ -75,6 +75,12 @@ PinyinEngine::PinyinEngine (IBusEngine *engine)
#endif
}
+#ifdef IBUS_BUILD_LUA_EXTENSION
+ m_props.setLuaPlugin (m_lua_plugin);
+ if (PinyinConfig::instance ().luaExtension ())
+ m_props.appendLuaConverter ();
+#endif
+
m_editors[MODE_PUNCT].reset
(new PunctEditor (m_props, PinyinConfig::instance ()));
m_editors[MODE_RAW].reset
@@ -377,6 +383,9 @@ PinyinEngine::processKeyEvent (guint keyval, guint keycode, guint modifiers)
/* For full pinyin, "'" is used. */
(PinyinConfig::instance ().doublePinyin () &&
IBUS_apostrophe == keyval) ||
+ /* Use square brackets to flip page */
+ (!PinyinConfig::instance ().squareBracketPage () &&
+ (IBUS_bracketleft == keyval || IBUS_bracketright == keyval)) ||
/* For double pinyin, ";" is used. */
(!PinyinConfig::instance ().doublePinyin () &&
IBUS_semicolon == keyval)) &&
@@ -430,6 +439,9 @@ PinyinEngine::processKeyEvent (guint keyval, guint keycode, guint modifiers)
m_input_mode != MODE_INIT &&
m_editors[m_input_mode]->text ().empty ()))
m_input_mode = MODE_INIT;
+
+ if (G_UNLIKELY (!retval && m_input_mode == MODE_SUGGESTION))
+ m_input_mode = MODE_INIT;
}
if (G_UNLIKELY (!retval))
diff --git a/src/PYPSuggestionCandidates.cc b/src/PYPSuggestionCandidates.cc
index 7f8aa1c..84b3f0a 100644
--- a/src/PYPSuggestionCandidates.cc
+++ b/src/PYPSuggestionCandidates.cc
@@ -47,6 +47,9 @@ SuggestionCandidates::processCandidates (std::vector<EnhancedCandidate> & candid
case PREDICTED_PREFIX_CANDIDATE:
candidate_type = CANDIDATE_PREDICTED_PREFIX;
break;
+ case PREDICTED_PUNCTUATION_CANDIDATE:
+ candidate_type = CANDIDATE_PREDICTED_PUNCTUATION;
+ break;
default:
assert(FALSE);
}
@@ -70,7 +73,8 @@ SuggestionCandidates::selectCandidate (EnhancedCandidate & enhanced)
{
pinyin_instance_t * instance = m_editor->m_instance;
assert (CANDIDATE_PREDICTED_BIGRAM == enhanced.m_candidate_type ||
- CANDIDATE_PREDICTED_PREFIX == enhanced.m_candidate_type);
+ CANDIDATE_PREDICTED_PREFIX == enhanced.m_candidate_type ||
+ CANDIDATE_PREDICTED_PUNCTUATION == enhanced.m_candidate_type);
guint len = 0;
pinyin_get_n_candidate (instance, &len);
diff --git a/src/PYPSuggestionEditor.cc b/src/PYPSuggestionEditor.cc
index 85c35ec..129c093 100644
--- a/src/PYPSuggestionEditor.cc
+++ b/src/PYPSuggestionEditor.cc
@@ -113,6 +113,12 @@ SuggestionEditor::processPageKey (guint keyval)
return TRUE;
}
break;
+ case IBUS_bracketleft:
+ if (m_config.squareBracketPage ()) {
+ pageUp ();
+ return TRUE;
+ }
+ break;
case IBUS_period:
if (m_config.commaPeriodPage ()) {
pageDown ();
@@ -125,6 +131,12 @@ SuggestionEditor::processPageKey (guint keyval)
return TRUE;
}
break;
+ case IBUS_bracketright:
+ if (m_config.squareBracketPage ()) {
+ pageDown ();
+ return TRUE;
+ }
+ break;
case IBUS_Up:
case IBUS_KP_Up:
@@ -262,7 +274,7 @@ SuggestionEditor::cursorDown (void)
void
SuggestionEditor::update (void)
{
- pinyin_guess_predicted_candidates (m_instance, m_text);
+ pinyin_guess_predicted_candidates_with_punctuations (m_instance, m_text);
updateLookupTable ();
updatePreeditText ();
@@ -347,6 +359,7 @@ SuggestionEditor::selectCandidateInternal (EnhancedCandidate & candidate)
switch (candidate.m_candidate_type) {
case CANDIDATE_PREDICTED_BIGRAM:
case CANDIDATE_PREDICTED_PREFIX:
+ case CANDIDATE_PREDICTED_PUNCTUATION:
return m_suggestion_candidates.selectCandidate (candidate);
case CANDIDATE_TRADITIONAL_CHINESE:
diff --git a/src/PYPinyinProperties.cc b/src/PYPinyinProperties.cc
index fe0a7a0..edc2b88 100644
--- a/src/PYPinyinProperties.cc
+++ b/src/PYPinyinProperties.cc
@@ -21,6 +21,9 @@
#include <libintl.h>
#include "PYText.h"
#include "PYConfig.h"
+#ifdef IBUS_BUILD_LUA_EXTENSION
+#include "lua-plugin.h"
+#endif
namespace PY {
@@ -94,6 +97,29 @@ PinyinProperties::PinyinProperties (Config & config)
m_props.append (m_prop_simp);
m_props.append (m_prop_setup);
+#ifdef IBUS_BUILD_LUA_EXTENSION
+ m_prop_lua_converter = NULL;
+#endif
+}
+
+PinyinProperties::~PinyinProperties (void)
+{
+#ifdef IBUS_BUILD_LUA_EXTENSION
+ if (m_prop_lua_converter) {
+ delete m_prop_lua_converter;
+ m_prop_lua_converter = NULL;
+ }
+
+ for (auto iter = m_props_lua_converter_vec.begin ();
+ iter != m_props_lua_converter_vec.end (); ++iter) {
+ delete *iter;
+ }
+
+ for (auto iter = m_lua_converter_names.begin ();
+ iter != m_lua_converter_names.end (); ++iter) {
+ delete *iter;
+ }
+#endif
}
void
@@ -119,6 +145,9 @@ PinyinProperties::toggleModeChinese (void)
m_prop_full_punct.setSensitive (m_mode_chinese);
updateProperty (m_prop_full_punct);
+
+ m_prop_simp.setSensitive (m_mode_chinese);
+ updateProperty (m_prop_simp);
}
void
@@ -209,8 +238,103 @@ PinyinProperties::propertyActivate (const gchar *prop_name, guint prop_state) {
toggleModeSimp ();
return TRUE;
}
+
+#ifdef IBUS_BUILD_LUA_EXTENSION
+ const int len = strlen("LuaConverter.");
+ if (0 == strncmp (prop_name, "LuaConverter.", len)) {
+ toggleLuaConverter (len, prop_name, prop_state);
+ return TRUE;
+ }
+#endif
+
return FALSE;
}
+#ifdef IBUS_BUILD_LUA_EXTENSION
+gboolean
+PinyinProperties::setLuaPlugin (IBusEnginePlugin *plugin) {
+ m_lua_plugin = plugin;
+ return TRUE;
+}
+
+void
+PinyinProperties::toggleLuaConverter (const int prefix_len,
+ const gchar *prop_name,
+ guint prop_state) {
+ if (prop_state == PROP_STATE_CHECKED) {
+ std::string name = prop_name + prefix_len;
+ if (name == "None")
+ m_config.luaConverter ("");
+ else
+ m_config.luaConverter (name);
+ }
+
+ for (auto iter = m_props_lua_converter_vec.begin ();
+ iter != m_props_lua_converter_vec.end (); ++iter) {
+ Property *prop = *iter;
+ if (0 == g_strcmp0 (prop->getKey (), prop_name)) {
+ prop->setState ((IBusPropState) prop_state);
+ updateProperty (*prop);
+ }
+ }
+}
+
+gboolean
+PinyinProperties::appendLuaConverter (void) {
+ if (!m_lua_plugin)
+ return FALSE;
+
+ const GArray * converters =
+ ibus_engine_plugin_get_available_converters (m_lua_plugin);
+ if (converters->len == 0)
+ return FALSE;
+
+ m_prop_lua_converter = new Property ("LuaConverter",
+ PROP_TYPE_MENU,
+ StaticText (_("Lua Converter")),
+ PKGDATADIR"/icons/lua-converter.svg",
+ StaticText (_("Use the Lua Convertor")));
+
+ Property * prop = NULL;
+
+ /* Add the None converter. */
+ prop = new Property ("LuaConverter.None",
+ PROP_TYPE_RADIO,
+ StaticText (_("None")));
+
+ if (m_config.luaConverter ().empty ())
+ prop->setState (PROP_STATE_CHECKED);
+
+ m_props_lua_converter_vec.push_back (prop);
+ m_props_lua_converter_list.append (*prop);
+
+ /* Add the User Lua Converters. */
+ for (int i = 0; i < converters->len; i++) {
+ lua_converter_t *converter = &g_array_index
+ (converters, lua_converter_t, i);
+
+ const gchar *name = converter->lua_function_name;
+ gchar *key = g_strdup_printf ("LuaConverter.%s", name);
+ m_lua_converter_names.push_back (key);
+
+ prop = new Property (key,
+ PROP_TYPE_RADIO,
+ Text (converter->description));
+
+ if (!m_config.luaConverter ().empty () &&
+ m_config.luaConverter () == name)
+ prop->setState (PROP_STATE_CHECKED);
+
+ m_props_lua_converter_vec.push_back (prop);
+ m_props_lua_converter_list.append (*prop);
+ }
+
+ m_prop_lua_converter->setSubProps (m_props_lua_converter_list);
+ m_props.append (*m_prop_lua_converter);
+
+ return TRUE;
+}
+
+#endif
};
diff --git a/src/PYPinyinProperties.h b/src/PYPinyinProperties.h
index 58f39bd..6706032 100644
--- a/src/PYPinyinProperties.h
+++ b/src/PYPinyinProperties.h
@@ -22,6 +22,12 @@
#include "PYSignal.h"
#include "PYProperty.h"
+#include <vector>
+#include <glib.h>
+
+G_BEGIN_DECLS
+typedef struct _IBusEnginePlugin IBusEnginePlugin;
+G_END_DECLS
namespace PY {
@@ -30,6 +36,7 @@ class Config;
class PinyinProperties {
public:
PinyinProperties (Config & config);
+ virtual ~PinyinProperties (void);
void toggleModeChinese (void);
void toggleModeFull (void);
@@ -74,6 +81,23 @@ private:
Property m_prop_simp;
Property m_prop_setup;
PropList m_props;
+
+#ifdef IBUS_BUILD_LUA_EXTENSION
+ Pointer<IBusEnginePlugin> m_lua_plugin;
+ Property *m_prop_lua_converter;
+ std::vector<Property *> m_props_lua_converter_vec;
+ std::vector<gchar *> m_lua_converter_names;
+ PropList m_props_lua_converter_list;
+
+public:
+ gboolean setLuaPlugin (IBusEnginePlugin *plugin);
+
+ void toggleLuaConverter (const int prefix_len,
+ const gchar *prop_name,
+ guint prop_state);
+
+ gboolean appendLuaConverter (void);
+#endif
};
};
diff --git a/src/PYProperty.h b/src/PYProperty.h
index c30d3c2..24923e4 100644
--- a/src/PYProperty.h
+++ b/src/PYProperty.h
@@ -39,6 +39,11 @@ public:
IBusPropList *props = NULL)
: Object (ibus_property_new (key, type, label, icon, tooltip, sensitive, visible, state, props)) { }
+ const gchar * getKey (void)
+ {
+ return ibus_property_get_key (get<IBusProperty> ());
+ }
+
void setLabel (IBusText *text)
{
ibus_property_set_label (get<IBusProperty> (), text);
@@ -79,6 +84,16 @@ public:
setTooltip (Text (text));
}
+ void setState (IBusPropState state)
+ {
+ ibus_property_set_state (get<IBusProperty> (), state);
+ }
+
+ void setSubProps (IBusPropList *props)
+ {
+ ibus_property_set_sub_props (get<IBusProperty> (), props);
+ }
+
operator IBusProperty * (void) const
{
return get<IBusProperty> ();
diff --git a/src/PYTableDatabase.cc b/src/PYTableDatabase.cc
index a6f8209..0e55b6e 100644
--- a/src/PYTableDatabase.cc
+++ b/src/PYTableDatabase.cc
@@ -57,6 +57,8 @@ TableDatabase::init ()
if (!result)
g_warning ("can't open user table database.\n");
+
+ g_free (path);
}
TableDatabase::TableDatabase(){
@@ -269,12 +271,16 @@ TableDatabase::importTable (const char *filename){
"SELECT MAX(id) FROM phrases;";
m_sql = SQL_DB_SELECT;
int result = sqlite3_prepare_v2 (m_sqlite, m_sql.c_str (), -1, &stmt, &tail);
- if (result != SQLITE_OK)
+ if (result != SQLITE_OK) {
+ fclose (input);
return FALSE;
+ }
result = sqlite3_step (stmt);
- if (result != SQLITE_ROW)
+ if (result != SQLITE_ROW) {
+ fclose (input);
return FALSE;
+ }
int id = 0;
result = sqlite3_column_type (stmt, 0);
@@ -286,8 +292,10 @@ TableDatabase::importTable (const char *filename){
g_warning ("Can't find id for user table database.");
m_sql = "BEGIN TRANSACTION;";
- if (!executeSQL (m_sqlite))
+ if (!executeSQL (m_sqlite)) {
+ fclose (input);
return FALSE;
+ }
/* Open the table file with format:
"tabkeys phrase freq". */
@@ -311,8 +319,10 @@ TableDatabase::importTable (const char *filename){
}
m_sql = "COMMIT;";
- if (!executeSQL (m_sqlite))
+ if (!executeSQL (m_sqlite)) {
+ fclose (input);
return FALSE;
+ }
fclose (input);
return TRUE;
@@ -343,18 +353,24 @@ TableDatabase::exportTable (const char *filename){
while (result == SQLITE_ROW){
/* write one line. */
result = sqlite3_column_type (stmt, 0);
- if (result != SQLITE_TEXT)
+ if (result != SQLITE_TEXT) {
+ fclose (output);
return FALSE;
+ }
const char *tabkeys = (const char *)sqlite3_column_text (stmt, 0);
result = sqlite3_column_type (stmt, 1);
- if (result != SQLITE_TEXT)
+ if (result != SQLITE_TEXT) {
+ fclose (output);
return FALSE;
+ }
const char *phrase = (const char *)sqlite3_column_text (stmt, 1);
result = sqlite3_column_type (stmt, 2);
- if (result != SQLITE_INTEGER)
+ if (result != SQLITE_INTEGER) {
+ fclose (output);
return FALSE;
+ }
const int freq = sqlite3_column_int (stmt, 2);
fprintf (output, "%s\t%s\t%d\n", tabkeys, phrase, freq);
diff --git a/src/PYTableEditor.cc b/src/PYTableEditor.cc
index ddaab57..4c79983 100644
--- a/src/PYTableEditor.cc
+++ b/src/PYTableEditor.cc
@@ -135,6 +135,12 @@ TableEditor::processPageKey (guint keyval)
return TRUE;
}
break;
+ case IBUS_bracketleft:
+ if (m_config.squareBracketPage ()) {
+ pageUp ();
+ return TRUE;
+ }
+ break;
case IBUS_period:
if (m_config.commaPeriodPage ()) {
pageDown ();
@@ -147,6 +153,12 @@ TableEditor::processPageKey (guint keyval)
return TRUE;
}
break;
+ case IBUS_bracketright:
+ if (m_config.squareBracketPage ()) {
+ pageDown ();
+ return TRUE;
+ }
+ break;
case IBUS_Up:
case IBUS_KP_Up:
diff --git a/src/PYXMLUtil.cc b/src/PYXMLUtil.cc
new file mode 100644
index 0000000..dcefc14
--- /dev/null
+++ b/src/PYXMLUtil.cc
@@ -0,0 +1,188 @@
+/* vim:set et ts=4 sts=4:
+ *
+ * ibus-libpinyin - Intelligent Pinyin engine based on libpinyin for IBus
+ *
+ * Copyright (c) 2024 Peng Wu <alexepico@gmail.com>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "PYXMLUtil.h"
+#include <glib.h>
+#include <gio/gio.h>
+#ifdef ENABLE_LIBNOTIFY
+#include <libnotify/notify.h>
+#endif
+
+namespace PY {
+
+struct EngineXMLVersion{
+ gboolean in_version_tag;
+ /* There are two versions in the XML file, only keep the first version here. */
+ gchar * first_version;
+};
+
+static void engine_parser_start_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ gpointer user_data,
+ GError **error);
+static void engine_parser_end_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ gpointer user_data,
+ GError **error);
+static void engine_parser_characters (GMarkupParseContext *context,
+ const gchar *text,
+ gsize text_len,
+ gpointer user_data,
+ GError **error);
+static void engine_parser_passthrough (GMarkupParseContext *context,
+ const gchar *passthrough_text,
+ gsize text_len,
+ gpointer user_data,
+ GError **error);
+static void engine_parser_error (GMarkupParseContext *context,
+ GError *error,
+ gpointer user_data);
+
+
+/*
+ * Parser
+ */
+static const GMarkupParser engine_xml_parser = {
+ engine_parser_start_element,
+ engine_parser_end_element,
+ engine_parser_characters,
+ engine_parser_passthrough,
+ engine_parser_error
+};
+
+struct EngineXMLFile{
+ gboolean in_version_tag;
+ gchar * first_version;
+};
+
+static void
+engine_parser_start_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ gpointer user_data,
+ GError **error)
+{
+ EngineXMLFile * xmlfile = (EngineXMLFile *) user_data;
+ if (0 == strcmp(element_name, "version"))
+ xmlfile->in_version_tag = TRUE;
+}
+
+static void
+engine_parser_end_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ gpointer user_data,
+ GError **error)
+{
+ EngineXMLFile * xmlfile = (EngineXMLFile *) user_data;
+ if (0 == strcmp(element_name, "version"))
+ xmlfile->in_version_tag = FALSE;
+}
+
+static void
+engine_parser_characters (GMarkupParseContext *context,
+ const gchar *text,
+ gsize text_len,
+ gpointer user_data,
+ GError **error)
+{
+ EngineXMLFile * xmlfile = (EngineXMLFile *) user_data;
+ if (xmlfile->in_version_tag && xmlfile->first_version == NULL)
+ xmlfile->first_version = g_strdup(text);
+}
+
+static void
+engine_parser_passthrough (GMarkupParseContext *context,
+ const gchar *passthrough_text,
+ gsize text_len,
+ gpointer user_data,
+ GError **error)
+{
+}
+
+static void
+engine_parser_error (GMarkupParseContext *context,
+ GError *error,
+ gpointer user_data)
+{
+ g_printerr ("ERROR: %s\n", error->message);
+}
+
+gchar *
+load_file_content(const gchar * filename)
+{
+ gboolean success = FALSE;
+ GError *error = NULL;
+
+ GFile *file = NULL;
+ char *data = NULL;
+ gsize len = 0;
+
+ file = g_file_new_for_path (filename);
+ success = g_file_load_contents (file, NULL, &data, &len, NULL, &error);
+ g_object_unref (file);
+
+ return data;
+}
+
+gboolean
+parse_engine_version(const char * filename, gchar ** version)
+{
+ GMarkupParseContext *context = NULL;
+ gboolean success = FALSE;
+ GError *error = NULL;
+
+ GFile *file = NULL;
+ char *data = NULL;
+ gsize len = 0;
+
+ EngineXMLFile xmlfile;
+ memset(&xmlfile, 0, sizeof(EngineXMLFile));
+
+ file = g_file_new_for_path (filename);
+ success = g_file_load_contents (file, NULL, &data, &len, NULL, &error);
+ g_object_unref (file);
+ context = g_markup_parse_context_new (&engine_xml_parser, G_MARKUP_DEFAULT_FLAGS, &xmlfile, NULL);
+ success = g_markup_parse_context_parse (context, data, len, NULL);
+ g_markup_parse_context_free (context);
+ g_free (data);
+
+ *version = xmlfile.first_version;
+ return TRUE;
+}
+
+void
+show_message(const char* summary, const char* details)
+{
+#ifdef ENABLE_LIBNOTIFY
+ NotifyNotification* notice = notify_notification_new (summary, details, NULL);
+ notify_notification_show (notice, NULL);
+ g_object_unref (notice);
+#else
+ if (details == NULL)
+ g_message ("%s\n", summary);
+ else
+ g_message ("%s\n%s\n", summary, details);
+#endif
+}
+
+};
diff --git a/src/PYXMLUtil.h b/src/PYXMLUtil.h
new file mode 100644
index 0000000..10fe4f6
--- /dev/null
+++ b/src/PYXMLUtil.h
@@ -0,0 +1,43 @@
+/* vim:set et ts=4 sts=4:
+ *
+ * ibus-libpinyin - Intelligent Pinyin engine based on libpinyin for IBus
+ *
+ * Copyright (c) 2024 Peng Wu <alexepico@gmail.com>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef __PY_XML_UTIL_H_
+#define __PY_XML_UTIL_H_
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <glib.h>
+
+namespace PY {
+
+gchar *
+load_file_content(const gchar * filename);
+
+gboolean
+parse_engine_version(const char * filename, gchar ** version);
+
+void
+show_message(const char* summary, const char* details);
+
+};
+
+#endif
diff --git a/src/default.inputmethod.xml.in.in b/src/default.inputmethod.xml.in.in
new file mode 100644
index 0000000..c68a61d
--- /dev/null
+++ b/src/default.inputmethod.xml.in.in
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- filename: default.xml -->
+<engines>
+ <engine>
+ <name>libpinyin</name>
+ <language>zh_CN</language>
+ <license>GPL</license>
+ <author>
+ Peng Wu &lt;alexepico@gmail.com&gt;
+ Peng Huang &lt;shawn.p.huang@gmail.com&gt;
+ BYVoid &lt;byvoid1@gmail.com&gt;
+ </author>
+ <icon>@PKGDATADIR@/icons/ibus-pinyin.svg</icon>
+ <layout>default</layout>
+ <longname>Intelligent Pinyin</longname>
+ <description>Intelligent Pinyin input method</description>
+ <rank>99</rank>
+ <symbol>&#x62FC;</symbol>
+ @ICON_PROP_KEY_XML@
+ <setup>@LIBEXECDIR@/ibus-setup-libpinyin libpinyin</setup>
+ <version>@VERSION@</version>
+ <textdomain>ibus-libpinyin</textdomain>
+ </engine>
+ <engine>
+ <name>libbopomofo</name>
+ <language>zh_TW</language>
+ <license>GPL</license>
+ <author>
+ Peng Wu &lt;alexepico@gmail.com&gt;
+ Peng Huang &lt;shawn.p.huang@gmail.com&gt;
+ BYVoid &lt;byvoid1@gmail.com&gt;
+ </author>
+ <icon>@PKGDATADIR@/icons/ibus-bopomofo.svg</icon>
+ <layout>default</layout>
+ <longname>Bopomofo</longname>
+ <description>Bopomofo input method</description>
+ <rank>98</rank>
+ <symbol>&#x3109;</symbol>
+ @ICON_PROP_KEY_XML@
+ <setup>@LIBEXECDIR@/ibus-setup-libpinyin libbopomofo</setup>
+ <version>@VERSION@</version>
+ <textdomain>ibus-libpinyin</textdomain>
+ </engine>
+</engines>
diff --git a/src/libpinyin.inputmethod.xml.in.in b/src/libpinyin.inputmethod.xml.in.in
new file mode 100644
index 0000000..b7c4c3e
--- /dev/null
+++ b/src/libpinyin.inputmethod.xml.in.in
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- filename: pinyin.xml -->
+<component>
+ <name>org.freedesktop.IBus.Libpinyin</name>
+ <description>Libpinyin Component</description>
+ <exec>@LIBEXECDIR@/ibus-engine-libpinyin --ibus</exec>
+ <version>@VERSION@</version>
+ <author>Peng Wu &lt;alexepico@gmail.com&gt;</author>
+ <license>GPL</license>
+ <homepage>https://github.com/libpinyin/ibus-libpinyin</homepage>
+ <textdomain>ibus-libpinyin</textdomain>
+
+ <!-- for engines -->
+ <observed-paths>
+ <path>~/.config/ibus/libpinyin/engines.xml</path>
+ <path>@PKGDATADIR@/default.xml</path>
+ </observed-paths>
+ <engines exec="@LIBEXECDIR@/ibus-engine-libpinyin --xml" />
+</component>
diff --git a/src/libpinyin.xml.in.in b/src/libpinyin.xml.in.in
deleted file mode 100644
index d548375..0000000
--- a/src/libpinyin.xml.in.in
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version=\"1.0\" encoding=\"utf-8\"?>
-<!-- filename: pinyin.xml -->
-<component>
- <name>org.freedesktop.IBus.Libpinyin</name>
- <description>Libpinyin Component</description>
- <exec>${libexecdir}/ibus-engine-libpinyin --ibus</exec>
- <version>@VERSION@</version>
- <author>Peng Wu &lt;alexepico@gmail.com&gt;</author>
- <license>GPL</license>
- <homepage>https://github.com/libpinyin/ibus-libpinyin</homepage>
- <textdomain>ibus-libpinyin</textdomain>
-
- <engines>
- <engine>
- <name>libpinyin</name>
- <language>zh_CN</language>
- <license>GPL</license>
- <author>
- Peng Wu &lt;alexepico@gmail.com&gt;
- Peng Huang &lt;shawn.p.huang@gmail.com&gt;
- BYVoid &lt;byvoid1@gmail.com&gt;
- </author>
- <icon>${pkgdatadir}/icons/ibus-pinyin.svg</icon>
- <layout>default</layout>
- <longname>Intelligent Pinyin</longname>
- <description>Intelligent Pinyin input method</description>
- <rank>99</rank>
- <symbol>&#x62FC;</symbol>
- @ICON_PROP_KEY_XML@
- <setup>${libexecdir}/ibus-setup-libpinyin libpinyin</setup>
- <textdomain>ibus-libpinyin</textdomain>
- </engine>
- <engine>
- <name>libbopomofo</name>
- <language>zh_TW</language>
- <license>GPL</license>
- <author>
- Peng Wu &lt;alexepico@gmail.com&gt;
- Peng Huang &lt;shawn.p.huang@gmail.com&gt;
- BYVoid &lt;byvoid1@gmail.com&gt;
- </author>
- <icon>${pkgdatadir}/icons/ibus-bopomofo.svg</icon>
- <layout>default</layout>
- <longname>Bopomofo</longname>
- <description>Bopomofo input method</description>
- <rank>98</rank>
- <symbol>&#x3109;</symbol>
- @ICON_PROP_KEY_XML@
- <setup>${libexecdir}/ibus-setup-libpinyin libbopomofo</setup>
- <textdomain>ibus-libpinyin</textdomain>
- </engine>
- </engines>
-</component>