# Process this file with autoconf to produce a configure script
#AC_INIT(scim, 1.4.7, suzhe@tsinghua.org.cn)
-AC_INIT(isf, 2.3.5205, isf@samsung.com)
+AC_INIT(isf, 2.3.5617, isf@samsung.com)
AC_CONFIG_SRCDIR([ism/src/scim.h])
m4_pattern_allow([^AS_])
# ISF version
ISF_MAJOR_VERSION=2
ISF_MINOR_VERSION=3
-ISF_MICRO_VERSION=5205
+ISF_MICRO_VERSION=5617
ISF_VERSION=$ISF_MAJOR_VERSION.$ISF_MINOR_VERSION.$ISF_MICRO_VERSION
PLATFORM_INIT
# Init gettext
-ALL_LINGUAS="zh_CN zh_TW zh_HK ja ko de fr it cs pa fi sv nl"
+ALL_LINGUAS="de_DE el_GR en es_ES fr_FR it_IT ja_JP ko_KR nl_NL pt_PT ru_RU tr_TR zh_CN zh_HK zh_TW"
AM_GNU_GETTEXT
# Init libtool
PKG_CHECK_MODULES(X11, [x11])
# Check ui-gadget library
-PKG_CHECK_MODULES(UIGADGET, [ui-gadget])
+PKG_CHECK_MODULES(UIGADGET, [ui-gadget-1])
# Check utilX library
PKG_CHECK_MODULES(UTILX, [utilX])
enable_config_socket=no,
enable_config_socket=yes)
+AC_ARG_ENABLE(frontend-x11,
+ [ --disable-frontend-x11 Do not build X11 FrontEnd module],
+ enable_frontend_x11=no,
+ enable_frontend_x11=yes)
+
AC_ARG_ENABLE(frontend-socket,
[ --disable-frontend-socket Do not build Socket FrontEnd module],
enable_frontend_socket=no,
enable_tray_icon=no,
enable_tray_icon=yes)
+if test "$have_x" = "yes"; then
+ SCIM_BUILD_X11_UTILS=1
+ enable_x11_utils=yes
+else
+ SCIM_BUILD_X11_UTILS=0
+ enable_x11_utils=no
+fi
+
if test "$enable_hash_map" = "yes"; then
AC_DEFINE(ENABLE_HASH_MAP,1,[Use hash map instead of map in libscim])
fi
SCIM_BUILD_CONFIG_SOCKET=0
enable_config_socket=no
fi
-
+
+if test "$enable_frontend_x11" = "yes" -a "$have_x" = "yes"; then
+ SCIM_BUILD_FRONTEND_X11=1
+else
+ SCIM_BUILD_FRONTEND_X11=0
+ enable_frontend_x11=no
+fi
+
if test "$enable_frontend_socket" = "yes" -a "$socket_ok" = "yes"; then
SCIM_BUILD_FRONTEND_SOCKET=1
else
AM_CONDITIONAL(SCIM_BUILD_CONFIG_SOCKET,
[test "$enable_config_socket" = "yes"])
+AM_CONDITIONAL(SCIM_BUILD_FRONTEND_X11,
+ [test "$enable_frontend_x11" = "yes"])
+
AM_CONDITIONAL(SCIM_BUILD_FRONTEND_SOCKET,
[test "$enable_frontend_socket" = "yes"])
AM_CONDITIONAL(SCIM_BUILD_GTK_UTILS,
[test "$enable_gtk_utils" = "yes"])
+AM_CONDITIONAL(SCIM_BUILD_X11_UTILS,
+ [test "$enable_x11_utils" = "yes"])
+
AM_CONDITIONAL(SCIM_BUILD_TRAY_ICON,
[test "$enable_tray_icon" = "yes"])
AC_SUBST(SCIM_BUILD_TESTS)
AC_SUBST(SCIM_BUILD_CONFIG_SIMPLE)
AC_SUBST(SCIM_BUILD_CONFIG_SOCKET)
+AC_SUBST(SCIM_BUILD_FRONTEND_X11)
AC_SUBST(SCIM_BUILD_FRONTEND_SOCKET)
AC_SUBST(SCIM_BUILD_IMENGINE_RAWCODE)
AC_SUBST(SCIM_BUILD_IMENGINE_TABLE)
AC_SUBST(SCIM_BUILD_SCIM_SETUP)
AC_SUBST(SCIM_BUILD_PANEL_GTK)
AC_SUBST(SCIM_BUILD_GTK_UTILS)
+AC_SUBST(SCIM_BUILD_X11_UTILS)
AC_SUBST(ISF_BUILD_EFL_IMMODULE)
AC_SUBST(ISF_BUILD_PANEL_EFL)
AC_SUBST(ISF_BUILD_SETTING_EFL)
ism/data/icons/Makefile
ism/data/pixmaps/Makefile
ism/modules/Makefile
+ ism/modules/frontend/imdkit/Makefile
ism/modules/frontend/Makefile
ism/modules/imengine/Makefile
ism/modules/filter/Makefile
Simple config module $enable_config_simple
Socket config module $enable_config_socket
+ X11 FrontEnd module $enable_frontend_x11
Socket FrontEnd module $enable_frontend_socket
Socket IMEngine module $enable_im_socket
SCTC Filter module $enable_filter_sctc
GTK2 Utility Library $enable_gtk_utils
+ X11 Utility Library $enable_x11_utils
+
GTK2 IMModule $enable_gtk2_immodule
GTK2 IMModule dir $GTK_IM_MODULEDIR
GTK2 Panel GUI $enable_panel_gtk
+isf (2.3.5617-1slp2+2) unstable; urgency=low
+
+ * [immodule] fix bug that affect to receive any event of other window
+ * [setting] display fullstop menu optionally
+ * Git: framework/uifw/isf
+ * Tag: isf_2.3.5617-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 17 Aug 2012 15:58:28 +0900
+
+isf (2.3.5617-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Update input panel geometry when soft ISE is hidden
+ * Git: framework/uifw/isf
+ * Tag: isf_2.3.5617-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 17 Aug 2012 10:33:00 +0900
+
+isf (2.3.5610-1slp2+1) unstable; urgency=low
+
+ * [isf_imf_context] Restore auto-underline attribute
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5610-1slp2+1
+
+ -- Li Zhang <li2012.zhang@samsung.com> Fri, 10 Aug 2012 16:20:00 +0900
+
+isf (2.3.5608-1slp2+2) unstable; urgency=low
+
+ * Update changelog for upload again
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5608-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 08 Aug 2012 18:43:00 +0900
+
+isf (2.3.5608-1slp2+1) unstable; urgency=low
+
+ * Add update_preedit_caret method for HelperAgent class
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5608-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 08 Aug 2012 14:34:00 +0900
+
+isf (2.3.5607-1slp2+1) unstable; urgency=low
+
+ * Add expand/contract candidate APIs for soft ISE
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5607-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 07 Aug 2012 15:11:00 +0900
+
+isf (2.3.5606-1slp2+1) unstable; urgency=low
+
+ * [isf_imf_context] Remove auto-underline attribute
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5606-1slp2+1
+
+ -- Li Zhang <li2012.zhang@samsung.com> Mon, 06 Aug 2012 11:16:00 +0900
+
+isf (2.3.5602-1slp2+1) unstable; urgency=low
+
+ * [isf_imf_context] Fix forward_key_event defect
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5602-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 02 Aug 2012 10:16:00 +0900
+
+isf (2.3.5601-1slp2+1) unstable; urgency=low
+
+ * fix isfseting/isfwizard margin issue
+ * fix PLM issue : P120731-4245 lable color issue
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5601-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Tue, 01 Aug 2012 20:50:00 +0900
+
+isf (2.3.5531-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Improve autoscroll performance for elm_conformant widget
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5531-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 31 Jul 2012 19:12:00 +0900
+
+isf (2.3.5526-1slp2+1) unstable; urgency=low
+
+ * Add set_layout for IMEngineInstanceBase
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5526-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 26 Jul 2012 15:23:00 +0900
+
+isf (2.3.5525-1slp2+1) unstable; urgency=low
+
+ * [X11FrontEnd] Change X11 IM opened by default
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5525-1slp2+1
+
+ -- Li Zhang <li2012.zhang@samsung.com> Wed, 25 Jul 2012 15:22:00 +0900
+
+isf (2.3.5523-1slp2+1) unstable; urgency=low
+
+ * Add preedit functions for X11 frontend helperISE.
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5523-1slp2+1
+
+ -- Li Zhang <li2012.zhang@samsung.com> Mon, 23 Jul 2012 19:13:00 +0900
+
+isf (2.3.5520-1slp2+1) unstable; urgency=low
+
+ * Reverse arrow image for USB keyboard > ON
+ * Update CommonLookupTable for add_attributes () and remove_attributes ()
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5520-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 20 Jul 2012 17:52:00 +0900
+
+isf (2.3.5518-1slp2+1) unstable; urgency=low
+
+ * Fix blank keyboard area bug when hardware keyboard is connected
+ * ui-gadget-1 dependency
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5518-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Wed, 18 Jul 2012 19:52:00 +0900
+
+isf (2.3.5517-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Add ForeGround color and BackGround color
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5517-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 17 Jul 2012 15:52:00 +0900
+
+isf (2.3.5509-1slp2+1) unstable; urgency=low
+
+ * [immodule] fix bug related to input_panel_event_callback_del
+ * add Ecore_X.h in ise_context.h
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5509-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 09 Jul 2012 14:37:23 +0900
+
+isf (2.3.5506-1slp2+1) unstable; urgency=low
+
+ * [immodule] supplement dlog
+ * [immodule] remove code to handle 'HOME' key
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5506-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 06 Jul 2012 17:04:45 +0900
+
+isf (2.3.5505-1slp2+2) unstable; urgency=low
+
+ * [isf-panel-efl] Update input panel geometry
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5505-1slp2+2
+
+ -- Haifeng Deng <haifeng.dengm@samsung.com> Thu, 05 Jul 2012 18:55:00 +0900
+
+isf (2.3.5505-1slp2+1) unstable; urgency=low
+
+ * fix candidate window doesn't show when BT keyboard is connected.
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5505-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 05 Jul 2012 14:18:47 +0900
+
+isf (2.3.5503-1slp2+1) unstable; urgency=low
+
+ * [immodule] fix extended latin character input issue
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5503-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 03 Jul 2012 10:12:20 +0900
+
+isf (2.3.5502-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Update rule for highlight item
+ * [isf-panel-efl] Fix panel geometry defect
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5502-1slp2+1
+
+ -- Haifeng <haifeng.deng@samsung.com> Mon, 02 Jul 2012 20:02:00 +0900
+
+isf (2.3.5429-1slp2+1) unstable; urgency=low
+
+ * [immodule] add client X window ID in ise_context structure
+ * [isf-panel-efl] Fix autoscroll defect
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5429-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 29 Jun 2012 11:14:45 +0900
+
+isf (2.3.5428-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Implement fixed style
+ * [immodule] fix autocapital inssue in preediting
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5428-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 28 Jun 2012 10:06:00 +0900
+
+isf (2.3.5420-1slp2+1) unstable; urgency=low
+
+ * Update panel according to [Tizen_720x1280]Textinput GUI_v0.6_120426.ppt
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5420-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 20 Jun 2012 17:45:00 +0900
+
+isf (2.3.5416-1slp2+1) unstable; urgency=low
+
+ * update ug lib and res path
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5416-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Sat, 16 Jun 2012 16:00:00 +0900
+
+isf (2.3.5407-1slp2+1) unstable; urgency=low
+
+ * Change autocapital, autoperiod vconf key name
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5407-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 07 Jun 2012 14:22:45 +0900
+
+isf (2.3.5404-1slp2+2) unstable; urgency=low
+
+ * Fix default ISE random defect
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5404-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 04 Jun 2012 15:23:21 +0900
+
+isf (2.3.5404-1slp2+1) unstable; urgency=low
+
+ * Replace hibernation vconf key with file
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5404-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 04 Jun 2012 10:57:39 +0900
+
+isf (2.3.5401-1slp2+1) unstable; urgency=low
+
+ * remove input_lang vconf key in postinst, spec file
+ * Use process key event of IMEngine instead of evas_event_feed
+ * remove 'scim -d' in /etc/init.d/isf-panel-efl boot script
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5401-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 01 Jun 2012 17:36:17 +0900
+
+isf (2.3.5329-1slp2+1) unstable; urgency=low
+
+ * execute 'scim -d' in /etc/init.d/isf-panel-efl script for reducing booting time
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5329-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 29 May 2012 15:12:33 +0900
+
+isf (2.3.5326-1slp2+1) unstable; urgency=low
+
+ * Function keys event use XSendEvent
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5326-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Sat, 26 May 2012 11:26:48 +0900
+
+isf (2.3.5324-1slp2+1) unstable; urgency=low
+
+ * bug fix : not to insert some language such as japanese, russian
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5324-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 24 May 2012 16:09:13 +0900
+
+isf (2.3.5321-1slp2+1) unstable; urgency=low
+
+ * Update text in setting according to UI guide 2.4
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5321-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 21 May 2012 15:09:54 +0900
+
+isf (2.3.5320-1slp2+1) unstable; urgency=low
+
+ * set ECORE_IMF_MODULE explicitly
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5320-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Sun, 20 May 2012 16:17:27 +0900
+
+isf (2.3.5319-1slp2+1) unstable; urgency=low
+
+ * Update po files
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5319-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Sat, 19 May 2012 16:46:29 +0900
+
+isf (2.3.5318-1slp2+1) unstable; urgency=low
+
+ * Set environment variable for GTK, X application
+ * [isf-setting-efl] Add hardware ise option
+ * [isf-setting-efl] Add 2 items for information in isfsetting
+ * [isf-panel-efl] Remove disable language related source codes
+ * [isf-demo-efl] Format text
+ * Update en.po for Keyboard option
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5318-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Fri, 18 May 2012 21:45:00 +0900
+
+isf (2.3.5317-1slp2+2) unstable; urgency=low
+
+ * Remove theme vconf key
+ * Update programming guide
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5317-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 17 May 2012 11:33:56 +0900
+
+isf (2.3.5316-1slp2+1) unstable; urgency=low
+
+ * Bug fix : uppercase letter wasn't inserted.
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5316-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 16 May 2012 15:12:56 +0900
+
+isf (2.3.5315-1slp2+1) unstable; urgency=low
+
+ * Enable X11 frontend for support Mobile PC
+ * Set prediction allow as FALSE in case of EMAIL and URL layout
+ * Use X key event to generate ecore key event
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5315-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 15 May 2012 14:30:11 +0900
+
+isf (2.3.5310-1slp2+1) unstable; urgency=low
+
+ * Add self-recovery feature;
+ * Fix ABI issue in scim_imengine.h;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5310-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 10 May 2012 17:01:00 +0900
+
+isf (2.3.5307-1slp2+2) unstable; urgency=low
+
+ * cleanup even though immodule unloads abnormally
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5307-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 07 May 2012 19:22:14 +0900
+
+isf (2.3.5307-1slp2+1) unstable; urgency=low
+
+ * set prediction allow as FALSE in case of password mode
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5307-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 07 May 2012 14:35:34 +0900
+
+isf (2.3.5225-1slp2+1) unstable; urgency=low
+
+ * support autoperiod in webkit based editor
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5225-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 25 Apr 2012 16:26:15 +0900
+
+isf (2.3.5223-1slp2+1) unstable; urgency=low
+
+ * fix shift key blink issue related to autocapital
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5223-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 23 Apr 2012 08:52:11 +0900
+
+isf (2.3.5218-1slp2+1) unstable; urgency=low
+
+ * Fix bug input panel doesn't be hidden in case that timer is remain before shutdown is called.
+ * Use private vconfkey
+ * Add X11 frontend
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5218-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 17 Apr 2012 18:03:29 +0900
+
+isf (2.3.5211-1slp2+1) unstable; urgency=low
+ * update po
+ * Remove VCONFKEY_ISF_INPUT_LANG_STR
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5211-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 11 Apr 2012 11:43:00 +0900
+
+isf (2.3.5210-1slp2+1) unstable; urgency=low
+ * update po
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5210-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 10 Apr 2012 09:35:00 +0900
+
+isf (2.3.5209-1slp2+1) unstable; urgency=low
+
+ * Add password_mode for soft ISE
+ * Check duplicated ise_show request
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5209-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 05 Apr 2012 19:33:23 +0900
+
isf (2.3.5205-1slp2+1) unstable; urgency=low
- * upload tizen 1.0 code
+ * Add prediction_allow for soft ISE
* Git: slp/pkgs/i/isf
* Tag: isf_2.3.5205-1slp2+1
- -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 20 Apr 2012 15:45:34 +0900
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 05 Apr 2012 10:49:00 +0900
-isf (2.3.5016-1slp2+1) unstable; urgency=low
+isf (2.3.5204-1slp2+2) unstable; urgency=low
- * upload tizen beta code
+ * disable autocapital when H/W keyboard is detected
* Git: slp/pkgs/i/isf
- * Tag: isf_2.3.5016-1slp2+1
+ * Tag: isf_2.3.5204-1slp2+2
- -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 09 Feb 2012 17:48:05 +0900
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 04 Apr 2012 13:00:17 +0900
-isf (2.3.4821-1slp2+1) unstable; urgency=low
+isf (2.3.5204-1slp2+1) unstable; urgency=low
- * code cleanup
+ * bug fix
* Git: slp/pkgs/i/isf
- * Tag: isf_2.3.4821-1slp2+1
+ * Tag: isf_2.3.5204-1slp2+1
- -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 21 Dec 2011 09:44:04 +0900
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 04 Apr 2012 09:30:54 +0900
-isf (2.3.4816-1slp2+1) unstable; urgency=low
+isf (2.3.5129-1slp2+1) unstable; urgency=low
- * [immodule] support autocapital in webkit editor
- * [panel] change theme name
+ * check the status of ISE
* Git: slp/pkgs/i/isf
- * Tag: isf_2.3.4816-1slp2+1
+ * Tag: isf_2.3.5129-1slp2+1
- -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 16 Dec 2011 08:58:25 +0900
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 29 Mar 2012 15:45:34 +0900
-isf (2.3.4809-1slp2+2) unstable; urgency=low
- * [gtk_panel] codes cleanup
- * Git: pkgs/i/isf
- * Tag: isf_2.3.4809-1slp2+2
+isf (2.3.5126-1slp2+4) unstable; urgency=low
- -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 9 Dec 2011 20:15:00 +0900
+ * Upload again
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5126-1slp2+4
-isf (2.3.4809-1slp2+1) unstable; urgency=low
- * [isf-panel-efl/isfsetting] codes cleanup
- * Git: pkgs/i/isf
- * Tag: isf_2.3.4809-1slp2+1
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 28 Mar 2012 18:01:57 +0900
- -- Shuo Liu <shuo0805.liu@samsung.com> Fri, 9 Dec 2011 19:59:00 +0900
+isf (2.3.5126-1slp2+3) unstable; urgency=low
-isf (2.3.4807-1slp2+3) unstable; urgency=low
+ * Upload again
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5126-1slp2+3
- * [isf-panel-efl] Fix rotation defect
- * Git: pkgs/i/isf
- * Tag: isf_2.3.4807-1slp2+3
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 28 Mar 2012 16:07:36 +0900
- -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 07 Dec 2011 15:29:00 +0900
+isf (2.3.5126-1slp2+2) unstable; urgency=low
-isf (2.3.4807-1slp2+2) unstable; urgency=low
+ * Upload again
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5126-1slp2+2
- * remove CommonISE UUID
- * Git: pkgs/i/isf
- * Tag: isf_2.3.4807-1slp2+2
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 28 Mar 2012 14:58:18 +0900
- -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 07 Dec 2011 10:40:11 +0900
+isf (2.3.5126-1slp2+1) unstable; urgency=low
+
+ * Code cleanup for scim_helper.h and scim_helper.cpp
+ * [isf-setting-efl] Remove hard codes for XT9 ISE
+ * [immodule] fix bug : input_panel_show is called twice
+ * [isf-setting-efl] Rename setup module name for soft ISE
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5126-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 26 Mar 2012 12:30:00 +0900
+
+isf (2.3.5119-1slp2+1) unstable; urgency=low
+
+ * fix bug related to XSelectInput
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5119-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 19 Mar 2012 08:43:37 +0900
+
+isf (2.3.5115-1slp2+1) unstable; urgency=low
+ * Add notification feature for candidate window
+ * Add isf_imf_context_candidate_window_geometry_get ()
+ * Add isf_imf_context_input_panel_language_locale_get ()
+ * Update po files
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5115-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 15 Mar 2012 14:46:00 +0900
+
+isf (2.3.5114-1slp2+1) unstable; urgency=low
+ * setting wizard toolbar update
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5114-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Wed, 14 Mar 2012 15:35:00 +0900
+
+isf (2.3.5113-1slp2+1) unstable; urgency=low
+ * efl update
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5113-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Tue, 13 Mar 2012 14:35:00 +0900
+
+isf (2.3.5112-1slp2+1) unstable; urgency=low
+
+ * apply the change of ecore_imf_context_input_panel_language_locale_get parameter
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5112-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 12 Mar 2012 14:49:48 +0900
+
+isf (2.3.5106-1slp2+1) unstable; urgency=low
+ * [immodule] deliver imdata when slot_ise_show is called
+ * [demo] add language changed event demo
+ * disable syslog
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5106-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Tue, 06 Mar 2012 20:15:10 +0900
+
+isf (2.3.5102-1slp2+1) unstable; urgency=low
+
+ * add input_panel_language_locale_get, candidate_window_geometry_get demo
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5102-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 02 Mar 2012 14:01:10 +0900
+
+isf (2.3.5029-1slp2+2) unstable; urgency=low
+
+ * elm editfield deprecated
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5029-1slp2+2
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Wed, 29 Feb 2012 19:13:00 +0900
+
+isf (2.3.5029-1slp2+1) unstable; urgency=low
+
+ * add caps_lock_mode
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5029-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 29 Feb 2012 12:51:53 +0900
+
+isf (2.3.5022-1slp2+2) unstable; urgency=low
+
+ * Upload package again
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5022-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 23 Feb 2012 14:12:03 +0900
+
+isf (2.3.5022-1slp2+1) unstable; urgency=low
+
+ * add return key type, disabled in ise_context
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5022-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 22 Feb 2012 10:03:35 +0900
+
+isf (2.3.5020-1slp2+1) unstable; urgency=low
+
+ * Support return_key_type_set, return_key_disabled_set
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5020-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 20 Feb 2012 09:33:31 +0900
+
+isf (2.3.5016-1slp2+2) unstable; urgency=low
+
+ * [panel] fix candidate window size issue
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5016-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 16 Feb 2012 16:26:42 +0900
+
+isf (2.3.5015-1slp2+1) unstable; urgency=low
+
+ * Applied EFL migration
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5015-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 15 Feb 2012 16:30:26 +0900
+
+isf (2.3.5009-1slp2+1) unstable; urgency=low
+
+ * fix according to the change of imdata_set/get API
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5009-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 09 Feb 2012 17:48:05 +0900
+
+isf (2.3.5002-1slp2+2) unstable; urgency=low
+
+ * feed capital letter instead of 'Shift+character'
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5002-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 02 Feb 2012 13:49:16 +0900
+
+isf (2.3.5002-1slp2+1) unstable; urgency=low
+
+ * fix bug not to insert some languages
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5002-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 02 Feb 2012 09:43:37 +0900
+
+isf (2.3.5001-1slp2+1) unstable; urgency=low
+
+ * Add control_privilege () in isf_query_engines.cpp;
+ * Create folder before saving engine list;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.5001-1slp2+1
+
+ -- Haifeng <haifeng.deng@samsung.com> Wed, 01 Feb 2012 17:46:00 +0900
+
+isf (2.3.4931-1slp2+2) unstable; urgency=low
+
+ * Fix bug not to insert capital letter
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4931-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 31 Jan 2012 19:46:30 +0900
+
+isf (2.3.4931-1slp2+1) unstable; urgency=low
+
+ * Use synchronous ecore_imf callback API
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4931-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 31 Jan 2012 11:00:36 +0900
+
+isf (2.3.4926-1slp2+1) unstable; urgency=low
+
+ * Support to feed X key event in case of using only client window without canvas
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4926-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 25 Jan 2012 18:09:50 +0900
+
+isf (2.3.4919-1slp2+1) unstable; urgency=low
+
+ * Add get_surrounding_text() for soft ISE
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4919-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 19 Jan 2012 08:34:17 +0900
+
+isf (2.3.4912-1slp2+1) unstable; urgency=low
+
+ * change privilege from root to inhouse
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4912-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 11 Jan 2012 17:38:10 +0900
+
+isf (2.3.4903-1slp2+1) unstable; urgency=low
+
+ * remove ECORE_IMF_INPUT_PANEL_ORIENT enum
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4903-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 03 Jan 2012 13:24:03 +0900
+
+isf (2.3.4821-1slp2+1) unstable; urgency=low
+
+ * code cleanup
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4821-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 21 Dec 2011 09:44:04 +0900
+
+isf (2.3.4816-1slp2+1) unstable; urgency=low
+
+ * [immodule] support autocapital in webkit editor
+ * [panel] change theme name
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4816-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 16 Dec 2011 08:58:25 +0900
+
+isf (2.3.4809-1slp2+2) unstable; urgency=low
+ * [gtk_panel] codes cleanup
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4809-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 9 Dec 2011 20:15:00 +0900
+
+isf (2.3.4809-1slp2+1) unstable; urgency=low
+ * [isf-panel-efl/isfsetting] codes cleanup
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4809-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Fri, 9 Dec 2011 19:59:00 +0900
+
+isf (2.3.4807-1slp2+3) unstable; urgency=low
+
+ * [isf-panel-efl] Fix rotation defect
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4807-1slp2+3
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 07 Dec 2011 15:29:00 +0900
+
+isf (2.3.4807-1slp2+2) unstable; urgency=low
+
+ * remove CommonISE UUID
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4807-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 07 Dec 2011 10:40:11 +0900
+
+isf (2.3.4807-1slp2+1) unstable; urgency=low
+
+ * Change initial ISE
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4807-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 07 Dec 2011 10:16:51 +0900
+
+isf (2.3.4806-1slp2+1) unstable; urgency=low
+
+ * Clean source codes
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4806-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 06 Dec 2011 17:29:00 +0900
+
+isf (2.3.4805-1slp2+1) unstable; urgency=low
+
+ * Implement prediction allow set/get functions
+ * Remove license issue files
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4805-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 05 Dec 2011 09:01:56 +0900
+
+isf (2.3.4801-1slp2+1) unstable; urgency=low
+ * [isfsetting] add setting option reset
+ * [isf-panel-efl] elm api update
+ * [isfsetting] elm api update
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4801-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Thu, 1 Dec 2011 23:45:00 +0900
+
+isf (2.3.4721-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Remove resize timer;
+ * [isf-panel-efl] Remove unused source codes;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4721-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 21 Nov 2011 14:23:00 +0900
+
+isf (2.3.4718-1slp2+1) unstable; urgency=low
+
+ * [immodule] use dlog for writing show/hide log;
+ * [isf-panel-efl] apply show/hide for candidate window;
+ * [isf-panel-efl] adjust rotation and show sequence;
+ * Remove unused source codes;
+ * Support custom global file for localization;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4718-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 18 Nov 2011 16:11:00 +0900
+
+isf (2.3.4714-1slp2+1) unstable; urgency=low
+
+ * [immodule] remove unused interfaces
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4714-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 14 Nov 2011 13:42:12 +0900
+
+isf (2.3.4711-1slp2+1) unstable; urgency=low
+ * [isfwizard] change button to label in controlbar
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4711-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Fri, 11 Nov 2011 14:15:00 +0900
+
+isf (2.3.4709-1slp2+2) unstable; urgency=low
+ * [demo] editentry update
+ * [isfwizard] naviframe update
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4709-1slp2+2
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Wed, 09 Nov 2011 17:15:00 +0900
+
+isf (2.3.4709-1slp2+1) unstable; urgency=low
+
+ * change hide delay from 200ms to 50ms
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4709-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 09 Nov 2011 16:24:52 +0900
+
+isf (2.3.4704-1slp2+1) unstable; urgency=low
+
+ * Add reset option command for setting
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4704-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 04 Nov 2011 15:38:57 +0900
+
+isf (2.3.4703-1slp2+1) unstable; urgency=low
+
+ * [settingwizard] bug fix
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4703-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 03 Nov 2011 13:05:42 +0900
+
+isf (2.3.4702-1slp2+2) unstable; urgency=low
+ * [isf-panel-efl] Fix empty candidate defect when click "More" button for landscape
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4702-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 02 Nov 2011 16:44:19 +0900
+
+isf (2.3.4702-1slp2+1) unstable; urgency=low
+ * [isfwizard] change the isfwizard.log to /tmp directory
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4702-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Wed, 02 Nov 2011 14:15:00 +0900
+
+isf (2.3.4701-1slp2+1) unstable; urgency=low
+ * [isf-panel-efl] Update "More" and "Close" buttons
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4701-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 01 Nov 2011 20:08:28 +0900
+
+isf (2.3.4631-1slp2+1) unstable; urgency=low
+ * [isfwizard] add wizard log file to analyze the loading time problem at 1st time booting
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4631-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Mon, 31 Oct 2011 10:15:00 +0900
+
+isf (2.3.4628-1slp2+1) unstable; urgency=low
+ * update po
+ * Remove instant hide in shutdown
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.3.4628-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 28 Oct 2011 14:38:00 +0900
+
+isf (2.2.4627-1slp2+1) unstable; urgency=low
+
+ * [immodule] hide input panel instantly when program is terminated.
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4627-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 27 Oct 2011 17:47:56 +0900
+
+isf (2.2.4625-1slp2+2) unstable; urgency=low
+ * fix CQ bug: Chinese (Hong Kong) -> Chinese (Hongkong) in language display view
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4625-1slp2+2
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Mon, 25 Oct 2011 21:21:00 +0900
+
+isf (2.2.4625-1slp2+1) unstable; urgency=low
+
+ * [immodule] support autocapital type
+ * [demo] add autocapital type demo
+ * disable common ISE feature
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4625-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 25 Oct 2011 11:15:19 +0900
+
+isf (2.2.4624-1slp2+1) unstable; urgency=low
+
+ * [immodule] fix autoperid bug
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4624-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 24 Oct 2011 08:46:42 +0900
+
+isf (2.2.4620-1slp2+1) unstable; urgency=low
+
+ * [immodule] use hide timer for supporting entry's theme change
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4620-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 20 Oct 2011 10:38:11 +0900
+
+isf (2.2.4619-1slp2+1) unstable; urgency=low
+
+ * [isfsetting] update padding to 25 pixels
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4619-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 19 Oct 2011 15:46:03 +0900
+
+isf (2.2.4617-1slp2+2) unstable; urgency=low
+ * [demo] hide the bg to uncover the camera preview
+ * [isfsetting] add language view edc
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4617-1slp2+2
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Mon, 17 Oct 2011 17:38:00 +0900
+
+isf (2.2.4617-1slp2+1) unstable; urgency=low
+
+ * [immodule] check whether the cursor position is changed or not
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4617-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 17 Oct 2011 14:50:27 +0900
+
+isf (2.2.4614-1slp2+1) unstable; urgency=low
+ * [demo] set scale factor
+ * [isfsetting] fix naviframe popup item problem
+ * [immodule] support autocapital related to CR and PS
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4614-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 14 Oct 2011 14:48:00 +0900
+
+isf (2.2.4613-1slp2+2) unstable; urgency=low
+
+ * [immodule] fix autocapital bugs
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4613-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 13 Oct 2011 20:29:25 +0900
+
+isf (2.2.4613-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Fix candidate UI broken when rotation
+ * [isf-panel-efl] Update aux for ise-engine-xt9-chinese 2.0
+ * [isf-panel-efl] Update tizen-black-hd and tizen-hd
+ * [immodule] Implement ISF control APIs
+ * [isf-demo-efl] modify demo code for tizen layout
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4613-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 13 Oct 2011 17:25:00 +0900
+
+isf (2.2.4606-1slp2+1) unstable; urgency=low
+
+ * Use Naviframe widget
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4606-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 06 Oct 2011 11:01:40 +0900
+
+isf (2.2.4604-1slp2+1) unstable; urgency=low
+
+ * [isfsetting] fix option title : Option -> Options
+ * [immodule] do not hide input panel even though end key is pressed.
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4604-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 04 Oct 2011 14:04:00 +0900
+
+isf (2.2.4529-1slp2+1) unstable; urgency=low
+
+ * [settingwizard] Use dlog for collecting log
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4529-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 28 Sep 2011 14:18:17 +0900
+
+isf (2.2.4520-1slp2+2) unstable; urgency=low
+
+ * upload again
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4520-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 20 Sep 2011 13:49:35 +0900
+
+isf (2.2.4520-1slp2+1) unstable; urgency=low
+
+ * [isfsetting] fix supporting languages wrap
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4520-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 19 Sep 2011 20:11:13 +0900
+
+isf (2.2.4515-1slp2+1) unstable; urgency=low
+
+ * [immodule] fix callback issue
+ * [immodule] reduce redundant vconf API call
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4515-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 15 Sep 2011 11:31:15 +0900
+
+isf (2.2.4506-1slp2+1) unstable; urgency=low
+
+ * [immodule] hide input panel when the canvas loses focus
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4506-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 06 Sep 2011 19:14:38 +0900
+
+isf (2.2.4505-1slp2+2) unstable; urgency=low
+
+ * [immodule] call imcontrol API after checking whether the context has focus
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4505-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 05 Sep 2011 16:40:48 +0900
+
+isf (2.2.4505-1slp2+1) unstable; urgency=low
+
+ * [immodule] call layout_set only in case that context has focus
+ * [immodule] change the double space interval from 0.6 sec to 1 sec
+ * Fix defects according to klocwork test report
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4505-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 02 Sep 2011 19:24:24 +0900
+
+isf (2.2.4418-1slp2+1) unstable; urgency=low
+
+ * genlist seperator style api update
+ * remove STK demo and document
+ * set hide request input context after checking state
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4418-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 18 Aug 2011 13:19:06 +0900
+
+isf (2.2.4403-1slp2+2) unstable; urgency=low
+
+ * [setting-wizard] bug fix white screen
+ * [immodule] add cursor position api
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4403-1slp2+2
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Wed, 03 Aug 2011 09:50:00 +0900
+
+
+isf (2.2.4403-1slp2+1) unstable; urgency=low
+
+ * [setting-wizard] bug fix white screen
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4403-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 03 Aug 2011 09:19:27 +0900
+
+isf (2.2.4402-1slp2+2) unstable; urgency=low
+
+ * [setting] change 2 line text style
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4402-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 02 Aug 2011 17:35:11 +0900
+
+isf (2.2.4402-1slp2+1) unstable; urgency=low
+
+ * tizen layout update
+ * [isfwizard] Fix socket config defect
+ * [socket frontend] Use cache file
+ * [immodule] Cursor location is transfered by ecore_imf_context_cursor_location_set
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4402-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Tue, 02 Aug 2011 09:12:00 +0900
+
+isf (2.2.4325-1slp2+1) unstable; urgency=low
+
+ * [efl_setting] Fix socket config defect
+ * [immodule] Add autoperiod, autocapital function
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4325-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 25 Jul 2011 12:21:08 +0900
+
+isf (2.2.4321-1slp2+1) unstable; urgency=low
+
+ * Update for Elementary API Changes
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4321-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 21 Jul 2011 11:02:49 +0900
+
+isf (2.2.4315-1slp2+1) unstable; urgency=low
+
+ * [idm] Replace "Tab" with "Space"
+ * [idm] Change file format from dos to unix
+ * Remove unused files
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4315-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 15 Jul 2011 11:15:28 +0900
+
+isf (2.2.4314-1slp2+1) unstable; urgency=low
+
+ * [immodule] include appropriate header
+ * [isf-panel-efl] Fix defect according to prevent report
+ * Update boilerplate
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4314-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 14 Jul 2011 11:37:53 +0900
+
+isf (2.2.4311-1slp2+1) unstable; urgency=low
+
+ * [immodule] add cursor_location_set.
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4311-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 11 Jul 2011 15:03:10 +0900
+
+isf (2.2.4306-1slp2+1) unstable; urgency=low
+
+ * [immodule] bug fix : input panel was not hidden when input_panel_hide is called during show animation is being progressed.
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4306-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 06 Jul 2011 17:06:23 +0900
+
+isf (2.2.4230-1slp2+1) unstable; urgency=low
+
+ * [setting-wizard] remove icon and modify alignment of text in the navibar button
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4230-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 30 Jun 2011 11:13:22 +0900
+
+isf (2.2.4229-1slp2+1) unstable; urgency=low
+
+ * [immmodule] move IME control to immodule
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4229-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 28 Jun 2011 18:52:54 +0900
+
+isf (2.2.4227-1slp2+1) unstable; urgency=low
+
+ * [setting] use default back button instead of text button
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4227-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 27 Jun 2011 13:35:16 +0900
+
+isf (2.2.4223-1slp2+1) unstable; urgency=low
+
+ * apply tizen-black theme in the candidate window
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4223-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 23 Jun 2011 17:15:42 +0900
+
+isf (2.2.4222-1slp2+1) unstable; urgency=low
+
+ * update for genlist API changes
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4222-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 22 Jun 2011 14:05:51 +0900
+
+isf (2.2.4215-1slp2+1) unstable; urgency=low
+
+ * update po;
+ * update language label(Hong Kong) and group title
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4215-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Wed, 15 Jun 2011 10:34:56 +0900
+
+isf (2.2.4207-1slp2+1) unstable; urgency=low
+
+ * Fix language issue for ISE cache file;
+ * [isf-panel-efl] update aux scroll issue;
+ * Update Chinese po files;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4207-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 07 Jun 2011 10:44:56 +0900
+
+isf (2.2.4131-1slp2+1) unstable; urgency=low
+
+ * [immodule] bug fix : hide state is not delivered when ecore_imf_context_input_panel_hide is called
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4131-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 31 May 2011 15:42:32 +0900
+
+isf (2.2.4130-1slp2+2) unstable; urgency=low
+
+ * fix defect caused by common ISE switch while setting layout in app
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4130-1slp2+2
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Mon, 30 May 2011 16:35:20 +0900
+
+
+isf (2.2.4130-1slp2+1) unstable; urgency=low
+
+ * Fix hibernation issue for ISE cache file
+ * Fix defects according to K9 test report
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4130-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 30 May 2011 11:35:20 +0900
+
+isf (2.2.4125-1slp2+2) unstable; urgency=low
+
+ * Inject key event such as tab, backspace regardless of focus for controlling UI
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4125-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 26 May 2011 11:44:47 +0900
+
+isf (2.2.4125-1slp2+1) unstable; urgency=low
+
+ * Update isf_query_engines.cpp
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4125-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 25 May 2011 18:26:30 +0900
+
+isf (2.2.4123-1slp2+2) unstable; urgency=low
+
+ * Create isf_query_engines.h
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4123-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 24 May 2011 11:17:49 +0900
+
+isf (2.2.4123-1slp2+1) unstable; urgency=low
+
+ * Use ISE info cache file
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4123-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 23 May 2011 15:08:53 +0900
+
+isf (2.2.4118-1slp2+1) unstable; urgency=low
+
+ * Delete elm_dialoguegroup APIs
+ * Bug fix : hide/show context is passed wrong
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4118-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 18 May 2011 16:30:26 +0900
+
+isf (2.2.4104-1slp2+1) unstable; urgency=low
+
+ * Upload the dynamic load/unload of keyboardISE
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4104-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 04 May 2011 09:27:11 +0900
+
+isf (2.2.4027-1slp2+1) unstable; urgency=low
+
+ * [isf-setting/wizard]remove ise_option_view_back_cb()
+ * [isf-setting/wizard]move the ug clear up work to on_destroy() func
+ * [isf-panel-efl] Reset flag when candidate window is destroyed
+ * fix debian/rules according to mike's noticement
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4027-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Wed, 27 Apr 2011 18:10:09 +0900
+
+
+isf (2.2.4025-1slp2+2) unstable; urgency=low
+
+ * [isf-setting/wizard] use genlist "dialogue" style
+ * [isf-setting] module delete move to back_cb()
+ * fix 2 scim-helper-launcher processes bug when boot up
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4025-1slp2+2
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Tue, 26 Apr 2011 18:10:09 +0900
+
+isf (2.2.4019-1slp2+1) unstable; urgency=low
+ * [isf-setting] hide "XT9" item in hw ise list
+ * [isf-panel-efl] fix hw/sw switch bug when reboot target with hw keyboard connected and actived
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4019-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Tue, 19 Apr 2011 13:36:00 +0900
+
+
+isf (2.2.4014-1slp2+1) unstable; urgency=low
+ * [isf-setting/wizard] config read error caused bs
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4014-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Thu, 14 Apr 2011 10:46:40 +0900
+
+isf (2.2.4012-1slp2+1) unstable; urgency=low
+ * [isf-setting/wizard] remove beat theme;
+ * [isf-setting/wizard] click on text to select the genlist item;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4012-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Tue, 12 Apr 2011 9:46:40 +0900
+
+isf (2.2.4011-1slp2+1) unstable; urgency=low
+
+ * [efl_immodule] Bug fix in isf_imf_context_filter_event
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4011-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 11 Apr 2011 14:26:42 +0900
+
+isf (2.2.4007-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Fix candidate GUI faults
+ * [efl_immodule] Turn on hotkey to support H/W keyboard
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4007-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 07 Apr 2011 15:29:30 +0900
+
+isf (2.2.4005-1slp2+1) unstable; urgency=low
+
+ * [setting-wizard] add previous / next icon
+ * [setting] change genlist style
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4005-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 05 Apr 2011 10:37:44 +0900
+
+isf (2.2.4002-1slp2+1) unstable; urgency=low
+
+ * [immodule] event callback bug fix
+ * [immodule] add the method to get the root window even though the canvas is NULL
+ * [isf-setting] Fix AUTO_PERIOD bug
+ * [Programming Guide] write the description of the reason why ecore_imf_context_canvas_set
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.4002-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 01 Apr 2011 11:41:56 +0900
+
+isf (2.2.3931-1slp2+2) unstable; urgency=low
+
+ * remove the change for dynamic load/unload due to BS
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3931-1slp2+2
+
+ -- Wei Ye <wei.ye@samsung.com> Thu, 31 Mar 2011 13:23:50 +0900
+
+isf (2.2.3931-1slp2+1) unstable; urgency=low
+
+ * rollback to 3923
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3931-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 31 Mar 2011 12:23:50 +0900
+
+isf (2.2.3928-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Add 90 and 180 rotation support;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3928-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 28 Mar 2011 14:41:09 +0900
+
+isf (2.2.3923-1slp2+2) unstable; urgency=low
+
+ * [isf-panel-efl] wait unti window manager is launched in normal boot
+ * [isf-setting/wizard] fix dummy config problem
+ * code refactoring
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3923-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 23 Mar 2011 14:17:10 +0900
+
+isf (2.2.3921-1slp2+2) unstable; urgency=low
+
+ * [isf-setting/wizard] ecore_imf_context_init/shutdown remove
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3921-1slp2+2
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Mon, 21 Mar 2011 16:30:58 +0900
+
+isf (2.2.3921-1slp2+1) unstable; urgency=low
+
+ * [isf-setting/wizard] add tizen theme
+ * [isf-setting/wizard] ecore_imf_context_del/add pair to fix memory issue
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3921-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Mon, 21 Mar 2011 15:34:58 +0900
+
+isf (2.2.3918-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] add tizen theme; remove trailing whitespace and tab
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3918-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 18 Mar 2011 17:43:09 +0900
+
+isf (2.2.3915-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] change boot sequence in normal boot
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3915-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 14 Mar 2011 15:45:21 +0900
+
+isf (2.2.3911-1slp2+1) unstable; urgency=low
+
+ * upload isf
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3911-1slp2+1
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Thu, 11 Mar 2011 10:34:58 +0900
+
+
+isf (2.2.3910-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] fix _ecore_main_fd_handlers_bads_rem() error log
+ * [setting] change Keyboard to Back for left button
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3910-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 10 Mar 2011 19:34:58 +0900
+
+isf (2.2.3909-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Add reload when hibernation leave
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3909-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 09 Mar 2011 14:42:57 +0900
+
+isf (2.2.3907-1slp2+2) unstable; urgency=low
+
+ * [efl_setting] Fix BS issue; [isf-panel-efl] Fix defect for vconf and hibernation;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3907-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 07 Mar 2011 16:28:44 +0900
+
+isf (2.2.3907-1slp2+1) unstable; urgency=low
+
+ * create candidate window on focus-in, delete it on focus-out event for minimizing the usage of memory
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3907-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 03 Mar 2011 15:01:21 +0900
+
+isf (2.2.3825-1slp2+3) unstable; urgency=low
+
+ * upload again;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3825-1slp2+3
+
+ -- Shuo Liu <shuo0805.liu@samsung.com> Wed, 25 Feb 2011 17:45:30 +0900
+
+isf (2.2.3825-1slp2+1) unstable; urgency=low
+
+ * Fix candidate dummy window defect; Fix ISE name defect when display language is changed;
+ * modify h/w keyboard setting, apply title_ellipsize style;
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3825-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 25 Feb 2011 13:54:30 +0900
+
+isf (2.2.3823-1slp2+1) unstable; urgency=low
+
+ * add script for normal booting
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3823-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 23 Feb 2011 13:52:30 +0900
+
+isf (2.2.3821-1slp2+2) unstable; urgency=low
+
+ * [scim_utility] Add NULL checker
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3821-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 21 Feb 2011 15:33:36 +0900
+
+isf (2.2.3821-1slp2+1) unstable; urgency=low
+
+ * Optimize png files
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3821-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 21 Feb 2011 13:45:17 +0900
+
+isf (2.2.3816-1slp2+1) unstable; urgency=low
+
+ * support imengine installed in /opt path
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3816-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 15 Feb 2011 19:47:24 +0900
+
+isf (2.2.3807-1slp2+1) unstable; urgency=low
+
+ * Rollback feature related to END KEY
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3807-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 07 Feb 2011 11:44:15 +0900
+
+isf (2.2.3727-1slp2+3) unstable; urgency=low
+
+ * [isfsetting] isfsetting bug about key_end event
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3727-1slp2+3
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 27 Jan 2011 17:08:15 +0900
+
+isf (2.2.3727-1slp2+2) unstable; urgency=low
+
+ * [isfsetting] fix active name is blank in setting app
+ when press key_end several times
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3727-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 27 Jan 2011 12:58:01 +0900
+
+isf (2.2.3727-1slp2+1) unstable; urgency=low
+
+ * [isfsetting] fix isfsetting bs problem
+ * [isfsetting] fix KEY_END exit problem
+ * [isf-panel-efl] update locale info when display language is changed
+ * [scim-panel-agent] Fix reload command for IMControl
+ * [isf.sh] replace SCIM_MODULE_PATH
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3727-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 25 Jan 2011 19:48:25 +0900
+
+isf (2.2.3721-1slp2+1) unstable; urgency=low
+
+ * [scim-panel-agent] Fix the bug that mutiple common processes run will be
+ be invoked after switching ISEs.
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3721-1slp2+1
+
+ -- Wei Ye <wei.ye@samsung.com> Fri, 21 Jan 2011 10:19:15 +0900
+
+
+isf (2.2.3720-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] change the sequence of launching common and default ISE
+ * [immodule] key down event is generated
+ * Remove hard coded png file name from src file
+ * change ug path and seperate the ug locale file from scim.mo
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3720-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 20 Jan 2011 08:49:15 +0900
+
+isf (2.2.3719-1slp2+1) unstable; urgency=low
+
+ * Fix defects according to prevent result
+ * [isf-setting-wizard] Add end key event callback function
+ * [isf-panel-efl] Update More/Close press event
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3719-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 19 Jan 2011 11:47:56 +0900
+
+isf (2.2.3718-1slp2+1) unstable; urgency=low
+
+ * i18n update
+ * [isfsetting] using one navigationbar
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3718-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 18 Jan 2011 10:19:39 +0900
+
+isf (2.2.3714-1slp2+1) unstable; urgency=low
+
+ * Support ISEs installed in /opt path
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3714-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 13 Jan 2011 18:30:40 +0900
+
+isf (2.2.3713-1slp2+2) unstable; urgency=low
+
+ * fix libisf-bin.postinst
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3713-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 13 Jan 2011 14:21:05 +0900
+
+isf (2.2.3713-1slp2+1) unstable; urgency=low
+
+ * [efl_immodule] hide keyboard when END KEY is pressed
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3713-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 13 Jan 2011 10:25:32 +0900
+
+isf (2.2.3712-1slp2+3) unstable; urgency=low
+
+ * [demo] Change deprecated API
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3712-1slp2+3
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 12 Jan 2011 15:33:32 +0900
+
+isf (2.2.3712-1slp2+2) unstable; urgency=low
+
+ * [isf-panel-efl] fix build error related to the change of elementary API
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3712-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 12 Jan 2011 14:56:43 +0900
+
+isf (2.2.3712-1slp2+1) unstable; urgency=low
+
+ * [efl_setting] fix isf setting bs problem in case of no optimization
+ * [efl_immodule] detect bluetooth keyboard
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3712-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 12 Jan 2011 09:55:15 +0900
+
+isf (2.2.3711-1slp2+1) unstable; urgency=low
+
+ * [efl_immodule] fix BS in C++ application
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3711-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 11 Jan 2011 20:48:51 +0900
+
+isf (2.2.3707-1slp2+2) unstable; urgency=low
+
+ * [efl_immodule] fix ecore magic check bug in key_press_cb
+ * [isf-demo-efl] Fix BS defect
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3707-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 07 Jan 2011 16:16:46 +0900
+
+isf (2.2.3707-1slp2+1) unstable; urgency=low
+
+ * [efl_immodule] fix crash
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3707-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 07 Jan 2011 14:38:12 +0900
+
+isf (2.2.3705-1slp2+2) unstable; urgency=low
+
+ * upload again
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3705-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 05 Jan 2011 11:01:38 +0900
+
+isf (2.2.3705-1slp2+1) unstable; urgency=low
+
+ * [efl_immodule] keyboard will be hidden in context is deleted
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3705-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 05 Jan 2011 09:18:50 +0900
+
+isf (2.2.3704-1slp2+1) unstable; urgency=low
+
+ * [setting] item will be highlighted when it is pressed;
+ * [Programming guide] stk examples are modified
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3704-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 04 Jan 2011 11:03:33 +0900
+
+isf (2.2.3630-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Replace evas_object_hide with evas_object_move for lockup issue
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3630-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 30 Dec 2010 11:46:04 +0900
+
+isf (2.2.3622-1slp2+1) unstable; urgency=low
+
+ * [setting] change UI
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3622-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 22 Dec 2010 13:17:26 +0900
+
+isf (2.2.3621-1slp2+1) unstable; urgency=low
+
+ * [Programming guide] Fix example code
+ * [Programming guide] Add return value of key press callback
+ * Add libisf-bin.postinst for vconf key
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3621-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 21 Dec 2010 18:05:37 +0900
+
+isf (2.2.3616-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] add malloc_trim
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3616-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 16 Dec 2010 13:38:27 +0900
+
+isf (2.2.3615-1slp2+1) unstable; urgency=low
+
+ * [isf-setting-efl] Change the order of menu in S/W keyboard group
+ * Modify ISF programming guide
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3615-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 15 Dec 2010 14:31:48 +0900
+
+isf (2.2.3614-1slp2+1) unstable; urgency=low
+
+ * [isf-setting-efl] Add keyboard select wizard
+ * Fix defects according to prevent result
+ * Fix isf-setting BS issue
+ * [efl_immodule] use idler instead of timer
+ * [isf-demo-efl] add test code related to language
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3614-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 14 Dec 2010 11:13:21 +0900
+
+isf (2.2.3613-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] runtime memory optimization
+ * [isf-immodule-efl] fix crash related to timer
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3613-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 13 Dec 2010 14:28:45 +0900
+
+isf (2.2.3610-1slp2+1) unstable; urgency=low
+
+ * [isfsetting-ug] 'Quit' -> 'Back'
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3610-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 10 Dec 2010 15:40:17 +0900
+
+isf (2.2.3609-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] defer to create candidate window until hibernation leave
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3609-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 09 Dec 2010 08:42:58 +0900
+
+isf (2.2.3606-1slp2+1) unstable; urgency=low
+
+ * apply as-needed link option
+ * Git: slp/pkgs/i/isf
+ * Tag: isf_2.2.3606-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 06 Dec 2010 17:03:49 +0900
+
+isf (2.2.3601-1slp2+1) unstable; urgency=low
+
+ * Change the initial ise when the initial ise in global files doesn't exist
+ * Fix ISF programming guide document
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3601-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 01 Dec 2010 14:03:22 +0900
+
+isf (2.2.3526-1slp2+2) unstable; urgency=low
+
+ * Add image of private key set in ISF programming guide
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3526-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 26 Nov 2010 20:18:53 +0900
+
+isf (2.2.3526-1slp2+1) unstable; urgency=low
+
+ * Fix loading added keyboard ISE issue; Update isf-demo-efl for layout test;
+ * [efl_immodule] fix attribute
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3526-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 26 Nov 2010 14:32:43 +0900
+
+isf (2.2.3523-1slp2+3) unstable; urgency=low
+
+ * add ise_context.h
+ * Change hibernation ready key
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3523-1slp2+3
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 23 Nov 2010 19:49:19 +0900
+
+isf (2.2.3523-1slp2+2) unstable; urgency=low
+
+ * Support new ISE installation for hibernation booting
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3523-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 23 Nov 2010 17:50:15 +0900
+
+isf (2.2.3523-1slp2+1) unstable; urgency=low
+
+ * Use common ISE
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3523-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 23 Nov 2010 14:41:22 +0900
+
+isf (2.2.3522-1slp2+1) unstable; urgency=low
+
+ * [efl_immodule] support attribute of imengine
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3522-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 22 Nov 2010 11:38:25 +0900
+
+isf (2.2.3519-1slp2+1) unstable; urgency=low
+
+ * [SCM] Rebuild
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3519-1slp2+1
+
+ -- Chansu Ahn <chansu.ahn@samsung.com> Fri, 19 Nov 2010 00:35:05 +0900
+
+isf (2.2.3518-1slp2+1) unstable; urgency=low
+
+ * Add idm source codes;
+ * Cleanup source codes for LiMo Contribution;
+ * Update contacts;
+ * [efl_panel] Fix "More" button highlight defect;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3518-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 18 Nov 2010 19:26:52 +0900
+
+isf (2.2.3515-1slp2+1) unstable; urgency=low
+
+ * set hibernation ready flag in vconf
+ * [efl_immodule] commit preedit string when mouse down event is occured
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3515-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 15 Nov 2010 09:06:15 +0900
+
+isf (2.2.3509-1slp2+1) unstable; urgency=low
+
+ * add set_ise_language for supporting password mode
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3509-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 09 Nov 2010 20:22:42 +0900
+
+isf (2.2.3508-1slp2+1) unstable; urgency=low
+
+ * Modify ISF Programming guide
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3508-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 08 Nov 2010 09:36:52 +0900
+
+isf (2.2.3504-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Modify hibernation_leave callback
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3504-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 04 Nov 2010 19:46:40 +0900
+
+isf (2.2.3503-1slp2+2) unstable; urgency=low
+
+ * Modify ISF Programming guide
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3503-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 03 Nov 2010 20:37:38 +0900
+
+isf (2.2.3503-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] Revert isf-panel-efl.desktop
+ * [STK] set autoperiod, autocapital to root window's property
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3503-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 03 Nov 2010 11:13:02 +0900
+
+isf (2.2.3502-1slp2+4) unstable; urgency=low
+
+ * Change /opt/lib/scim-1.0/ to /usr/lib/scim-1.0, change /opt/share/scim to /usr/share/scim
+ * Change AUTHORS
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3502-1slp2+4
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 02 Nov 2010 18:56:18 +0900
+
+isf (2.2.3502-1slp2+3) unstable; urgency=low
+
+ * [isf-demo-stk] Fix stk_navigation API
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3502-1slp2+3
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 02 Nov 2010 14:13:08 +0900
+
+isf (2.2.3502-1slp2+2) unstable; urgency=low
+
+ * Change /usr/lib/scim-1.0/ to /opt/lib/scim-1.0, change /usr/share/scim to /opt/share/scim
+ * Update for LiMo Contribution
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3502-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 02 Nov 2010 11:34:30 +0900
+
+isf (2.2.3502-1slp2+1) unstable; urgency=low
+
+ * [isf-panel-efl] support hibernation
+ * [isf-panel-efl] set ELM_ENGINE, ELM_FPS to avoid to use gles backend
+ * [efl_immodule] fix 3rd parameter in preedit_string_get
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3502-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 02 Nov 2010 08:56:20 +0900
+
+isf (2.2.3427-1slp2+1) unstable; urgency=low
+
+ * Modify ISF Programming guide
+ * remove evas_font_path_prepend from isf-panel-efl
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3427-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 27 Oct 2010 19:43:26 +0900
+
+isf (2.2.3421-1slp2+1) unstable; urgency=low
+
+ * Use evas_font_path_prepend
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3421-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 21 Oct 2010 17:24:35 +0900
+
+isf (2.2.3418-1slp2+1) unstable; urgency=low
+
+ * Add each layout image in doxygen
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3418-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 18 Oct 2010 18:17:05 +0900
+
+isf (2.2.3413-1slp2+1) unstable; urgency=low
+
+ * [setting] add autocapital, autoperiod option menu
+ * [efl_immodule] change return type
+ * Change font : GT font -> SLP:style=medium
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3413-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 13 Oct 2010 18:42:39 +0900
+
+isf (2.2.3406-1slp2+1) unstable; urgency=low
+
+ * Add libisf-bin.postinst for gtkimmodule
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3406-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 06 Oct 2010 15:01:59 +0900
+
+isf (2.2.3330-1slp2+1) unstable; urgency=low
+
+ * Fix build error related to the change of Ecore_IMF
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3330-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 30 Sep 2010 10:12:38 +0900
+
+isf (2.2.3328-1slp2+1) unstable; urgency=low
+
+ * Set window role for not using effect
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3328-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 28 Sep 2010 14:28:52 +0900
+
+isf (2.2.3327-1slp2+1) unstable; urgency=low
+
+ * Bug fix about back button in isfsetting
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3327-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 27 Sep 2010 15:33:27 +0900
+
+isf (2.2.3317-1slp2+2) unstable; urgency=low
+
+ * Support autocapital
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3317-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 17 Sep 2010 18:57:18 +0900
+
+isf (2.2.3317-1slp2+1) unstable; urgency=low
+
+ * Support autocapital
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3317-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 17 Sep 2010 17:06:44 +0900
+
+isf (2.2.3315-1slp2+1) unstable; urgency=low
+
+ * Remove libts-calibration-dev
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3315-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 15 Sep 2010 18:03:22 +0900
+
+isf (2.2.3310-1slp2+1) unstable; urgency=low
+
+ * Fix for EFL 1.0 alpha
+ * efl_immodule refactoring
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3310-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 10 Sep 2010 22:42:16 +0900
+
+isf (2.2.3308-1slp2+2) unstable; urgency=low
+
+ * [isfsetting] Fixed BS issue
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3308-1slp2+2
+
+ -- Jihoon Lee <dalton.lee@samsung.com> Wed, 08 Sep 2010 21:21:58 +0900
+
+isf (2.2.3308-1slp2+1) unstable; urgency=low
+
+ * [isfsetting] fix isfsetting;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3308-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 08 Sep 2010 18:00:59 +0900
+
+isf (2.2.3307-1slp2+2) unstable; urgency=low
+
+ * [isfsetting] fix i18n;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3307-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 07 Sep 2010 15:26:32 +0900
+
+isf (2.2.3307-1slp2+1) unstable; urgency=low
+
+ * Add multi-selected ISEs function in efl-setting;
+ * [isf-demo-stk] fix build error;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3307-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 07 Sep 2010 11:11:09 +0900
+
+isf (2.2.3301-1slp2+1) unstable; urgency=low
+
+ * [isfsetting] fix for i18n;
+ * [efl_immodule] Bug fix : key up event
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3301-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 01 Sep 2010 09:21:25 +0900
+
+isf (2.2.3231-1slp2+1) unstable; urgency=low
+
+ * [isf-demo-stk] fix build errors for stk_main_window_new () and so on;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3231-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 31 Aug 2010 11:04:43 +0900
+
+
+isf (2.2.3225-1slp2+1) unstable; urgency=low
+
+ * [isf-demo-efl] code refactoring;
+ * [isf-demo-efl] add MONTH, NUMBERONLY layout test code;
+ * [isf-demo-stk] add IP, MONTH, NUMBERONLY Layout;
+ * Added experimental modification for avoiding multiple scim process problem;
+ * [isfsetting] set background;
+ * Remove GTK word from IMControl;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3225-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 25 Aug 2010 20:14:09 +0900
+
+
+isf (2.2.3219-1slp2+1) unstable; urgency=low
+
+ * Fix the bug not to install libui-isfsetting-efl.so;
+ * Update efl_setting;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3219-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 19 Aug 2010 15:23:28 +0900
+
+
+isf (2.2.3218-1slp2+1) unstable; urgency=low
+
+ * Update candidate images for beat;
+ * Update efl_setting according to Beat GUI PPT;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3218-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 18 Aug 2010 15:24:51 +0900
+
+
+isf (2.2.3207-1slp2+2) unstable; urgency=low
+
+ * Remove applog from efl_setting
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3207-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Sat, 07 Aug 2010 17:43:11 +0900
+
+
+isf (2.2.3207-1slp2+1) unstable; urgency=low
+
+ * Remove kessler ELM_THEME and intl folder;
+ * Update efl_setting according to appcore change;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3207-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Sat, 07 Aug 2010 16:21:45 +0900
+
+
+isf (2.2.3202-1slp2+1) unstable; urgency=low
+
+ * Add hardware keyboard support;
+ * Remove unused functions of efl_immodule;
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3202-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 02 Aug 2010 14:04:33 +0900
+
+isf (2.2.3120-1slp2+1) unstable; urgency=low
+
+ * Change deprecated Ecore_IMF API in isf_imf_context
+ * Fix rotating code in isf-demo-efl
+ * Git: 165.213.180.234:/git/slp/pkgs/isf
+ * Tag: isf_2.2.3120-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 20 Jul 2010 15:10:34 +0900
+
+isf (2.2.3112-1slp2+2) unstable; urgency=low
+
+ * Bug fix about event_callback_add and event_callback_del
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3112-1slp2+2
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 12 Jul 2010 20:27:56 +0900
+
+isf (2.2.3112-1slp2+1) unstable; urgency=low
+
+ * Modify isf-demo-efl example code;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3112-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 12 Jul 2010 16:57:59 +0900
+
+isf (2.2.3108-1slp2+1) unstable; urgency=low
+
+ * Support the revised Ecore_IMF;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3108-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 08 Jul 2010 19:10:20 +0900
+
+isf (2.2.3107-1slp2+1) unstable; urgency=low
+
+ * Fix defects according to klocwork report and c++ test report;
+ * Update isf-panel-efl for multi-resolution;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3107-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 07 Jul 2010 15:22:14 +0900
+
+
+isf (2.2.3025-1slp2+1) unstable; urgency=low
+
+ * Fix defects according to klocwork report; Add ingroup and defgroup;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3025-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 25 Jun 2010 14:23:42 +0900
+
+isf (2.2.3017-1slp2+1) unstable; urgency=low
+
+ * Change font name to "GT45_ArabCJK_TouchWiz" in isf_panel_efl.cpp;
+ * Update isf-demo for build issue;
+ * Fix defects according to klocwork report;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3017-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 17 Jun 2010 11:10:11 +0900
+
+isf (2.2.3011-1slp2+2) unstable; urgency=low
+
+ * Update isf-demo-stk for build issue
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3011-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Sat, 12 Jun 2010 11:01:23 +0900
+
+isf (2.2.3011-1slp2+1) unstable; urgency=low
+
+ * Update efl_setting for share gadget
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3011-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 11 Jun 2010 10:02:34 +0900
+
+ isf (2.2.3004-1slp2+2) unstable; urgency=low
+
+ * Remove app-fwk.h from isf_keyboard_opt.cpp
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3004-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Sat, 05 Jun 2010 10:05:04 +0900
+
+isf (2.2.3004-1slp2+1) unstable; urgency=low
+
+ * Change appfwk to appcore
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3004-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 04 Jun 2010 21:35:45 +0900
+
+isf (2.2.3002-1slp2+2) unstable; urgency=low
+
+ * Fix one defect for isf-setting-efl
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3002-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 02 Jun 2010 17:50:40 +0900
+
+isf (2.2.3002-1slp2+1) unstable; urgency=low
+
+ * Update isf_imf_context.cpp to fix backspace problem
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.3002-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 02 Jun 2010 13:50:40 +0900
+
+isf (2.2.2930-1slp2+1) unstable; urgency=low
+
+ * Rollback to 2.2.2919 because of backspace problem
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2930-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Sun, 30 May 2010 12:27:30 +0900
+
+isf (2.2.2928-1slp2+2) unstable; urgency=low
+
+ * Update scim_panel_agent.h
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2928-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 28 May 2010 20:50:40 +0900
+
+isf (2.2.2928-1slp2+1) unstable; urgency=low
+
+ * Fix defects according to prevent and klocwork result; Add logs in scim_panel_client.cpp;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2928-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 28 May 2010 17:54:46 +0900
+
+isf (2.2.2919-1slp2+2) unstable; urgency=low
+
+ * Cleanup deprecated functions for vconf; Fix one timer defect in isf_imf_context.cpp;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2919-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 21 May 2010 17:20:27 +0900
+
+isf (2.2.2919-1slp2+1) unstable; urgency=low
+
+ * Fix build error because of vconf
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2919-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 18 May 2010 11:32:43 +0900
+
+isf (2.2.2913-1slp2+1) unstable; urgency=low
+
+ * Fix candidate window resize issue; Add CUSTOM1_CANDIDATE_STYLE; Add isf-demo-stk;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2913-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 13 May 2010 16:25:44 +0900
+
+isf (2.2.2906-1slp2+1) unstable; urgency=low
+
+ * Fix candidate scrolling defect; Fix preedit cursor position defect;
+ * Merge aux window into candidate window; Update isf-demo-efl;
+ * Remove idm directory;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2906-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 06 May 2010 16:59:52 +0900
+
+isf (2.2.2822-1slp2+1) unstable; urgency=low
+
+ * Update isf_imf_context.cpp for focused IC; Add ISE switch function from ISE window;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2822-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 22 Apr 2010 18:23:58 +0900
+
+isf (2.2.2819-1slp2+1) unstable; urgency=low
+
+ * Update isf_imf_context.cpp
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2819-1slp2+1
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 19 Apr 2010 11:34:50 +0900
+
+isf (2.2.2815) unstable; urgency=low
+
+ * Update isf_panel_efl.cpp
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2815-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 15 Apr 2010 21:27:02 +0900
+
+isf (2.2.2807-1slp2+3) unstable; urgency=low
+
+ * Bug fix : do not set effect style according to rotation
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2807-1slp2+3
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 09 Apr 2010 17:13:28 +0900
+
+isf (2.2.2807-1slp2+2) unstable; urgency=low
+
+ * Fix IMControl ise_show issue; Do not hide ISE when non-active app exit;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2807-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 08 Apr 2010 16:06:32 +0900
+
+isf (2.2.2807-1slp2+1) unstable; urgency=low
+
+ * Fix the issue that char is displaying twice in RSS; Hide ISE when application is crashed;
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2807-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 07 Apr 2010 18:18:34 +0900
+
+isf (2.2.2801-1slp2+2) unstable; urgency=low
+
+ * Update changelog for tag name
+ * Git: 165.213.180.234:/git/slp2.0/slp2.0-pkgs/isf
+ * Tag: isf_2.2.2801-1slp2+2
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 01 Apr 2010 18:15:23 +0900
+
+isf (2.2.2801-1slp2+1) unstable; urgency=low
+
+ * Update isf-setting and isf_candidate.edc
+ * Git: 165.213.180.234:/git/slp2.0/isf
+ * Tag: 2.2.2801-1slp2+1
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 01 Apr 2010 17:15:49 +0900
+
+isf (2.2.2730-1slp2+2) unstable; urgency=low
+
+ * Reupload because of build sequence
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 30 Mar 2010 18:07:57 +0900
+
+isf (2.2.2730-1slp2+1) unstable; urgency=low
+
+ * remove code related to unused member of ISE_STYLE
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 30 Mar 2010 17:00:04 +0900
+
+isf (2.2.2724-1slp2+1) unstable; urgency=low
+
+ * Update isf-setting
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 25 Mar 2010 16:59:52 +0900
+
+isf (2.2.2723) unstable; urgency=low
+
+ * Change how to grab key. use ecore_event_callback_add not utilX_key_grab
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 24 Mar 2010 19:49:06 +0900
+
+isf (2.2.2722) unstable; urgency=low
+
+ * Fix isf-panel-efl memory leak issue
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 22 Mar 2010 17:06:19 +0900
+
+isf (2.2.2717) unstable; urgency=low
+
+ * Add elementary dependency in isf-imf-module (Reupload)
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 22 Mar 2010 11:22:43 +0900
+
+isf (2.2.2716) unstable; urgency=low
+
+ * Add elementary dependency in isf-imf-module
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 19 Mar 2010 18:15:52 +0900
+
+isf (2.2.2715) unstable; urgency=low
+
+ * Support i18n in selecting writing languages
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 18 Mar 2010 15:44:05 +0900
+
+isf (2.2.2714) unstable; urgency=low
+
+ * Update korean po files
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 17 Mar 2010 15:33:59 +0900
+
+isf (2.2.2713) unstable; urgency=low
+
+ * Added .desktop file for fix lockup problem and removed sleep(5)
+
+ -- Ji-hoon Lee <dalton.lee@samsung.com> Tue, 16 Mar 2010 19:08:26 +0900
+
+isf (2.2.2712) unstable; urgency=low
+
+ * Bug fix. event_callback was not called when ISE is shown
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Fri, 12 Mar 2010 12:15:02 +0900
+
+isf (2.2.2711) unstable; urgency=low
+
+ * Change isfsetting into shared gadget and change ISF theme from pantheon to kessler
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 11 Mar 2010 17:13:17 +0900
+
+isf (2.2.2707) unstable; urgency=low
+
+ * support transient for
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Mon, 08 Mar 2010 19:41:44 +0900
+
+isf (2.2.2706) unstable; urgency=low
+
+ * A sleep time for default ISE has been added.
+
+ -- sehwan <sehwan@samsung.com> Mon, 08 Mar 2010 09:22:36 +0900
+
+isf (2.2.2705) unstable; urgency=low
+
+ * modify isf_imf_module.cpp for support new ecore_imf
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Thu, 04 Mar 2010 20:45:19 +0900
+
+isf (2.2.2704) unstable; urgency=low
+
+ * Update IMControl, isf-setting and candidate
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 04 Mar 2010 17:41:29 +0900
+
+isf (2.2.2628) unstable; urgency=low
+
+ * Support ecore_imf_context_ise_event_callback_set
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Wed, 03 Mar 2010 15:47:07 +0900
+
+isf (2.2.2627) unstable; urgency=low
+
+ * Change not to set rotation degree when showing ISE unless ScreenMode style
+ is set
+
+ -- Ji-hoon Lee <dalton.lee@samsung.com> Tue, 02 Mar 2010 22:25:57 +0900
+
+isf (2.2.2626) unstable; urgency=low
+
+ * Remove UI-indicator dependency
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 02 Mar 2010 13:51:51 +0900
+
+isf (2.2.2625) unstable; urgency=low
+
+ * Update IMControl; Add candidate auto-adjust location and landscape mode; Add HelperAgent::update_input_context
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 25 Feb 2010 18:25:51 +0900
+
+isf (2.2.2613) unstable; urgency=low
+
+ * Changed default ISE from europeanise to ise-western-europe-1-us
+
+ -- Ji-hoon Lee <dalton.lee@samsung.com> Wed, 24 Feb 2010 20:33:47 +0900
+
+isf (2.2.2612) unstable; urgency=low
+
+ * Added locale information for additional languages
+
+ -- Ji-hoon Lee <dalton.lee@samsung.com> Tue, 23 Feb 2010 21:52:47 +0900
+
+isf (2.2.2611) unstable; urgency=low
+
+ * support ecore_imf_context_ise_get_window_rect
+
+ -- Jihoon Kim <jihoon48.kim@samsung.com> Tue, 23 Feb 2010 21:16:05 +0900
+
+isf (2.2.2610) unstable; urgency=low
+
+ * Add libisf-dbg, update isf-setting and candidate aux for Chinese ISE
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 08 Feb 2010 18:34:58 +0900
+
+isf (2.2.2609) unstable; urgency=low
+
+ * Update isf-setting and isf_panel_efl.cpp for aux
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Sat, 06 Feb 2010 19:30:48 +0900
+
+isf (2.2.2608) unstable; urgency=low
+
+ * Remove UI_softkey, UI_titlebar and so on from isf-demo
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 04 Feb 2010 18:26:37 +0900
+
+isf (2.2.2607) unstable; urgency=low
+
+ * Update isf-setting for BS issue when press "Back"
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 04 Feb 2010 09:50:23 +0900
+
+isf (2.2.2606) unstable; urgency=low
+
+ * Modified Makefile.am for resolving undefined symbol error in isf-imf-context
+
+ -- Ji-hoon Lee <dalton.lee@samsung.com> Wed, 03 Feb 2010 11:02:00 +0900
+
+isf (2.2.2605) unstable; urgency=low
+
+ * Update isf-setting and isf_event_demo.cpp
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 02 Feb 2010 22:37:45 +0900
+
+isf (2.2.2604) unstable; urgency=low
+
+ * Update isf_imf_context.cpp for Home ane End keyevent
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 02 Feb 2010 21:11:36 +0900
+
+isf (2.2.2603) unstable; urgency=low
+
+ * Update isf-setting
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 02 Feb 2010 12:22:43 +0900
+
+isf (2.2.2602) unstable; urgency=low
+
+ * Update po files
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 01 Feb 2010 19:50:35 +0900
+
+isf (2.2.2601) unstable; urgency=low
+
+ * Update efl_setting and language po files
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Mon, 01 Feb 2010 16:57:02 +0900
+
+isf (2.2.2530) unstable; urgency=low
+
+ * Add SYSLOG for ISF launching
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Sat, 30 Jan 2010 16:28:35 +0900
+
+isf (2.2.2529) unstable; urgency=low
+
+ * Add GTK in depends
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 29 Jan 2010 10:44:47 +0900
+
+isf (2.2.2528) unstable; urgency=low
+
+ * Fix BlueScreen issue when switching ISEs
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Thu, 28 Jan 2010 20:38:36 +0900
+
+isf (2.2.2526) unstable; urgency=low
+
+ * Update isfimcontrolapi.cpp and change SLP functions according to KHQ release
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Tue, 26 Jan 2010 17:10:22 +0900
+
+isf (2.2.2523) unstable; urgency=low
+
+ * Update efl_setting
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Sat, 23 Jan 2010 20:26:32 +0900
+
+isf (2.2.2522) unstable; urgency=low
+
+ * Update isf-setting and isf candidate
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Fri, 22 Jan 2010 23:01:14 +0900
+
+isf (2.2.2520) unstable; urgency=low
+
+ * Add isf_imf_context_preedit_string_get () and update isf_demo
+
+ -- Haifeng Deng <haifeng.deng@samsung.com> Wed, 20 Jan 2010 21:22:00 +0900
+
+isf (2.2.2515) unstable; urgency=low
+
+ * changed isf-setting and candidate UI
+
+ -- sehwan <sehwan@samsung.com> Sun, 17 Jan 2010 16:02:33 +0900
+
+isf (2.2.2514) unstable; urgency=low
+
+ * added isf-setting , isfdemo
+
+ -- sehwan <sehwan@samsung.com> Sat, 16 Jan 2010 15:12:08 +0900
+
+isf (2.2.2513) unstable; urgency=low
+
+ * Initial Release.
+
+ -- sehwan <sehwan@samsung.com> Fri, 15 Jan 2010 23:27:58 +0900
usr/share/*
usr/lib/*.so*
usr/lib/*/immodules/*.so
-opt/ug/lib/*.so
-opt/ug/res/*
+usr/ug/lib/*.so
+usr/ug/res/*
usr/lib/scim-1.0/scim-launcher
usr/lib/scim-1.0/scim-helper-launcher
usr/lib/scim-1.0/1.4.0/Config/*.so
if [ ${USER} = "root" ]
then
- /usr/bin/vconftool set -t string db/isf/input_lang "Automatic" -g 6514
- /usr/bin/vconftool set -t string db/setting/autocapital_allow 0 -g 6514
+ /usr/bin/vconftool set -t string file/private/isf/autocapital_allow 0 -g 6514
+ /usr/bin/vconftool set -t string file/private/isf/autoperiod_allow 0 -g 6514
chmod 755 /etc/profile.d/isf.sh
chmod 755 /etc/init.d/isf-panel-efl
ln -sf /etc/init.d/isf-panel-efl /etc/rc.d/rc3.d/S42isf-panel-efl
ln -sf /etc/init.d/isf-panel-efl /etc/rc.d/rc4.d/S81isf-panel-efl
else
- /usr/bin/vconftool set -t string db/isf/input_lang "Automatic"
- /usr/bin/vconftool set -t string db/setting/autocapital_allow 0
+ /usr/bin/vconftool set -t string file/private/isf/autocapital_allow 0
+ /usr/bin/vconftool set -t string file/private/isf/autoperiod_allow 0
fi
--- /dev/null
+<manifest>
+ <define>
+ <domain name="isf"/>
+ </define>
+ <request>
+ <domain name="isf"/>
+ </request>
+</manifest>
export SCIM_MODULE_PATH=/opt/apps/scim/lib/scim-1.0
+export XMODIFIERS=@im=SCIM
+export GTK_IM_MODULE_FILE=/opt/etc/gtk-2.0/gtk.immodules
+export GTK_IM_MODULE=scim
+export ECORE_IMF_MODULE=isf
MAINTAINERCLEANFILES = Makefile.in
CLEANFILES = *.bak *.edj
-ISF_CANDIDATE_PNG = 08_textinput_predictive_popup_arrow.png \
- 08_textinput_predictive_popup_arrow_2.png
-
-#pixmapsdir = @SCIM_DATADIR@/pixmaps
-#pixmaps_DATA = $(ISF_CANDIDATE_PNG)
-
-EXTRA_DIST = $(ISF_CANDIDATE_PNG)
# edjes
isf_candidate_theme1.edj : isf_candidate_theme1.edc
edje_cc $^ $@
-isf_candidate_theme2.edj : isf_candidate_theme2.edc
- edje_cc $^ $@
-
isfsetting.edj : isfsetting.edc
edje_cc $^ $@
edjdir = @SCIM_DATADIR@
-edj_DATA = isf_candidate_theme1.edj isf_candidate_theme2.edj isfsetting.edj
+edj_DATA = isf_candidate_theme1.edj isfsetting.edj
-#define FONT_NAME "SLP:style=medium"
-#define FONT_SIZE 30
+#define FONT_NAME "Default"
+#define FONT_SIZE 38
-#define AUX_FONT_NAME "SLP:style=medium"
-#define AUX_FONT_SIZE 30
+#define AUX_FONT_NAME "Default"
+#define AUX_FONT_SIZE 38
-#define BG_IMAGE_BORDER 12
+#define COLOR_NORMAL_BUTTON 0 0 0 0
+#define COLOR_PRESS_BUTTON 166 166 166 255
+
+#define COLOR_SELECT_TEXT 62 207 255 255
+
+
+color_classes {
+ color_class {
+ name: "text_color";
+ color: COLOR_NORMAL_TEXT;
+ color2: COLOR_NORMAL_TEXT;
+ color3: COLOR_NORMAL_TEXT;
+ }
+ color_class {
+ name: "rect_color";
+ color: COLOR_NORMAL_BUTTON;
+ }
+}
collections {
rel1.relative: 0.0 0.0;
rel2.relative: 1.0 1.0;
image.normal: POPUP_LINE;
- image.border: 12 12 0 0;
}
}
}
}
- group { name: "candidate_bg";
+ group { name: "seperate_line";
images {
- image: CANDIDATE_BG COMP;
- image: "08_textinput_panel_bg.png" COMP;
+ image: "B09_predictive_vertical_line.png" COMP;
}
parts {
description { state: "default" 0.0;
rel1.relative: 0.0 0.0;
rel2.relative: 1.0 1.0;
- image.normal: CANDIDATE_BG;
- image.border: BG_IMAGE_BORDER BG_IMAGE_BORDER BG_IMAGE_BORDER BG_IMAGE_BORDER;
- }
- description { state: "port_single" 0.0;
- inherit: "default" 0.0;
- }
- description { state: "port_more" 0.0;
- inherit: "default" 0.0;
- }
- description { state: "land_single" 0.0;
- inherit: "default" 0.0;
- }
- description { state: "land_more" 0.0;
- inherit: "default" 0.0;
- }
- description { state: "port_more_2" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_panel_bg.png";
- image.border: BG_IMAGE_BORDER BG_IMAGE_BORDER BG_IMAGE_BORDER BG_IMAGE_BORDER;
- }
- description { state: "land_more_2" 0.0;
- inherit: "port_more_2" 0.0;
+ image.normal: "B09_predictive_vertical_line.png";
}
}
}
+ }
- programs {
- program { name: "port_single";
- signal, "candidate_bg,state,port_single";
- source, "candidate_bg";
- action, STATE_SET "port_single" 0.0;
- target, "bg";
- }
-
- program { name: "port_more";
- signal, "candidate_bg,state,port_more";
- source, "candidate_bg";
- action, STATE_SET "port_more" 0.0;
- target, "bg";
- }
-
- program { name: "land_single";
- signal, "candidate_bg,state,land_single";
- source, "candidate_bg";
- action, STATE_SET "land_single" 0.0;
- target, "bg";
- }
+ group { name: "scroller_bg";
+ images {
+ image: "B09_predictive_on_bg.png" COMP;
+ }
- program { name: "land_more";
- signal, "candidate_bg,state,land_more";
- source, "candidate_bg";
- action, STATE_SET "land_more" 0.0;
- target, "bg";
+ parts {
+ part { name: "bg";
+ mouse_events: 0;
+ description { state: "default" 0.0;
+ rel1.relative: 0.0 0.0;
+ rel2.relative: 1.0 1.0;
+ image.normal: "B09_predictive_on_bg.png";
+ image.border: 6 6 6 6;
+ }
}
+ }
+ }
- program { name: "port_more_2";
- signal, "candidate_bg,state,port_more_2";
- source, "candidate_bg";
- action, STATE_SET "port_more_2" 0.0;
- target, "bg";
- }
+ group { name: "candidate_bg";
+ images {
+ image: CANDIDATE_BG COMP;
+ }
- program { name: "land_more_2";
- signal, "candidate_bg,state,land_more_2";
- source, "candidate_bg";
- action, STATE_SET "land_more_2" 0.0;
- target, "bg";
+ parts {
+ part { name: "bg";
+ mouse_events: 0;
+ description { state: "default" 0.0;
+ rel1.relative: 0.0 0.0;
+ rel2.relative: 1.0 1.0;
+ image.normal: CANDIDATE_BG;
+ image.border: BG_IMAGE_BORDER BG_IMAGE_BORDER 41 41;
+ }
}
}
}
parts {
part { name: "bg";
+ type: RECT;
mouse_events: 1;
description { state: "default" 0.0;
rel1.relative: 0.0 0.0;
rel2.relative: 1.0 1.0;
- image.normal: BUTTON_NORMAL_BG;
- image.border: BUTTON_IMAGE_BORDER BUTTON_IMAGE_BORDER BUTTON_IMAGE_BORDER BUTTON_IMAGE_BORDER;
+ color_class: "rect_color";
}
description { state: "pressed" 0.0;
- inherit: "default" 0.0;
- image.normal: BUTTON_PRESS_BG;
+ rel1.relative: 0.0 0.0;
+ rel2.relative: 1.0 1.0;
+ color: COLOR_PRESS_BUTTON;
}
}
//effect: SHADOW;
description { state: "default" 0.0;
color: COLOR_NORMAL_TEXT;
+ color_class: "text_color";
text {
text_class: "candidate_text_class";
text: "Test";
}
}
- group { name: "candidate_button";
+ group { name: "more_button";
images {
- image: "08_textinput_button_128x56.png" COMP;
- image: "08_textinput_button_128x56_pre.png" COMP;
+ image: BUTTON_NORMAL_BG COMP;
+ image: BUTTON_PRESS_BG COMP;
+ image: "B09_predictive_icon_arrow_down.png" COMP;
+ image: "B09_predictive_icon_arrow_down_press.png" COMP;
}
parts {
description { state: "default" 0.0;
rel1.relative: 0.0 0.0;
rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_128x56.png";
+ image.normal: BUTTON_NORMAL_BG;
+ image.border: BUTTON_IMAGE_BORDER BUTTON_IMAGE_BORDER BUTTON_IMAGE_BORDER BUTTON_IMAGE_BORDER;
}
description { state: "pressed" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_128x56_pre.png";
+ inherit: "default" 0.0;
+ image.normal: BUTTON_PRESS_BG;
}
}
- part { name: "button_text";
- type: TEXT;
+ part { name: "image";
+ type: IMAGE;
mouse_events: 0;
- effect: SHADOW;
description { state: "default" 0.0;
- color: 255 255 255 255;
- text {
- text_class: "candidate_text_class";
- text: "Test";
- font: FONT_NAME;
- size: FONT_SIZE;
- align: 0.5 0.5;
- }
rel1.to: "bg";
- rel1.relative: 0.0 0.0;
+ rel1.relative: 0.25 0.1875;
rel2.to: "bg";
- rel2.relative: 1.0 1.0;
+ rel2.relative: 0.75 0.8125;
+ image.normal: "B09_predictive_icon_arrow_down.png";
+ fill.smooth: 1;
}
- }
- }
-
- programs {
- program { name: "button_click";
- signal: "mouse,clicked,1";
- source: "bg";
- action: SIGNAL_EMIT "button,action,clicked" "";
- }
-
- program { name, "button_press";
- signal, "mouse,down,1";
- source, "bg";
- action, STATE_SET "pressed" 0.0;
- target, "bg";
- }
-
- program { name, "button_release";
- signal, "mouse,up,1";
- source, "bg";
- action, STATE_SET "default" 0.0;
- target, "bg";
- }
- }
- }
-
- group { name: "close_button";
- images {
- image: "08_textinput_button_close_114x71.png" COMP;
- image: "08_textinput_button_close_114x71_pre.png" COMP;
- }
-
- parts {
- part { name: "bg";
- mouse_events: 1;
- description { state: "default" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_close_114x71.png";
- }
description { state: "pressed" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_close_114x71_pre.png";
+ inherit: "default" 0.0;
+ image.normal: "B09_predictive_icon_arrow_down_press.png";
}
}
description { state: "default" 0.0;
color: 255 255 255 255;
text {
- text_class: "button_text_class";
- text: "Close";
+ //text_class: "button_text_class";
+ //text: "Close";
font: FONT_NAME;
size: FONT_SIZE;
align: 0.5 0.5;
source, "bg";
action, STATE_SET "pressed" 0.0;
target, "bg";
+ target, "image";
}
program { name, "button_release";
source, "bg";
action, STATE_SET "default" 0.0;
target, "bg";
+ target, "image";
}
}
}
- group { name: "page_button_port";
+ group { name: "close_button";
images {
- image: "08_textinput_sym_arrow_left.png" COMP;
- image: "08_textinput_sym_arrow_right.png" COMP;
- image: "08_textinput_button_232x71.png" COMP;
- image: "08_textinput_button_232x71_pre_left.png" COMP;
- image: "08_textinput_button_232x71_pre_right.png" COMP;
+ image: BUTTON_NORMAL_BG COMP;
+ image: BUTTON_PRESS_BG COMP;
+ image: "B09_predictive_icon_arrow_up.png" COMP;
+ image: "B09_predictive_icon_arrow_up_press.png" COMP;
}
parts {
part { name: "bg";
- description { state: "default" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_232x71.png";
- }
- description { state: "left_pressed" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_232x71_pre_left.png";
- }
- description { state: "right_pressed" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_232x71_pre_right.png";
- }
- }
-
- part { name: "left";
mouse_events: 1;
description { state: "default" 0.0;
- rel1.to: "bg";
rel1.relative: 0.0 0.0;
- rel1.offset: 0 0;
- rel2.to: "bg";
- rel2.relative: 0.0 1.0;
- rel2.offset: 68 0;
- image.normal: "08_textinput_sym_arrow_left.png";
- }
- }
- part { name: "right";
- mouse_events: 1;
- description { state: "default" 0.0;
- rel1.to: "bg";
- rel1.relative: 1.0 0.0;
- rel1.offset: -68 0;
- rel2.to: "bg";
rel2.relative: 1.0 1.0;
- rel2.offset: 0 0;
- image.normal: "08_textinput_sym_arrow_right.png";
+ image.normal: BUTTON_NORMAL_BG;
+ image.border: BUTTON_IMAGE_BORDER BUTTON_IMAGE_BORDER BUTTON_IMAGE_BORDER BUTTON_IMAGE_BORDER;
+ }
+ description { state: "pressed" 0.0;
+ inherit: "default" 0.0;
+ image.normal: BUTTON_PRESS_BG;
}
}
- part { name: "page_text";
- type: TEXT;
+ part { name: "image";
+ type: IMAGE;
mouse_events: 0;
- effect: SHADOW;
description { state: "default" 0.0;
- color: 255 255 255 255;
- text {
- text_class: "page_text_class";
- text: "1/1";
- font: FONT_NAME;
- size: FONT_SIZE;
- align: 0.5 0.5;
- }
rel1.to: "bg";
- rel1.relative: 0.0 0.0;
+ rel1.relative: 0.25 0.1875;
rel2.to: "bg";
- rel2.relative: 1.0 1.0;
+ rel2.relative: 0.75 0.8125;
+ image.normal: "B09_predictive_icon_arrow_up.png";
+ fill.smooth: 1;
}
- }
- }
-
- programs {
- program { name: "prev_click";
- signal: "mouse,clicked,1";
- source: "left";
- action: SIGNAL_EMIT "prev,action,clicked" "";
- }
-
- program { name, "next_click";
- signal, "mouse,clicked,1";
- source, "right";
- action: SIGNAL_EMIT "next,action,clicked" "";
- }
-
- program { name, "left_press";
- signal, "mouse,down,1";
- source, "left";
- action, STATE_SET "left_pressed" 0.0;
- target, "bg";
- }
-
- program { name, "left_release";
- signal, "mouse,up,1";
- source, "left";
- action, STATE_SET "default" 0.0;
- target, "bg";
- }
-
- program { name, "right_press";
- signal, "mouse,down,1";
- source, "right";
- action, STATE_SET "right_pressed" 0.0;
- target, "bg";
- }
-
- program { name, "right_release";
- signal, "mouse,up,1";
- source, "right";
- action, STATE_SET "default" 0.0;
- target, "bg";
- }
- }
- }
- group { name: "page_button_land";
-
- images {
- image: "08_textinput_sym_arrow_left.png" COMP;
- image: "08_textinput_sym_arrow_right.png" COMP;
- image: "08_textinput_button_260x56.png" COMP;
- image: "08_textinput_button_260x56_pre_left.png" COMP;
- image: "08_textinput_button_260x56_pre_right.png" COMP;
- }
-
- parts {
- part { name: "bg";
- description { state: "default" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_260x56.png";
- }
- description { state: "left_pressed" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_260x56_pre_left.png";
- }
- description { state: "right_pressed" 0.0;
- rel1.relative: 0.0 0.0;
- rel2.relative: 1.0 1.0;
- image.normal: "08_textinput_button_260x56_pre_right.png";
- }
- }
-
- part { name: "left";
- mouse_events: 1;
- description { state: "default" 0.0;
- rel1.to: "bg";
- rel1.relative: 0.0 0.0;
- rel1.offset: 0 0;
- rel2.to: "bg";
- rel2.relative: 0.0 1.0;
- rel2.offset: 71 0;
- image.normal: "08_textinput_sym_arrow_left.png";
- }
- }
- part { name: "right";
- mouse_events: 1;
- description { state: "default" 0.0;
- rel1.to: "bg";
- rel1.relative: 1.0 0.0;
- rel1.offset: -71 0;
- rel2.to: "bg";
- rel2.relative: 1.0 1.0;
- rel2.offset: 0 0;
- image.normal: "08_textinput_sym_arrow_right.png";
+ description { state: "pressed" 0.0;
+ inherit: "default" 0.0;
+ image.normal: "B09_predictive_icon_arrow_up_press.png";
}
}
- part { name: "page_text";
+ part { name: "button_text";
type: TEXT;
mouse_events: 0;
effect: SHADOW;
description { state: "default" 0.0;
color: 255 255 255 255;
text {
- text_class: "page_text_class";
- text: "1/1";
+ //text_class: "button_text_class";
+ //text: "Close";
font: FONT_NAME;
size: FONT_SIZE;
align: 0.5 0.5;
}
programs {
- program { name: "prev_click";
+ program { name: "button_click";
signal: "mouse,clicked,1";
- source: "left";
- action: SIGNAL_EMIT "prev,action,clicked" "";
- }
-
- program { name, "next_click";
- signal, "mouse,clicked,1";
- source, "right";
- action: SIGNAL_EMIT "next,action,clicked" "";
- }
-
- program { name, "left_press";
- signal, "mouse,down,1";
- source, "left";
- action, STATE_SET "left_pressed" 0.0;
- target, "bg";
- }
-
- program { name, "left_release";
- signal, "mouse,up,1";
- source, "left";
- action, STATE_SET "default" 0.0;
- target, "bg";
+ source: "bg";
+ action: SIGNAL_EMIT "button,action,clicked" "";
}
- program { name, "right_press";
+ program { name, "button_press";
signal, "mouse,down,1";
- source, "right";
- action, STATE_SET "right_pressed" 0.0;
+ source, "bg";
+ action, STATE_SET "pressed" 0.0;
target, "bg";
+ target, "image";
}
- program { name, "right_release";
+ program { name, "button_release";
signal, "mouse,up,1";
- source, "right";
+ source, "bg";
action, STATE_SET "default" 0.0;
target, "bg";
+ target, "image";
}
}
}
type: RECT;
mouse_events: 1;
description { state: "default" 0.0;
- color: 200 200 200 0;
+ color_class: "rect_color";
+ rel1.relative: 0.0 0.0;
+ rel2.relative: 1.0 1.0;
+ }
+ description { state: "pressed" 0.0;
rel1.relative: 0.0 0.0;
- rel1.offset: 0 8;
rel2.relative: 1.0 1.0;
- rel2.offset: 0 -12;
+ color: COLOR_PRESS_BUTTON;
}
description { state: "selected" 0.0;
inherit: "default" 0.0;
- color: 255 255 255 0;
}
}
//effect: SHADOW;
description { state: "default" 0.0;
color: COLOR_NORMAL_TEXT;
+ color_class: "text_color";
text {
text: "aux";
text_class: "aux_text_class";
}
description { state: "pressed" 0.0;
inherit: "default" 0.0;
- //color: 0 0 255 255;
+ color: COLOR_PRESS_TEXT;
}
description { state: "selected" 0.0;
inherit: "default" 0.0;
- color: 30 144 255 255;
+ color: COLOR_SELECT_TEXT;
}
}
}
if (!strcmp (st, "default"))
set_state (PART:"aux", "pressed", 0.0);
}
+ action, STATE_SET "pressed" 0.0;
+ target, "bg";
+ target, "aux";
}
program { name, "button_release";
if (!strcmp (st, "pressed"))
set_state (PART:"aux", "default", 0.0);
}
+ action, STATE_SET "default" 0.0;
+ target, "bg";
+ target, "aux";
}
program { name, "do_me";
-#define CANDIDATE_BG "00_popup_bubble_bg_black.png"\r
-#define POPUP_LINE "00_popup_line.png"\r
-#define BUTTON_NORMAL_BG "00_button_01_normal_black.png"\r
-#define BUTTON_PRESS_BG "00_button_01_normal_press_black.png"\r
+#define CANDIDATE_BG "B09_predictive_bg.png"\r
+#define POPUP_LINE "B09_predictive_horizon_line.png"\r
+#define BUTTON_NORMAL_BG "B09_key_btn_01.png"\r
+#define BUTTON_PRESS_BG "B09_key_btn_perss.png"\r
\r
-#define BUTTON_IMAGE_BORDER 4\r
+#define BUTTON_IMAGE_BORDER 8\r
+#define BG_IMAGE_BORDER 0\r
\r
-#define COLOR_NORMAL_TEXT 255 255 255 255\r
-#define COLOR_PRESS_TEXT 255 255 255 255\r
+#define COLOR_NORMAL_TEXT 249 249 249 255\r
+#define COLOR_PRESS_TEXT 0 0 0 255\r
\r
#include "isf_candidate.edc"\r
+++ /dev/null
-#define CANDIDATE_BG "00_popup_bubble_bg.png"\r
-#define POPUP_LINE "00_popup_line.png"\r
-#define BUTTON_NORMAL_BG "00_button_01_normal.png"\r
-#define BUTTON_PRESS_BG "00_button_01_normal_press.png"\r
-\r
-#define BUTTON_IMAGE_BORDER 4\r
-\r
-#define COLOR_NORMAL_TEXT 40 40 40 255\r
-#define COLOR_PRESS_TEXT 226 226 226 255\r
-\r
-#include "isf_candidate.edc"
\ No newline at end of file
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
#include <Elementary.h>
#include <appcore-efl.h>
-
+#include <ui-gadget.h>
struct appdata {
int root_w;
Evas_Object *win_main;
Evas_Object *layout_main; // layout widget based on EDJ
Evas_Object *naviframe;
- Evas_Object *bg;
- struct ui_gadget *ug;
+ ui_gadget_h ug;
int is_frameview;
// add more variables here
Evas_Object *li;
Evas_Object *ev_li;
- bundle *data;
+ service_h data;
};
//utility func
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
#include <stdio.h>
#include <stdlib.h>
#include <Elementary.h>
-#include <ui-gadget.h>
#include <Ecore_X.h>
#include "isf_demo_efl.h"
#include "isf_imcontrol_efl.h"
elm_list_item_selected_set (it, EINA_FALSE);
}
-static void layout_cb (struct ui_gadget *ug, enum ug_mode mode, void *priv)
+static void layout_cb (ui_gadget_h ug, enum ug_mode mode, void *priv)
{
struct appdata *ad = NULL;
Evas_Object *base = NULL;
}
}
-static void result_cb (struct ui_gadget *ug, bundle *result, void *priv)
+static void result_cb (ui_gadget_h ug, service_h s, void *priv)
{
- if (!result) return;
-
- const char *name = bundle_get_val(result, "name");
+ char *name = NULL;
+ service_get_extra_data (s, "name",&name);
printf("get key [ %s ]\n",name);
- if (strcmp(name, "keyboard-setting-wizard-efl") == 0) {
- const char *desp = bundle_get_val(result,"description");
- printf("====================\nresult:%s\n====================\n",desp);
+ if (strcmp (name, "keyboard-setting-wizard-efl") == 0) {
+ char *desp = NULL;
+ service_get_extra_data (s, "description",&desp);
+ printf("====================\nresult:%s\n====================\n", desp);
+ if (desp != NULL)
+ free(desp);
}
+ if (name != NULL)
+ free(name);
}
-static void destroy_cb (struct ui_gadget *ug, void *priv)
+static void destroy_cb (ui_gadget_h ug, void *priv)
{
if (ug == NULL)
return;
ad->ug = ug_create (NULL, "isfsetting-efl",
UG_MODE_FULLVIEW,
ad->data, &cbs);
- bundle_free (ad->data);
+ service_destroy (ad->data);
ad->data = NULL;
}
cbs.result_cb = result_cb;
cbs.destroy_cb = destroy_cb;
cbs.priv = ad;
- ad->data = bundle_create();
- bundle_add(ad->data, "navi_btn_left", _("Previous"));
- //bundle_add(ad->data, "navi_btn_left", NULL);
- bundle_add(ad->data, "navi_btn_right", _("Next"));
+ service_create(&ad->data);
+ service_add_extra_data(ad->data, "navi_btn_left", _("Previous"));
+ //service_add_extra_data(ad->data, "navi_btn_left", NULL);
+ service_add_extra_data(ad->data, "navi_btn_right", _("Next"));
ad->ug = ug_create (NULL, "keyboard-setting-wizard-efl",
UG_MODE_FULLVIEW,
ad->data, &cbs);
- bundle_free (ad->data);
+ service_destroy (ad->data);
ad->data = NULL;
}
evas_object_smart_callback_add (ad->li, "selected", _list_click, ad);
// Test ISF imcontrol API
- elm_list_item_append (li, "ISF imcontrol API", NULL, NULL, imcontrolapi_bt, ad);
+ elm_list_item_append (li, "ISF IM Control", NULL, NULL, imcontrolapi_bt, ad);
// test ISF layout
elm_list_item_append (li, "ISF Layout", NULL, NULL, ise_layout_bt, ad);
elm_list_item_append (li, "ISF Autocapital", NULL, NULL, ise_autocapital_bt, ad);
// Test prediction allow
- elm_list_item_append (li, "ISF Prediction allow", NULL, NULL, ise_prediction_bt, ad);
+ elm_list_item_append (li, "ISF Prediction Allow", NULL, NULL, ise_prediction_bt, ad);
// Test return key type
- elm_list_item_append (li, "ISF Return Key type", NULL, NULL, ise_return_key_type_bt, ad);
+ elm_list_item_append (li, "ISF Return Key Type", NULL, NULL, ise_return_key_type_bt, ad);
// Test return key disable
elm_list_item_append (li, "ISF Return Key Disable", NULL, NULL, ise_return_key_disable_bt, ad);
// Test imdata setting
- elm_list_item_append (li, "ISF IMDATA test", NULL, NULL, ise_imdata_set_bt, ad);
+ elm_list_item_append (li, "ISF IM Data", NULL, NULL, ise_imdata_set_bt, ad);
- elm_list_item_append (li, "ISF Event Demo", NULL, NULL, isf_event_demo_bt, ad);
+ elm_list_item_append (li, "ISF Event", NULL, NULL, isf_event_demo_bt, ad);
/*
ISF language selection
ISE selection
*/
elm_list_item_append (li, "ISF Setting", NULL, NULL, isfsetting_bt, ad);
- elm_list_item_append (li, "keyboard Setting wizard", NULL, NULL, keyboard_setting_wizard_bt, ad);
+ elm_list_item_append (li, "Keyboard Setting Wizard", NULL, NULL, keyboard_setting_wizard_bt, ad);
// ISF preedit string and commit string on Label and Entry
elm_list_go (li);
- elm_naviframe_item_push (ad->naviframe, _("isf demo"), l_button, NULL, li, NULL);
+ elm_naviframe_item_push (ad->naviframe, _("ISF Demo"), l_button, NULL, li, NULL);
return 0;
}
Evas_Object *eo = NULL;
int w, h;
- eo = elm_win_add (NULL, name, ELM_WIN_BASIC);
+ eo = elm_win_util_standard_add (name, name);
if (eo != NULL) {
- elm_win_title_set (eo, name);
- elm_win_borderless_set (eo, EINA_TRUE);
evas_object_smart_callback_add (eo, "delete,request",
win_del, NULL);
ecore_x_window_size_get (ecore_x_window_root_first_get (), &w, &h);
return eo;
}
-static Evas_Object* create_layout_main (Evas_Object* parent)
+static Evas_Object* create_layout_main (Evas_Object *parent)
{
Evas_Object *layout = elm_layout_add (parent);
elm_layout_theme_set (layout, "layout", "application", "default");
return layout;
}
-static Evas_Object* _create_naviframe_layout (Evas_Object* parent)
+static Evas_Object* _create_naviframe_layout (Evas_Object *parent)
{
Evas_Object *naviframe = elm_naviframe_add (parent);
elm_object_part_content_set (parent, "elm.swallow.content", naviframe);
return naviframe;
}
-static Evas_Object* create_bg(Evas_Object *win)
-{
- Evas_Object *bg = elm_bg_add(win);
- evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- elm_win_resize_object_add(win, bg);
- evas_object_show(bg);
-
- return bg;
-}
-
-static Eina_Bool _keydown_event(void *data, int type, void *event)
+static Eina_Bool _keydown_event (void *data, int type, void *event)
{
Ecore_Event_Key *ev = (Ecore_Event_Key *)event;
struct appdata *ad = (struct appdata *)data;
Elm_Object_Item *top_it, *bottom_it;
if (ad == NULL || ev == NULL) return ECORE_CALLBACK_RENEW;
- if (strcmp(ev->keyname, "XF86Stop") == 0) {
- if (ug_send_key_event(UG_KEY_EVENT_END) == -1) {
- top_it = elm_naviframe_top_item_get(ad->naviframe);
- bottom_it = elm_naviframe_top_item_get(ad->naviframe);
- if (top_it && bottom_it && (elm_object_item_content_get(top_it) == elm_object_item_content_get(bottom_it))) {
- elm_exit();
+ printf ("[ecore key down] keyname : '%s', key : '%s', string : '%s', compose : '%s'\n", ev->keyname, ev->key, ev->string, ev->compose);
+
+ if (strcmp (ev->keyname, "XF86Stop") == 0) {
+ if (ug_send_key_event (UG_KEY_EVENT_END) == -1) {
+ top_it = elm_naviframe_top_item_get (ad->naviframe);
+ bottom_it = elm_naviframe_top_item_get (ad->naviframe);
+ if (top_it && bottom_it && (elm_object_item_content_get (top_it) == elm_object_item_content_get (bottom_it))) {
+ elm_exit ();
}
else {
- elm_naviframe_item_pop(ad->naviframe);
+ elm_naviframe_item_pop (ad->naviframe);
}
}
}
return ECORE_CALLBACK_RENEW;
}
+static Eina_Bool _keyup_event (void *data, int type, void *event)
+{
+ Ecore_Event_Key *ev = (Ecore_Event_Key *)event;
+
+ printf ("[ecore key up] keyname : '%s', key : '%s', string : '%s', compose : '%s'\n", ev->keyname, ev->key, ev->string, ev->compose);
+
+ return ECORE_CALLBACK_RENEW;
+}
+
static int app_create (void *data)
{
struct appdata *ad = (struct appdata *)data;
evas_object_geometry_get (ad->win_main, NULL, NULL, &ad->root_w, &ad->root_h);
if (ad->root_w >= 0) {
- elm_config_scale_set(ad->root_w / BASE_THEME_WIDTH );
+ elm_config_scale_set (ad->root_w / BASE_THEME_WIDTH);
}
- ad->bg = create_bg(ad->win_main);
-
ad->layout_main = create_layout_main (ad->win_main);
// Indicator
appcore_set_event_callback (APPCORE_EVENT_LANG_CHANGE,
lang_changed, ad);
- ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, _keydown_event, ad);
+ ecore_event_handler_add (ECORE_EVENT_KEY_DOWN, _keydown_event, ad);
+ ecore_event_handler_add (ECORE_EVENT_KEY_UP, _keyup_event, ad);
appcore_set_rotation_cb (_rotate_cb, ad);
return 0;
}
-static int app_reset (bundle *b, void *data)
-{
- struct appdata *ad = (struct appdata *)data;
-
- if ( (ad != NULL) && (ad->win_main != NULL))
- elm_win_activate (ad->win_main);
-
- return 0;
-}
-
int main (int argc, char *argv[])
{
struct appdata ad;
ops.terminate = app_exit;
ops.pause = app_pause;
ops.resume = app_resume;
- ops.reset = app_reset;
+ ops.reset = NULL;
memset (&ad, 0x0, sizeof (struct appdata));
ops.data = &ad;
{
Evas_Object *ly = (Evas_Object *)data;
- elm_object_signal_emit(ly, "elm,state,guidetext,hide", "elm");
+ elm_object_signal_emit (ly, "elm,state,guidetext,hide", "elm");
}
static void _unfocused_cb(void *data, Evas_Object *obj, void *event_info)
{
Evas_Object *ly = (Evas_Object *)data;
- if (elm_entry_is_empty(obj))
- elm_object_signal_emit(ly, "elm,state,guidetext,show", "elm");
+ if (elm_entry_is_empty (obj))
+ elm_object_signal_emit (ly, "elm,state,guidetext,show", "elm");
}
//utility func
Evas_Object *ef = NULL;
Evas_Object *en = NULL;
- ef = elm_layout_add(parent);
- elm_layout_theme_set(ef, "layout", "editfield", "title");
- en = elm_entry_add(parent);
- elm_object_part_content_set(ef, "elm.swallow.content", en);
+ ef = elm_layout_add (parent);
+ elm_layout_theme_set (ef, "layout", "editfield", "title");
+ en = elm_entry_add (parent);
+ elm_object_part_content_set (ef, "elm.swallow.content", en);
- elm_object_part_text_set(ef, "elm.text", label);
- elm_object_part_text_set(ef, "elm.guidetext", guide_text);
+ elm_object_part_text_set (ef, "elm.text", label);
+ elm_object_part_text_set (ef, "elm.guidetext", guide_text);
evas_object_size_hint_weight_set (ef, EVAS_HINT_EXPAND, 0);
evas_object_size_hint_align_set (ef, EVAS_HINT_FILL, 0);
- evas_object_smart_callback_add(en, "focused", _focused_cb, ef);
- evas_object_smart_callback_add(en, "unfocused", _unfocused_cb, ef);
+ evas_object_smart_callback_add (en, "focused", _focused_cb, ef);
+ evas_object_smart_callback_add (en, "unfocused", _unfocused_cb, ef);
evas_object_show (ef);
return ef;
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
evas_object_resize (_commit_event_label, ad->root_w, 50);
evas_object_show (_commit_event_label);
- elm_naviframe_item_push (ad->naviframe, _("entry event demo"), NULL, NULL, layout, NULL);
+ elm_naviframe_item_push (ad->naviframe, _("Entry Event"), NULL, NULL, layout, NULL);
}
/*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
evas_object_show (_ise_show_button);
evas_object_smart_callback_add (_ise_show_button, "clicked", _button_bt, NULL);
- Elm_Object_Item *it = elm_naviframe_item_push (ad->naviframe, _("label event demo"), NULL, NULL, layout, NULL);
+ Elm_Object_Item *it = elm_naviframe_item_push (ad->naviframe, _("Label Event"), NULL, NULL, layout, NULL);
Evas_Object *back_btn = elm_object_item_part_content_get (it, "prev_btn");
- evas_object_smart_callback_add (back_btn, "clicked", nf_back_event_cb, ad );
+ evas_object_smart_callback_add (back_btn, "clicked", nf_back_event_cb, ad);
}
static void _list_click (void *data, Evas_Object *obj, void *event_info)
ad->ev_li = elm_list_add (ad->naviframe);
elm_list_mode_set (ad->ev_li, ELM_LIST_COMPRESS);
evas_object_smart_callback_add (ad->ev_li, "selected", _list_click, ad);
- elm_list_item_append (ad->ev_li, "Label event", NULL, NULL, isf_label_event_demo_bt, ad);
- elm_list_item_append (ad->ev_li, "Entry event", NULL, NULL, isf_entry_event_demo_bt, ad);
+ elm_list_item_append (ad->ev_li, "Label Event", NULL, NULL, isf_label_event_demo_bt, ad);
+ elm_list_item_append (ad->ev_li, "Entry Event", NULL, NULL, isf_entry_event_demo_bt, ad);
elm_list_go (ad->ev_li);
- elm_naviframe_item_push (ad->naviframe, _("ise event demo"), NULL, NULL, ad->ev_li, NULL);
+ elm_naviframe_item_push (ad->naviframe, _("Event"), NULL, NULL, ad->ev_li, NULL);
}
/*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
gl = _create_imcontrolapi_list (ad->naviframe);
- Elm_Object_Item *navi_it = elm_naviframe_item_push (ad->naviframe, _("isfimcontrol api"), NULL, NULL, gl, NULL);
+ Elm_Object_Item *navi_it = elm_naviframe_item_push (ad->naviframe, _("IM Control"), NULL, NULL, gl, NULL);
Evas_Object *back_btn = elm_object_item_part_content_get (navi_it, "prev_btn");
evas_object_smart_callback_add (back_btn, "clicked", _nf_back_event, ad);
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
void ise_imdata_set_bt (void *data, Evas_Object *obj, void *event_info)
{
Evas_Object *lay_inner = create_inner_layout (data);
- add_layout_to_conformant (data, lay_inner, _("IMDATA test"));
+ add_layout_to_conformant (data, lay_inner, _("IM Data"));
}
/*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
if (value == ECORE_IMF_INPUT_PANEL_STATE_SHOW) {
ecore_imf_context_input_panel_geometry_get (ctx, &x, &y, &w, &h);
- printf ("Input panel is shown\n");
+ printf ("[%s] Input panel is shown. ctx : %p\n", __func__, ctx);
printf ("x : %d, y : %d, w : %d, h : %d\n", x, y, w, h);
} else if (value == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
- printf ("Input panel is hidden\n");
+ printf ("[%s] Input panel is hidden. ctx : %p\n", __func__, ctx);
} else if (value == ECORE_IMF_INPUT_PANEL_STATE_WILL_SHOW) {
- printf ("Input panel will be shown\n");
+ printf ("[%s] Input panel will be shown. ctx : %p\n", __func__, ctx);
}
}
int x, y, w, h;
ecore_imf_context_candidate_panel_geometry_get (ctx, &x, &y, &w, &h);
- printf ("[%s] x : %d, y : %d, w : %d, h : %d\n", __func__, x, y, w, h);
+ printf ("[%s] ctx : %p, x : %d, y : %d, w : %d, h : %d\n", __func__, ctx, x, y, w, h);
}
static void
_key_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
{
Evas_Event_Key_Down *ev = (Evas_Event_Key_Down *)event_info;
- printf("[key down] keyname : '%s', key : '%s', string : '%s', compose : '%s'\n", ev->keyname, ev->key, ev->string, ev->compose);
+ printf ("[evas key down] keyname : '%s', key : '%s', string : '%s', compose : '%s'\n", ev->keyname, ev->key, ev->string, ev->compose);
}
static void
_key_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
{
Evas_Event_Key_Up *ev = (Evas_Event_Key_Up *)event_info;
- printf("[key up] keyname : '%s', key : '%s', string : '%s', compose : '%s'\n", ev->keyname, ev->key, ev->string, ev->compose);
+ printf ("[evas key up] keyname : '%s', key : '%s', string : '%s', compose : '%s'\n", ev->keyname, ev->key, ev->string, ev->compose);
}
static Evas_Object *_create_ef_layout(Evas_Object *parent, const char *label, const char *guide_text,Elm_Input_Panel_Layout layout)
{
- Evas_Object *ef = _create_ef(parent,label,guide_text);
+ Evas_Object *ef = _create_ef (parent, label, guide_text);
Ecore_IMF_Context *ic = NULL;
- Evas_Object *en = elm_object_part_content_get(ef,"elm.swallow.content");
+ Evas_Object *en = elm_object_part_content_get (ef, "elm.swallow.content");
elm_entry_input_panel_layout_set (en, layout);
- evas_object_event_callback_add(en, EVAS_CALLBACK_KEY_DOWN, _key_down_cb, NULL);
- evas_object_event_callback_add(en, EVAS_CALLBACK_KEY_UP, _key_up_cb, NULL);
+ evas_object_event_callback_add (en, EVAS_CALLBACK_KEY_DOWN, _key_down_cb, NULL);
+ evas_object_event_callback_add (en, EVAS_CALLBACK_KEY_UP, _key_up_cb, NULL);
ic = (Ecore_IMF_Context *)elm_entry_imf_context_get (en);
ef = _create_ef_layout (parent, _("NUMBERONLY LAYOUT"), _("click to enter NUMBERONLY"), ELM_INPUT_PANEL_LAYOUT_NUMBERONLY);
elm_box_pack_end (bx, ef);
+ /* Password Layout */
+ ef = _create_ef_layout (parent, _("PASSWORD LAYOUT"), _("click to enter PASSWORD"), ELM_INPUT_PANEL_LAYOUT_PASSWORD);
+ elm_box_pack_end (bx, ef);
+
/* Click to rotate button */
- Evas_Object *rotate_btn = elm_button_add(parent);
- elm_object_text_set(rotate_btn, "rotate");
- evas_object_smart_callback_add(rotate_btn, "clicked", _rotate_cb, (void *)ad);
+ Evas_Object *rotate_btn = elm_button_add (parent);
+ elm_object_text_set (rotate_btn, "rotate");
+ evas_object_smart_callback_add (rotate_btn, "clicked", _rotate_cb, (void *)ad);
evas_object_size_hint_weight_set (rotate_btn, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set (rotate_btn, EVAS_HINT_FILL, 0);
evas_object_show (rotate_btn);
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Jihoon Kim <jihoon48.kim@samsung.com>, Haifeng Deng <haifeng.deng@samsung.com>
*
#include <utilX.h>
#include <vconf.h>
#include <vconf-keys.h>
-//#include <X11/extensions/XTest.h>
#include "scim_private.h"
#include "scim.h"
# define CODESET "INVALID"
#endif
-const double DOUBLE_SPACE_INTERVAL=1.0;
-const int PREDICTION_ALLOW_SET = 0xa0;
+const double DOUBLE_SPACE_INTERVAL = 1.0;
using namespace scim;
const Transaction &trans);
static void panel_slot_move_preedit_caret (int context,
int caret_pos);
+static void panel_slot_update_preedit_caret (int context,
+ int caret);
static void panel_slot_select_aux (int context,
int aux_index);
static void panel_slot_select_candidate (int context,
static bool _on_the_spot = true;
static bool _shared_input_method = false;
+static double space_key_time = 0.0;
+static Eina_Bool autoperiod_allow = EINA_FALSE;
static Eina_Bool autocap_allow = EINA_FALSE;
static Display *__current_display = 0;
}
~FinalizeHandler () {
SCIM_DEBUG_FRONTEND(1) << "FinalizeHandler::~FinalizeHandler ()\n";
- isf_imf_context_shutdown ();
+ finalize ();
}
};
isf_imf_context_input_panel_instant_hide (_focused_ic->ctx);
return ECORE_CALLBACK_CANCEL;
#endif
- } else if (!strcmp (ev->keyname, KEY_SELECT)) {
- LOGD("HOME key is pressed\n");
- isf_imf_context_input_panel_instant_hide (_focused_ic->ctx);
}
return ECORE_CALLBACK_RENEW;
SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
if (si) {
- Transaction trans;
- trans.put_command (PREDICTION_ALLOW_SET);
- trans.put_data ((uint32)prediction);
- si->process_helper_event ("", trans);
+ si->set_prediction_allow (prediction);
}
}
+static void
+autoperiod_insert(Ecore_IMF_Context *ctx)
+{
+ char *plain_str = NULL;
+ char *markup_str = NULL;
+ int cursor_pos = 0;
+ Eina_Unicode *ustr = NULL;
+ Ecore_IMF_Event_Delete_Surrounding ev;
+
+ if (!ctx) return;
+
+ Ecore_IMF_Input_Panel_Layout layout = ecore_imf_context_input_panel_layout_get(ctx);
+ if (layout != ECORE_IMF_INPUT_PANEL_LAYOUT_NORMAL)
+ return;
+
+ if (autoperiod_allow == EINA_FALSE)
+ return;
+
+ if ((ecore_time_get() - space_key_time) > DOUBLE_SPACE_INTERVAL)
+ goto done;
+
+ ecore_imf_context_surrounding_get(ctx, &markup_str, &cursor_pos);
+ if (!markup_str) goto done;
+
+ // Convert into plain string
+ plain_str = evas_textblock_text_markup_to_utf8(NULL, markup_str);
+ if (!plain_str) goto done;
+
+ // Convert string from UTF-8 to unicode
+ ustr = eina_unicode_utf8_to_unicode(plain_str, NULL);
+ if (!ustr) goto done;
+
+ if (cursor_pos < 2) goto done;
+
+ if (((ustr[cursor_pos-2] != ':') && (ustr[cursor_pos-2] != ';') &&
+ (ustr[cursor_pos-2] != '.') && (ustr[cursor_pos-2] != ',') &&
+ (ustr[cursor_pos-2] != '?') && (ustr[cursor_pos-2] != '!') &&
+ (ustr[cursor_pos-2] != ' ')) && ((ustr[cursor_pos-1] == ' ') || (ustr[cursor_pos-1] == '\240'))) {
+ ev.ctx = ctx;
+ ev.n_chars = 1;
+ ev.offset = -1;
+ ecore_imf_context_delete_surrounding_event_add(ctx, -1, 1);
+ ecore_imf_context_event_callback_call (ctx, ECORE_IMF_CALLBACK_DELETE_SURROUNDING, &ev);
+
+ ecore_imf_context_commit_event_add(ctx, ".");
+ ecore_imf_context_event_callback_call (ctx, ECORE_IMF_CALLBACK_COMMIT, (void *)".");
+ }
+
+done:
+ if (markup_str) free(markup_str);
+ if (plain_str) free(plain_str);
+ if (ustr) free(ustr);
+ space_key_time = ecore_time_get();
+}
+
static Eina_Bool
analyze_surrounding_text(Ecore_IMF_Context *ctx)
{
plain_str = evas_textblock_text_markup_to_utf8(NULL, markup_str);
if (!plain_str) goto done;
- // Convert string from utf8 to unicode
+ // Convert string from UTF-8 to unicode
ustr = eina_unicode_utf8_to_unicode(plain_str, NULL);
if (!ustr) goto done;
}
}
- // Check paragraph separator <PS> and carrage return <br>
+ // Check paragraph separator <PS> and carriage return <br>
if ((ustr[cursor_pos-1] == 0x2029) || (ustr[cursor_pos-1] == '\n')) {
ret = EINA_TRUE;
goto done;
if (!ctx) return;
- LOGD("Canvas focus-out. ctx : %p\n", ctx);
+ LOGD("[Canvas focus-out] ctx : %p\n", ctx);
if (input_panel_ctx == ctx && _scim_initialized) {
isf_imf_context_input_panel_instant_hide(ctx);
}
}
+static void autoperiod_allow_changed_cb (keynode_t *key, void* data)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+
+ autoperiod_allow = vconf_keynode_get_bool(key);
+}
+
static void autocapital_allow_changed_cb (keynode_t *key, void* data)
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
_scim_initialized = true;
isf_imf_input_panel_init ();
+ /* get autoperiod allow vconf value */
+ if (vconf_get_bool (VCONFKEY_AUTOPERIOD_ALLOW_BOOL, &val) == 0) {
+ if (val == EINA_TRUE)
+ autoperiod_allow = EINA_TRUE;
+ }
+
+ vconf_notify_key_changed (VCONFKEY_AUTOPERIOD_ALLOW_BOOL, autoperiod_allow_changed_cb, NULL);
+
/* get autocapital allow vconf value */
- if (vconf_get_bool (VCONFKEY_SETAPPL_AUTOCAPITAL_ALLOW_BOOL, &val) == 0) {
+ if (vconf_get_bool (VCONFKEY_AUTOCAPITAL_ALLOW_BOOL, &val) == 0) {
if (val == EINA_TRUE)
autocap_allow = EINA_TRUE;
}
- vconf_notify_key_changed (VCONFKEY_SETAPPL_AUTOCAPITAL_ALLOW_BOOL, autocapital_allow_changed_cb, NULL);
+ vconf_notify_key_changed (VCONFKEY_AUTOCAPITAL_ALLOW_BOOL, autocapital_allow_changed_cb, NULL);
}
return context_scim;
if (_scim_initialized) {
_scim_initialized = false;
- vconf_ignore_key_changed (VCONFKEY_SETAPPL_AUTOCAPITAL_ALLOW_BOOL, autocapital_allow_changed_cb);
+ LOGD("[immodule shutdown]\n");
+
+ vconf_ignore_key_changed (VCONFKEY_AUTOPERIOD_ALLOW_BOOL, autoperiod_allow_changed_cb);
+ vconf_ignore_key_changed (VCONFKEY_AUTOCAPITAL_ALLOW_BOOL, autocapital_allow_changed_cb);
- finalize ();
isf_imf_input_panel_shutdown ();
+ finalize ();
}
}
_panel_client.prepare (context_scim->id);
_panel_client.register_input_context (context_scim->id, si->get_factory_uuid ());
- _panel_client.start_default_ise (context_scim->id);
set_ic_capabilities (context_scim);
_panel_client.send ();
evas_event_callback_del_full(context_scim->impl->client_canvas, EVAS_CALLBACK_CANVAS_FOCUS_OUT, evas_focus_out_cb, ctx);
if (input_panel_ctx == ctx && _scim_initialized) {
- LOGD("Context is deleted. ctx : %p\n", ctx);
+ LOGD("[Context is deleted] ctx : %p\n", ctx);
if (input_panel_state == ECORE_IMF_INPUT_PANEL_STATE_WILL_SHOW ||
input_panel_state == ECORE_IMF_INPUT_PANEL_STATE_SHOW) {
isf_imf_context_input_panel_hide(ctx);
if (context_scim && context_scim->impl && context_scim->impl->client_canvas != (Evas*) canvas) {
context_scim->impl->client_canvas = (Evas*)canvas;
+ LOGD("[client_canvas_set] ctx : %p, canvas : %p\n", ctx, canvas);
+
evas_event_callback_add(context_scim->impl->client_canvas, EVAS_CALLBACK_CANVAS_FOCUS_OUT, evas_focus_out_cb, ctx);
}
}
if (context_scim && context_scim->impl && context_scim->impl->client_window != (Ecore_X_Window)((Ecore_Window)window)) {
context_scim->impl->client_window = (Ecore_X_Window)((Ecore_Window)window);
+ LOGD("[client_window_set] ctx : %p, client X win ID : %#x\n", ctx, context_scim->impl->client_window);
+
if ((context_scim->impl->client_window != 0) &&
(context_scim->impl->client_window != _client_window)) {
_client_window = context_scim->impl->client_window;
// _panel_client.hide_aux_string (context_scim->id);
// _panel_client.hide_lookup_table (context_scim->id);
context_scim->impl->si->focus_in ();
+ context_scim->impl->si->set_layout (ecore_imf_context_input_panel_layout_get (ctx));
set_prediction_allow (context_scim->impl->si, context_scim->impl->prediction_allow);
} else {
_panel_client.turn_off (context_scim->id);
_panel_client.send ();
}
- LOGD("focus-in. ctx : %p\n", ctx);
+ LOGD("[focus-in] ctx : %p\n", ctx);
- if (ecore_imf_context_input_panel_enabled_get(ctx))
- isf_imf_context_input_panel_show(ctx);
+ if (ecore_imf_context_input_panel_enabled_get (ctx))
+ isf_imf_context_input_panel_show (ctx);
}
/**
WideString wstr = context_scim->impl->preedit_string;
- LOGD("focus-out. ctx : %p\n", ctx);
+ LOGD("[focus-out] ctx : %p\n", ctx);
- if (ecore_imf_context_input_panel_enabled_get(ctx))
- isf_imf_context_input_panel_hide(ctx);
+ if (ecore_imf_context_input_panel_enabled_get (ctx))
+ isf_imf_context_input_panel_hide (ctx);
if (context_scim->impl->need_commit_preedit) {
panel_slot_hide_preedit_string (context_scim->id);
EcoreIMFContextISF *context_scim = (EcoreIMFContextISF *)ecore_imf_context_data_get (ctx);
if (context_scim && context_scim->impl && context_scim == _focused_ic) {
- // Don't update spot location while updating preedit string.
- if (context_scim->impl->preedit_updating)
- return;
-
if (context_scim->impl->cursor_pos != cursor_pos) {
- context_scim->impl->cursor_pos = cursor_pos;
-
caps_mode_check(ctx, EINA_FALSE, EINA_TRUE);
+ if (context_scim->impl->preedit_updating)
+ return;
+
+ LOGD("[cursor_position_set] ctx : %p, cursor pos : %d\n", ctx, cursor_pos);
+
+ context_scim->impl->cursor_pos = cursor_pos;
+
_panel_client.prepare (context_scim->id);
panel_req_update_cursor_position (context_scim, cursor_pos);
_panel_client.send ();
if (mbs.length ()) {
int start_index, end_index;
int wlen = context_scim->impl->preedit_string.length ();
-
Ecore_IMF_Preedit_Attr *attr = NULL;
AttributeList::const_iterator i;
bool *attrs_flag = new bool [mbs.length ()];
memset (attrs_flag, 0, mbs.length () *sizeof (bool));
-
for (i = context_scim->impl->preedit_attrlist.begin ();
i != context_scim->impl->preedit_attrlist.end (); ++i) {
start_index = i->get_start ();
end_index = i->get_end ();
-
if (end_index <= wlen && start_index < end_index && i->get_type () != SCIM_ATTR_DECORATE_NONE) {
start_index = g_utf8_offset_to_pointer (mbs.c_str (), i->get_start ()) - mbs.c_str ();
end_index = g_utf8_offset_to_pointer (mbs.c_str (), i->get_end ()) - mbs.c_str ();
-
if (i->get_type () == SCIM_ATTR_DECORATE) {
attr = (Ecore_IMF_Preedit_Attr *)calloc(1, sizeof(Ecore_IMF_Preedit_Attr));
if (attr == NULL)
} else {
free (attr);
}
-
switch(i->get_value())
{
case SCIM_ATTR_DECORATE_UNDERLINE:
}
}
}
-
// Add underline for all characters which don't have attribute.
for (unsigned int pos = 0; pos < mbs.length (); ++pos) {
if (!attrs_flag [pos]) {
int begin_pos = pos;
-
while (pos < mbs.length () && !attrs_flag [pos])
++pos;
-
// use REVERSE style as default
attr = (Ecore_IMF_Preedit_Attr *)calloc(1, sizeof(Ecore_IMF_Preedit_Attr));
if (attr == NULL)
*attrs = eina_list_append(*attrs, (void *)attr);
}
}
-
delete [] attrs_flag;
}
}
if (ev->locks & ECORE_IMF_KEYBOARD_LOCK_CAPS) key.mask |=SCIM_KEY_CapsLockMask;
if (ev->locks & ECORE_IMF_KEYBOARD_LOCK_NUM) key.mask |=SCIM_KEY_NumLockMask;
} else if (type == ECORE_IMF_EVENT_MOUSE_UP) {
- if (ecore_imf_context_input_panel_enabled_get(ctx)) {
- LOGD("Mouse-up event. ctx : %p\n", ctx);
+ if (ecore_imf_context_input_panel_enabled_get (ctx)) {
+ LOGD("[Mouse-up event] ctx : %p\n", ctx);
if (ic == _focused_ic)
- isf_imf_context_input_panel_show(ctx);
+ isf_imf_context_input_panel_show (ctx);
}
return EINA_FALSE;
} else {
ret = EINA_TRUE;
if (!filter_hotkeys (ic, key)) {
if (timestamp == 0) {
+ ret = EINA_FALSE;
// in case of generated event
if (type == ECORE_IMF_EVENT_KEY_DOWN) {
char code = key.get_ascii_code ();
- if (isgraph(code)) {
+ if (isgraph (code)) {
char string[2] = {0};
- snprintf(string, sizeof(string), "%c", code);
+ snprintf (string, sizeof (string), "%c", code);
- if (strlen(string) != 0) {
+ if (strlen (string) != 0) {
ecore_imf_context_commit_event_add (ic->ctx, string);
ecore_imf_context_event_callback_call (ic->ctx, ECORE_IMF_CALLBACK_COMMIT, (void *)string);
- _panel_client.send ();
- caps_mode_check(ctx, EINA_FALSE, EINA_TRUE);
- return EINA_TRUE;
+ caps_mode_check (ctx, EINA_FALSE, EINA_TRUE);
+ ret = EINA_TRUE;
}
}
}
+ _panel_client.send ();
+ return ret;
}
if (!_focused_ic || !_focused_ic->impl->is_on ||
}
static void
-panel_slot_reset_option (int context)
-{
- EcoreIMFContextISF *ic = find_ic (context);
- SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << " context=" << context << " ic=" << ic << "\n";
- if (ic && ic->impl) {
- _panel_client.prepare (ic->id);
- ic->impl->si->reset_option ();
- _panel_client.send ();
- }
-}
-
-static void
panel_slot_trigger_property (int context, const String &property)
{
EcoreIMFContextISF *ic = find_ic (context);
}
static void
+panel_slot_update_preedit_caret (int context, int caret)
+{
+ EcoreIMFContextISF *ic = find_ic (context);
+ SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << " context=" << context << " caret=" << caret << " ic=" << ic << "\n";
+
+ if (ic && ic->impl && _focused_ic == ic && ic->impl->preedit_caret != caret) {
+ ic->impl->preedit_caret = caret;
+ if (ic->impl->use_preedit) {
+ if (!ic->impl->preedit_started) {
+ ecore_imf_context_preedit_start_event_add (ic->ctx);
+ ecore_imf_context_event_callback_call (ic->ctx, ECORE_IMF_CALLBACK_PREEDIT_START, NULL);
+ ic->impl->preedit_started = true;
+ }
+ ecore_imf_context_preedit_changed_event_add (ic->ctx);
+ ecore_imf_context_event_callback_call (ic->ctx, ECORE_IMF_CALLBACK_PREEDIT_CHANGED, NULL);
+ } else {
+ _panel_client.prepare (ic->id);
+ _panel_client.update_preedit_caret (ic->id, caret);
+ _panel_client.send ();
+ }
+ }
+}
+
+static void
panel_slot_select_aux (int context, int aux_index)
{
EcoreIMFContextISF *ic = find_ic (context);
}
static int
-_keyname_to_keycode(const char *keyname)
+_keyname_to_keycode (const char *keyname)
{
int keycode = 0;
int keysym;
- Display *display = (Display *)ecore_x_display_get();
+ Display *display = (Display *)ecore_x_display_get ();
- keysym = XStringToKeysym(keyname);
+ keysym = XStringToKeysym (keyname);
- if (!strncmp(keyname, "Keycode-", 8))
- keycode = atoi(keyname + 8);
- else {
- keycode = XKeysymToKeycode(display, keysym);
+ if (!strncmp (keyname, "Keycode-", 8)) {
+ keycode = atoi (keyname + 8);
+ } else {
+ keycode = XKeysymToKeycode (display, keysym);
}
return keycode;
char key_string[256] = {0};
char *keysym_str;
char compose_buffer[256] = {0};
- const char *str = scim_key.get_key_string().c_str();
+ const char *str = scim_key.get_key_string ().c_str ();
char *compose = NULL;
unsigned int timestamp = 0;
int shift = 0;
timestamp = get_time ();
if (scim_key.is_key_press ()) {
- strncpy(key_string, str, strlen(str));
+ strncpy (key_string, str, strlen (str));
} else {
if (strncmp (str, "KeyRelease+", 11) == 0) {
- strncpy(key_string, str + 11, strlen(str)-11);
+ strncpy (key_string, str + 11, strlen (str) - 11);
}
}
}
// get x keysym, keycode, keyname, and key
- keysym = XStringToKeysym(keysym_str);
+ keysym = XStringToKeysym (keysym_str);
if (keysym == NoSymbol)
return;
- keycode = _keyname_to_keycode(keysym_str);
- keyname = XKeysymToString(XKeycodeToKeysym(display, keycode, 0));
+ keycode = _keyname_to_keycode (keysym_str);
+ keyname = XKeysymToString (XKeycodeToKeysym (display, keycode, 0));
key = keysym_str;
// check modifier
- if (XKeycodeToKeysym(display, keycode, 0) != keysym) {
- if (XKeycodeToKeysym(display, keycode, 1) == keysym)
+ if (XKeycodeToKeysym (display, keycode, 0) != keysym) {
+ if (XKeycodeToKeysym (display, keycode, 1) == keysym)
shift = 1;
else
keycode = 0;
modifier |= ShiftMask;
// get keystring
- xkey = createKeyEvent(scim_key.is_key_press(), keycode, modifier, False);
- val = XLookupString (&xkey, compose_buffer, sizeof(compose_buffer), NULL, 0);
+ xkey = createKeyEvent (scim_key.is_key_press (), keycode, modifier, False);
+ val = XLookupString (&xkey, compose_buffer, sizeof (compose_buffer), NULL, 0);
if (val > 0) {
compose_buffer[val] = 0;
- compose = eina_str_convert(nl_langinfo(CODESET), "UTF-8",
- compose_buffer);
+ compose = eina_str_convert (nl_langinfo(CODESET), "UTF-8",
+ compose_buffer);
}
if (!keyname)
keyname = key;
// feed key event
- if (scim_key.is_key_press()) {
+ if (scim_key.is_key_press ()) {
evas_event_feed_key_down (evas, keyname, key, compose, compose, timestamp, NULL);
SCIM_DEBUG_FRONTEND(1) << " evas_event_feed_key_down ()...\n";
} else {
}
if (compose)
- free(compose);
+ free (compose);
}
-static void
+static Eina_Bool
feed_key_event (EcoreIMFContextISF *ic, const KeyEvent &key, bool fake)
{
SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
- if (!ic || !ic->impl) return;
-
- if (ic->impl->client_canvas) {
- send_evas_key_event(ic->impl->client_canvas, key, fake);
+ if (key.code <= 0x7F ||
+ (key.code >= SCIM_KEY_BackSpace && key.code <= SCIM_KEY_Delete) ||
+ (key.code >= SCIM_KEY_Home && key.code <= SCIM_KEY_Hyper_R)) {
+ // ascii code and function keys
+ send_x_key_event (key, fake);
+ return EINA_TRUE;
} else {
- send_x_key_event(key, fake);
+ return EINA_FALSE;
}
}
EcoreIMFContextISF *ic = find_ic (context);
SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << " context=" << context << " key=" << key.get_key_string () << " ic=" << ic << "\n";
- feed_key_event (ic, key, false);
+ if (feed_key_event (ic, key, false) == EINA_TRUE) return;
+
+ if (ic && ic->impl) {
+ _panel_client.prepare (ic->id);
+
+ if (!filter_hotkeys (ic, key)) {
+ if (!_focused_ic || !_focused_ic->impl->is_on ||
+ !_focused_ic->impl->si->process_key_event (key)) {
+ _fallback_instance->process_key_event (key);
+ }
+ }
+
+ _panel_client.send ();
+ }
}
static void
EcoreIMFContextISF *ic = find_ic (context);
SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << " context=" << context << " factory=" << uuid << " ic=" << ic << "\n";
if (ic && ic->impl) {
- ic->impl->si->reset ();
_panel_client.prepare (ic->id);
+ ic->impl->si->reset ();
open_specific_factory (ic, uuid);
_panel_client.send ();
}
if (ic->impl->use_preedit) {
if (!ic->impl->preedit_started) {
ecore_imf_context_preedit_start_event_add (_focused_ic->ctx);
+ ecore_imf_context_event_callback_call (_focused_ic->ctx, ECORE_IMF_CALLBACK_PREEDIT_START, NULL);
ic->impl->preedit_started = true;
ic->impl->need_commit_preedit = true;
}
while (context_scim != NULL) {
_panel_client.prepare (context_scim->id);
_panel_client.register_input_context (context_scim->id, context_scim->impl->si->get_factory_uuid ());
- _panel_client.start_default_ise (context_scim->id);
_panel_client.send ();
context_scim = context_scim->next;
}
// _panel_client.hide_aux_string (ic->id);
// _panel_client.hide_lookup_table (ic->id);
ic->impl->si->focus_in ();
+ ic->impl->si->set_layout (ecore_imf_context_input_panel_layout_get (ic->ctx));
set_prediction_allow (ic->impl->si, ic->impl->prediction_allow);
}
_panel_client.signal_connect_update_lookup_table_page_size (slot (panel_slot_update_lookup_table_page_size));
_panel_client.signal_connect_lookup_table_page_up (slot (panel_slot_lookup_table_page_up));
_panel_client.signal_connect_lookup_table_page_down (slot (panel_slot_lookup_table_page_down));
- _panel_client.signal_connect_reset_option (slot (panel_slot_reset_option));
_panel_client.signal_connect_trigger_property (slot (panel_slot_trigger_property));
_panel_client.signal_connect_process_helper_event (slot (panel_slot_process_helper_event));
_panel_client.signal_connect_move_preedit_caret (slot (panel_slot_move_preedit_caret));
+ _panel_client.signal_connect_update_preedit_caret (slot (panel_slot_update_preedit_caret));
_panel_client.signal_connect_select_aux (slot (panel_slot_select_aux));
_panel_client.signal_connect_select_candidate (slot (panel_slot_select_candidate));
_panel_client.signal_connect_process_key_event (slot (panel_slot_process_key_event));
if (fake)
event.time = 0;
else
- event.time = get_time();
+ event.time = get_time ();
event.x = 1;
event.y = 1;
else
event.type = KeyRelease;
event.send_event = False;
- event.serial = 0;
+ event.serial = 0;
return event;
}
::KeySym keysym = 0;
int shift = 0;
const char *key_string;
+ const char *keysym_str;
// Obtain the X11 display.
Display *display = (Display *)ecore_x_display_get ();
key_string = key.get_key_string().c_str();
}
- keysym = XStringToKeysym(key_string);
+ if (strncmp (key_string, "Shift+", 6) == 0) {
+ keysym_str = key_string + 6;
+ }
+ else {
+ keysym_str = key_string;
+ }
+
+ // get x keysym, keycode, keyname, and key
+ keysym = XStringToKeysym (keysym_str);
if (keysym == NoSymbol)
return;
- keycode = _keyname_to_keycode(key_string);
- if (XKeycodeToKeysym(display, keycode, 0) != keysym) {
- if (XKeycodeToKeysym(display, keycode, 1) == keysym)
+ keycode = _keyname_to_keycode (keysym_str);
+ if (XKeycodeToKeysym (display, keycode, 0) != keysym) {
+ if (XKeycodeToKeysym (display, keycode, 1) == keysym)
shift = 1;
else
keycode = 0;
int keycode_min, keycode_max, keycode_num;
int i;
- XDisplayKeycodes(display, &keycode_min, &keycode_max);
- keysyms = XGetKeyboardMapping(display, keycode_min,
+ XDisplayKeycodes (display, &keycode_min, &keycode_max);
+ keysyms = XGetKeyboardMapping (display, keycode_min,
keycode_max - keycode_min + 1,
&keycode_num);
mod = (mod + 1) & 0x7;
i = (keycode_max - keycode_min - mod - 1) * keycode_num;
keysyms[i] = keysym;
- XChangeKeyboardMapping(display, keycode_min, keycode_num,
+ XChangeKeyboardMapping (display, keycode_min, keycode_num,
keysyms, (keycode_max - keycode_min));
- XFree(keysyms);
- XSync(display, False);
+ XFree (keysyms);
+ XSync (display, False);
keycode = keycode_max - mod - 1;
}
- // Find the window which has the current keyboard focus.
- Window winFocus = 0;
- XWindowAttributes attr;
- int revert = RevertToParent;
-
- XGetInputFocus (display, &winFocus, &revert);
-
- // Send a fake key press event to the window.
- XGetWindowAttributes (display, winFocus, &attr);
- XSelectInput (display, winFocus, attr.your_event_mask | FocusChangeMask | KeyPressMask | KeyReleaseMask);
- XMapWindow (display, winFocus);
-
unsigned int modifier = scim_x11_keymask_scim_to_x11 (display, key.mask);
if (shift)
XKeyEvent event;
if (key.is_key_press ()) {
if (shift) {
- event = createKeyEvent (true, XKeysymToKeycode(display, XK_Shift_L), modifier, fake);
+ event = createKeyEvent (true, XKeysymToKeycode (display, XK_Shift_L), modifier, fake);
XSendEvent (event.display, event.window, True, KeyPressMask, (XEvent *)&event);
}
XSendEvent (event.display, event.window, True, KeyReleaseMask, (XEvent *)&event);
if (shift) {
- event = createKeyEvent (false, XKeysymToKeycode(display, XK_Shift_L), modifier, fake);
+ event = createKeyEvent (false, XKeysymToKeycode (display, XK_Shift_L), modifier, fake);
XSendEvent (event.display, event.window, True, KeyReleaseMask, (XEvent *)&event);
}
}
EcoreIMFContextISF *ic = static_cast<EcoreIMFContextISF *> (si->get_frontend_data ());
if (ic && ic->ctx) {
+ if (strcmp(utf8_wcstombs (str).c_str (), " ") == 0)
+ autoperiod_insert(ic->ctx);
+
ecore_imf_context_commit_event_add (ic->ctx, utf8_wcstombs (str).c_str ());
ecore_imf_context_event_callback_call (ic->ctx, ECORE_IMF_CALLBACK_COMMIT, (void *)utf8_wcstombs(str).c_str());
}
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Jihoon Kim <jihoon48.kim@samsung.com>, Haifeng Deng <haifeng.deng@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Jihoon Kim <jihoon48.kim@samsung.com>, Haifeng Deng <haifeng.deng@samsung.com>
*
trans.clear ();
if (!trans.read_from_socket (fd, timeout)) {
IMFCONTROLERR ("%s:: read_from_socket() may be timeout \n", __FUNCTION__);
- _imcontrol_client.close_connection ();
+ _isf_imf_control_finalize ();
return ECORE_CALLBACK_CANCEL;
}
return ECORE_CALLBACK_RENEW;
}
IMFCONTROLERR ("ecore_ise_input_handler is failed!!!\n");
- return ECORE_CALLBACK_RENEW;
+ _isf_imf_control_finalize ();
+ return ECORE_CALLBACK_CANCEL;
}
static void connect_panel (void)
}
}
+EAPI void _isf_imf_control_finalize (void)
+{
+ IMFCONTROLDBG ("%s ...\n", __FUNCTION__);
+
+ _imcontrol_client.close_connection ();
+
+ if (_read_handler) {
+ ecore_main_fd_handler_del (_read_handler);
+ _read_handler = 0;
+ }
+}
+
EAPI int _isf_imf_context_input_panel_show (void *data, int length)
{
connect_panel ();
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Jihoon Kim <jihoon48.kim@samsung.com>, Haifeng Deng <haifeng.deng@samsung.com>
*
#endif /* __cplusplus */
/* non UI related works */
+ void _isf_imf_control_finalize (void);
+
int _isf_imf_context_input_panel_show (void *data, int length);
int _isf_imf_context_input_panel_hide (void);
int _isf_imf_context_control_panel_show (void);
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Jihoon Kim <jihoon48.kim@samsung.com>, Haifeng Deng <haifeng.deng@samsung.com>
*
}
hw_kbd_num = val;
+ LOGD("The number of connected H/W keyboard : %d\n", hw_kbd_num);
return ECORE_CALLBACK_PASS_ON;
}
-static void _save_current_xid (Ecore_IMF_Context *ctx)
+static Ecore_X_Window _client_window_id_get (Ecore_IMF_Context *ctx)
{
- Ecore_X_Window xid = 0, rootwin_xid = 0;
- Ecore_Evas *ee = NULL;
+ Ecore_X_Window xid = 0;
Evas *evas = NULL;
+ Ecore_Evas *ee = NULL;
- evas = (Evas *)ecore_imf_context_client_canvas_get(ctx);
+ evas = (Evas *)ecore_imf_context_client_canvas_get (ctx);
if (evas) {
ee = ecore_evas_ecore_evas_get (evas);
xid = (Ecore_X_Window)ecore_imf_context_client_window_get (ctx);
}
+ return xid;
+}
+
+static void _save_current_xid (Ecore_IMF_Context *ctx)
+{
+ Ecore_X_Window xid = 0, rootwin_xid = 0;
+
+ xid = _client_window_id_get (ctx);
+
if (xid == 0)
rootwin_xid = ecore_x_window_root_first_get ();
else
switch (value)
{
case ECORE_IMF_INPUT_PANEL_STATE_HIDE:
- LOGD("input panel has been hidden. ctx : %p\n", fn->imf_context);
+ LOGD("[input panel has been hidden] ctx : %p\n", fn->imf_context);
break;
case ECORE_IMF_INPUT_PANEL_STATE_SHOW:
- LOGD("input panel has been shown. ctx : %p\n", fn->imf_context);
+ LOGD("[input panel has been shown] ctx : %p\n", fn->imf_context);
break;
case ECORE_IMF_INPUT_PANEL_STATE_WILL_SHOW:
- LOGD("input panel will be shown. ctx : %p\n", fn->imf_context);
+ LOGD("[input panel will be shown] ctx : %p\n", fn->imf_context);
break;
}
}
static Eina_Bool _hide_timer_handler (void *data)
{
- LOGD("request to hide input panel. ctx : %p\n", data);
+ LOGD("[request to hide input panel] ctx : %p\n", data);
_isf_imf_context_input_panel_hide ();
hide_timer = NULL;
hide_timer = NULL;
}
- LOGD("request to hide input panel. ctx : %p\n", ctx);
+ LOGD("[request to hide input panel] ctx : %p\n", ctx);
_isf_imf_context_input_panel_hide ();
} else {
_input_panel_hide_timer_start (ctx);
}
}
+static Eina_Bool _compare_context (Ecore_IMF_Context *ctx1, Ecore_IMF_Context *ctx2)
+{
+ if (!ctx1 || !ctx2) return EINA_FALSE;
+
+ if ((ecore_imf_context_autocapital_type_get (ctx1) == ecore_imf_context_autocapital_type_get (ctx2)) &&
+ (ecore_imf_context_input_panel_layout_get (ctx1) == ecore_imf_context_input_panel_layout_get (ctx2)) &&
+ (ecore_imf_context_input_panel_language_get (ctx1) == ecore_imf_context_input_panel_language_get (ctx2)) &&
+ (ecore_imf_context_input_panel_return_key_type_get (ctx1) == ecore_imf_context_input_panel_return_key_type_get (ctx2)) &&
+ (ecore_imf_context_input_panel_return_key_disabled_get (ctx1) == ecore_imf_context_input_panel_return_key_disabled_get (ctx2)) &&
+ (ecore_imf_context_input_panel_caps_lock_mode_get (ctx1) == ecore_imf_context_input_panel_caps_lock_mode_get (ctx2)))
+ return EINA_TRUE;
+
+ return EINA_FALSE;
+}
+
EAPI void isf_imf_context_control_panel_show (Ecore_IMF_Context *ctx)
{
IMFCONTROLUIDBG("[%s]\n", __FUNCTION__);
printf ("Error! cannot get hw_kbd_num\n");
return;
}
+
+ LOGD("The number of connected H/W keyboard : %d\n", hw_kbd_num);
}
EAPI void isf_imf_input_panel_shutdown (void)
ecore_timer_del (hide_timer);
hide_timer = NULL;
}
+ _isf_imf_control_finalize ();
}
EAPI void isf_imf_context_input_panel_show (Ecore_IMF_Context* ctx)
IMFCONTROLUIDBG("debug start --%s\n", __FUNCTION__);
+ if (IfInitContext == false) {
+ _isf_imf_context_init ();
+ }
+
+ /* set password mode */
+ iseContext.password_mode = !!(ecore_imf_context_input_mode_get (ctx) & ECORE_IMF_INPUT_MODE_INVISIBLE);
+
+ /* set layout in ise context info */
+ iseContext.layout = ecore_imf_context_input_panel_layout_get (ctx);
+
+ /* set prediction allow */
+ iseContext.prediction_allow = ecore_imf_context_prediction_allow_get (ctx);
+
+ if (iseContext.layout == ECORE_IMF_INPUT_PANEL_LAYOUT_PASSWORD)
+ iseContext.password_mode = EINA_TRUE;
+
+ if (iseContext.password_mode)
+ iseContext.prediction_allow = EINA_FALSE;
+
+ if (iseContext.layout == ECORE_IMF_INPUT_PANEL_LAYOUT_EMAIL ||
+ iseContext.layout == ECORE_IMF_INPUT_PANEL_LAYOUT_URL)
+ iseContext.prediction_allow = EINA_FALSE;
+
+ isf_imf_context_prediction_allow_set (ctx, iseContext.prediction_allow);
+
+ /* Set the current XID of the active window into the root window property */
+ _save_current_xid (ctx);
+
if (hw_kbd_num != 0) {
printf ("H/W keyboard is existed.\n");
return;
hide_req_ic = NULL;
}
- if (IfInitContext == false) {
- _isf_imf_context_init ();
+ if ((show_req_ic == ctx) &&
+ (_compare_context (show_req_ic, ctx) == EINA_TRUE) &&
+ (input_panel_state == ECORE_IMF_INPUT_PANEL_STATE_WILL_SHOW)) {
+ return;
}
show_req_ic = ctx;
- /* set password mode */
- iseContext.password_mode = !!(ecore_imf_context_input_mode_get (ctx) & ECORE_IMF_INPUT_MODE_INVISIBLE);
-
- /* set input language in ise context info */
- iseContext.language = ecore_imf_context_input_panel_language_get (ctx);
- IMFCONTROLUIDBG("[%s] language : %d\n", __func__, iseContext.language);
-
- /* set layout in ise context info */
- iseContext.layout = ecore_imf_context_input_panel_layout_get (ctx);
- IMFCONTROLUIDBG("[%s] layout : %d\n", __func__, iseContext.layout);
+ LOGD("===============================================================\n");
+ LOGD("[request to show input panel] ctx : %p\n", ctx);
+ LOGD(" - language : %d\n", iseContext.language);
+ LOGD(" - layout : %d\n", iseContext.layout);
/* set return key type */
iseContext.return_key_type = ecore_imf_context_input_panel_return_key_type_get (ctx);
- IMFCONTROLUIDBG("[%s] return_key_type : %d\n", __func__, iseContext.return_key_type);
+ LOGD(" - return_key_type : %d\n", iseContext.return_key_type);
/* set return key disabled */
iseContext.return_key_disabled = ecore_imf_context_input_panel_return_key_disabled_get (ctx);
- IMFCONTROLUIDBG("[%s] return_key_disabled : %d\n", __func__, iseContext.return_key_disabled);
-
- /* set prediction allow */
- iseContext.prediction_allow = ecore_imf_context_prediction_allow_get (ctx);
- IMFCONTROLUIDBG("[%s] prediction_allow : %d\n", __func__, iseContext.prediction_allow);
+ LOGD(" - return_key_disabled : %d\n", iseContext.return_key_disabled);
/* set caps mode */
iseContext.caps_mode = caps_mode_check (ctx, EINA_TRUE, EINA_FALSE);
- IMFCONTROLUIDBG("[%s] caps mode : %d\n", __func__, iseContext.caps_mode);
+ LOGD(" - caps mode : %d\n", iseContext.caps_mode);
+
+ iseContext.client_window = _client_window_id_get (ctx);
+ LOGD(" - client_window : %#x\n", iseContext.client_window);
ecore_imf_context_input_panel_imdata_get (ctx, (void *)imdata, &iseContext.imdata_size);
+ LOGD(" - password mode : %d\n", iseContext.password_mode);
+ LOGD(" - prediction_allow : %d\n", iseContext.prediction_allow);
+
/* calculate packet size */
length = sizeof (iseContext);
length += iseContext.imdata_size;
memcpy ((void *)((unsigned int)packet + sizeof (iseContext)), (void *)imdata, iseContext.imdata_size);
- /* Set the current XID of the active window into the root window property */
- _save_current_xid (ctx);
-
if (input_panel_state == ECORE_IMF_INPUT_PANEL_STATE_HIDE)
input_panel_state = ECORE_IMF_INPUT_PANEL_STATE_WILL_SHOW;
- LOGD("request to show input panel. ctx : %p\n", ctx);
-
_isf_imf_context_input_panel_show (packet ,length);
free (packet);
+
+ caps_mode_check(ctx, EINA_TRUE, EINA_TRUE);
+ LOGD("===============================================================\n");
}
EAPI void isf_imf_context_input_panel_hide (Ecore_IMF_Context *ctx)
{
- IMFCONTROLUIDBG("[%s]\n", __func__);
+ LOGD("[input panel hide is called] ctx : %p\n", ctx);
_input_panel_hide (ctx, EINA_FALSE);
}
_isf_imf_context_init ();
_isf_imf_context_input_panel_geometry_get (x, y, w, h);
- IMFCONTROLUIDBG("[%s] x : %d, y : %d, w : %d, h : %d\n", __func__, *x, *y, *w, *h);
+ LOGD("[input_panel_geometry_get] ctx : %p, x : %d, y : %d, w : %d, h : %d\n", ctx, *x, *y, *w, *h);
}
/**
if (!fn)
return;
- IMFCONTROLUIDBG("[%s]\n", __func__);
+ LOGD("[input_panel_event_callback_add] ctx : %p, type : %d, func : %p\n", ctx, type, func);
fn->func = func;
fn->data = data;
EventCallbackNode *fn = NULL;
IMFCONTROLUIDBG("[%s]\n", __func__);
+ LOGD("[input_panel_event_callback_del] ctx : %p, type : %d, func : %p\n", ctx, type, func);
for (l = EventCallbackList; l;) {
fn = (EventCallbackNode *)l->data;
- if ((fn) && (fn->func == func) && (fn->type == type)) {
+ if ((fn) && (fn->func == func) && (fn->type == type) && (fn->imf_context == ctx)) {
EventCallbackList = eina_list_remove (EventCallbackList, fn);
free (fn);
break;
Eina_List *l;
EventCallbackNode *fn;
- IMFCONTROLUIDBG("[%s]\n", __func__);
+ LOGD("[input_panel_event_callback_clear] ctx : %p\n", ctx);
for (l = EventCallbackList; l;) {
fn = (EventCallbackNode *)l->data;
_isf_imf_context_init ();
_isf_imf_context_candidate_window_geometry_get (x, y, w, h);
- IMFCONTROLUIDBG("[%s] x : %d, y : %d, w : %d, h : %d\n", __func__, *x, *y, *w, *h);
+ LOGD("[candidate_window_geometry_get] ctx : %p, x : %d, y : %d, w : %d, h : %d\n", ctx, *x, *y, *w, *h);
}
/**
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Jihoon Kim <jihoon48.kim@samsung.com>, Haifeng Deng <haifeng.deng@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Jihoon Kim <jihoon48.kim@samsung.com>, Haifeng Deng <haifeng.deng@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Jihoon Kim <jihoon48.kim@samsung.com>
*
// Declaration of macro.
/////////////////////////////////////////////////////////////////////////////
#define EFL_CANDIDATE_THEME1 (SCIM_DATADIR "/isf_candidate_theme1.edj")
-#define EFL_CANDIDATE_THEME2 (SCIM_DATADIR "/isf_candidate_theme2.edj")
-#define ISF_CONFIG_PANEL_LOOKUP_TABLE_VERTICAL "/Panel/Gtk/LookupTableVertical"
-#define ISF_CONFIG_PANEL_LOOKUP_TABLE_STYLE "/Panel/Gtk/LookupTableStyle"
-#define ISF_CONFIG_PANEL_LOOKUP_TABLE_MODE "/Panel/Gtk/LookupTableMode"
+#define ISF_CONFIG_PANEL_FIXED_FOR_HARDWARE_KBD "/Panel/Hardware/Fixed"
#define ISF_CANDIDATE_TABLE 0
-#define ISF_PORT_BUTTON_NUMBER 9
-#define ISF_LAND_BUTTON_NUMBER 18
-
#define ISF_EFL_AUX 1
#define ISF_EFL_CANDIDATE_0 2
#define ISF_EFL_CANDIDATE_ITEMS 3
-#define ISE_DEFAULT_HEIGHT_PORTRAIT 360
-#define ISE_DEFAULT_HEIGHT_LANDSCAPE 288
+#define ISE_DEFAULT_HEIGHT_PORTRAIT 444
+#define ISE_DEFAULT_HEIGHT_LANDSCAPE 316
+#define ISF_READY_FILE "/tmp/hibernation/isf_ready"
/////////////////////////////////////////////////////////////////////////////
// Declaration of external variables.
extern std::vector<String> _icons;
extern std::vector<uint32> _options;
extern std::vector<TOOLBAR_MODE_T> _modes;
-extern std::vector<String> _disabled_langs;
extern std::vector<String> _load_ise_list;
/////////////////////////////////////////////////////////////////////////////
// Declaration of internal data types.
/////////////////////////////////////////////////////////////////////////////
+typedef enum _VIRTUAL_KEYBOARD_STATE {
+ KEYBOARD_STATE_UNKNOWN = 0,
+ KEYBOARD_STATE_OFF,
+ KEYBOARD_STATE_ON,
+} VIRTUAL_KEYBOARD_STATE;
/////////////////////////////////////////////////////////////////////////////
// Declaration of internal functions.
/////////////////////////////////////////////////////////////////////////////
-static Evas_Object *efl_create_window (const char *strWinName, const char *strEffect);
-static void efl_set_transient_for_app_window (Evas_Object *win_obj);
-static int efl_get_angle_for_root_window (Evas_Object *win_obj);
+static Evas_Object *efl_create_window (const char *strWinName, const char *strEffect);
+static void efl_set_transient_for_app_window (Evas_Object *win_obj);
+static int efl_get_angle_for_root_window (Evas_Object *win_obj);
-static void ui_candidate_hide (bool bForce);
-static void ui_destroy_candidate_window (void);
-static void ui_settle_candidate_window (void);
-static void ui_create_more_window (void);
-static void ui_more_window_rotate (int angle);
-static void ui_more_window_update (void);
+static int ui_candidate_get_valid_height (void);
+static void ui_candidate_hide (bool bForce);
+static void ui_destroy_candidate_window (void);
+static void ui_settle_candidate_window (void);
/* PanelAgent related functions */
static bool initialize_panel_agent (const String &config, const String &display, bool resident);
static void slot_reload_config (void);
static void slot_focus_in (void);
static void slot_focus_out (void);
+static void slot_expand_candidate (void);
+static void slot_contract_candidate (void);
+static void slot_update_input_context (int type, int value);
+static void slot_update_ise_geometry (int x, int y, int width, int height);
static void slot_update_spot_location (int x, int y, int top_y);
static void slot_update_factory_info (const PanelFactoryInfo &info);
static void slot_show_aux_string (void);
static void slot_get_language_list (std::vector<String> &name);
static void slot_get_all_language (std::vector<String> &lang);
static void slot_get_ise_language (char *, std::vector<String> &name);
-static void slot_set_isf_language (const String &language);
static bool slot_get_ise_info_by_uuid (const String &uuid, ISE_INFO &info);
-static void slot_set_candidate_ui (int style, int mode);
-static void slot_get_candidate_ui (int &style, int &mode);
-static void slot_set_candidate_position (int left, int top);
static void slot_get_candidate_geometry (struct rectinfo &info);
-static void slot_set_keyboard_ise (int type, const String &ise);
+static void slot_get_input_panel_geometry (struct rectinfo &info);
+static void slot_set_keyboard_ise (int type, const String &uuid);
static void slot_get_keyboard_ise (String &ise_name, String &ise_uuid);
static void slot_start_default_ise (void);
static void slot_accept_connection (int fd);
static Evas_Object *_candidate_bg = 0;
static Evas_Object *_candidate_0_scroll = 0;
static Evas_Object *_candidate_scroll = 0;
+static Evas_Object *_scroller_bg = 0;
static Evas_Object *_candidate_0_table = 0;
static Evas_Object *_candidate_table = 0;
static Evas_Object *_candidate_0 [SCIM_LOOKUP_TABLE_MAX_PAGESIZE];
static Evas_Object *_candidate_items [SCIM_LOOKUP_TABLE_MAX_PAGESIZE];
+static Evas_Object *_seperate_0 [SCIM_LOOKUP_TABLE_MAX_PAGESIZE];
+static Evas_Object *_seperate_items [SCIM_LOOKUP_TABLE_MAX_PAGESIZE];
+static Evas_Object *_line_items [SCIM_LOOKUP_TABLE_MAX_PAGESIZE];
static Evas_Object *_more_btn = 0;
static Evas_Object *_close_btn = 0;
static bool _candidate_window_show = false;
-static Evas_Object *_more_window = 0;
-static Evas_Object *_more_port_table = 0;
-static Evas_Object *_more_land_table = 0;
-static Evas_Object *_page_button_port = 0;
-static Evas_Object *_page_button_land = 0;
-static Evas_Object *_port_button [ISF_PORT_BUTTON_NUMBER];
-static Evas_Object *_land_button [ISF_LAND_BUTTON_NUMBER];
-static bool _more_window_enable = false;
-static int _more_port_height = 329;
-static int _more_land_height = 270;
-static int _pages = 0;
-static int _page_no = 0;
-static std::vector<String> _more_list;
-
+static int _candidate_x = 0;
+static int _candidate_y = 0;
static int _candidate_width = 0;
static int _candidate_height = 0;
+static int _candidate_valid_height = 0;
-static int _candidate_port_width = 464;
-static int _candidate_port_height_min = 86;
+static int _candidate_port_width = 480;
+static int _candidate_port_height_min = 76;
static int _candidate_port_height_min_2 = 150;
static int _candidate_port_height_max = 286;
static int _candidate_port_height_max_2 = 350;
static int _more_btn_pos [4] = {369, 11, 689, 11};
static int _close_btn_pos [4] = {362, 211, 682, 75};
-static int _candidate_port_number = 3;
-static int _candidate_land_number = 5;
-static int _h_padding = 4;
-static int _v_padding = 11;
-static int _item_min_width = 66;
-static int _item_min_height = 55;
+static int _v_padding = 2;
+static int _item_min_width = 99;
+static int _item_min_height = 82;
static int _candidate_scroll_0_width_min = 350;
static int _candidate_scroll_0_width_max = 670;
static Evas_Object *_tmp_aux_text = 0;
static Evas_Object *_tmp_candidate_text = 0;
-static std::vector<Evas_Object *> _text_fonts;
static int _spot_location_x = -1;
static int _spot_location_y = -1;
static int _spot_location_top_y = -1;
-static int _candidate_left = -1;
-static int _candidate_top = -1;
static int _candidate_angle = 0;
-static int _indicator_height = 24;
-static int _screen_width = 480;
-static int _screen_height = 800;
+static int _ise_width = -1;
+static int _ise_height = -1;
+static bool _ise_show = false;
+
+static int _indicator_height = 0;//24;
+static int _screen_width = 720;
+static int _screen_height = 1280;
static float _width_rate = 1.0;
static float _height_rate = 1.0;
-static int _blank_width = 10;
+static int _blank_width = 30;
static String _candidate_name = String ("candidate");
static String _candidate_edje_file = String (EFL_CANDIDATE_THEME1);
-static String _candidate_font_name = String ("SLP:style=medium");
-static int _candidate_font_max_size = 30;
-static int _candidate_font_min_size = 14;
-static int _aux_font_size = 30;
-static int _button_font_size = 22;
+static String _candidate_font_name = String ("Default");
+static int _candidate_font_size = 38;
+static int _aux_font_size = 38;
static int _click_object = 0;
static int _click_down_pos [2] = {0, 0};
static int _click_up_pos [2] = {0, 0};
+static bool _is_click = true;
static DEFAULT_ISE_T _initial_ise;
static DEFAULT_ISE_T _active_ise;
static PanelAgent *_panel_agent = 0;
static std::vector<Ecore_Fd_Handler *> _read_handler_list;
-static ISF_CANDIDATE_STYLE_T _candidate_style = PREDICTION_ENGINE_CANDIDATE_STYLE;
-static ISF_CANDIDATE_MODE_T _candidate_mode = PORTRAIT_VERTICAL_CANDIDATE_MODE;
-
static clock_t _clock_start;
+static Ecore_Timer *_check_size_timer = NULL;
+
/////////////////////////////////////////////////////////////////////////////
// Implementation of internal functions.
}
/**
+ * @brief Get ISE geometry information.
+ *
+ * @param info The data is used to store ISE position and size.
+ * @param kbd_state The keyboard state.
+ */
+static void get_ise_geometry (RECT_INFO &info, VIRTUAL_KEYBOARD_STATE kbd_state)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+
+ if (_ise_width == -1 && _ise_height == -1) {
+ _panel_agent->get_current_ise_geometry (info);
+ } else {
+ info.width = _ise_width;
+ info.height = _ise_height;
+ }
+
+ int win_w = _screen_width, win_h = _screen_height;
+ int angle = efl_get_angle_for_root_window (NULL);
+ if (angle == 90 || angle == 270) {
+ win_w = _screen_height;
+ win_h = _screen_width;
+ }
+ info.pos_x = (win_w - info.width) / 2;
+ if (kbd_state == KEYBOARD_STATE_OFF)
+ info.pos_y = win_h;
+ else
+ info.pos_y = win_h - info.height;
+}
+
+/**
+ * @brief Set keyboard geometry for autoscroll.
+ *
+ * @param kbd_state The keyboard state.
+ */
+static void set_keyboard_geometry_atom_info (VIRTUAL_KEYBOARD_STATE kbd_state)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+
+ if (kbd_state == KEYBOARD_STATE_UNKNOWN)
+ return;
+
+ Ecore_X_Window* zone_lists;
+ if (ecore_x_window_prop_window_list_get (ecore_x_window_root_first_get (),
+ ECORE_X_ATOM_E_ILLUME_ZONE_LIST, &zone_lists) > 0) {
+
+ struct rectinfo info = {0, 0, 0, 0};
+ if (_ise_width == 0 && _ise_height == 0) {
+ info.pos_x = 0;
+ if (_candidate_window && evas_object_visible_get (_candidate_window)) {
+ info.width = _candidate_width;
+ info.height = _candidate_height;
+ }
+ int angle = efl_get_angle_for_root_window (NULL);
+ if (angle == 90 || angle == 270)
+ info.pos_y = _screen_width - info.height;
+ else
+ info.pos_y = _screen_height - info.height;
+ } else {
+ get_ise_geometry (info, kbd_state);
+ if (_ise_width == -1 && _ise_height == -1) {
+ ; // Floating style
+ } else {
+ if (_candidate_window && evas_object_visible_get (_candidate_window)) {
+ _candidate_valid_height = ui_candidate_get_valid_height ();
+ if ((_candidate_height - _candidate_valid_height) > _ise_height) {
+ _candidate_valid_height = _candidate_height;
+ info.pos_y = info.pos_y + info.height - _candidate_height;
+ info.height = _candidate_height;
+ } else {
+ info.pos_y -= _candidate_valid_height;
+ info.height += _candidate_valid_height;
+ }
+ }
+ }
+ }
+ if (kbd_state == KEYBOARD_STATE_ON) {
+ ecore_x_e_virtual_keyboard_state_set (zone_lists[0], ECORE_X_VIRTUAL_KEYBOARD_STATE_ON);
+ ecore_x_e_illume_keyboard_geometry_set (zone_lists[0], info.pos_x, info.pos_y, info.width, info.height);
+ } else {
+ ecore_x_e_virtual_keyboard_state_set (zone_lists[0], ECORE_X_VIRTUAL_KEYBOARD_STATE_OFF);
+ ecore_x_e_illume_keyboard_geometry_set (zone_lists[0], info.pos_x, info.pos_y, 0, 0);
+ }
+ }
+}
+
+/**
* @brief Get ISE name according to uuid.
*
* @param uuid The ISE uuid.
return false;
}
- String language = String ("~other");/*scim_get_locale_language (scim_get_current_locale ());*/
- _config->write (String (SCIM_CONFIG_DEFAULT_IMENGINE_FACTORY) + String ("/") + language, uuid);
- _config->flush ();
-
- _panel_agent->change_factory (uuid);
+ slot_set_keyboard_ise (ISM_TRANS_CMD_SET_KEYBOARD_ISE_BY_UUID, uuid);
return true;
}
_panel_agent->hide_helper (pre_uuid);
_panel_agent->stop_helper (pre_uuid);
} else if (TOOLBAR_KEYBOARD_MODE == mode) {
- /*_panel_agent->change_factory ("");*/
+ String ise_uuid, ise_name;
+ isf_get_keyboard_ise (ise_uuid, ise_name, _config);
+ _panel_agent->change_factory (ise_uuid);
}
+ _ise_width = -1;
+ _ise_height = -1;
+ _ise_show = false;
_panel_agent->start_helper (uuid);
if (changeDefault) {
_config->write (String (SCIM_CONFIG_DEFAULT_HELPER_ISE), uuid);
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- String str;
- bool shared_ise = false;
-
/* Read configurations. */
if (!_config.null ()) {
- _candidate_style = (ISF_CANDIDATE_STYLE_T)_config->read (String (ISF_CONFIG_PANEL_LOOKUP_TABLE_STYLE), _candidate_style);
- _candidate_mode = (ISF_CANDIDATE_MODE_T)_config->read (String (ISF_CONFIG_PANEL_LOOKUP_TABLE_MODE), _candidate_mode);
- shared_ise = _config->read (String (SCIM_CONFIG_FRONTEND_SHARED_INPUT_METHOD), shared_ise);
+ bool shared_ise = _config->read (String (SCIM_CONFIG_FRONTEND_SHARED_INPUT_METHOD), false);
_panel_agent->set_should_shared_ise (shared_ise);
}
// Start of Candidate Functions
//////////////////////////////////////////////////////////////////////
/**
- * @brief This function will add one candidate window resize timer.
+ * @brief Get candidate window valid height for autoscroll.
*
- * @param new_width New width for candidate window.
+ * @return The valid height.
+ */
+static int ui_candidate_get_valid_height (void)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "\n";
+
+ int height = 0;
+ if (_candidate_window) {
+ if (evas_object_visible_get (_aux_area) && evas_object_visible_get (_candidate_area_1))
+ height = _candidate_port_height_min_2;
+ else
+ height = _candidate_port_height_min;
+ }
+ return height;
+}
+
+/**
+ * @brief Resize candidate window size.
+ *
+ * @param new_width New width for candidate window.
* @param new_height New height for candidate window.
*/
static void ui_candidate_window_resize (int new_width, int new_height)
{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << " width:" << new_width << " height:" << new_height << "\n";
if (!_candidate_window)
return;
int x, y, width, height;
evas_object_geometry_get (_candidate_window, &x, &y, &width, &height);
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << " old width:" << width << " old height:" << height << "\n";
if (width == new_width && height == new_height)
return;
evas_object_resize (_candidate_window, new_width, new_height);
+ evas_object_resize (_aux_line, new_width, 2);
_candidate_width = new_width;
_candidate_height = new_height;
- _panel_agent->update_candidate_panel_event ((uint32)ECORE_IMF_CANDIDATE_PANEL_GEOMETRY_EVENT, 0);
+ if (evas_object_visible_get (_candidate_window))
+ _panel_agent->update_candidate_panel_event ((uint32)ECORE_IMF_CANDIDATE_PANEL_GEOMETRY_EVENT, 0);
- ui_settle_candidate_window ();
+ if (evas_object_visible_get (_candidate_window)) {
+ height = ui_candidate_get_valid_height ();
+ if ((_ise_width == 0 && _ise_height == 0) ||
+ (_ise_height > 0 && _candidate_valid_height != height) ||
+ (_ise_height > 0 && (_candidate_height - height) > _ise_height)) {
+ set_keyboard_geometry_atom_info (KEYBOARD_STATE_ON);
+ _panel_agent->update_input_panel_event (ECORE_IMF_INPUT_PANEL_GEOMETRY_EVENT, 0);
+ }
+ }
}
/**
/* Get candidate window size */
evas_object_geometry_get (_candidate_window, &x, &y, &width, &height);
{
- if (evas_object_visible_get (_aux_area) && evas_object_visible_get (_candidate_area_1)) {
+ if (evas_object_visible_get (_aux_area) && evas_object_visible_get (_candidate_area_2)) {
evas_object_show (_aux_line);
- ui_candidate_window_resize (width, _candidate_port_height_min_2);
evas_object_move (_candidate_area_1, _candidate_area_1_pos[0], _candidate_area_1_pos[1] + _candidate_port_height_min_2 - _candidate_port_height_min);
- if (_candidate_angle == 90 || _candidate_angle == 270) {
- evas_object_move (_more_btn, _more_btn_pos[2], _more_btn_pos[3] + _candidate_port_height_min_2 - _candidate_port_height_min);
- } else {
- evas_object_move (_more_btn, _more_btn_pos[0], _more_btn_pos[1] + _candidate_port_height_min_2 - _candidate_port_height_min);
- }
- } else if (evas_object_visible_get (_aux_area) && evas_object_visible_get (_candidate_area_2)) {
- evas_object_show (_aux_line);
evas_object_move (_candidate_area_2, _candidate_area_2_pos[0], _candidate_area_2_pos[1] + _candidate_port_height_min_2 - _candidate_port_height_min);
+ evas_object_move (_scroller_bg, _candidate_area_2_pos[0], _candidate_area_2_pos[1] + _candidate_port_height_min_2 - _candidate_port_height_min);
if (_candidate_angle == 90 || _candidate_angle == 270) {
ui_candidate_window_resize (width, _candidate_land_height_max_2);
evas_object_move (_close_btn, _close_btn_pos[2], _close_btn_pos[3] + _candidate_port_height_min_2 - _candidate_port_height_min);
ui_candidate_window_resize (width, _candidate_port_height_max_2);
evas_object_move (_close_btn, _close_btn_pos[0], _close_btn_pos[1] + _candidate_port_height_min_2 - _candidate_port_height_min);
}
- } else if (evas_object_visible_get (_aux_area)) {
- evas_object_hide (_aux_line);
- ui_candidate_window_resize (width, _aux_height);
- } else if (evas_object_visible_get (_candidate_area_1)) {
- evas_object_hide (_aux_line);
- ui_candidate_window_resize (width, _candidate_port_height_min);
- evas_object_move (_candidate_area_1, _candidate_area_1_pos[0], _candidate_area_1_pos[1]);
+ } else if (evas_object_visible_get (_aux_area) && evas_object_visible_get (_candidate_area_1)) {
+ evas_object_show (_aux_line);
+ ui_candidate_window_resize (width, _candidate_port_height_min_2);
+ evas_object_move (_candidate_area_1, _candidate_area_1_pos[0], _candidate_area_1_pos[1] + _candidate_port_height_min_2 - _candidate_port_height_min);
if (_candidate_angle == 90 || _candidate_angle == 270) {
- evas_object_move (_more_btn, _more_btn_pos[2], _more_btn_pos[3]);
+ evas_object_move (_more_btn, _more_btn_pos[2], _more_btn_pos[3] + _candidate_port_height_min_2 - _candidate_port_height_min);
} else {
- evas_object_move (_more_btn, _more_btn_pos[0], _more_btn_pos[1]);
+ evas_object_move (_more_btn, _more_btn_pos[0], _more_btn_pos[1] + _candidate_port_height_min_2 - _candidate_port_height_min);
}
+ } else if (evas_object_visible_get (_aux_area)) {
+ evas_object_hide (_aux_line);
+ ui_candidate_window_resize (width, _aux_height);
} else if (evas_object_visible_get (_candidate_area_2)) {
evas_object_hide (_aux_line);
+ evas_object_move (_candidate_area_1, _candidate_area_1_pos[0], _candidate_area_1_pos[1]);
evas_object_move (_candidate_area_2, _candidate_area_2_pos[0], _candidate_area_2_pos[1]);
+ evas_object_move (_scroller_bg, _candidate_area_2_pos[0], _candidate_area_2_pos[1]);
if (_candidate_angle == 90 || _candidate_angle == 270) {
ui_candidate_window_resize (width, _candidate_land_height_max);
evas_object_move (_close_btn, _close_btn_pos[2], _close_btn_pos[3]);
ui_candidate_window_resize (width, _candidate_port_height_max);
evas_object_move (_close_btn, _close_btn_pos[0], _close_btn_pos[1]);
}
+ } else if (evas_object_visible_get (_candidate_area_1)) {
+ evas_object_hide (_aux_line);
+ ui_candidate_window_resize (width, _candidate_port_height_min);
+ evas_object_move (_candidate_area_1, _candidate_area_1_pos[0], _candidate_area_1_pos[1]);
+ if (_candidate_angle == 90 || _candidate_angle == 270) {
+ evas_object_move (_more_btn, _more_btn_pos[2], _more_btn_pos[3]);
+ } else {
+ evas_object_move (_more_btn, _more_btn_pos[0], _more_btn_pos[1]);
+ }
}
}
}
evas_object_resize (_aux_area, _aux_land_width, _aux_height);
evas_object_resize (_candidate_area_1, _candidate_scroll_0_width_max, _item_min_height);
evas_object_resize (_candidate_area_2, _candidate_scroll_width, _candidate_scroll_height_min);
+ evas_object_resize (_scroller_bg, _candidate_scroll_width, _candidate_scroll_height_min + 6);
} else {
_candidate_scroll_width = _candidate_scroll_width_min;
ui_candidate_window_resize (_candidate_port_width, _candidate_port_height_min);
evas_object_resize (_aux_area, _aux_port_width, _aux_height);
evas_object_resize (_candidate_area_1, _candidate_scroll_0_width_min, _item_min_height);
evas_object_resize (_candidate_area_2, _candidate_scroll_width, _candidate_scroll_height_max);
+ evas_object_resize (_scroller_bg, _candidate_scroll_width, _candidate_scroll_height_max + 6);
}
/* Delete old candidate items and popup lines */
evas_object_del (_candidate_items [i]);
_candidate_items [i] = NULL;
}
+ if (_seperate_items [i]) {
+ evas_object_del (_seperate_items [i]);
+ _seperate_items [i] = NULL;
+ }
+ if (_line_items [i]) {
+ evas_object_del (_line_items [i]);
+ _line_items [i] = NULL;
+ }
}
- ui_more_window_rotate (angle);
ui_settle_candidate_window ();
flush_memory ();
}
/**
- * @brief Update candidate text font size according to display width.
+ * @brief This function is used to judge whether candidate window should be hidden.
*
- * @param obj A valid Evas_Object handle of text.
- * @param obj_width The text display width.
- * @param mbs The dislpayed string.
+ * @return true if candidate window should be hidden, otherwise return false.
*/
-static void ui_candidate_text_update_font_size (Evas_Object *obj, int obj_width, String mbs)
+static bool ui_candidate_can_be_hide (void)
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- if (obj == NULL || mbs.length () <= 0 || _text_fonts.size () <= 0)
- return;
+ if (evas_object_visible_get (_aux_area) ||
+ evas_object_visible_get (_candidate_area_1) ||
+ evas_object_visible_get (_candidate_area_2))
+ return false;
+ else
+ return true;
+}
- int x, y, width, height;
- edje_object_text_class_set (obj, "candidate_text_class", _candidate_font_name.c_str (), _candidate_font_min_size);
- for (unsigned int i = 0; i < _text_fonts.size (); i++) {
- evas_object_text_text_set (_text_fonts [i], mbs.c_str ());
- evas_object_geometry_get (_text_fonts [i], &x, &y, &width, &height);
- if (width < obj_width) {
- edje_object_text_class_set (obj, "candidate_text_class", _candidate_font_name.c_str (), _candidate_font_max_size - 2*i);
- break;
- }
+/**
+ * @brief Delete check candidate window size timer.
+ *
+ * @return void
+ */
+static void ui_candidate_delete_check_size_timer (void)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+
+ if (_check_size_timer != NULL) {
+ ecore_timer_del (_check_size_timer);
+ _check_size_timer = NULL;
}
}
/**
- * @brief This function is used to judge whether candidate window should be hidden.
+ * @brief Callback function for check candidate window size timer.
*
- * @return true if candidate window should be hidden, otherwise return false.
+ * @param data Data to pass when it is called.
+ *
+ * @return ECORE_CALLBACK_CANCEL
*/
-static bool ui_candidate_can_be_hide (void)
+static Eina_Bool ui_candidate_check_size_timeout (void *data)
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- if (evas_object_visible_get (_aux_area) ||
- evas_object_visible_get (_candidate_area_1) ||
- evas_object_visible_get (_candidate_area_2))
- return false;
- else
- return true;
+ ui_candidate_delete_check_size_timer ();
+ ui_candidate_window_resize (_candidate_width, _candidate_height);
+ ui_settle_candidate_window ();
+ return ECORE_CALLBACK_CANCEL;
}
/**
ui_candidate_window_rotate (angle);
}
- if (!evas_object_visible_get (_candidate_window))
+ if (!evas_object_visible_get (_candidate_window)) {
+ evas_object_show (_candidate_window);
_panel_agent->update_candidate_panel_event ((uint32)ECORE_IMF_CANDIDATE_PANEL_STATE_EVENT, (uint32)ECORE_IMF_CANDIDATE_PANEL_SHOW);
+ if (!(_ise_width == -1 && _ise_height == -1)) {
+ set_keyboard_geometry_atom_info (KEYBOARD_STATE_ON);
+ _panel_agent->update_input_panel_event (ECORE_IMF_INPUT_PANEL_GEOMETRY_EVENT, 0);
+ }
+
+ ui_candidate_delete_check_size_timer ();
+ _check_size_timer = ecore_timer_add (0.02, ui_candidate_check_size_timeout, NULL);
+ }
+
+ SCIM_DEBUG_MAIN (3) << " Show candidate window\n";
_candidate_window_show = true;
evas_object_show (_candidate_window);
- elm_win_raise (_candidate_window);
efl_set_transient_for_app_window (_candidate_window);
}
/**
* @brief Hide candidate window.
+ *
+ * @param bForce The flag to hide candidate window by force.
*/
static void ui_candidate_hide (bool bForce)
{
elm_scroller_region_show (_aux_area, 0, 0, 10, 10);
evas_object_hide (_candidate_area_1);
evas_object_hide (_candidate_area_2);
+ evas_object_hide (_scroller_bg);
}
if (ui_candidate_can_be_hide () || bForce) {
- if (evas_object_visible_get (_candidate_window))
+ if (evas_object_visible_get (_candidate_window)) {
+ evas_object_hide (_candidate_window);
_panel_agent->update_candidate_panel_event ((uint32)ECORE_IMF_CANDIDATE_PANEL_STATE_EVENT, (uint32)ECORE_IMF_CANDIDATE_PANEL_HIDE);
+ if (!(_ise_width == -1 && _ise_height == -1)) {
+ _panel_agent->update_input_panel_event (ECORE_IMF_INPUT_PANEL_GEOMETRY_EVENT, 0);
+ if (_ise_show)
+ set_keyboard_geometry_atom_info (KEYBOARD_STATE_ON);
+ else
+ set_keyboard_geometry_atom_info (KEYBOARD_STATE_OFF);
+ }
+ }
+
+ SCIM_DEBUG_MAIN (3) << " Hide candidate window\n";
_candidate_window_show = false;
evas_object_hide (_candidate_window);
}
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- evas_object_hide (_candidate_area_1);
-
_panel_agent->candidate_more_window_show ();
- if (_more_window_enable) {
- ui_candidate_hide (false);
- ui_candidate_window_adjust ();
- if (_more_window == NULL)
- ui_create_more_window ();
- evas_object_show (_more_window);
- _page_no = 1;
- if (_candidate_angle == 90 || _candidate_angle == 270) {
- _pages = _more_list.size () / ISF_LAND_BUTTON_NUMBER;
- if ((_more_list.size () % ISF_LAND_BUTTON_NUMBER) > 0)
- _pages += 1;
- } else {
- _pages = _more_list.size () / ISF_PORT_BUTTON_NUMBER;
- if ((_more_list.size () % ISF_PORT_BUTTON_NUMBER) > 0)
- _pages += 1;
- }
+ evas_object_hide (_more_btn);
+ evas_object_show (_candidate_area_2);
+ evas_object_show (_scroller_bg);
+ evas_object_show (_close_btn);
+ ui_candidate_window_adjust ();
- ui_more_window_update ();
- } else {
- evas_object_hide (_more_btn);
- evas_object_show (_candidate_area_2);
- evas_object_show (_close_btn);
- elm_win_raise (_candidate_window);
- ui_candidate_window_adjust ();
- }
ui_settle_candidate_window ();
flush_memory ();
}
if (evas_object_visible_get (_candidate_area_2)) {
evas_object_hide (_candidate_area_2);
+ evas_object_hide (_scroller_bg);
evas_object_hide (_close_btn);
_panel_agent->candidate_more_window_hide ();
}
evas_object_show (_candidate_area_1);
evas_object_show (_more_btn);
- elm_win_raise (_candidate_window);
ui_candidate_window_adjust ();
ui_settle_candidate_window ();
elm_scroller_region_show (_candidate_area_2, 0, 0, _candidate_scroll_width, 100);
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- elm_win_raise (_candidate_window);
_click_object = GPOINTER_TO_INT (data);
+ _is_click = true;
Evas_Event_Mouse_Down *ev = (Evas_Event_Mouse_Down *)event_info;
_click_down_pos [0] = ev->canvas.x;
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << " index:" << GPOINTER_TO_INT (data) << "...\n";
int index = GPOINTER_TO_INT (data);
- if (_click_object == ISF_EFL_AUX) {
- double ret = 0;
+ if (_click_object == ISF_EFL_AUX && _is_click) {
+/* double ret = 0;
const char *buf = edje_object_part_state_get (button, "aux", &ret);
if (strcmp ("selected", buf)) {
for (unsigned int i = 0; i < _aux_items.size (); i++) {
}
edje_object_signal_emit (button, "aux,state,selected", "aux");
_panel_agent->select_aux (index);
+ }*/
+ int r, g, b, a, r2, g2, b2, a2, r3, g3, b3, a3;
+ edje_object_color_class_get (_aux_items [index], "text_color", &r, &g, &b, &a, &r2, &g2, &b2, &a2, &r3, &g3, &b3, &a3);
+ // Normal item is clicked
+ if (!(r == 62 && g == 207 && b == 255)) {
+ for (unsigned int i = 0; i < _aux_items.size (); i++) {
+ edje_object_color_class_set (_aux_items [i], "text_color", 249, 249, 249, 255, r2, g2, b2, a2, r3, g3, b3, a3);
+ }
+ edje_object_color_class_set (_aux_items [index], "text_color", 62, 207, 255, 255, r2, g2, b2, a2, r3, g3, b3, a3);
+ _panel_agent->select_aux (index);
}
- } else if (_click_object == ISF_EFL_CANDIDATE_0) {
+ } else if (_click_object == ISF_EFL_CANDIDATE_0 && _is_click) {
+ ui_candidate_window_close_button_cb (NULL, NULL, _close_btn, NULL);
_panel_agent->select_candidate (index);
- } else if (_click_object == ISF_EFL_CANDIDATE_ITEMS) {
+ } else if (_click_object == ISF_EFL_CANDIDATE_ITEMS && _is_click) {
ui_candidate_window_close_button_cb (NULL, NULL, _close_btn, NULL);
_panel_agent->select_candidate (index);
}
if (abs (_click_up_pos [0] - _click_down_pos [0]) >= 10 ||
abs (_click_up_pos [1] - _click_down_pos [1]) >= 10) {
- _click_object = 0;
- }
-}
-
-/**
- * @brief Rotate more window.
- *
- * @param angle The angle of more window.
- */
-static void ui_more_window_rotate (int angle)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- if (!_candidate_window || !_more_window)
- return;
-
- elm_win_rotation_set (_more_window, angle);
- if (angle == 90 || angle == 270) {
- evas_object_resize (_more_window, _screen_height, _more_land_height);
- evas_object_hide (_more_port_table);
- evas_object_show (_more_land_table);
- if (angle == 90)
- evas_object_move (_more_window, _screen_width - _more_land_height, 0);
- else
- evas_object_move (_more_window, 0, 0);
- } else {
- evas_object_resize (_more_window, _screen_width, _more_port_height);
- evas_object_hide (_more_land_table);
- evas_object_show (_more_port_table);
- if (angle == 180)
- evas_object_move (_more_window, 0, 0);
- else
- evas_object_move (_more_window, 0, _screen_height - _more_port_height);
+ _is_click = false;
}
}
/**
- * @brief Update more window.
- */
-static void ui_more_window_update (void)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- if (!_candidate_window || !_more_window)
- return;
-
- unsigned int offset, index, i;
- char buffer [20] = {0};
-
- snprintf (buffer, sizeof (buffer), "%d/%d", _page_no, _pages);
-
- if (_candidate_angle == 90 || _candidate_angle == 270) {
- offset = (_page_no - 1) * ISF_LAND_BUTTON_NUMBER;
- for (i = 0; i < ISF_LAND_BUTTON_NUMBER; i++) {
- index = offset + i;
- if (index < _more_list.size ()) {
- edje_object_part_text_set (_land_button [i], "button_text", _more_list [index].c_str ());
- ui_candidate_text_update_font_size (_land_button [i], (128 - 10)*_height_rate, _more_list [index]);
- evas_object_show (_land_button [i]);
- } else {
- edje_object_part_text_set (_land_button [i], "button_text", "");
- evas_object_hide (_land_button [i]);
- }
- }
- edje_object_part_text_set (_page_button_land, "page_text", buffer);
- } else {
- offset = (_page_no - 1) * ISF_PORT_BUTTON_NUMBER;
- for (i = 0; i < ISF_PORT_BUTTON_NUMBER; i++) {
- index = offset + i;
- if (index < _more_list.size ()) {
- edje_object_part_text_set (_port_button [i], "button_text", _more_list [index].c_str ());
- ui_candidate_text_update_font_size (_port_button [i], (153 - 10)*_width_rate, _more_list [index]);
- evas_object_show (_port_button [i]);
- } else {
- edje_object_part_text_set (_port_button [i], "button_text", "");
- evas_object_hide (_port_button [i]);
- }
- }
- edje_object_part_text_set (_page_button_port, "page_text", buffer);
- }
-}
-
-/**
- * @brief Callback function for close button of more window.
- *
- * @param data A pointer to data to pass in when the signal is emitted.
- * @param obj A valid Evas_Object handle for emitted signal.
- * @param emission The signal's name.
- * @param source The signal's source.
- */
-static void ui_more_window_close_button_cb (void *data, Evas_Object *obj, const char *emission, const char *source)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
-
- if (evas_object_visible_get (_more_window)) {
- evas_object_hide (_more_window);
- _panel_agent->candidate_more_window_hide ();
- }
-
- elm_win_raise (_candidate_window);
- slot_show_candidate_table ();
- flush_memory ();
-}
-
-/**
- * @brief Callback function for page button of more window.
- *
- * @param data A pointer to data to pass in when the signal is emitted.
- * @param obj A valid Evas_Object handle for emitted signal.
- * @param emission The signal's name.
- * @param source The signal's source.
- */
-static void ui_more_window_page_button_cb (void *data, Evas_Object *obj, const char *emission, const char *source)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
-
- if (_pages <= 1)
- return;
-
- int action = GPOINTER_TO_INT (data);
- if (action == 1) /* Show prev page */
- _page_no = (_page_no == 1) ? _pages : (_page_no - 1);
- else /* Show next page */
- _page_no = (_page_no == _pages) ? 1 : (_page_no + 1);
-
- ui_more_window_update ();
- flush_memory ();
-}
-
-/**
- * @brief Callback function for candidate item of more window.
- *
- * @param data A pointer to data to pass in when the signal is emitted.
- * @param obj A valid Evas_Object handle for emitted signal.
- * @param emission The signal's name.
- * @param source The signal's source.
- */
-static void ui_more_window_candidate_item_click_cb (void *data, Evas_Object *obj, const char *emission, const char *source)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
-
- int offset;
- int index = GPOINTER_TO_INT (data);
- if (index < SCIM_LOOKUP_TABLE_MAX_PAGESIZE) {
- if (_candidate_angle == 90 || _candidate_angle == 270)
- offset = (_page_no - 1) * ISF_LAND_BUTTON_NUMBER;
- else
- offset = (_page_no - 1) * ISF_PORT_BUTTON_NUMBER;
-
- ui_more_window_close_button_cb (NULL, NULL, NULL, NULL);
- _panel_agent->select_candidate (offset + index);
- }
-}
-
-/**
- * @brief Create more window for candidate.
- */
-static void ui_create_more_window (void)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
-
- Evas_Object *button = NULL;
-
- _more_window = efl_create_window ("more_window", "ISF Popup");
- evas_object_resize (_more_window, _screen_width, _more_port_height);
- evas_object_move (_more_window, 0, _screen_height - _more_port_height);
-
- Evas *evas = evas_object_evas_get (_more_window);
-
- /* Create port table */
- _more_port_table = elm_table_add (_more_window);
- evas_object_size_hint_weight_set (_more_port_table, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_show (_more_port_table);
-
- Evas_Object *bg = edje_object_add (evas);
- edje_object_file_set (bg, _candidate_edje_file.c_str (), "candidate_bg");
- evas_object_size_hint_min_set (bg, _screen_width, _more_port_height);
- elm_table_pack (_more_port_table, bg, 0, 0, _screen_width, _more_port_height);
- edje_object_signal_emit (bg, "candidate_bg,state,port_more_2", "candidate_bg");
- evas_object_show (bg);
-
- for (int i = 0; i < ISF_PORT_BUTTON_NUMBER; i++) {
- button = edje_object_add (evas);
- edje_object_file_set (button, _candidate_edje_file.c_str (), "candidate_button");
- evas_object_size_hint_min_set (button, 153*_width_rate, 71*_height_rate);
- elm_table_pack (_more_port_table, button, (6 + (i%3)*158)*_width_rate, (15 + (i/3)*79)*_height_rate, 153*_width_rate, 71*_height_rate);
- edje_object_signal_callback_add (button, "button,action,clicked", "",
- ui_more_window_candidate_item_click_cb, GINT_TO_POINTER (i));
- evas_object_show (button);
- _port_button [i] = button;
- }
-
- /* Create port page button */
- _page_button_port = edje_object_add (evas);
- edje_object_file_set (_page_button_port, _candidate_edje_file.c_str (), "page_button_port");
- evas_object_size_hint_min_set (_page_button_port, 232*_width_rate, 71*_height_rate);
- edje_object_text_class_set (_page_button_port, "page_text_class", "1/1", _candidate_font_max_size);
- elm_table_pack (_more_port_table, _page_button_port, 6*_width_rate, 252*_height_rate, 233*_width_rate, 71*_height_rate);
- edje_object_signal_callback_add (_page_button_port, "prev,action,clicked", "", ui_more_window_page_button_cb, GINT_TO_POINTER (1));
- edje_object_signal_callback_add (_page_button_port, "next,action,clicked", "", ui_more_window_page_button_cb, GINT_TO_POINTER (2));
- evas_object_show (_page_button_port);
-
- /* Create port close button */
- button = edje_object_add (evas);
- edje_object_file_set (button, _candidate_edje_file.c_str (), "close_button");
- evas_object_size_hint_min_set (button, 114*_width_rate, 71*_height_rate);
- edje_object_text_class_set (button, "button_text_class", "Close", _candidate_font_max_size);
- elm_table_pack (_more_port_table, button, 361*_width_rate, 252*_height_rate, 114*_width_rate, 71*_height_rate);
- edje_object_signal_callback_add (button, "button,action,clicked", "", ui_more_window_close_button_cb, 0);
- evas_object_show (button);
-
- /* Create land table */
- _more_land_table = elm_table_add (_more_window);
- evas_object_size_hint_weight_set (_more_land_table, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-
- bg = edje_object_add (evas);
- edje_object_file_set (bg, _candidate_edje_file.c_str (), "candidate_bg");
- evas_object_size_hint_min_set (bg, _screen_height, _more_land_height);
- elm_table_pack (_more_land_table, bg, 0, 0, _screen_height, _more_land_height);
- edje_object_signal_emit (bg, "candidate_bg,state,land_more_2", "candidate_bg");
- evas_object_show (bg);
-
- for (int i = 0; i < ISF_LAND_BUTTON_NUMBER; i++) {
- button = edje_object_add (evas);
- edje_object_file_set (button, _candidate_edje_file.c_str (), "candidate_button");
- evas_object_size_hint_min_set (button, 128*_height_rate, 56*_width_rate);
- elm_table_pack (_more_land_table, button, (7 + (i%6)*132)*_height_rate, (16 + (i/6)*65)*_width_rate, 128*_height_rate, 56*_width_rate);
- edje_object_signal_callback_add (button, "button,action,clicked", "",
- ui_more_window_candidate_item_click_cb, GINT_TO_POINTER (i));
- evas_object_show (button);
- _land_button [i] = button;
- }
-
- /* Create land page button */
- _page_button_land = edje_object_add (evas);
- edje_object_file_set (_page_button_land, _candidate_edje_file.c_str (), "page_button_land");
- evas_object_size_hint_min_set (_page_button_land, 260*_height_rate, 56*_width_rate);
- edje_object_text_class_set (_page_button_land, "page_text_class", "1/1", _candidate_font_max_size);
- elm_table_pack (_more_land_table, _page_button_land, 7*_height_rate, 211*_width_rate, 260*_height_rate, 56*_width_rate);
- edje_object_signal_callback_add (_page_button_land, "prev,action,clicked", "", ui_more_window_page_button_cb, GINT_TO_POINTER (1));
- edje_object_signal_callback_add (_page_button_land, "next,action,clicked", "", ui_more_window_page_button_cb, GINT_TO_POINTER (2));
- evas_object_show (_page_button_land);
-
- /* Create land close button */
- button = edje_object_add (evas);
- edje_object_file_set (button, _candidate_edje_file.c_str (), "close_button");
- evas_object_size_hint_min_set (button, 128*_height_rate, 56*_width_rate);
- edje_object_text_class_set (button, "button_text_class", "Close", _candidate_font_max_size);
- elm_table_pack (_more_land_table, button, 667*_height_rate, 211*_width_rate, 128*_height_rate, 56*_width_rate);
- edje_object_signal_callback_add (button, "button,action,clicked", "", ui_more_window_close_button_cb, 0);
- evas_object_show (button);
-
- if (_candidate_angle != 0)
- ui_more_window_rotate (_candidate_angle);
-
- flush_memory ();
-}
-
-/**
* @brief Create prediction engine style candidate window.
*/
static void ui_create_prediction_engine_candidate_window (void)
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- Evas_Object *tmp_text = NULL;
-
- if (_candidate_edje_file == String (EFL_CANDIDATE_THEME2)) {
- _candidate_port_width = 480 * _width_rate;
- _candidate_port_height_min = 102 * _height_rate;
- _candidate_port_height_min_2 = 157 * _height_rate;
- _candidate_port_height_max = 310 * _height_rate;
- _candidate_port_height_max_2 = 365 * _height_rate;
- _candidate_land_width = 800 * _height_rate;
- _candidate_land_height_min = 102 * _width_rate;
- _candidate_land_height_max = 170 * _width_rate;
- _candidate_land_height_max_2 = 230 * _width_rate;
-
- _candidate_scroll_0_width_min = 350 * _width_rate;
- _candidate_scroll_0_width_max = 670 * _height_rate;
- _candidate_scroll_width_min = 446 * _width_rate;
- _candidate_scroll_width_max = 676 * _height_rate;
- _candidate_scroll_height_min = 130 * _height_rate;
- _candidate_scroll_height_max = 198 * _width_rate;
-
- _candidate_area_1_pos [0] = 20 * _width_rate;
- _candidate_area_1_pos [1] = 20 * _height_rate;
- _candidate_area_2_pos [0] = 20 * _width_rate;
- _candidate_area_2_pos [1] = 20 * _height_rate;
- _more_btn_pos [0] = 376 * _width_rate;
- _more_btn_pos [1] = 20 * _height_rate;
- _more_btn_pos [2] = 696 * _height_rate;
- _more_btn_pos [3] = 20 * _width_rate;
- _close_btn_pos [0] = 376 * _width_rate;
- _close_btn_pos [1] = 228 * _height_rate;
- _close_btn_pos [2] = 696 * _height_rate;
- _close_btn_pos [3] = 88 * _width_rate;
-
- _aux_height = 68 * _height_rate;
- _aux_port_width = 460 * _width_rate;
- _aux_land_width = 780 * _height_rate;
-
- _h_padding = 5 * _width_rate;
- _v_padding = 6 * _height_rate;
- _item_min_height = 62 * _height_rate;
- } else {
- _candidate_port_width = 464 * _width_rate;
- _candidate_port_height_min = 86 * _height_rate;
- _candidate_port_height_min_2 = 150 * _height_rate;
- _candidate_port_height_max = 286 * _height_rate;
- _candidate_port_height_max_2 = 350 * _height_rate;
- _candidate_land_width = 784 * _height_rate;
- _candidate_land_height_min = 86 * _width_rate;
- _candidate_land_height_max = 150 * _width_rate;
- _candidate_land_height_max_2 = 214 * _width_rate;
-
- _candidate_scroll_0_width_min = 350 * _width_rate;
- _candidate_scroll_0_width_max = 670 * _height_rate;
- _candidate_scroll_width_min = 448 * _width_rate;
- _candidate_scroll_width_max = 676 * _height_rate;
- _candidate_scroll_height_min = 124 * _height_rate;
- _candidate_scroll_height_max = 190 * _width_rate;
-
- _candidate_area_1_pos [0] = 11 * _width_rate;
- _candidate_area_1_pos [1] = 13 * _height_rate;
- _candidate_area_2_pos [0] = 11 * _width_rate;
- _candidate_area_2_pos [1] = 13 * _height_rate;
- _more_btn_pos [0] = 366 * _width_rate;
- _more_btn_pos [1] = 13 * _height_rate;
- _more_btn_pos [2] = 689 * _height_rate;
- _more_btn_pos [3] = 13 * _width_rate;
- _close_btn_pos [0] = 366 * _width_rate;
- _close_btn_pos [1] = 214 * _height_rate;
- _close_btn_pos [2] = 689 * _height_rate;
- _close_btn_pos [3] = 79 * _width_rate;
-
- _aux_height = _candidate_port_height_min * 4 / 5;
- _aux_port_width = 444 * _width_rate;
- _aux_land_width = 764 * _height_rate;
-
- _h_padding = 4 * _width_rate;
- _v_padding = 11 * _height_rate;
- _item_min_height = 55 * _height_rate;
- }
-
- _candidate_name = String ("candidate");
+ _candidate_port_width = 720 * _width_rate;
+ _candidate_port_height_min = 84 * _height_rate;
+ _candidate_port_height_min_2 = 168 * _height_rate;
+ _candidate_port_height_max = 510 * _height_rate;
+ _candidate_port_height_max_2 = 594 * _height_rate;
+ _candidate_land_width = 1280 * _height_rate;
+ _candidate_land_height_min = 84 * _width_rate;
+ _candidate_land_height_max = 342 * _width_rate;
+ _candidate_land_height_max_2 = 426 * _width_rate;
+
+ _candidate_scroll_0_width_min= 618 * _width_rate;
+ _candidate_scroll_0_width_max= 1176 * _height_rate;
+ _candidate_scroll_width_min = 720 * _width_rate;
+ _candidate_scroll_width_max = 1280 * _height_rate;
+ _candidate_scroll_height_min = 252 * _width_rate;
+ _candidate_scroll_height_max = 420 * _height_rate;
+
+ _candidate_area_1_pos [0] = 0 * _width_rate;
+ _candidate_area_1_pos [1] = 2 * _height_rate;
+ _candidate_area_2_pos [0] = 0 * _width_rate;
+ _candidate_area_2_pos [1] = 84 * _height_rate;
+ _more_btn_pos [0] = 628 * _width_rate;
+ _more_btn_pos [1] = 12 * _height_rate;
+ _more_btn_pos [2] = 1188 * _height_rate;
+ _more_btn_pos [3] = 12 * _width_rate;
+ _close_btn_pos [0] = 628 * _width_rate;
+ _close_btn_pos [1] = 12 * _height_rate;
+ _close_btn_pos [2] = 1188 * _height_rate;
+ _close_btn_pos [3] = 12 * _width_rate;
+
+ _aux_height = _candidate_port_height_min - 2;
+ _aux_port_width = 720 * _width_rate;
+ _aux_land_width = 1280 * _height_rate;
+
+ _item_min_height = 82 * _height_rate;
/* Create candidate window */
if (_candidate_window == NULL) {
/* Add background */
_candidate_bg = edje_object_add (evas_object_evas_get (_candidate_window));
edje_object_file_set (_candidate_bg, _candidate_edje_file.c_str (), "candidate_bg");
- evas_object_size_hint_weight_set(_candidate_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_weight_set (_candidate_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
elm_win_resize_object_add (_candidate_window, _candidate_bg);
evas_object_show (_candidate_bg);
_candidate_0_table = elm_table_add (_candidate_window);
evas_object_size_hint_weight_set (_candidate_0_table, 0.0, 0.0);
evas_object_size_hint_align_set (_candidate_0_table, 0.0, 0.0);
- elm_table_padding_set (_candidate_0_table, _h_padding, 0);
+ elm_table_padding_set (_candidate_0_table, 0, 0);
elm_object_content_set (_candidate_0_scroll, _candidate_0_table);
evas_object_show (_candidate_0_table);
_candidate_area_1 = _candidate_0_scroll;
/* Create more button */
_more_btn = edje_object_add (evas_object_evas_get (_candidate_window));
- edje_object_file_set (_more_btn, _candidate_edje_file.c_str (), _candidate_name.c_str ());
- edje_object_text_class_set (_more_btn, "candidate_text_class", _candidate_font_name.c_str (), _button_font_size);
- edje_object_part_text_set (_more_btn, "candidate", "More");
+ if (_ise_width == 0 && _ise_height == 0)
+ edje_object_file_set (_more_btn, _candidate_edje_file.c_str (), "close_button");
+ else
+ edje_object_file_set (_more_btn, _candidate_edje_file.c_str (), "more_button");
evas_object_move (_more_btn, _more_btn_pos[0], _more_btn_pos[1]);
- evas_object_resize (_more_btn, 84 * _width_rate, _item_min_height);
+ evas_object_resize (_more_btn, 80 * _width_rate, 64 * _height_rate);
evas_object_event_callback_add (_more_btn, EVAS_CALLBACK_MOUSE_UP, ui_candidate_window_more_button_cb, NULL);
- /* Create vertical scroller */
+ /* Add scroller background */
_candidate_scroll_width = _candidate_scroll_width_min;
+ _scroller_bg = edje_object_add (evas_object_evas_get (_candidate_window));
+ edje_object_file_set (_scroller_bg, _candidate_edje_file.c_str (), "scroller_bg");
+ evas_object_size_hint_weight_set (_scroller_bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_resize (_scroller_bg, _candidate_scroll_width, _candidate_scroll_height_max + 6);
+ evas_object_move (_scroller_bg, _candidate_area_2_pos[0], _candidate_area_2_pos[1]);
+
+ /* Create vertical scroller */
_candidate_scroll = elm_scroller_add (_candidate_window);
elm_scroller_bounce_set (_candidate_scroll, 0, 1);
elm_scroller_policy_set (_candidate_scroll, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_AUTO);
evas_object_resize (_candidate_scroll, _candidate_scroll_width, _candidate_scroll_height_max);
+ evas_object_resize (_scroller_bg, _candidate_scroll_width, _candidate_scroll_height_max + 6);
elm_scroller_page_size_set (_candidate_scroll, 0, _item_min_height+_v_padding);
evas_object_move (_candidate_scroll, _candidate_area_2_pos[0], _candidate_area_2_pos[1]);
_candidate_table = elm_table_add (_candidate_window);
evas_object_size_hint_weight_set (_candidate_table, 0.0, 0.0);
evas_object_size_hint_align_set (_candidate_table, 0.0, 0.0);
- elm_table_padding_set (_candidate_table, _h_padding, _v_padding);
+ elm_table_padding_set (_candidate_table, 0, 0);
elm_object_content_set (_candidate_scroll, _candidate_table);
evas_object_show (_candidate_table);
_candidate_area_2 = _candidate_scroll;
/* Create close button */
_close_btn = edje_object_add (evas_object_evas_get (_candidate_window));
- edje_object_file_set (_close_btn, _candidate_edje_file.c_str (), _candidate_name.c_str ());
- edje_object_text_class_set (_close_btn, "candidate_text_class", _candidate_font_name.c_str (), _button_font_size);
- edje_object_part_text_set (_close_btn, "candidate", "Close");
+ if (_ise_width == 0 && _ise_height == 0)
+ edje_object_file_set (_close_btn, _candidate_edje_file.c_str (), "more_button");
+ else
+ edje_object_file_set (_close_btn, _candidate_edje_file.c_str (), "close_button");
evas_object_move (_close_btn, _close_btn_pos[0], _close_btn_pos[1]);
- evas_object_resize (_close_btn, 84 * _width_rate, _item_min_height);
+ evas_object_resize (_close_btn, 80 * _width_rate, 64 * _height_rate);
evas_object_event_callback_add (_close_btn, EVAS_CALLBACK_MOUSE_UP, ui_candidate_window_close_button_cb, NULL);
_tmp_candidate_text = evas_object_text_add (evas_object_evas_get (_candidate_window));
- evas_object_text_font_set (_tmp_candidate_text, _candidate_font_name.c_str (), _candidate_font_max_size);
-
- _text_fonts.clear ();
- for (int font_size = _candidate_font_max_size; font_size > _candidate_font_min_size; font_size-=2) {
- tmp_text = evas_object_text_add (evas_object_evas_get (_candidate_window));
- evas_object_text_font_set (tmp_text, _candidate_font_name.c_str (), font_size);
- _text_fonts.push_back (tmp_text);
- }
+ evas_object_text_font_set (_tmp_candidate_text, _candidate_font_name.c_str (), _candidate_font_size);
/* Create aux */
_aux_area = elm_scroller_add (_candidate_window);
elm_scroller_bounce_set (_aux_area, 1, 0);
elm_scroller_policy_set (_aux_area, ELM_SCROLLER_POLICY_AUTO, ELM_SCROLLER_POLICY_OFF);
evas_object_resize (_aux_area, _aux_port_width, _aux_height);
- evas_object_move (_aux_area, _blank_width, 0);
+ evas_object_move (_aux_area, 0, 2);
_aux_table = elm_table_add (_candidate_window);
elm_object_content_set (_aux_area, _aux_table);
- elm_table_padding_set (_aux_table, _blank_width, 0);
+ elm_table_padding_set (_aux_table, 4, 0);
evas_object_size_hint_weight_set (_aux_table, 0.0, 0.0);
evas_object_size_hint_align_set (_aux_table, 0.0, 0.0);
evas_object_show (_aux_table);
_aux_line = edje_object_add (evas_object_evas_get (_candidate_window));
edje_object_file_set (_aux_line, _candidate_edje_file.c_str (), "popup_line");
evas_object_resize (_aux_line, _candidate_port_width, 2);
- evas_object_move (_aux_line, 0, 62 * _height_rate);
+ evas_object_move (_aux_line, 0, _aux_height);
_tmp_aux_text = evas_object_text_add (evas_object_evas_get (_candidate_window));
evas_object_text_font_set (_tmp_aux_text, _candidate_font_name.c_str (), _aux_font_size);
/**
* @brief Create candidate window.
*
- * @param style The candidate window style.
+ * @return void
*/
-static void ui_create_candidate_window (ISF_CANDIDATE_STYLE_T style)
+static void ui_create_candidate_window (void)
{
check_time ("\nEnter ui_create_candidate_window");
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
ui_destroy_candidate_window ();
+ _candidate_x = 0;
+ _candidate_y = 0;
_candidate_angle = 0;
ui_create_prediction_engine_candidate_window ();
+ int angle = efl_get_angle_for_root_window (_candidate_window);
+ if (_candidate_angle != angle) {
+ _candidate_angle = angle;
+ ui_candidate_window_rotate (angle);
+ } else {
+ ui_settle_candidate_window ();
+ }
+
check_time ("Exit ui_create_candidate_window");
}
evas_object_del (_candidate_items [i]);
_candidate_items [i] = NULL;
}
+
+ if (_seperate_0 [i]) {
+ evas_object_del (_seperate_0 [i]);
+ _seperate_0 [i] = NULL;
+ }
+ if (_seperate_items [i]) {
+ evas_object_del (_seperate_items [i]);
+ _seperate_items [i] = NULL;
+ }
+ if (_line_items [i]) {
+ evas_object_del (_line_items [i]);
+ _line_items [i] = NULL;
+ }
}
_aux_items.clear ();
/* Delete candidate window */
if (_candidate_window) {
- if (evas_object_visible_get (_candidate_window))
- _panel_agent->update_candidate_panel_event ((uint32)ECORE_IMF_CANDIDATE_PANEL_STATE_EVENT, (uint32)ECORE_IMF_CANDIDATE_PANEL_HIDE);
+ ui_candidate_hide (true);
evas_object_del (_candidate_window);
_candidate_window = NULL;
_aux_area = NULL;
_candidate_area_1 = NULL;
_candidate_area_2 = NULL;
- }
- _candidate_window_show = false;
-
- /* Delete more window */
- if (_more_window) {
- evas_object_del (_more_window);
- _more_window = NULL;
+ _scroller_bg = NULL;
}
flush_memory ();
-
check_time ("Exit ui_destroy_candidate_window");
}
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- if (!_candidate_window) {
- return;
- } else if (!_candidate_window_show) {
- ui_candidate_hide (false);
+ if (!_candidate_window)
return;
- }
int spot_x, spot_y;
- int candidate_width, candidate_height;
- int x, y, width, height, x2, y2, height2;
+ int x, y, width, height;
bool reverse = false;
/* Get candidate window position */
ecore_evas_geometry_get (ecore_evas_ecore_evas_get (evas_object_evas_get (_candidate_window)), &x, &y, &width, &height);
- /* Get exact candidate window size */
- evas_object_geometry_get (_candidate_window, &x2, &y2, &width, &height);
- candidate_width = width;
- candidate_height = height;
-
- if (_candidate_left >= 0 || _candidate_top >= 0) {
- spot_x = _candidate_left;
- spot_y = _candidate_top;
+
+ int height2 = ui_candidate_get_valid_height ();
+
+ if (_ise_height >= 0) {
+ if (_candidate_angle == 90) {
+ spot_x = _screen_width - _ise_height - height2;
+ spot_y = 0;
+ } else if (_candidate_angle == 270) {
+ spot_x = _ise_height - (_candidate_height - height2);
+ spot_y = 0;
+ } else if (_candidate_angle == 180) {
+ spot_x = 0;
+ spot_y = _ise_height - (_candidate_height - height2);
+ } else {
+ spot_x = 0;
+ spot_y = _screen_height - _ise_height - height2;
+ }
} else {
spot_x = _spot_location_x;
spot_y = _spot_location_y;
if (ise_rect.height <= (uint32)0 || ise_rect.height >= (uint32)_screen_width)
ise_rect.height = ISE_DEFAULT_HEIGHT_LANDSCAPE * _width_rate;
} else {
- if (ise_rect.height <= (uint32)0 || ise_rect.height >=(uint32) _screen_height)
+ if (ise_rect.height <= (uint32)0 || ise_rect.height >= (uint32) _screen_height)
ise_rect.height = ISE_DEFAULT_HEIGHT_PORTRAIT * _height_rate;
}
- /* Get aux+candidate window height */
- if (evas_object_visible_get (_aux_area))
- height2 = _candidate_port_height_min_2;
- else
- height2 = _candidate_port_height_min;
-
int nOffset = _candidate_port_height_min / 3;
if (_candidate_angle == 270) {
if (ise_rect.height > 0 && spot_y + height2 > _screen_width - (int)ise_rect.height + nOffset) {
reverse = true;
- spot_x = _screen_width - _spot_location_top_y;
- if (spot_x > _screen_width - (_indicator_height+candidate_height))
- spot_x = _screen_width - (_indicator_height+candidate_height);
+ spot_x = _screen_width - _spot_location_top_y - (_candidate_height - height2);
} else {
- spot_x = _screen_width - _spot_location_y - candidate_height;
+ spot_x = _screen_width - _spot_location_y - _candidate_height;
}
} else if (_candidate_angle == 90) {
if (ise_rect.height > 0 && spot_y + height2 > _screen_width - (int)ise_rect.height + nOffset) {
reverse = true;
- spot_x = _spot_location_top_y - candidate_height;
- spot_x = spot_x < _indicator_height ? _indicator_height : spot_x;
+ spot_x = _spot_location_top_y - height2;
} else {
spot_x = spot_y;
}
} else if (_candidate_angle == 180) {
if (ise_rect.height > 0 && spot_y + height2 > _screen_height - (int)ise_rect.height + nOffset) {
reverse = true;
- spot_y = _screen_height - _spot_location_top_y;
- if (spot_y > _screen_height - (_indicator_height+candidate_height))
- spot_y = _screen_height - (_indicator_height+candidate_height);
+ spot_y = _screen_height - _spot_location_top_y - (_candidate_height - height2);
} else {
- spot_y = _screen_height - _spot_location_y - candidate_height;
+ spot_y = _screen_height - _spot_location_y - _candidate_height;
}
} else {
if (ise_rect.height > 0 && spot_y + height2 > _screen_height - (int)ise_rect.height + nOffset) {
reverse = true;
- spot_y = _spot_location_top_y - candidate_height;
- spot_y = spot_y < _indicator_height ? _indicator_height : spot_y;
+ spot_y = _spot_location_top_y - height2;
} else {
spot_y = spot_y;
}
}
}
- if (_candidate_angle == 90 || _candidate_angle == 270) {
- spot_y = (_screen_height - width) / 2;
+ if (_candidate_angle == 90) {
+ spot_y = (_screen_height - _candidate_width) / 2;
+ spot_x = spot_x < _indicator_height ? _indicator_height : spot_x;
+ if (spot_x > _screen_width - _candidate_height)
+ spot_x = _screen_width - _candidate_height;
+ } else if (_candidate_angle == 270) {
+ spot_y = (_screen_height - _candidate_width) / 2;
+ spot_x = spot_x < 0 ? 0 : spot_x;
+ if (spot_x > _screen_width - (_indicator_height+_candidate_height))
+ spot_x = _screen_width - (_indicator_height+_candidate_height);
+ } else if (_candidate_angle == 180) {
+ spot_x = (_screen_width - _candidate_width) / 2;
+ spot_y = spot_y < 0 ? 0 : spot_y;
+ if (spot_y > _screen_height - (_indicator_height+_candidate_height))
+ spot_y = _screen_height - (_indicator_height+_candidate_height);
} else {
- spot_x = (_screen_width - width) / 2;
+ spot_x = (_screen_width - _candidate_width) / 2;
+ spot_y = spot_y < _indicator_height ? _indicator_height : spot_y;
+ if (spot_y > _screen_height - _candidate_height)
+ spot_y = _screen_height - _candidate_height;
}
if (spot_x != x || spot_y != y) {
+ _candidate_x = spot_x;
+ _candidate_y = spot_y;
evas_object_move (_candidate_window, spot_x, spot_y);
- _panel_agent->update_candidate_panel_event ((uint32)ECORE_IMF_CANDIDATE_PANEL_GEOMETRY_EVENT, 0);
+ if (evas_object_visible_get (_candidate_window))
+ _panel_agent->update_candidate_panel_event ((uint32)ECORE_IMF_CANDIDATE_PANEL_GEOMETRY_EVENT, 0);
}
+
+ if (!_candidate_window_show)
+ ui_candidate_hide (false);
}
//////////////////////////////////////////////////////////////////////
int count;
int angle = 0;
unsigned char *prop_data = NULL;
- Ecore_X_Window root_win = ecore_x_window_root_get (elm_win_xwindow_get (win_obj));
+ Ecore_X_Window root_win = ecore_x_window_root_first_get ();
+ if (win_obj)
+ root_win = ecore_x_window_root_get (elm_win_xwindow_get (win_obj));
ret = ecore_x_window_prop_property_get (root_win, ECORE_X_ATOM_E_ILLUME_ROTATE_ROOT_ANGLE, ECORE_X_ATOM_CARDINAL, 32, &prop_data, &count);
if (ret && prop_data) {
efl_disable_focus_for_app_window (win);
efl_set_showing_effect_for_app_window (win, strEffect);
+ const char *szProfile[] = {"mobile", ""};
+ elm_win_profiles_set (win, szProfile, 1);
+
return win;
}
+/**
+ * @brief Get default zone geometry.
+ *
+ * @param x The zone x position.
+ * @param y The zone y position.
+ * @param w The zone width.
+ * @param h The zone height.
+ *
+ * @return EINA_TRUE if successful, otherwise return EINA_FALSE
+ */
+static Eina_Bool efl_get_default_zone_geometry_info (Ecore_X_Window root, uint *x, uint *y, uint *w, uint *h)
+{
+ Ecore_X_Atom zone_geometry_atom;
+ Ecore_X_Window *zone_lists;
+ int num_zone_lists;
+ int num_ret;
+ Eina_Bool ret;
+
+ zone_geometry_atom = ecore_x_atom_get ("_E_ILLUME_ZONE_GEOMETRY");
+ if (!zone_geometry_atom) {
+ /* Error... */
+ return EINA_FALSE;
+ }
+
+ uint geom[4];
+ num_zone_lists = ecore_x_window_prop_window_list_get (root, ECORE_X_ATOM_E_ILLUME_ZONE_LIST, &zone_lists);
+ if (num_zone_lists > 0) {
+ num_ret = ecore_x_window_prop_card32_get (zone_lists[0], zone_geometry_atom, geom, 4);
+ if (num_ret == 4) {
+ if (x) *x = geom[0];
+ if (y) *y = geom[1];
+ if (w) *w = geom[2];
+ if (h) *h = geom[3];
+ ret = EINA_TRUE;
+ } else {
+ ret = EINA_FALSE;
+ }
+ } else {
+ /* if there is no zone available */
+ ret = EINA_FALSE;
+ }
+
+ if (zone_lists) {
+ /* We must free zone_lists */
+ free (zone_lists);
+ }
+
+ return ret;
+}
+
+/**
+ * @brief Get screen resolution.
+ *
+ * @param width The screen width.
+ * @param height The screen height.
+ */
+static void efl_get_screen_resolution (int &width, int &height)
+{
+ static Evas_Coord scr_w = 0, scr_h = 0;
+
+ if (scr_w == 0 || scr_h == 0) {
+ uint w, h;
+ if (efl_get_default_zone_geometry_info (ecore_x_window_root_first_get (), NULL, NULL, &w, &h)) {
+ scr_w = w;
+ scr_h = h;
+ } else {
+ ecore_x_window_size_get (ecore_x_window_root_first_get (), &scr_w, &scr_h);
+ }
+ }
+
+ width = scr_w;
+ height = scr_h;
+}
+
//////////////////////////////////////////////////////////////////////
// Start of PanelAgent Functions
_panel_agent->signal_connect_reload_config (slot (slot_reload_config));
_panel_agent->signal_connect_focus_in (slot (slot_focus_in));
_panel_agent->signal_connect_focus_out (slot (slot_focus_out));
+ _panel_agent->signal_connect_expand_candidate (slot (slot_expand_candidate));
+ _panel_agent->signal_connect_contract_candidate (slot (slot_contract_candidate));
_panel_agent->signal_connect_update_factory_info (slot (slot_update_factory_info));
_panel_agent->signal_connect_update_spot_location (slot (slot_update_spot_location));
+ _panel_agent->signal_connect_update_input_context (slot (slot_update_input_context));
+ _panel_agent->signal_connect_update_ise_geometry (slot (slot_update_ise_geometry));
_panel_agent->signal_connect_show_aux_string (slot (slot_show_aux_string));
_panel_agent->signal_connect_show_lookup_table (slot (slot_show_candidate_table));
_panel_agent->signal_connect_hide_aux_string (slot (slot_hide_aux_string));
_panel_agent->signal_connect_hide_lookup_table (slot (slot_hide_candidate_table));
_panel_agent->signal_connect_update_aux_string (slot (slot_update_aux_string));
_panel_agent->signal_connect_update_lookup_table (slot (slot_update_candidate_table));
- _panel_agent->signal_connect_set_candidate_ui (slot (slot_set_candidate_ui));
- _panel_agent->signal_connect_get_candidate_ui (slot (slot_get_candidate_ui));
- _panel_agent->signal_connect_set_candidate_position (slot (slot_set_candidate_position));
_panel_agent->signal_connect_get_candidate_geometry (slot (slot_get_candidate_geometry));
+ _panel_agent->signal_connect_get_input_panel_geometry (slot (slot_get_input_panel_geometry));
_panel_agent->signal_connect_set_active_ise_by_uuid (slot (slot_set_active_ise_by_uuid));
_panel_agent->signal_connect_get_ise_list (slot (slot_get_ise_list));
_panel_agent->signal_connect_get_keyboard_ise_list (slot (slot_get_keyboard_ise_list));
_panel_agent->signal_connect_get_language_list (slot (slot_get_language_list));
_panel_agent->signal_connect_get_all_language (slot (slot_get_all_language));
_panel_agent->signal_connect_get_ise_language (slot (slot_get_ise_language));
- _panel_agent->signal_connect_set_isf_language (slot (slot_set_isf_language));
_panel_agent->signal_connect_get_ise_info_by_uuid (slot (slot_get_ise_info_by_uuid));
_panel_agent->signal_connect_set_keyboard_ise (slot (slot_set_keyboard_ise));
_panel_agent->signal_connect_get_keyboard_ise (slot (slot_get_keyboard_ise));
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
if (!_candidate_window) {
- ui_create_candidate_window (_candidate_style);
+ ui_create_candidate_window ();
}
}
}
/**
+ * @brief Expand candidate slot function for PanelAgent.
+ */
+static void slot_expand_candidate (void)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+
+ if (_candidate_area_2 && !evas_object_visible_get (_candidate_area_2))
+ ui_candidate_window_more_button_cb (NULL, NULL, NULL, NULL);
+}
+
+/**
+ * @brief Contract candidate slot function for PanelAgent.
+ */
+static void slot_contract_candidate (void)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+
+ if (_candidate_area_2 && evas_object_visible_get (_candidate_area_2))
+ ui_candidate_window_close_button_cb (NULL, NULL, NULL, NULL);
+}
+
+/**
* @brief Update keyboard ISE information slot function for PanelAgent.
*
* @param info The information of current Keyboard ISE.
}
/**
+ * @brief The input context of ISE is changed.
+ *
+ * @param type The event type.
+ * @param value The event value.
+ */
+static void slot_update_input_context (int type, int value)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+
+ if (type == ECORE_IMF_INPUT_PANEL_STATE_EVENT) {
+ if (value == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
+ _ise_show = false;
+ set_keyboard_geometry_atom_info (KEYBOARD_STATE_OFF);
+ } else if (value == ECORE_IMF_INPUT_PANEL_STATE_SHOW) {
+ _ise_show = true;
+ set_keyboard_geometry_atom_info (KEYBOARD_STATE_ON);
+ }
+ }
+}
+
+/**
+ * @brief Update ise geometry.
+ *
+ * @param x The x position in screen.
+ * @param y The y position in screen.
+ * @param width The ISE window width.
+ * @param height The ISE window height.
+ */
+static void slot_update_ise_geometry (int x, int y, int width, int height)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << " x:" << x << " y:" << y << " width:" << width << " height:" << height << "...\n";
+
+ int hw_kbd_detect = _config->read (ISF_CONFIG_HARDWARE_KEYBOARD_DETECT, 0);
+ if (hw_kbd_detect)
+ return;
+
+ int old_height = _ise_height;
+
+ _ise_width = width;
+ _ise_height = height;
+
+ int angle = efl_get_angle_for_root_window (_candidate_window);
+ if (_candidate_angle != angle) {
+ _candidate_angle = angle;
+ ui_candidate_window_rotate (angle);
+ } else if (old_height != height) {
+ ui_settle_candidate_window ();
+ }
+
+ if (old_height != height && _ise_show)
+ set_keyboard_geometry_atom_info (KEYBOARD_STATE_ON);
+}
+
+/**
* @brief Show aux slot function for PanelAgent.
*/
static void slot_show_aux_string (void)
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- if (_aux_area == NULL || evas_object_visible_get (_aux_area) ||
- _candidate_angle == 90 || _candidate_angle == 270)
+ if (_aux_area == NULL || evas_object_visible_get (_aux_area))
return;
evas_object_show (_aux_area);
if (!_candidate_area_1)
return;
- if (_more_window && evas_object_visible_get (_more_window))
- evas_object_hide (_more_window);
-
if (evas_object_visible_get (_candidate_area_1) || evas_object_visible_get (_candidate_area_2)) {
if (evas_object_visible_get (_candidate_area_1)) {
evas_object_hide (_candidate_area_1);
}
if (evas_object_visible_get (_candidate_area_2)) {
evas_object_hide (_candidate_area_2);
+ evas_object_hide (_scroller_bg);
evas_object_hide (_close_btn);
_panel_agent->candidate_more_window_hide ();
}
}
/**
+ * @brief Set hightlight text color and background color for edje object.
+ *
+ * @param item The edje object pointer.
+ * @param nForeGround The text color.
+ * @param nBackGround The background color.
+ * @param bSetBack The flag for background color.
+ */
+static void set_highlight_color (Evas_Object *item, uint32 nForeGround, uint32 nBackGround, bool bSetBack)
+{
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+
+ int r, g, b, a, r2, g2, b2, a2, r3, g3, b3, a3;
+ if (edje_object_color_class_get (item, "text_color", &r, &g, &b, &a, &r2, &g2, &b2, &a2, &r3, &g3, &b3, &a3)) {
+ r = SCIM_RGB_COLOR_RED(nForeGround);
+ g = SCIM_RGB_COLOR_GREEN(nForeGround);
+ b = SCIM_RGB_COLOR_BLUE(nForeGround);
+ edje_object_color_class_set (item, "text_color", r, g, b, a, r2, g2, b2, a2, r3, g3, b3, a3);
+ }
+ if (bSetBack && edje_object_color_class_get (item, "rect_color", &r, &g, &b, &a, &r2, &g2, &b2, &a2, &r3, &g3, &b3, &a3)) {
+ r = SCIM_RGB_COLOR_RED(nBackGround);
+ g = SCIM_RGB_COLOR_GREEN(nBackGround);
+ b = SCIM_RGB_COLOR_BLUE(nBackGround);
+ edje_object_color_class_set (item, "rect_color", r, g, b, 255, r2, g2, b2, a2, r3, g3, b3, a3);
+ }
+}
+
+/**
* @brief Update aux slot function for PanelAgent.
*
* @param str The new aux string.
if (!_aux_area || (str.length () <= 0))
return;
+ if (!evas_object_visible_get (_aux_area)) {
+ ui_candidate_show ();
+ slot_show_aux_string ();
+ }
+
int x, y, width, height, item_width = 0;
unsigned int window_width = 0, count = 0, i;
Evas_Object *aux_edje = NULL;
- /* Get selected aux index */
+ /* Get highlight item index */
int aux_index = -1, aux_start = 0, aux_end = 0;
- String strAux = str;
- const char *buf = str.c_str ();
- if (buf[0] >= '0' && buf[0] <= '9') {
- aux_index = buf[0] - 48;
- strAux.erase (0, 1);
+ String strAux = str;
+ bool bSetBack = false;
+ uint32 nForeGround = SCIM_RGB_COLOR(62, 207, 255);
+ uint32 nBackGround = SCIM_RGB_COLOR(0, 0, 0);
+ for (AttributeList::const_iterator ait = attrs.begin (); ait != attrs.end (); ++ait) {
+ if (aux_index == -1 && ait->get_type () == SCIM_ATTR_DECORATE) {
+ aux_index = ait->get_value ();
+ } else if (ait->get_type () == SCIM_ATTR_FOREGROUND) {
+ nForeGround = ait->get_value ();
+ } else if (ait->get_type () == SCIM_ATTR_BACKGROUND) {
+ nBackGround = ait->get_value ();
+ bSetBack = true;
+ }
}
std::vector<String> aux_list;
for (i = 0; i < aux_list.size (); i++) {
count++;
- if (i >= _aux_items.size ()) {
- aux_edje = edje_object_add (evas_object_evas_get (_candidate_window));
- edje_object_file_set (aux_edje, _candidate_edje_file.c_str (), "aux");
- edje_object_text_class_set (aux_edje, "aux_text_class", _candidate_font_name.c_str (), _aux_font_size);
- elm_table_pack (_aux_table, aux_edje, i, 0, 1, 1);
- evas_object_event_callback_add (aux_edje, EVAS_CALLBACK_MOUSE_DOWN, ui_mouse_button_pressed_cb, GINT_TO_POINTER (ISF_EFL_AUX));
- evas_object_event_callback_add (aux_edje, EVAS_CALLBACK_MOUSE_UP, ui_mouse_button_released_cb, GINT_TO_POINTER (i));
- evas_object_event_callback_add (aux_edje, EVAS_CALLBACK_MOUSE_MOVE, ui_mouse_moved_cb, GINT_TO_POINTER (ISF_EFL_AUX));
- evas_object_show (aux_edje);
- _aux_items.push_back (aux_edje);
- } else {
- aux_edje = _aux_items [i];
- }
+ aux_edje = edje_object_add (evas_object_evas_get (_candidate_window));
+ edje_object_file_set (aux_edje, _candidate_edje_file.c_str (), "aux");
+ edje_object_text_class_set (aux_edje, "aux_text_class", _candidate_font_name.c_str (), _aux_font_size);
edje_object_part_text_set (aux_edje, "aux", aux_list [i].c_str ());
- if (i == (unsigned int)aux_index)
+ elm_table_pack (_aux_table, aux_edje, i, 0, 1, 1);
+ evas_object_event_callback_add (aux_edje, EVAS_CALLBACK_MOUSE_DOWN, ui_mouse_button_pressed_cb, GINT_TO_POINTER (ISF_EFL_AUX));
+ evas_object_event_callback_add (aux_edje, EVAS_CALLBACK_MOUSE_UP, ui_mouse_button_released_cb, GINT_TO_POINTER (i));
+ evas_object_event_callback_add (aux_edje, EVAS_CALLBACK_MOUSE_MOVE, ui_mouse_moved_cb, GINT_TO_POINTER (ISF_EFL_AUX));
+ evas_object_show (aux_edje);
+ _aux_items.push_back (aux_edje);
+/* if (i == (unsigned int)aux_index)
edje_object_signal_emit (aux_edje, "aux,state,selected", "aux");
else
edje_object_signal_emit (aux_edje, "aux,state,unselected", "aux");
-
+*/
evas_object_text_text_set (_tmp_aux_text, aux_list [i].c_str ());
evas_object_geometry_get (_tmp_aux_text, &x, &y, &width, &height);
item_width = width + 2*_blank_width;
aux_start = window_width;
aux_end = window_width + item_width;
}
- window_width = window_width + item_width + _blank_width;
+ window_width = window_width + item_width + 4;
}
- /* Remove redundant aux edje */
- if (count < _aux_items.size ()) {
- for (i = count; i < _aux_items.size (); i++)
- evas_object_del (_aux_items [i]);
- _aux_items.erase (_aux_items.begin () + count, _aux_items.end ());
+ // Set highlight item
+ for (AttributeList::const_iterator ait = attrs.begin (); ait != attrs.end (); ++ait) {
+ if (ait->get_type () == SCIM_ATTR_DECORATE) {
+ unsigned int index = ait->get_value ();
+ if (index < _aux_items.size ())
+ set_highlight_color (_aux_items [index], nForeGround, nBackGround, bSetBack);
+ }
}
int w, h;
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+ int item_num = table.get_current_page_size ();
+ if (item_num <= 0)
+ return;
+
String mbs;
WideString wcs;
- int i, x, y, width, height, item_width, item_number, item_0_width;
- int item_num = table.get_current_page_size ();
-
- {
- _more_list.clear ();
+ AttributeList attrs;
+ int i, x, y, width, height, item_0_width;
+
+ int seperate_width = 4;
+ int seperate_height = 52 * _height_rate;
+ int line_width = _candidate_scroll_width;
+ int line_height = _v_padding;
+ int total_width = 0;
+ int current_width = 0;
+ int line_count = 0;
+ int more_item_count = 0;
+ int scroll_0_width = _candidate_scroll_0_width_min;
+
+ if (_candidate_angle == 90 || _candidate_angle == 270)
+ scroll_0_width = _candidate_scroll_0_width_max;
+ else
+ scroll_0_width = _candidate_scroll_0_width_min;
- if (_candidate_angle == 90 || _candidate_angle == 270)
- item_number = _candidate_land_number;
- else
- item_number = _candidate_port_number;
+ Evas *evas = evas_object_evas_get (_candidate_window);
+ for (i = 0; i < SCIM_LOOKUP_TABLE_MAX_PAGESIZE; ++ i) {
+ if (_candidate_0 [i]) {
+ evas_object_del (_candidate_0 [i]);
+ _candidate_0 [i] = NULL;
+ }
+ if (_seperate_0 [i]) {
+ evas_object_del (_seperate_0 [i]);
+ _seperate_0 [i] = NULL;
+ }
+ if (_candidate_items [i]) {
+ evas_object_del (_candidate_items [i]);
+ _candidate_items [i] = NULL;
+ }
+ if (_seperate_items [i]) {
+ evas_object_del (_seperate_items [i]);
+ _seperate_items [i] = NULL;
+ }
+ if (_line_items [i]) {
+ evas_object_del (_line_items [i]);
+ _line_items [i] = NULL;
+ }
- item_width = (_candidate_scroll_width - 6*_width_rate - (item_number-1)*_h_padding) / item_number;
+ if (i < item_num) {
+ bool bHighLight = false;
+ bool bSetBack = false;
+ uint32 nForeGround = SCIM_RGB_COLOR(249, 249, 249);
+ uint32 nBackGround = SCIM_RGB_COLOR(0, 0, 0);
+ attrs = table.get_attributes_in_current_page (i);
+ for (AttributeList::const_iterator ait = attrs.begin (); ait != attrs.end (); ++ait) {
+ if (ait->get_type () == SCIM_ATTR_DECORATE && ait->get_value () == SCIM_ATTR_DECORATE_HIGHLIGHT) {
+ bHighLight = true;
+ nForeGround = SCIM_RGB_COLOR(62, 207, 255);
+ } else if (ait->get_type () == SCIM_ATTR_FOREGROUND) {
+ bHighLight = true;
+ nForeGround = ait->get_value ();
+ } else if (ait->get_type () == SCIM_ATTR_BACKGROUND) {
+ bSetBack = true;
+ nBackGround = ait->get_value ();
+ }
+ }
- Evas *evas = evas_object_evas_get (_candidate_window);
- for (i = 0; i < SCIM_LOOKUP_TABLE_MAX_PAGESIZE; ++ i) {
- if (i < item_num) {
- wcs = table.get_candidate_in_current_page (i);
- mbs = utf8_wcstombs (wcs);
- _more_list.push_back (mbs);
+ wcs = table.get_candidate_in_current_page (i);
+ mbs = utf8_wcstombs (wcs);
- if (_candidate_0 [i]) {
- evas_object_del (_candidate_0 [i]);
- _candidate_0 [i] = NULL;
- }
+ if (!_candidate_0 [i] && total_width < scroll_0_width) {
+ _candidate_0 [i] = edje_object_add (evas);
+ edje_object_file_set (_candidate_0 [i], _candidate_edje_file.c_str (), _candidate_name.c_str ());
+ edje_object_text_class_set (_candidate_0 [i], "candidate_text_class", _candidate_font_name.c_str (), _candidate_font_size);
+ evas_object_event_callback_add (_candidate_0 [i], EVAS_CALLBACK_MOUSE_DOWN, ui_mouse_button_pressed_cb, GINT_TO_POINTER (ISF_EFL_CANDIDATE_0));
+ evas_object_event_callback_add (_candidate_0 [i], EVAS_CALLBACK_MOUSE_UP, ui_mouse_button_released_cb, GINT_TO_POINTER (i));
+ evas_object_event_callback_add (_candidate_0 [i], EVAS_CALLBACK_MOUSE_MOVE, ui_mouse_moved_cb, GINT_TO_POINTER (ISF_EFL_CANDIDATE_0));
+ evas_object_show (_candidate_0 [i]);
- if (!_candidate_0 [i]) {
- _candidate_0 [i] = edje_object_add (evas);
- edje_object_file_set (_candidate_0 [i], _candidate_edje_file.c_str (), _candidate_name.c_str ());
- edje_object_text_class_set (_candidate_0 [i], "candidate_text_class", _candidate_font_name.c_str (), _candidate_font_max_size);
- elm_table_pack (_candidate_0_table, _candidate_0 [i], i, 0, 1, 1);
- evas_object_event_callback_add (_candidate_0 [i], EVAS_CALLBACK_MOUSE_DOWN, ui_mouse_button_pressed_cb, GINT_TO_POINTER (ISF_EFL_CANDIDATE_0));
- evas_object_event_callback_add (_candidate_0 [i], EVAS_CALLBACK_MOUSE_UP, ui_mouse_button_released_cb, GINT_TO_POINTER (i));
- evas_object_event_callback_add (_candidate_0 [i], EVAS_CALLBACK_MOUSE_MOVE, ui_mouse_moved_cb, GINT_TO_POINTER (ISF_EFL_CANDIDATE_0));
- evas_object_show (_candidate_0 [i]);
- }
edje_object_part_text_set (_candidate_0 [i], "candidate", mbs.c_str ());
/* Resize _candidate_0 [i] display width */
evas_object_text_text_set (_tmp_candidate_text, mbs.c_str ());
evas_object_geometry_get (_tmp_candidate_text, &x, &y, &width, &height);
- item_0_width = width + 3.5*_blank_width;
+ item_0_width = width + 2*_blank_width;
item_0_width = item_0_width > _item_min_width ? item_0_width : _item_min_width;
evas_object_size_hint_min_set (_candidate_0 [i], item_0_width, _item_min_height);
-
- if (!_candidate_items [i]) {
- _candidate_items [i] = edje_object_add (evas);
- edje_object_file_set (_candidate_items [i], _candidate_edje_file.c_str (), _candidate_name.c_str ());
- edje_object_text_class_set (_candidate_items [i], "candidate_text_class", _candidate_font_name.c_str (), _candidate_font_max_size);
- evas_object_size_hint_min_set (_candidate_items [i], item_width, _item_min_height);
- evas_object_event_callback_add (_candidate_items [i], EVAS_CALLBACK_MOUSE_DOWN, ui_mouse_button_pressed_cb, GINT_TO_POINTER (ISF_EFL_CANDIDATE_ITEMS));
- evas_object_event_callback_add (_candidate_items [i], EVAS_CALLBACK_MOUSE_UP, ui_mouse_button_released_cb, GINT_TO_POINTER (i));
- evas_object_event_callback_add (_candidate_items [i], EVAS_CALLBACK_MOUSE_MOVE, ui_mouse_moved_cb, GINT_TO_POINTER (ISF_EFL_CANDIDATE_ITEMS));
- elm_table_pack (_candidate_table, _candidate_items [i], i%item_number, i/item_number, 1, 1);
- }
- evas_object_show (_candidate_items [i]);
- edje_object_part_text_set (_candidate_items [i], "candidate", mbs.c_str ());
- ui_candidate_text_update_font_size (_candidate_items [i], item_width - 22*_width_rate, mbs);
- } else {
- if (_candidate_0 [i]) {
- evas_object_del (_candidate_0 [i]);
- _candidate_0 [i] = NULL;
+ if (bHighLight || bSetBack) {
+ set_highlight_color (_candidate_0 [i], nForeGround, nBackGround, bSetBack);
}
- if (_candidate_items [i]) {
- if (i < item_number) { /* Only hide for first line */
- evas_object_hide (_candidate_items [i]);
- } else {
- evas_object_del (_candidate_items [i]);
- _candidate_items [i] = NULL;
+
+ // Add first item
+ if (i == 0) {
+ elm_table_pack (_candidate_0_table, _candidate_0 [i], 0, 0, item_0_width, _item_min_height);
+ total_width += item_0_width;
+ continue;
+ } else {
+ total_width += (item_0_width + seperate_width);
+ if (total_width < scroll_0_width) {
+ _seperate_0 [i] = edje_object_add (evas);
+ edje_object_file_set (_seperate_0 [i], _candidate_edje_file.c_str (), "seperate_line");
+ evas_object_size_hint_min_set (_seperate_0 [i], seperate_width, seperate_height);
+ elm_table_pack (_candidate_0_table, _seperate_0 [i], total_width - item_0_width - seperate_width, (_item_min_height - seperate_height)/2, seperate_width, seperate_height);
+ evas_object_show (_seperate_0 [i]);
+
+ elm_table_pack (_candidate_0_table, _candidate_0 [i], total_width - item_0_width, 0, item_0_width, _item_min_height);
+ continue;
}
}
}
- }
- elm_scroller_region_show (_candidate_area_1, 0, 0, _candidate_scroll_width, _item_min_height);
- elm_scroller_region_show (_candidate_area_2, 0, 0, _candidate_scroll_width, item_num * 66 * _height_rate - _v_padding);
- flush_memory ();
- /* Update more window */
- if (_more_window && evas_object_visible_get (_more_window)) {
- _page_no = 1;
- if (_candidate_angle == 90 || _candidate_angle == 270) {
- _pages = _more_list.size () / ISF_LAND_BUTTON_NUMBER;
- if ((_more_list.size () % ISF_LAND_BUTTON_NUMBER) > 0)
- _pages += 1;
- } else {
- _pages = _more_list.size () / ISF_PORT_BUTTON_NUMBER;
- if ((_more_list.size () % ISF_PORT_BUTTON_NUMBER) > 0)
- _pages += 1;
+ if (!_candidate_items [i]) {
+ _candidate_items [i] = edje_object_add (evas);
+ edje_object_file_set (_candidate_items [i], _candidate_edje_file.c_str (), _candidate_name.c_str ());
+ edje_object_text_class_set (_candidate_items [i], "candidate_text_class", _candidate_font_name.c_str (), _candidate_font_size);
+ evas_object_event_callback_add (_candidate_items [i], EVAS_CALLBACK_MOUSE_DOWN, ui_mouse_button_pressed_cb, GINT_TO_POINTER (ISF_EFL_CANDIDATE_ITEMS));
+ evas_object_event_callback_add (_candidate_items [i], EVAS_CALLBACK_MOUSE_UP, ui_mouse_button_released_cb, GINT_TO_POINTER (i));
+ evas_object_event_callback_add (_candidate_items [i], EVAS_CALLBACK_MOUSE_MOVE, ui_mouse_moved_cb, GINT_TO_POINTER (ISF_EFL_CANDIDATE_ITEMS));
+ evas_object_show (_candidate_items [i]);
}
-
- ui_more_window_update ();
+ if (bHighLight || bSetBack) {
+ set_highlight_color (_candidate_items [i], nForeGround, nBackGround, bSetBack);
+ }
+ edje_object_part_text_set (_candidate_items [i], "candidate", mbs.c_str ());
+ /* Resize _candidate_items [i] display width */
+ evas_object_text_text_set (_tmp_candidate_text, mbs.c_str ());
+ evas_object_geometry_get (_tmp_candidate_text, &x, &y, &width, &height);
+ item_0_width = width + 2*_blank_width;
+ item_0_width = item_0_width > _item_min_width ? item_0_width : _item_min_width;
+ evas_object_size_hint_min_set (_candidate_items [i], item_0_width, _item_min_height);
+ if (current_width + item_0_width > _candidate_scroll_width) {
+ current_width = 0;
+ line_count++;
+ }
+ if (current_width == 0 && !_line_items [i]) {
+ _line_items [i] = edje_object_add (evas);
+ edje_object_file_set (_line_items [i], _candidate_edje_file.c_str (), "popup_line");
+ evas_object_size_hint_min_set (_line_items [i], line_width, line_height);
+ x = 0;
+ y = line_count*(_item_min_height+line_height);
+ elm_table_pack (_candidate_table, _line_items [i], x, y, line_width, line_height);
+ evas_object_show (_line_items [i]);
+ }
+ if (current_width != 0 && !_seperate_items [i]) {
+ _seperate_items [i] = edje_object_add (evas);
+ edje_object_file_set (_seperate_items [i], _candidate_edje_file.c_str (), "seperate_line");
+ evas_object_size_hint_min_set (_seperate_items [i], seperate_width, seperate_height);
+ x = current_width;
+ y = line_count*(_item_min_height+line_height) + line_height + (_item_min_height - seperate_height)/2;
+ elm_table_pack (_candidate_table, _seperate_items [i], x, y, seperate_width, seperate_height);
+ evas_object_show (_seperate_items [i]);
+ current_width += seperate_width;
+ }
+ x = current_width;
+ y = line_count*(_item_min_height+line_height) + line_height;
+ elm_table_pack (_candidate_table, _candidate_items [i], x, y, item_0_width, _item_min_height);
+ current_width += item_0_width;
+ more_item_count++;
}
}
+ _panel_agent->update_displayed_candidate_number (item_num - more_item_count);
+ if (more_item_count == 0 && evas_object_visible_get (_candidate_area_2))
+ ui_candidate_window_close_button_cb (NULL, NULL, NULL, NULL);
+ elm_scroller_region_show (_candidate_area_1, 0, 0, _candidate_scroll_width, _item_min_height);
+ elm_scroller_region_show (_candidate_area_2, 0, 0, _candidate_scroll_width, _item_min_height);
+ flush_memory ();
}
/**
return;
if (!evas_object_visible_get (_candidate_area_1) &&
- !evas_object_visible_get (_candidate_area_2) &&
- !evas_object_visible_get (_more_window)) {
+ !evas_object_visible_get (_candidate_area_2)) {
ui_candidate_show ();
slot_show_candidate_table ();
}
}
/**
- * @brief Set candidate style slot function for PanelAgent.
- *
- * @param style The new candidate style.
- * @param mode The new candidate mode.
- */
-static void slot_set_candidate_ui (int style, int mode)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
-}
-
-/**
- * @brief Get candidate style slot function for PanelAgent.
- *
- * @param style The current candidate style.
- * @param mode The current candidate mode.
- */
-static void slot_get_candidate_ui (int &style, int &mode)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
-
- style = _candidate_style;
- mode = _candidate_mode;
-
- if (_more_window_enable == true && _candidate_mode == PORTRAIT_VERTICAL_CANDIDATE_MODE)
- mode = PORTRAIT_MORE_CANDIDATE_MODE;
- else if (_more_window_enable == true && _candidate_mode == LANDSCAPE_VERTICAL_CANDIDATE_MODE)
- mode = LANDSCAPE_MORE_CANDIDATE_MODE;
-}
-
-/**
- * @brief Set candidate position slot function for PanelAgent.
- *
- * @param left The new candidate left position.
- * @param top The new candidate top position.
- */
-static void slot_set_candidate_position (int left, int top)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
-
- _candidate_left = left;
- _candidate_top = top;
-
- ui_settle_candidate_window ();
-}
-
-/**
* @brief Get candidate geometry slot function for PanelAgent.
*
* @param info The data is used to store candidate position and size.
*/
static void slot_get_candidate_geometry (struct rectinfo &info)
{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
-
int x = 0;
int y = 0;
- int width = 0;//_candidate_port_width;
- int height = 0;//_candidate_port_height_min;
- if (_candidate_window) {
+ int width = 0;
+ int height = 0;
+ if (_candidate_window && evas_object_visible_get (_candidate_window)) {
/* Get candidate window position */
- ecore_evas_geometry_get (ecore_evas_ecore_evas_get (evas_object_evas_get (_candidate_window)), &x, &y, &width, &height);
+ /*ecore_evas_geometry_get (ecore_evas_ecore_evas_get (evas_object_evas_get (_candidate_window)), &x, &y, &width, &height);*/
/* Get exact candidate window size */
- int x2, y2;
- evas_object_geometry_get (_candidate_window, &x2, &y2, &width, &height);
+ /*int x2, y2;
+ evas_object_geometry_get (_candidate_window, &x2, &y2, &width, &height);*/
+
+ x = _candidate_x;
+ y = _candidate_y;
+ width = _candidate_width;
+ height = _candidate_height;
}
info.pos_x = x;
info.pos_y = y;
- info.width = _candidate_width;
- info.height = _candidate_height;
+ info.width = width;
+ info.height = height;
+
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << " x:" << info.pos_x << " y:" << info.pos_y
+ << " width:" << info.width << " height:" << info.height << "\n";
+}
+
+/**
+ * @brief Get input panel geometry slot function for PanelAgent.
+ *
+ * @param info The data is used to store input panel position and size.
+ */
+static void slot_get_input_panel_geometry (struct rectinfo &info)
+{
+ VIRTUAL_KEYBOARD_STATE kbd_state = _ise_show ? KEYBOARD_STATE_ON : KEYBOARD_STATE_OFF;
+
+ if (_ise_width == 0 && _ise_height == 0) {
+ info.pos_x = 0;
+ if (_candidate_window && evas_object_visible_get (_candidate_window)) {
+ info.width = _candidate_width;
+ info.height = _candidate_height;
+ }
+ int angle = efl_get_angle_for_root_window (NULL);
+ if (angle == 90 || angle == 270)
+ info.pos_y = _screen_width - info.height;
+ else
+ info.pos_y = _screen_height - info.height;
+ } else {
+ get_ise_geometry (info, kbd_state);
+ if (_ise_width == -1 && _ise_height == -1) {
+ ; // Floating style
+ } else {
+ if (_candidate_window && evas_object_visible_get (_candidate_window)) {
+ int height = ui_candidate_get_valid_height ();
+ if ((_candidate_height - height) > _ise_height) {
+ info.pos_y = info.pos_y + info.height - _candidate_height;
+ info.height = _candidate_height;
+ } else {
+ info.pos_y -= height;
+ info.height += height;
+ }
+ }
+ }
+ }
+
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << " x:" << info.pos_x << " y:" << info.pos_y
+ << " width:" << info.width << " height:" << info.height << "\n";
}
/**
*/
static void slot_set_active_ise_by_uuid (const String &ise_uuid, bool changeDefault)
{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+ SCIM_DEBUG_MAIN (3) << __FUNCTION__ << " (" << ise_uuid << ")\n";
set_active_ise_by_uuid (ise_uuid, 0, changeDefault);
}
isf_load_ise_information (ALL_ISE, _config);
bool ret = isf_update_ise_list (ALL_ISE, _config);
- std::vector<String> selected_lang;
- isf_get_enabled_languages (selected_lang);
- isf_get_enabled_ise_names_in_languages (selected_lang, list);
+ std::vector<String> langs;
+ isf_get_all_languages (langs);
+ isf_get_all_ise_names_in_languages (langs, list);
_panel_agent->update_ise_list (list);
return ret;
for (; iter != _groups.end (); iter++) {
lang_name = scim_get_language_name (iter->first);
- if (std::find (_disabled_langs.begin (), _disabled_langs.end (), lang_name) ==_disabled_langs.end ())
- list.push_back (lang_name);
+ list.push_back (lang_name);
}
}
}
/**
- * @brief Set ISF language slot function for PanelAgent.
- *
- * @param language The ISF language string.
- */
-static void slot_set_isf_language (const String &language)
-{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
-
- if (language.length () <= 0)
- return;
-
- isf_set_language (language);
-}
-
-/**
* @brief Get ISE information slot function for PanelAgent.
*
* @param uuid The ISE uuid.
* @brief Set keyboard ISE slot function for PanelAgent.
*
* @param type The variable should be ISM_TRANS_CMD_SET_KEYBOARD_ISE_BY_UUID.
- * @param ise The variable is ISE uuid.
+ * @param uuid The variable is ISE uuid.
*/
-static void slot_set_keyboard_ise (int type, const String &ise)
+static void slot_set_keyboard_ise (int type, const String &uuid)
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- if (ise.length () <= 0)
+ if (uuid.length () <= 0)
return;
- String ise_uuid = ise;
String language = String ("~other");/*scim_get_locale_language (scim_get_current_locale ());*/
- _config->write (String (SCIM_CONFIG_DEFAULT_IMENGINE_FACTORY) + String ("/") + language, ise_uuid);
+ _config->write (String (SCIM_CONFIG_DEFAULT_IMENGINE_FACTORY) + String ("/") + language, uuid);
_config->flush ();
- _panel_agent->change_factory (ise_uuid);
+ _panel_agent->change_factory (uuid);
}
/**
{
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
- String language = String ("~other");/*scim_get_locale_language (scim_get_current_locale ());*/
- String uuid = _config->read (String (SCIM_CONFIG_DEFAULT_IMENGINE_FACTORY) + String ("/") + language, String (""));
- if (ise_uuid.length () > 0)
- uuid = ise_uuid;
- for (unsigned int i = 0; i < _uuids.size (); i++) {
- if (uuid == _uuids[i]) {
- ise_name = _names[i];
- ise_uuid = uuid;
- return;
- }
- }
- ise_name = String ("");
- ise_uuid = String ("");
+ isf_get_keyboard_ise (ise_uuid, ise_name, _config);
}
/**
}
/**
- * @brief Callback function for abnormal signal.
+ * @brief Handler function for HelperManager input.
*
- * @param sig The signal.
+ * @param user_data Data to pass when it is called.
+ * @param fd_handler The Ecore Fd handler.
+ *
+ * @return ECORE_CALLBACK_RENEW
*/
-static void signalhandler (int sig)
+static Eina_Bool helper_manager_input_handler (void *user_data, Ecore_Fd_Handler *fd_handler)
{
- SCIM_DEBUG_MAIN (1) << __FUNCTION__ << "...\n";
+ if (_panel_agent->has_helper_manager_pending_event ()) {
+ if (!_panel_agent->filter_helper_manager_event ()) {
+ std::cerr << "_panel_agent->filter_helper_manager_event () is failed!!!\n";
+ elm_exit ();
+ }
+ } else {
+ std::cerr << "_panel_agent->has_helper_manager_pending_event () is failed!!!\n";
+ elm_exit ();
+ }
- if (_panel_agent != NULL)
- _panel_agent->stop ();
- elm_exit ();
+ return ECORE_CALLBACK_RENEW;
}
-#if HAVE_VCONF
/**
- * @brief Callback function for setting theme change.
+ * @brief Callback function for abnormal signal.
*
- * @param key The key node.
- * @param data The data to pass to this callback.
+ * @param sig The signal.
*/
-static void setting_theme_changed_cb (keynode_t *key, void* data)
+static void signalhandler (int sig)
{
- SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
+ SCIM_DEBUG_MAIN (1) << __FUNCTION__ << " Signal=" << sig << "\n";
- char *theme_str = vconf_get_str (VCONFKEY_THEME);
- if (!theme_str) return;
-
- if (String (theme_str) == "tizen-black" || String (theme_str) == "tizen-black-hd")
- _candidate_edje_file = String (EFL_CANDIDATE_THEME1);
- else if (String (theme_str) == "tizen" || String (theme_str) == "tizen-hd")
- _candidate_edje_file = String (EFL_CANDIDATE_THEME2);
-
- free (theme_str);
+ elm_exit ();
}
+#if HAVE_VCONF
/**
* @brief Update keyboard ISE name when display language is changed.
*
/* Remove callback function for input language and display language */
vconf_ignore_key_changed (VCONFKEY_LANGSET, display_language_changed_cb);
- vconf_ignore_key_changed (VCONFKEY_THEME, setting_theme_changed_cb);
}
/**
}
/* Add callback function for input language and display language */
vconf_notify_key_changed (VCONFKEY_LANGSET, display_language_changed_cb, NULL);
- vconf_notify_key_changed (VCONFKEY_THEME, setting_theme_changed_cb, NULL);
- setting_theme_changed_cb (NULL, NULL);
scim_global_config_update ();
set_language_and_locale ();
SCIM_DEBUG_MAIN (3) << __FUNCTION__ << "...\n";
unsigned int val = 0;
+ bool fixed = _config->read (String (ISF_CONFIG_PANEL_FIXED_FOR_HARDWARE_KBD), true);
_config->write (ISF_CONFIG_HARDWARE_KEYBOARD_DETECT, 0);
if (ecore_x_window_prop_card32_get (ecore_x_window_root_first_get (), ecore_x_atom_get (PROP_X_EXT_KEYBOARD_EXIST), &val, 1)) {
String uuid, name;
isf_get_keyboard_ise (uuid, name, _config);
set_active_ise_by_uuid (uuid, 0, 1);
+ if (fixed) {
+ _ise_width = 0;
+ _ise_height = 0;
+ if (_candidate_window && _more_btn && _close_btn) {
+ edje_object_file_set (_more_btn, _candidate_edje_file.c_str (), "close_button");
+ edje_object_file_set (_close_btn, _candidate_edje_file.c_str (), "more_button");
+ }
+ } else {
+ _ise_width = -1;
+ _ise_height = -1;
+ }
+ _ise_show = false;
_config->write (ISF_CONFIG_HARDWARE_KEYBOARD_DETECT, 1);
} else {
String previous_helper = _config->read (SCIM_CONFIG_DEFAULT_HELPER_ISE, _initial_ise.uuid);
set_active_ise_by_uuid (previous_helper, 0, 1);
+ if (_candidate_window && _more_btn && _close_btn) {
+ edje_object_file_set (_more_btn, _candidate_edje_file.c_str (), "more_button");
+ edje_object_file_set (_close_btn, _candidate_edje_file.c_str (), "close_button");
+ }
}
}
+ _config->write (ISF_CONFIG_PANEL_FIXED_FOR_HARDWARE_KBD, fixed);
+ _config->flush ();
_config->reload ();
}
struct tms tiks_buf;
_clock_start = times (&tiks_buf);
- int i, ret1, hib_fd;
+ int i, ret1, hib_fd, fd;
#ifdef WAIT_WM
int try_count = 0;
#endif
- size_t j;
int ret = 0;
bool daemon = false;
ConfigModule *config_module = NULL;
String config_name = String ("socket");
String display_name = String ();
- char *clang = NULL;
Ecore_Fd_Handler *panel_agent_read_handler = NULL;
+ Ecore_Fd_Handler *helper_manager_handler = NULL;
Ecore_Event_Handler *xclient_msg_handler = NULL;
Ecore_Event_Handler *prop_change_handler = NULL;
_config = new DummyConfig ();
}
- signal (SIGQUIT, signalhandler);
- signal (SIGTERM, signalhandler);
- signal (SIGINT, signalhandler);
-
setenv ("ELM_FPS", "6000", 1);
setenv ("ELM_ENGINE", "software_x11", 1); /* to avoid the inheritance of ELM_ENGINE */
set_language_and_locale ();
if (check_file ("/tmp/.wm_ready"))
break;
- if (try_count == 100) {
+ if (try_count == 6000) {
std::cerr << "[ISF-PANEL-EFL] Timeout. cannot check the state of window manager....\n";
break;
}
for (i = 0; i < SCIM_LOOKUP_TABLE_MAX_PAGESIZE; i++) {
_candidate_0 [i] = NULL;
_candidate_items [i] = NULL;
+ _seperate_0 [i] = NULL;
+ _seperate_items [i] = NULL;
+ _line_items [i] = NULL;
}
- efl_get_screen_size (_screen_width, _screen_height);
+ efl_get_screen_resolution (_screen_width, _screen_height);
- _width_rate = (float)(_screen_width / 480.0);
- _height_rate = (float)(_screen_height / 800.0);
+ _width_rate = (float)(_screen_width / 720.0);
+ _height_rate = (float)(_screen_height / 1280.0);
_blank_width = (int)(_blank_width * _width_rate);
_item_min_width = (int)(_item_min_width * _width_rate);
_item_min_height = (int)(_item_min_height * _height_rate);
- _aux_font_size = (int)(_aux_font_size * _width_rate);
-
- _button_font_size = (int)(_button_font_size * _width_rate);
- _candidate_font_max_size = (int)(_candidate_font_max_size * _width_rate);
- _candidate_font_min_size = (int)(_candidate_font_min_size * _width_rate);
+ _candidate_width = (int)(_candidate_port_width * _width_rate);
+ _candidate_height = (int)(_candidate_port_height_min * _height_rate);
+ _indicator_height = (int)(_indicator_height * _height_rate);
- _more_port_height = (int)(_more_port_height * _height_rate);
- _more_land_height = (int)(_more_land_height * _width_rate);
+ _aux_font_size = (int)(_aux_font_size * _width_rate);
+ _candidate_font_size = (int)(_candidate_font_size * _width_rate);
/* Load ISF configuration */
load_config ();
_initial_ise.uuid = scim_global_config_read (String (SCIM_GLOBAL_CONFIG_INITIAL_ISE_UUID), String ("ff110940-b8f0-4062-9ff6-a84f4f3575c0"));
_initial_ise.name = scim_global_config_read (String (SCIM_GLOBAL_CONFIG_INITIAL_ISE_NAME), String ("Input Pad"));
- for (j = 0; j < _uuids.size (); ++j) {
- if (!_uuids[j].compare (_initial_ise.uuid))
- break;
- }
-
- if (j == _uuids.size ()) {
- for (j = 0; j < _uuids.size (); ++j) {
- if (_modes[j] == TOOLBAR_HELPER_MODE) {
- _initial_ise.type = _modes[j];
- _initial_ise.uuid = _uuids[j];
- _initial_ise.name = _names[j];
- }
- }
- }
-
if (daemon) {
check_time ("ISF Panel EFL run as daemon");
scim_daemon ();
if (ret1 == -1)
std::cerr << "heynoti_attach_handler () is failed!!!\n";
- clang = vconf_get_str (VCONFKEY_ISF_INPUT_LANG_STR);
- if (clang == NULL) {
- std::cerr << "\nGet vconf key value failed, set active language to Automatic...\n";
- isf_set_language ("Automatic");
- } else {
- isf_set_language (String (clang));
- }
-
if (!ecore_file_exists ("/opt/etc/.hib_capturing")) {
/* in case of normal booting */
hibernation_leave_cb ((void *)1);
}
-
- /* set hibernation ready state flag */
- vconf_set_int ("memory/hibernation/isf_ready", 1);
#endif
+ /* create hibernation ready file */
+ FILE *rfd;
+ rfd = fopen (ISF_READY_FILE, "w+");
+ if (rfd)
+ fclose (rfd);
+
xclient_msg_handler = ecore_event_handler_add (ECORE_X_EVENT_CLIENT_MESSAGE, x_event_client_message_cb, NULL);
ecore_x_event_mask_set (ecore_x_window_root_first_get (), ECORE_X_EVENT_MASK_WINDOW_PROPERTY);
prop_change_handler = ecore_event_handler_add (ECORE_X_EVENT_WINDOW_PROPERTY, x_event_property_change_cb, NULL);
+ fd = _panel_agent->get_helper_manager_id ();
+ if (fd >= 0)
+ helper_manager_handler = ecore_main_fd_handler_add (fd, ECORE_FD_READ, helper_manager_input_handler, NULL, NULL, NULL);
/* Set elementary scale */
- {
- Evas_Coord win_w = 0, win_h = 0;
- ecore_x_window_size_get (ecore_x_window_root_first_get (), &win_w, &win_h);
- if (win_w) {
- elm_config_scale_set (win_w / 720.0f);
- }
- }
+ if (_screen_width)
+ elm_config_scale_set (_screen_width / 720.0f);
+
+ signal (SIGQUIT, signalhandler);
+ signal (SIGTERM, signalhandler);
+ signal (SIGINT, signalhandler);
+ signal (SIGHUP, signalhandler);
check_time ("EFL Panel launch time");
elm_run ();
- elm_shutdown ();
_config->flush ();
ret = 0;
ecore_event_handler_del (xclient_msg_handler);
ecore_event_handler_del (prop_change_handler);
+ if (helper_manager_handler)
+ ecore_main_fd_handler_del (helper_manager_handler);
#if HAVE_VCONF
hibernation_enter_cb (NULL);
heynoti_close (hib_fd);
#endif
cleanup:
+ ui_candidate_delete_check_size_timer ();
+
if (!_config.null ())
_config.reset ();
if (config_module)
delete config_module;
- if (_panel_agent)
+ if (_panel_agent) {
+ _panel_agent->stop ();
delete _panel_agent;
+ }
delete []new_argv;
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
/////////////////////////////////////////////////////////////////////////////
static std::vector<String> _current_modules_list;
-static MapStringVectorString _disabled_ise_map;
-static std::vector<String> _disabled_langs_bak;
-std::vector<String> _disabled_langs;
-
/////////////////////////////////////////////////////////////////////////////
// Declaration of internal functions.
}
/**
- * @brief Get enabled languages.
- *
- * @param enabled_langs The list to store languages.
- */
-void isf_get_enabled_languages (std::vector<String> &enabled_langs)
-{
- String lang_name;
-
- for (MapStringVectorSizeT::iterator it = _groups.begin (); it != _groups.end (); ++it) {
- lang_name = scim_get_language_name_english (it->first);
-
- if (std::find (_disabled_langs.begin (), _disabled_langs.end (), lang_name) == _disabled_langs.end ())
- enabled_langs.push_back (lang_name);
- }
-}
-
-/**
- * @brief Get enabled ISE names for the specific languages.
+ * @brief Get all ISE names for the specific languages.
*
* @param lang_list The specific languages list.
* @param ise_names The list to store ISE names .
*/
-void isf_get_enabled_ise_names_in_languages (std::vector<String> lang_list, std::vector<String> &ise_names)
+void isf_get_all_ise_names_in_languages (std::vector<String> lang_list, std::vector<String> &ise_names)
{
String lang_name;
- String active_app ("Default");
for (MapStringVectorSizeT::iterator it = _groups.begin (); it != _groups.end (); ++it) {
lang_name = scim_get_language_name_english (it->first);
if (_current_modules_list.size () > 0 &&
std::find (_current_modules_list.begin (), _current_modules_list.end (), _module_names[it->second[i]]) == _current_modules_list.end ())
continue;
- if (std::find (_disabled_ise_map[active_app].begin (), _disabled_ise_map[active_app].end (), _uuids[it->second[i]]) ==_disabled_ise_map[active_app].end ()) {
- // Avoid to add the same ise
- if (std::find (ise_names.begin (), ise_names.end (), _names[it->second[i]]) == ise_names.end ())
- ise_names.push_back (_names[it->second[i]]);
- }
+ // Avoid to add the same ise
+ if (std::find (ise_names.begin (), ise_names.end (), _names[it->second[i]]) == ise_names.end ())
+ ise_names.push_back (_names[it->second[i]]);
}
}
}
void isf_get_helper_names_in_languages (std::vector<String> lang_list, std::vector<String> &helper_names)
{
String lang_name;
- String active_app ("Default");
for (MapStringVectorSizeT::iterator it = _groups.begin (); it != _groups.end (); ++it) {
lang_name = scim_get_language_name_english (it->first);
if (_current_modules_list.size () > 0 &&
std::find (_current_modules_list.begin (), _current_modules_list.end (), _module_names[it->second[i]]) == _current_modules_list.end ())
continue;
- if (std::find (_disabled_ise_map[active_app].begin (), _disabled_ise_map[active_app].end (), _uuids[it->second[i]])
- ==_disabled_ise_map[active_app].end ()) {
- // Avoid to add the same ISE
- if (std::find (helper_names.begin (), helper_names.end (), _names[it->second[i]]) == helper_names.end ())
- helper_names.push_back (_names[it->second[i]]);
- }
+ // Avoid to add the same ISE
+ if (std::find (helper_names.begin (), helper_names.end (), _names[it->second[i]]) == helper_names.end ())
+ helper_names.push_back (_names[it->second[i]]);
}
}
}
}
ise_langs.clear ();
}
-
- /* Get ISF default language */
- std::vector<String> isf_default_langs;
- isf_default_langs = scim_global_config_read (String (SCIM_GLOBAL_CONFIG_ISF_DEFAULT_LANGUAGES), isf_default_langs);
-
- /* No default ISF language */
- if (isf_default_langs.size () == 0) {
- String sys_input_lang, lang_info ("English");
- sys_input_lang = config->read (String (SCIM_CONFIG_SYSTEM_INPUT_LANGUAGE), sys_input_lang);
- MapStringVectorSizeT::iterator g = _groups.find (sys_input_lang);
- if (g != _groups.end ())
- lang_info = sys_input_lang;
- else
- std::cerr << "System input language is not included in the ISF languages.\n";
-
- for (MapStringVectorSizeT::iterator it = _groups.begin (); it != _groups.end (); ++it) {
- String lang_name = scim_get_language_name_english (it->first);
- if (strcmp (lang_info.c_str (), lang_name.c_str ())) {
- _disabled_langs.push_back (lang_name);
- _disabled_langs_bak.push_back (lang_name);
- }
- }
- } else {
- std::vector<String> disabled;
- disabled = scim_global_config_read (String (SCIM_GLOBAL_CONFIG_DISABLED_LANGS), disabled);
- for (size_t i = 0; i < disabled.size (); i++) {
- _disabled_langs.push_back (disabled[i]);
- _disabled_langs_bak.push_back (disabled[i]);
- }
- }
}
/**
return ret;
}
-/**
- * @brief Set language as specific language.
- *
- * @param language The specific language.
- */
-void isf_set_language (String language)
-{
- if (language.length () <= 0)
- return;
-
- std::vector<String> langlist, all_langs;
- if (language == String ("Automatic")) {
- _disabled_langs.clear ();
- _disabled_langs_bak.clear ();
- } else {
- scim_split_string_list (langlist, language);
- isf_get_all_languages (all_langs);
-
- _disabled_langs.clear ();
- _disabled_langs_bak.clear ();
-
- for (unsigned int i = 0; i < all_langs.size (); i++) {
- if (std::find (langlist.begin (), langlist.end (), all_langs[i]) == langlist.end ()) {
- _disabled_langs.push_back (all_langs[i]);
- _disabled_langs_bak.push_back (all_langs[i]);
- }
- }
- }
- scim_global_config_write (String (SCIM_GLOBAL_CONFIG_DISABLED_LANGS), _disabled_langs);
-
- std::vector<String> enable_langs;
- for (MapStringVectorSizeT::iterator it = _groups.begin (); it != _groups.end (); ++it) {
- String lang_name = scim_get_language_name (it->first);
- if (std::find (_disabled_langs.begin (), _disabled_langs.end (), lang_name) == _disabled_langs.end ())
- enable_langs.push_back (lang_name);
- }
- scim_global_config_write (String (SCIM_GLOBAL_CONFIG_ISF_DEFAULT_LANGUAGES), enable_langs);
- scim_global_config_flush ();
-}
-
/*
vi:ts=4:nowrap:ai:expandtab
*/
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
#define ENGLISH_KEYBOARD_MODULE "English/Keyboard"
-#define EFL_CANDIDATE_BG (SCIM_DATADIR "/pixmaps/08_textinput_panel_bg.png")
-
-#ifndef VCONFKEY_ISF_INPUT_LANG_STR
-#define VCONFKEY_ISF_PREFIX "db/isf"
-#define VCONFKEY_ISF_INPUT_LANG_STR (VCONFKEY_ISF_PREFIX "/input_lang")
-#endif
-#ifndef VCONFKEY_LANGSET
-#define VCONFKEY_LANGSET "db/menu_widget/language"
-#endif
-#ifndef VCONFKEY_THEME
-#define VCONFKEY_THEME "db/setting/selected_theme"
-#endif
-
-
#if SCIM_USE_STL_EXT_HASH_MAP
typedef __gnu_cxx::hash_map <String, std::vector <size_t>, scim_hash_string> MapStringVectorSizeT;
typedef std::map <String, std::vector <String> > MapStringVectorString;
} LOAD_ISE_TYPE;
void isf_get_all_languages (std::vector<String> &all_langs);
-void isf_get_enabled_languages (std::vector<String> &enabled_langs);
-
-void isf_get_enabled_ise_names_in_languages (std::vector<String> lang_list, std::vector<String> &ise_names);
+void isf_get_all_ise_names_in_languages (std::vector<String> lang_list, std::vector<String> &ise_names);
void isf_get_keyboard_ise (String &ise_uuid, String &ise_name, const ConfigPointer &config);
void isf_get_keyboard_names_in_languages (std::vector<String> lang_list, std::vector<String> &keyboard_names);
void isf_load_ise_information (LOAD_ISE_TYPE type, const ConfigPointer &config);
bool isf_update_ise_list (LOAD_ISE_TYPE type, const ConfigPointer &config);
-void isf_set_language (String language);
-
#endif /* __ISF_PANEL_UTILITY_H */
/*
\r
noinst_HEADERS =\r
\r
-moduledir = /opt/ug/lib\r
+moduledir = /usr/ug/lib\r
module_LTLIBRARIES = libug-isfsetting-efl.la libug-keyboard-setting-wizard-efl.la\r
libug_isfsetting_efl_la_SOURCES = isf_setting_efl.cpp \\r
scim_setup_module_efl.cpp \\r
\r
libug_keyboard_setting_wizard_efl_la_CXXFLAGS = @EFL_CFLAGS@ \\r
@VCONF_CFLAGS@ \\r
- @DLOG_CFLAGS@\r
+ @DLOG_CFLAGS@ \\r
+ @UIGADGET_CFLAGS@\r
\r
libug_keyboard_setting_wizard_efl_la_LDFLAGS = -avoid-version \\r
-export-dynamic \\r
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
Elm_Object_Item *sw_ise_opt_item_tizen; //sw opt
Elm_Object_Item *hw_ise_opt_item_tizen; //hw opt
void (*key_end_cb)(void *, Evas_Object *, void *);
- struct ui_gadget *ug;
+ ui_gadget_h ug;
};
#endif /* __ISF_SETTING_EFL_H */
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
struct ug_data {
Evas_Object *layout_main;
Evas_Object *naviframe;
- bundle *data;
- struct ui_gadget *ug;
+ service_h data;
+ ui_gadget_h ug;
};
#endif /* __ISF_SETTING_WIZARD_H */
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
using namespace scim;
-
-#define SETTING_AUTO_CAPITALIZATION "isfsetting/auto_capitalization"
-#define SETTING_SW_KEYBOARD_CONNECTION "isfsetting/sw_keyboard_connection"
-
#define _EDJ(x) elm_layout_edje_get(x)
#define ISF_SETTING_EDJ (SCIM_DATADIR "/isfsetting.edj")
#define PADDING_X 25
enum
{
AUTO_CAPITALIZATION_ITEM =0,
+ AUTO_CAPITALIZATION_TXT_ITEM =0,
+ AUTO_FULL_STOP_ITEM,
+ AUTO_FULL_STOP_TXT_ITEM,
SW_KEYBOARD_GROUP_TITLE_ITEM,
SW_KEYBOARD_SEL_ITEM,
SW_ISE_OPTION_ITEM,
static struct ug_data *common_ugd ;
static ItemData *p_items[ITEM_TOTAL_COUNT] ;
-static Elm_Genlist_Item_Class itc1, itc2, itc3, itc4 ,itc5, itcTitle, itcSeparator;
+static Elm_Genlist_Item_Class itc1, itc2, itc3, itc4 ,itc5,itcText, itcTitle, itcSeparator;
static int mark = 0;
static int hw_mark = 0;
static Ecore_Event_Handler *_prop_change_handler = NULL;
static Evas_Object *sw_radio_grp = NULL; //test view raido group
static std::vector<String> sw_iselist;
-static Eina_Bool f_auto_capitalization = EINA_FALSE;
+static Eina_Bool f_auto_capitalisation = EINA_FALSE;
+static Eina_Bool f_auto_full_stop = EINA_FALSE;
static ConfigPointer _config;
static char ise_bak[256] = {'\0'};
static void set_autocap_mode()
{
- if (vconf_set_bool (VCONFKEY_SETAPPL_AUTOCAPITAL_ALLOW_BOOL, f_auto_capitalization) == -1)
+ if (vconf_set_bool (VCONFKEY_AUTOCAPITAL_ALLOW_BOOL, f_auto_capitalisation) == -1)
printf("Failed to set vconf autocapital\n");
}
-static void _onoff_cb (void *data, Evas_Object *obj, void *event_info)
+static void set_auto_full_stop_mode()
{
- int index = (int)data;
-
- if (index == AUTO_CAPITALIZATION_ITEM) {
- if (elm_check_state_get (obj) == EINA_TRUE)
- f_auto_capitalization = EINA_TRUE;
- else
- f_auto_capitalization = EINA_FALSE;
-
- set_autocap_mode();
- }
+ if (vconf_set_bool (VCONFKEY_AUTOPERIOD_ALLOW_BOOL, f_auto_full_stop) == -1)
+ printf("Failed to set vconf autoperiod\n");
}
static String uuid_to_name(String uuid)
elm_label_wrap_width_set (label, win_w - PADDING_X * 2);
elm_object_text_set (label, normal_langlist_str.c_str());
elm_object_part_content_set (layout, "content", label);
-
elm_object_content_set (scroller, layout);
//Push the layout along with function buttons and title
- Elm_Object_Item *it = elm_naviframe_item_push (common_ugd->naviframe, _T(sw_iselist[index].c_str()), NULL, NULL, scroller, NULL);
+ Elm_Object_Item *it = elm_naviframe_item_push(common_ugd->naviframe, sw_iselist[index].c_str(), NULL, NULL, scroller, NULL);
Evas_Object *back_btn = elm_object_item_part_content_get (it, "prev_btn");
evas_object_smart_callback_add (back_btn, "clicked", lang_view_back_cb, NULL);
common_ugd->key_end_cb = lang_view_back_cb;
}
+static char *_gl_text_get(void *data, Evas_Object *obj, const char *part)
+{
+ int index = (int)data;
+ return strdup(p_items[index]->text);
+}
+
static char *_gl_label_get(void *data, Evas_Object *obj, const char *part)
{
ItemData *item_data = (ItemData *)data;
Evas_Object *onoff_ck = elm_check_add(obj);
elm_object_style_set (onoff_ck, "on&off");
if (item_data->mode == AUTO_CAPITALIZATION_ITEM) {
- elm_check_state_set (onoff_ck,f_auto_capitalization);
+ elm_check_state_set (onoff_ck,f_auto_capitalisation);
+ }
+ else if (item_data->mode == AUTO_FULL_STOP_ITEM) {
+ elm_check_state_set (onoff_ck,f_auto_full_stop);
}
- evas_object_smart_callback_add (onoff_ck, "changed", _onoff_cb, (void *)(item_data->mode));
return onoff_ck;
}
int id = (int) (data);
if (id == AUTO_CAPITALIZATION_ITEM) {
- f_auto_capitalization = (f_auto_capitalization == EINA_TRUE? EINA_FALSE:EINA_TRUE);
+ f_auto_capitalisation = (f_auto_capitalisation == EINA_TRUE? EINA_FALSE:EINA_TRUE);
set_autocap_mode();
}
+ else if (id == AUTO_FULL_STOP_ITEM) {
+ f_auto_full_stop = (f_auto_full_stop == EINA_TRUE? EINA_FALSE:EINA_TRUE);
+ set_auto_full_stop_mode();
+ }
elm_genlist_item_update(item);
ugd->key_end_cb = sw_keyboard_selection_view_back_cb;
if (sw_radio_grp != NULL) {
- evas_object_del(sw_radio_grp);
+ evas_object_del (sw_radio_grp);
sw_radio_grp = NULL;
}
Evas_Object *genlist = elm_genlist_add (ugd->naviframe);
+ elm_object_style_set(genlist, "dialogue");
evas_object_show (genlist);
//Push the layout along with function buttons and title
Evas_Object *popup = elm_popup_add (ugd->naviframe);
evas_object_size_hint_weight_set (popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
char tmp[256] = {'\0'};
- snprintf (tmp, sizeof (tmp), "%s: %s", isename, _T("No option"));
+ snprintf (tmp, sizeof (tmp), "%s: %s", isename, _T("No options"));
elm_object_text_set (popup, tmp);
elm_popup_timeout_set (popup, 3.0);
evas_object_smart_callback_add (popup, "response", response_cb, NULL);
evas_object_show (popup);
} else {
char title[256];
- snprintf (title, sizeof (title), _T("Options"));
+ snprintf (title, sizeof (title), _T("Keyboard settings"));
ugd->opt_eo = mdl->create_ui (ugd->layout_main, ugd->naviframe);
mdl->load_config (_config);
ugd->key_end_cb = hw_keyboard_selection_view_back_cb;
if (hw_radio_grp != NULL) {
- evas_object_del(hw_radio_grp);
+ evas_object_del (hw_radio_grp);
hw_radio_grp = NULL;
}
Evas_Object *genlist = elm_genlist_add(ugd->naviframe);
+ elm_object_style_set(genlist, "dialogue");
evas_object_show(genlist);
//Push the layout along with function buttons and title
static Evas_Object *isf_setting_main_view_tizen (ug_data *ugd)
{
Elm_Object_Item *item = NULL;
+ Eina_Bool fullstop = EINA_FALSE;
if (ugd->naviframe == NULL)
{
ugd->key_end_cb = back_cb;
Evas_Object *genlist = elm_genlist_add(ugd->naviframe);
+ elm_object_style_set(genlist, "dialogue");
+ elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS);
//set item class for 1text.1icon(text+radiobutton)
itc1.item_style = "dialogue/1text.1icon";
itc1.func.text_get = _gl_label_get;
itcTitle.func.content_get = NULL;
itcTitle.func.state_get = _gl_state_get;
itcTitle.func.del = _gl_del;
+
+ itcText.item_style = "multiline/1text";
+ itcText.func.text_get = _gl_text_get;
+ itcText.func.content_get = NULL;
+ itcText.func.state_get = _gl_state_get;
+ itcText.func.del = _gl_del;
+
//==================================group begin =======================
ItemData *item_data = NULL;
if (item_data != NULL) {
memset (item_data, 0, sizeof(ItemData));
p_items[AUTO_CAPITALIZATION_ITEM] = item_data;
- item_data->text = strdup(_T("Auto capitalization"));
+ item_data->text = strdup(_T("Auto capitalisation"));
item_data->mode = AUTO_CAPITALIZATION_ITEM;
- ugd->autocapital_item = elm_genlist_item_append(
+ ugd->autocapital_item = elm_genlist_item_append (
genlist, // genlist object
&itc1, // item class
item_data, // data
elm_object_item_disabled_set (ugd->autocapital_item, EINA_TRUE);
}
+//Text
+ item_data = (ItemData *)malloc(sizeof(ItemData));
+ if (item_data != NULL) {
+ memset (item_data, 0, sizeof(ItemData));
+ p_items[AUTO_CAPITALIZATION_TXT_ITEM] = item_data;
+ item_data->text = strdup(_T("Auto capitalisation first letter in keyboard"));
+ elm_genlist_item_append (
+ genlist, // genlist object
+ &itcText, // item class
+ (void *)(AUTO_CAPITALIZATION_TXT_ITEM), // data
+ NULL,
+ ELM_GENLIST_ITEM_NONE,
+ NULL,
+ NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ }
+
+ char *env = getenv ("ISF_AUTOFULLSTOP");
+
+ if (env)
+ fullstop = !!atoi (env);
+
+ if (fullstop) {
+//separator
+ item = elm_genlist_item_append(
+ genlist, // genlist object
+ &itcSeparator, // item class
+ NULL, // data
+ NULL,
+ ELM_GENLIST_ITEM_NONE,
+ NULL,
+ NULL);
+ elm_genlist_item_select_mode_set (item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+ //group1 item2
+ item_data = (ItemData *)malloc(sizeof(ItemData));
+ if (item_data != NULL) {
+ memset (item_data, 0, sizeof(ItemData));
+ p_items[AUTO_FULL_STOP_ITEM] = item_data;
+ item_data->text = strdup (_T("Automatic full stop"));
+ item_data->mode = AUTO_FULL_STOP_ITEM;
+ elm_genlist_item_append (
+ genlist, // genlist object
+ &itc1, // item class
+ item_data, // data
+ NULL,
+ ELM_GENLIST_ITEM_NONE,
+ _gl_sel,
+ (void *)(item_data->mode));
+ }
+
+//Text
+ item_data = (ItemData *)malloc(sizeof(ItemData));
+ if (item_data != NULL) {
+ memset (item_data, 0, sizeof(ItemData));
+ p_items[AUTO_FULL_STOP_TXT_ITEM] = item_data;
+ item_data->text = strdup(_T("Automatically insert a full stop by tapping the space bar twice when using Qwerty keyboard"));
+ elm_genlist_item_append (
+ genlist, // genlist object
+ &itcText, // item class
+ (void *)(AUTO_FULL_STOP_TXT_ITEM), // data
+ NULL,
+ ELM_GENLIST_ITEM_NONE,
+ NULL,
+ NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ }
+ }
+
//group2 title
item_data = (ItemData *)malloc(sizeof(ItemData));
if (item_data != NULL) {
//group2 item1
std::vector<String> ise_names;
- String tmpStr = _config->read(SCIM_CONFIG_DEFAULT_HELPER_ISE,String("b70bf6cc-ff77-47dc-a137-60acc32d1e0c"));
- snprintf (_active_ise_name, sizeof (_active_ise_name), "%s", (uuid_to_name(tmpStr)).c_str());
+ String tmpStr = _config->read (SCIM_CONFIG_DEFAULT_HELPER_ISE, String("b70bf6cc-ff77-47dc-a137-60acc32d1e0c"));
+ snprintf (_active_ise_name, sizeof (_active_ise_name), "%s", (uuid_to_name (tmpStr)).c_str ());
snprintf (ise_bak, sizeof (ise_bak), "%s", _active_ise_name);
- item_data = (ItemData *)malloc(sizeof(ItemData));
+ item_data = (ItemData *)malloc (sizeof (ItemData));
if (item_data != NULL) {
- memset (item_data, 0, sizeof(ItemData));
+ memset (item_data, 0, sizeof (ItemData));
p_items[SW_KEYBOARD_SEL_ITEM] = item_data;
- item_data->text = strdup(_T("Keyboard selection"));
- item_data->sub_text = strdup(_active_ise_name);
+ item_data->text = strdup (_T("Select keyboard"));
+ item_data->sub_text = strdup (_active_ise_name);
- ugd->sw_ise_item_tizen = elm_genlist_item_append(
+ ugd->sw_ise_item_tizen = elm_genlist_item_append (
genlist, // genlist object
&itc2, // item class
item_data, // data
if (item_data != NULL) {
memset (item_data, 0, sizeof(ItemData));
p_items[SW_ISE_OPTION_ITEM] = item_data;
- item_data->text = strdup (_T("Keyboard option"));
+ item_data->text = strdup (_T("Keyboard settings"));
item_data->mode = SW_ISE_OPTION_ITEM;
ugd->sw_ise_opt_item_tizen = elm_genlist_item_append(
genlist, // genlist object
if (item_data != NULL) {
memset (item_data, 0, sizeof(ItemData));
p_items[HW_KEYBOARD_GROUP_TITLE_ITEM] = item_data;
- item_data->text = strdup(_T("Hardware keyboard"));
- item = elm_genlist_item_append(
+ item_data->text = strdup (_T("Hardware keyboard"));
+ item = elm_genlist_item_append (
genlist, // genlist object
&itcTitle, // item class
item_data, // data
if (item_data != NULL) {
memset (item_data, 0, sizeof(ItemData));
p_items[HW_KEYBOARD_SEL_ITEM] = item_data;
- item_data->text = strdup(_T("Keyboard selection"));
+ item_data->text = strdup(_T("Select keyboard"));
item_data->sub_text = strdup(_active_hw_ise_name);
ugd->hw_ise_item_tizen = elm_genlist_item_append(
genlist, // genlist object
elm_object_item_disabled_set (ugd->hw_ise_item_tizen,EINA_TRUE);
}
//group3 item2
- p_items[HW_ISE_OPTION_ITEM] = NULL;
+ item_data = (ItemData *)malloc(sizeof(ItemData));
+ if (item_data != NULL) {
+ memset (item_data, 0, sizeof(ItemData));
+ p_items[HW_ISE_OPTION_ITEM] = item_data;
+ item_data->text = strdup (_T("Keyboard settings"));
+ item_data->mode = HW_ISE_OPTION_ITEM;
+ ugd->hw_ise_opt_item_tizen = elm_genlist_item_append(
+ genlist, // genlist object
+ &itc3, // item class
+ item_data, // data
+ NULL,
+ ELM_GENLIST_ITEM_NONE,
+ _gl_ise_option_sel,
+ (void *)ugd);
+
+ if (!is_hw_connected)
+ elm_object_item_disabled_set (ugd->hw_ise_opt_item_tizen, EINA_TRUE);
+ }
//==================================group end =========================
Evas_Object *back_btn = elm_button_add(ugd->naviframe);
}
#endif
int tmp_cap=0;
- vconf_get_bool (VCONFKEY_SETAPPL_AUTOCAPITAL_ALLOW_BOOL, &tmp_cap);
- if (tmp_cap == true) f_auto_capitalization = EINA_TRUE;
+ int tmp_period = 0;
+ vconf_get_bool (VCONFKEY_AUTOCAPITAL_ALLOW_BOOL, &tmp_cap);
+ vconf_get_bool (VCONFKEY_AUTOPERIOD_ALLOW_BOOL, &tmp_period);
+ if (tmp_cap == true) f_auto_capitalisation = EINA_TRUE;
+ if (tmp_period == true) f_auto_full_stop = EINA_TRUE;
}
ConfigPointer isf_imf_context_get_config (void);
return ;
}
-static void *on_create (struct ui_gadget *ug, enum ug_mode mode, bundle *data, void *priv)
+static void *on_create (ui_gadget_h ug, enum ug_mode mode, service_h s, void *priv)
{
Evas_Object *parent = NULL;
Evas_Object *content = NULL;
return (void *)ugd->layout_main;
}
-static void on_start (struct ui_gadget *ug, bundle *data, void *priv)
+static void on_start (ui_gadget_h ug, service_h s, void *priv)
{
}
-static void on_pause (struct ui_gadget *ug, bundle *data, void *priv)
+static void on_pause (ui_gadget_h ug, service_h s, void *priv)
{
}
-static void on_resume (struct ui_gadget *ug, bundle *data, void *priv)
+static void on_resume (ui_gadget_h ug, service_h s, void *priv)
{
}
-static void on_destroy (struct ui_gadget *ug, bundle *data, void *priv)
+static void on_destroy (ui_gadget_h ug, service_h s, void *priv)
{
if (ug == NULL|| priv == NULL)
return;
_prop_change_handler = NULL;
}
-static void on_message (struct ui_gadget *ug, bundle *msg, bundle *data, void *priv)
+static void on_message (ui_gadget_h ug, service_h msg, service_h data, void *priv)
{
}
-static void on_event (struct ui_gadget *ug, enum ug_event event, bundle *data, void *priv)
+static void on_event (ui_gadget_h ug, enum ug_event event, service_h s, void *priv)
{
switch (event) {
case UG_EVENT_LOW_MEMORY:
}
}
-static void on_key_event(struct ui_gadget *ug, enum ug_key_event event, bundle *data, void *priv)
+static void on_key_event(ui_gadget_h ug, enum ug_key_event event, service_h s, void *priv)
{
if ( ug == NULL || priv == NULL)
return ;
free (ugd);
}
- UG_MODULE_API int setting_plugin_reset (bundle *data, void *priv)//for setting keyboard reset
+ UG_MODULE_API int setting_plugin_reset (service_h s, void *priv)//for setting keyboard reset
{
- if (vconf_set_bool (VCONFKEY_SETAPPL_AUTOCAPITAL_ALLOW_BOOL, false) == -1)
+ if (vconf_set_bool (VCONFKEY_AUTOCAPITAL_ALLOW_BOOL, false) == -1)
+ return -1;
+ if (vconf_set_bool (VCONFKEY_AUTOPERIOD_ALLOW_BOOL, false) == -1)
return -1;
load_config_module ();
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
snprintf (ise_bak, sizeof (ise_bak), "%s", _active_ise_name);
}
- bundle *b = NULL;
- b = bundle_create();
- bundle_add(b, "name", "keyboard-setting-wizard-efl");
- bundle_add(b, "description", "previous clicked");
- ug_send_result(ugd->ug, b);
- bundle_free(b);
+ service_h s = NULL;
+ service_create(&s);
+ service_add_extra_data(s, "name", "keyboard-setting-wizard-efl");
+ service_add_extra_data(s, "description", "previous clicked");
+ ug_send_result(ugd->ug, s);
+ service_destroy(s);
back_cb(data,obj,event_info);
LOGD("Set active ISE : %s", ise_bak);
}
- bundle *b = NULL;
- b = bundle_create();
- bundle_add(b, "name", "keyboard-setting-wizard-efl");
- bundle_add(b, "description", "next clicked");
- ug_send_result(ugd->ug, b);
- bundle_free(b);
+ service_h s = NULL;
+ service_create(&s);
+ service_add_extra_data(s, "name", "keyboard-setting-wizard-efl");
+ service_add_extra_data(s, "description", "next clicked");
+ ug_send_result(ugd->ug, s);
+ service_destroy(s);
back_cb(data,obj,event_info);
LOGD("Default ISE Name : %s", ise_bak);
ugd->naviframe = _create_naviframe_layout (ugd->layout_main);
- const char *navi_btn_l_lable = bundle_get_val(ugd->data, "navi_btn_left");
- const char *navi_btn_r_lable = bundle_get_val(ugd->data, "navi_btn_right");
-
+ char *navi_btn_l_lable = NULL;
+ char *navi_btn_r_lable = NULL;
+ service_get_extra_data(ugd->data, "navi_btn_left",&navi_btn_l_lable);
+ service_get_extra_data(ugd->data, "navi_btn_right",&navi_btn_r_lable);
if (sw_radio_grp != NULL)
{
evas_object_del(sw_radio_grp);
}
Evas_Object *genlist = elm_genlist_add(ugd->naviframe);
+ elm_object_style_set(genlist, "dialogue");
evas_object_show(genlist);
Elm_Object_Item *nf_it;
elm_object_item_part_content_set(nf_it, "controlbar", cbar);
}
+ if (navi_btn_l_lable!= NULL)
+ free(navi_btn_l_lable);
+ if (navi_btn_r_lable!= NULL)
+ free(navi_btn_r_lable);
unsigned int i = 0;
sw_iselist.clear();
}
ConfigPointer isf_imf_context_get_config(void);
-static void *on_create (struct ui_gadget *ug, enum ug_mode mode, bundle *data, void *priv)
+static void *on_create (ui_gadget_h ug, enum ug_mode mode, service_h s, void *priv)
{
Evas_Object *parent = NULL;
Evas_Object *content = NULL;
struct ug_data *ugd = (struct ug_data *)priv;
ugd->ug = ug;
- ugd->data = data;
+ ugd->data = s;
parent = (Evas_Object *) ug_get_parent_layout (ug);
if (parent == NULL)
return NULL;
return (void *)ugd->layout_main;
}
-static void on_start (struct ui_gadget *ug, bundle *data, void *priv)
+static void on_start (ui_gadget_h ug, service_h s, void *priv)
{
}
-static void on_pause (struct ui_gadget *ug, bundle *data, void *priv)
+static void on_pause (ui_gadget_h ug, service_h s, void *priv)
{
}
-static void on_resume (struct ui_gadget *ug, bundle *data, void *priv)
+static void on_resume (ui_gadget_h ug, service_h s, void *priv)
{
}
-static void on_destroy (struct ui_gadget *ug, bundle *data, void *priv)
+static void on_destroy (ui_gadget_h ug, service_h s, void *priv)
{
if ( ug == NULL|| priv == NULL)
return;
}
}
-static void on_message (struct ui_gadget *ug, bundle *msg, bundle *data, void *priv)
+static void on_message (ui_gadget_h ug, service_h msg, service_h data, void *priv)
{
}
-static void on_event (struct ui_gadget *ug, enum ug_event event, bundle *data, void *priv)
+static void on_event (ui_gadget_h ug, enum ug_event event, service_h s, void *priv)
{
switch (event) {
case UG_EVENT_LOW_MEMORY:
}
}
-static void on_key_event(struct ui_gadget *ug, enum ug_key_event event, bundle *data, void *priv)
+static void on_key_event(ui_gadget_h ug, enum ug_key_event event, service_h s, void *priv)
{
if (ug == NULL)
return;
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Shuo Liu <shuo0805.liu@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
-DSCIM_ICONDIR=\"@SCIM_ICONDIR@\" \
-DSCIM_MODULE_PATH=\"@SCIM_MODULE_PATH@\"
+if SCIM_BUILD_FRONTEND_X11
+CONFIG_FRONTEND_X11_MODULE = x11.la
+SUBDIRS = imdkit
+endif
+
if SCIM_BUILD_FRONTEND_SOCKET
CONFIG_FRONTEND_SOCKET_MODULE = socket.la
endif
-noinst_HEADERS = scim_socket_frontend.h
+noinst_HEADERS = scim_x11_ic.h \
+ scim_x11_frontend.h \
+ scim_socket_frontend.h
moduledir = @SCIM_MODULE_PATH@/$(SCIM_BINARY_VERSION)/FrontEnd
-module_LTLIBRARIES = $(CONFIG_FRONTEND_SOCKET_MODULE)
+module_LTLIBRARIES = $(CONFIG_FRONTEND_X11_MODULE) $(CONFIG_FRONTEND_SOCKET_MODULE)
+
+x11_la_SOURCES = scim_x11_frontend.cpp \
+ scim_x11_ic.cpp
+
+x11_la_CFLAGS = @X_CFLAGS@
+
+x11_la_CXXFLAGS = @X_CFLAGS@
+
+x11_la_LDFLAGS = -avoid-version \
+ -rpath $(moduledir) \
+ -module \
+ @LIBTOOL_EXPORT_OPTIONS@ \
+ @X_LIBS@ \
+ @LTLIBINTL@
+
+x11_la_LIBADD = imdkit/libXimd.la \
+ $(top_builddir)/ism/src/libscim@SCIM_EPOCH@.la \
+ $(top_builddir)/ism/utils/libscim-x11utils@SCIM_EPOCH@.la
socket_la_SOURCES = scim_socket_frontend.cpp
--- /dev/null
+/******************************************************************
+Copyright 1993, 1994 by Digital Equipment Corporation, Maynard, Massachusetts,
+
+ All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the names of Digital or MIT not be
+used in advertising or publicity pertaining to distribution of the
+software without specific, written prior permission.
+
+DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
+ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
+SOFTWARE.
+
+ Author: Hiroyuki Miyamoto Digital Equipment Corporation
+ miyamoto@jrd.dec.com
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <X11/Xlibint.h>
+#include <stdlib.h>
+#include "FrameMgr.h"
+
+/* Convenient macro */
+
+#define _UNIT(n) ((int)(n) & 0xFF)
+#define _NUMBER(n) (((int)(n) >> 8) & 0xFF)
+
+/* For byte swapping */
+
+#define Swap16(p, n) ((p)->byte_swap ? \
+(((n) << 8 & 0xFF00) | \
+ ((n) >> 8 & 0xFF) \
+) : n)
+#define Swap32(p, n) ((p)->byte_swap ? \
+ (((n) << 24 & 0xFF000000) | \
+ ((n) << 8 & 0xFF0000) | \
+ ((n) >> 8 & 0xFF00) | \
+ ((n) >> 24 & 0xFF) \
+ ) : n)
+#define Swap64(p, n) ((p)->byte_swap ? \
+ (((n) << 56 & 0xFF00000000000000) | \
+ ((n) << 40 & 0xFF000000000000) | \
+ ((n) << 24 & 0xFF0000000000) | \
+ ((n) << 8 & 0xFF00000000) | \
+ ((n) >> 8 & 0xFF000000) | \
+ ((n) >> 24 & 0xFF0000) | \
+ ((n) >> 40 & 0xFF00) | \
+ ((n) >> 56 & 0xFF) \
+ ) : n)
+
+/* Type definition */
+
+typedef struct _Iter *Iter;
+
+typedef struct _FrameInst *FrameInst;
+
+typedef union
+{
+ int num; /* For BARRAY */
+ FrameInst fi; /* For POINTER */
+ Iter iter; /* For ITER */
+} ExtraDataRec, *ExtraData;
+
+typedef struct _Chain
+{
+ ExtraDataRec d;
+ int frame_no;
+ struct _Chain *next;
+} ChainRec, *Chain;
+
+typedef struct _ChainMgr
+{
+ Chain top;
+ Chain tail;
+} ChainMgrRec, *ChainMgr;
+
+typedef struct _ChainIter
+{
+ Chain cur;
+} ChainIterRec, *ChainIter;
+
+typedef struct _FrameIter
+{
+ Iter iter;
+ Bool counting;
+ unsigned int counter;
+ int end;
+ struct _FrameIter* next;
+} FrameIterRec, *FrameIter;
+
+typedef struct _FrameInst
+{
+ XimFrame template;
+ ChainMgrRec cm;
+ int cur_no;
+} FrameInstRec;
+
+typedef void (*IterStartWatchProc) (Iter it, void *client_data);
+
+typedef struct _Iter
+{
+ XimFrame template;
+ int max_count;
+ Bool allow_expansion;
+ ChainMgrRec cm;
+ int cur_no;
+ IterStartWatchProc start_watch_proc;
+ void *client_data;
+ Bool start_counter;
+} IterRec;
+
+typedef struct _FrameMgr
+{
+ XimFrame frame;
+ FrameInst fi;
+ char *area;
+ int idx;
+ Bool byte_swap;
+ int total_size;
+ FrameIter iters;
+} FrameMgrRec;
+
+typedef union
+{
+ int num; /* For BARRAY and PAD */
+ struct
+ { /* For COUNTER_* */
+ Iter iter;
+ Bool is_byte_len;
+ } counter;
+} XimFrameTypeInfoRec, *XimFrameTypeInfo;
+
+/* Special values */
+#define NO_VALUE -1
+#define NO_VALID_FIELD -2
+
+static FrameInst FrameInstInit(XimFrame frame);
+static void FrameInstFree(FrameInst fi);
+static XimFrameType FrameInstGetNextType(FrameInst fi, XimFrameTypeInfo info);
+static XimFrameType FrameInstPeekNextType(FrameInst fi, XimFrameTypeInfo info);
+static FmStatus FrameInstSetSize(FrameInst fi, int num);
+static FmStatus FrameInstSetIterCount(FrameInst fi, int num);
+static int FrameInstGetTotalSize(FrameInst fi);
+static void FrameInstReset(FrameInst fi);
+
+static Iter IterInit(XimFrame frame, int count);
+static void IterFree(Iter it);
+static int FrameInstGetSize(FrameInst fi);
+static int IterGetSize(Iter it);
+static XimFrameType IterGetNextType(Iter it, XimFrameTypeInfo info);
+static XimFrameType IterPeekNextType(Iter it, XimFrameTypeInfo info);
+static FmStatus IterSetSize(Iter it, int num);
+static FmStatus IterSetIterCount(Iter it, int num);
+static int IterGetTotalSize(Iter it);
+static void IterReset(Iter it);
+static Bool IterIsLoopEnd(Iter it, Bool* myself);
+static void IterSetStartWatch(Iter it, IterStartWatchProc proc, void* client_data);
+static void _IterStartWatch(Iter it, void* client_data);
+
+static ExtraData ChainMgrGetExtraData(ChainMgr cm, int frame_no);
+static ExtraData ChainMgrSetData(ChainMgr cm, int frame_no,
+ ExtraDataRec data);
+static Bool ChainIterGetNext(ChainIter ci, int* frame_no, ExtraData d);
+static int _FrameInstIncrement(XimFrame frame, int count);
+static int _FrameInstDecrement(XimFrame frame, int count);
+static int _FrameInstGetItemSize(FrameInst fi, int cur_no);
+static Bool FrameInstIsIterLoopEnd(FrameInst fi);
+
+static FrameIter _FrameMgrAppendIter(FrameMgr fm, Iter it, int end);
+static FrameIter _FrameIterCounterIncr(FrameIter fitr, int i);
+static void _FrameMgrRemoveIter(FrameMgr fm, FrameIter it);
+static Bool _FrameMgrIsIterLoopEnd(FrameMgr fm);
+static Bool _FrameMgrProcessPadding(FrameMgr fm, FmStatus* status);
+
+#define IterGetIterCount(it) ((it)->allow_expansion ? \
+NO_VALUE : (it)->max_count)
+
+#define IterFixIteration(it) ((it)->allow_expansion = False)
+
+#define IterSetStarter(it) ((it)->start_counter = True)
+
+#define ChainMgrInit(cm) (cm)->top = (cm)->tail = NULL
+#define ChainMgrFree(cm) \
+{ \
+ Chain tmp; \
+ Chain cur = (cm)->top; \
+ \
+ while (cur) \
+ { \
+ tmp = cur->next; \
+ Xfree (cur); \
+ cur = tmp; \
+ } \
+}
+
+#define ChainIterInit(ci, cm) \
+{ \
+ (ci)->cur = (cm)->top; \
+}
+
+/* ChainIterFree has nothing to do. */
+#define ChainIterFree(ci)
+
+#define FrameInstIsEnd(fi) ((fi)->template[(fi)->cur_no].type == EOL)
+
+FrameMgr FrameMgrInit (XimFrame frame, char* area, Bool byte_swap)
+{
+ FrameMgr fm;
+
+ fm = (FrameMgr) Xmalloc (sizeof (FrameMgrRec));
+
+ fm->frame = frame;
+ fm->fi = FrameInstInit (frame);
+ fm->area = (char *) area;
+ fm->idx = 0;
+ fm->byte_swap = byte_swap;
+ fm->total_size = NO_VALUE;
+ fm->iters = NULL;
+
+ return fm;
+}
+
+void FrameMgrInitWithData (FrameMgr fm,
+ XimFrame frame,
+ void * area,
+ Bool byte_swap)
+{
+ fm->frame = frame;
+ fm->fi = FrameInstInit (frame);
+ fm->area = (char *) area;
+ fm->idx = 0;
+ fm->byte_swap = byte_swap;
+ fm->total_size = NO_VALUE;
+}
+
+void FrameMgrFree (FrameMgr fm)
+{
+ FrameIter p, cur;
+
+ p = fm->iters;
+ cur = p;
+
+ while (p)
+ {
+ p = p->next;
+ Xfree (cur);
+ cur = p;
+ }
+ /*endwhile*/
+
+ FrameInstFree (fm->fi);
+ Xfree (fm);
+}
+
+FmStatus FrameMgrSetBuffer (FrameMgr fm, void* area)
+{
+ if (fm->area)
+ return FmBufExist;
+ fm->area = (char *) area;
+ return FmSuccess;
+}
+
+FmStatus _FrameMgrPutToken (FrameMgr fm, void *data, int data_size)
+{
+ XimFrameType type;
+ XimFrameTypeInfoRec info;
+
+ if (fm->total_size != NO_VALUE && fm->idx >= fm->total_size)
+ return FmNoMoreData;
+ /*endif*/
+
+ type = FrameInstGetNextType(fm->fi, &info);
+
+ if (type & COUNTER_MASK)
+ {
+ unsigned long input_length;
+
+ if (info.counter.is_byte_len)
+ {
+ if ((input_length = IterGetTotalSize (info.counter.iter))
+ == NO_VALUE)
+ {
+ return FmCannotCalc;
+ }
+ /*endif*/
+ }
+ else
+ {
+ if ((input_length = IterGetIterCount (info.counter.iter))
+ == NO_VALUE)
+ {
+ return FmCannotCalc;
+ }
+ /*endif*/
+ }
+ /*endif*/
+ switch (type)
+ {
+ case COUNTER_BIT8:
+ *(CARD8 *) (fm->area + fm->idx) = input_length;
+ fm->idx++;
+ break;
+
+ case COUNTER_BIT16:
+ *(CARD16 *) (fm->area + fm->idx) = Swap16 (fm, input_length);
+ fm->idx += 2;
+ break;
+
+ case COUNTER_BIT32:
+ *(CARD32 *) (fm->area + fm->idx) = Swap32 (fm, input_length);
+ fm->idx += 4;
+ break;
+
+#if defined(_NEED64BIT)
+ case COUNTER_BIT64:
+ *(CARD64 *) (fm->area + fm->idx) = Swap64 (fm, input_length);
+ fm->idx += 8;
+ break;
+#endif
+ default:
+ break;
+ }
+ /*endswitch*/
+ _FrameMgrPutToken(fm, data, data_size);
+ return FmSuccess;
+ }
+ /*endif*/
+
+ switch (type)
+ {
+ case BIT8:
+ if (data_size == sizeof (unsigned char))
+ {
+ unsigned long num = *(unsigned char *) data;
+ *(CARD8 *) (fm->area + fm->idx) = num;
+ }
+ else if (data_size == sizeof (unsigned short))
+ {
+ unsigned long num = *(unsigned short *) data;
+ *(CARD8 *) (fm->area + fm->idx) = num;
+ }
+ else if (data_size == sizeof (unsigned int))
+ {
+ unsigned long num = *(unsigned int *) data;
+ *(CARD8 *) (fm->area + fm->idx) = num;
+ }
+ else if (data_size == sizeof (unsigned long))
+ {
+ unsigned long num = *(unsigned long *) data;
+ *(CARD8 *) (fm->area + fm->idx) = num;
+ }
+ else
+ {
+ ; /* Should never be reached */
+ }
+ /*endif*/
+ fm->idx++;
+ return FmSuccess;
+
+ case BIT16:
+ if (data_size == sizeof (unsigned char))
+ {
+ unsigned long num = *(unsigned char *) data;
+ *(CARD16*)(fm->area + fm->idx) = Swap16 (fm, num);
+ }
+ else if (data_size == sizeof (unsigned short))
+ {
+ unsigned long num = *(unsigned short *) data;
+ *(CARD16 *) (fm->area + fm->idx) = Swap16 (fm, num);
+ }
+ else if (data_size == sizeof (unsigned int))
+ {
+ unsigned long num = *(unsigned int *) data;
+ *(CARD16 *) (fm->area + fm->idx) = Swap16 (fm, num);
+ }
+ else if (data_size == sizeof (unsigned long))
+ {
+ unsigned long num = *(unsigned long *) data;
+ *(CARD16 *) (fm->area + fm->idx) = Swap16 (fm, num);
+ }
+ else
+ {
+ ; /* Should never reached */
+ }
+ /*endif*/
+ fm->idx += 2;
+ return FmSuccess;
+
+ case BIT32:
+ if (data_size == sizeof (unsigned char))
+ {
+ unsigned long num = *(unsigned char *) data;
+ *(CARD32 *) (fm->area + fm->idx) = Swap32 (fm, num);
+ }
+ else if (data_size == sizeof (unsigned short))
+ {
+ unsigned long num = *(unsigned short *) data;
+ *(CARD32 *) (fm->area + fm->idx) = Swap32 (fm, num);
+ }
+ else if (data_size == sizeof (unsigned int))
+ {
+ unsigned long num = *(unsigned int *) data;
+ *(CARD32 *) (fm->area + fm->idx) = Swap32 (fm, num);
+ }
+ else if (data_size == sizeof (unsigned long))
+ {
+ unsigned long num = *(unsigned long *) data;
+ *(CARD32 *) (fm->area + fm->idx) = Swap32 (fm, num);
+ }
+ else
+ {
+ ; /* Should never reached */
+ }
+ /*endif*/
+ fm->idx += 4;
+ return FmSuccess;
+
+#if defined(_NEED64BIT)
+ case BIT64:
+ if (data_size == sizeof (unsigned char))
+ {
+ unsigned long num = *(unsigned char *) data;
+ *(CARD64 *) (fm->area + fm->idx) = Swap64 (fm, num);
+ }
+ else if (data_size == sizeof (unsigned short))
+ {
+ unsigned long num = *(unsigned short *) data;
+ *(CARD64 *) (fm->area + fm->idx) = Swap64 (fm, num);
+ }
+ else if (data_size == sizeof (unsigned int))
+ {
+ unsigned long num = *(unsigned int *) data;
+ *(CARD64 *) (fm->area + fm->idx) = Swap64 (fm, num);
+ }
+ else if (data_size == sizeof (unsigned long))
+ {
+ unsigned long num = *(unsigned long *) data;
+ *(CARD64 *) (fm->area + fm->idx) = Swap64 (fm, num);
+ }
+ else
+ {
+ ; /* Should never reached */
+ }
+ /*endif*/
+ fm->idx += 4;
+ return FmSuccess;
+#endif
+
+ case BARRAY:
+ if (info.num == NO_VALUE)
+ return FmInvalidCall;
+ /*endif*/
+ if (info.num > 0)
+ {
+ bcopy (*(char **) data, fm->area + fm->idx, info.num);
+ fm->idx += info.num;
+ }
+ /*endif*/
+ return FmSuccess;
+
+ case PADDING:
+ if (info.num == NO_VALUE)
+ return FmInvalidCall;
+ /*endif*/
+ fm->idx += info.num;
+ return _FrameMgrPutToken(fm, data, data_size);
+
+ case ITER:
+ return FmInvalidCall;
+
+ case EOL:
+ return FmEOD;
+ default:
+ break;
+ }
+ /*endswitch*/
+ return (FmStatus) NULL; /* Should never be reached */
+}
+
+FmStatus _FrameMgrGetToken (FrameMgr fm , void* data, int data_size)
+{
+ XimFrameType type;
+ static XimFrameTypeInfoRec info; /* memory */
+ FrameIter fitr;
+
+ if (fm->total_size != NO_VALUE && fm->idx >= fm->total_size)
+ return FmNoMoreData;
+ /*endif*/
+
+ type = FrameInstGetNextType(fm->fi, &info);
+
+ if (type & COUNTER_MASK)
+ {
+ int end=0;
+ FrameIter client_data;
+
+ type &= ~COUNTER_MASK;
+ switch (type)
+ {
+ case BIT8:
+ end = *(CARD8 *) (fm->area + fm->idx);
+ break;
+
+ case BIT16:
+ end = Swap16 (fm, *(CARD16 *) (fm->area + fm->idx));
+ break;
+
+ case BIT32:
+ end = Swap32 (fm, *(CARD32 *) (fm->area + fm->idx));
+ break;
+
+#if defined(_NEED64BIT)
+ case BIT64:
+ end = Swap64 (fm, *(CARD64 *) (fm->area + fm->idx));
+ break;
+#endif
+ default:
+ break;
+ }
+ /*endswitch*/
+
+ if ((client_data = _FrameMgrAppendIter (fm, info.counter.iter, end)))
+ {
+ IterSetStarter (info.counter.iter);
+ IterSetStartWatch (info.counter.iter,
+ _IterStartWatch,
+ (void *) client_data);
+ }
+ /*endif*/
+ }
+ /*endif*/
+
+ type &= ~COUNTER_MASK;
+ switch (type)
+ {
+ case BIT8:
+ if (data_size == sizeof (unsigned char))
+ {
+ *(unsigned char*) data = *(CARD8 *) (fm->area + fm->idx);
+ }
+ else if (data_size == sizeof (unsigned short))
+ {
+ *(unsigned short *) data = *(CARD8 *) (fm->area + fm->idx);
+ }
+ else if (data_size == sizeof (unsigned int))
+ {
+ *(unsigned int *) data = *(CARD8 *) (fm->area + fm->idx);
+ }
+ else if (data_size == sizeof (unsigned long))
+ {
+ *(unsigned long *) data = *(CARD8 *) (fm->area + fm->idx);
+ }
+ else
+ {
+ ; /* Should never reached */
+ }
+ /*endif*/
+ fm->idx++;
+ if ((fitr = _FrameIterCounterIncr (fm->iters, 1/*BIT8*/)))
+ _FrameMgrRemoveIter (fm, fitr);
+ /*endif*/
+ return FmSuccess;
+
+ case BIT16:
+ if (data_size == sizeof (unsigned char))
+ {
+ *(unsigned char *) data =
+ Swap16 (fm, *(CARD16 *) (fm->area + fm->idx));
+ }
+ else if (data_size == sizeof (unsigned short))
+ {
+ *(unsigned short *) data =
+ Swap16 (fm, *(CARD16 *) (fm->area + fm->idx));
+ }
+ else if (data_size == sizeof (unsigned int))
+ {
+ *(unsigned int *) data =
+ Swap16 (fm, *(CARD16 *) (fm->area + fm->idx));
+ }
+ else if (data_size == sizeof (unsigned long))
+ {
+ *(unsigned long *) data =
+ Swap16 (fm, *(CARD16 *) (fm->area + fm->idx));
+ }
+ else
+ {
+ ; /* Should never reached */
+ }
+ /*endif*/
+ fm->idx += 2;
+ if ((fitr = _FrameIterCounterIncr (fm->iters, 2/*BIT16*/)))
+ _FrameMgrRemoveIter(fm, fitr);
+ /*endif*/
+ return FmSuccess;
+
+ case BIT32:
+ if (data_size == sizeof (unsigned char))
+ {
+ *(unsigned char *) data =
+ Swap32 (fm, *(CARD32 *) (fm->area + fm->idx));
+ }
+ else if (data_size == sizeof (unsigned short))
+ {
+ *(unsigned short *) data =
+ Swap32 (fm, *(CARD32 *) (fm->area + fm->idx));
+ }
+ else if (data_size == sizeof (unsigned int))
+ {
+ *(unsigned int *) data =
+ Swap32 (fm, *(CARD32 *) (fm->area + fm->idx));
+ }
+ else if (data_size == sizeof (unsigned long))
+ {
+ *(unsigned long *) data =
+ Swap32 (fm, *(CARD32 *) (fm->area + fm->idx));
+ }
+ else
+ {
+ ; /* Should never reached */
+ }
+ /*endif*/
+ fm->idx += 4;
+ if ((fitr = _FrameIterCounterIncr (fm->iters, 4/*BIT32*/)))
+ _FrameMgrRemoveIter (fm, fitr);
+ /*endif*/
+ return FmSuccess;
+
+#if defined(_NEED64BIT)
+ case BIT64:
+ if (data_size == sizeof (unsigned char))
+ {
+ *(unsigned char *) data =
+ Swap64 (fm, *(CARD64 *) (fm->area + fm->idx));
+ }
+ else if (data_size == sizeof (unsigned short))
+ {
+ *(unsigned short *) data =
+ Swap64 (fm, *(CARD64 *) (fm->area + fm->idx));
+ }
+ else if (data_size == sizeof (unsigned int))
+ {
+ *(unsigned int *) data =
+ Swap64 (fm, *(CARD64 *) (fm->area + fm->idx));
+ }
+ else if (data_size == sizeof (unsigned long))
+ {
+ *(unsigned long *) data =
+ Swap64 (fm, *(CARD64 *) (fm->area + fm->idx));
+ }
+ else
+ {
+ ; /* Should never reached */
+ }
+ /*endif*/
+ fm->idx += 8;
+ if ((fitr = _FrameIterCounterIncr (fm->iters, 8/*BIT64*/)))
+ _FrameMgrRemoveIter (fm, fitr);
+ /*endif*/
+ return FmSuccess;
+#endif
+
+ case BARRAY:
+ if (info.num == NO_VALUE)
+ return FmInvalidCall;
+ /*endif*/
+ if (info.num > 0)
+ {
+ *(char **) data = fm->area + fm->idx;
+
+ fm->idx += info.num;
+ if ((fitr = _FrameIterCounterIncr (fm->iters, info.num)))
+ _FrameMgrRemoveIter (fm, fitr);
+ /*endif*/
+ }
+ else
+ {
+ *(char **) data = NULL;
+ }
+ /*endif*/
+ return FmSuccess;
+
+ case PADDING:
+ if (info.num == NO_VALUE)
+ return FmInvalidCall;
+ /*endif*/
+ fm->idx += info.num;
+ if ((fitr = _FrameIterCounterIncr (fm->iters, info.num)))
+ _FrameMgrRemoveIter (fm, fitr);
+ /*endif*/
+ return _FrameMgrGetToken (fm, data, data_size);
+
+ case ITER:
+ return FmInvalidCall; /* if comes here, it's a bug! */
+
+ case EOL:
+ return FmEOD;
+ default:
+ break;
+ }
+ /*endswitch*/
+ return (FmStatus) NULL; /* Should never be reached */
+}
+
+FmStatus FrameMgrSetSize (FrameMgr fm, int barray_size)
+{
+ if (FrameInstSetSize (fm->fi, barray_size) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ return FmNoMoreData;
+}
+
+FmStatus FrameMgrSetIterCount (FrameMgr fm, int count)
+{
+ if (FrameInstSetIterCount (fm->fi, count) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ return FmNoMoreData;
+}
+
+FmStatus FrameMgrSetTotalSize (FrameMgr fm, int total_size)
+{
+ fm->total_size = total_size;
+ return FmSuccess;
+}
+
+int FrameMgrGetTotalSize (FrameMgr fm)
+{
+ return FrameInstGetTotalSize (fm->fi);
+}
+
+int FrameMgrGetSize (FrameMgr fm)
+{
+ register int ret_size;
+
+ ret_size = FrameInstGetSize (fm->fi);
+ if (ret_size == NO_VALID_FIELD)
+ return NO_VALUE;
+ /*endif*/
+ return ret_size;
+}
+
+FmStatus FrameMgrSkipToken (FrameMgr fm, int skip_count)
+{
+ XimFrameType type;
+ XimFrameTypeInfoRec info;
+ register int i;
+
+ if (fm->total_size != NO_VALUE && fm->idx >= fm->total_size)
+ return FmNoMoreData;
+ /*endif*/
+ for (i = 0; i < skip_count; i++)
+ {
+ type = FrameInstGetNextType (fm->fi, &info);
+ type &= ~COUNTER_MASK;
+
+ switch (type)
+ {
+ case BIT8:
+ fm->idx++;
+ break;
+
+ case BIT16:
+ fm->idx += 2;
+ break;
+
+ case BIT32:
+ fm->idx += 4;
+ break;
+
+ case BIT64:
+ fm->idx += 8;
+ break;
+
+ case BARRAY:
+ if (info.num == NO_VALUE)
+ return FmInvalidCall;
+ /*endif*/
+ fm->idx += info.num;
+ break;
+
+ case PADDING:
+ if (info.num == NO_VALUE)
+ return FmInvalidCall;
+ /*endif*/
+ fm->idx += info.num;
+ return FrameMgrSkipToken (fm, skip_count);
+
+ case ITER:
+ return FmInvalidCall;
+
+ case EOL:
+ return FmEOD;
+ default:
+ break;
+ }
+ /*endswitch*/
+ }
+ /*endfor*/
+ return FmSuccess;
+}
+
+void FrameMgrReset (FrameMgr fm)
+{
+ fm->idx = 0;
+ FrameInstReset (fm->fi);
+}
+
+Bool FrameMgrIsIterLoopEnd (FrameMgr fm, FmStatus* status)
+{
+ do
+ {
+ if (_FrameMgrIsIterLoopEnd (fm))
+ return True;
+ /*endif*/
+ }
+ while (_FrameMgrProcessPadding (fm, status));
+
+ return False;
+}
+
+
+/* Internal routines */
+
+static Bool _FrameMgrIsIterLoopEnd (FrameMgr fm)
+{
+ return FrameInstIsIterLoopEnd (fm->fi);
+}
+
+static Bool _FrameMgrProcessPadding (FrameMgr fm, FmStatus* status)
+{
+ XimFrameTypeInfoRec info;
+ XimFrameType next_type = FrameInstPeekNextType (fm->fi, &info);
+ FrameIter fitr;
+
+ if (next_type == PADDING)
+ {
+ if (info.num == NO_VALUE)
+ {
+ *status = FmInvalidCall;
+ return True;
+ }
+ /*endif*/
+ next_type = FrameInstGetNextType (fm->fi, &info);
+ fm->idx += info.num;
+ if ((fitr = _FrameIterCounterIncr (fm->iters, info.num)))
+ _FrameMgrRemoveIter (fm, fitr);
+ /*endif*/
+ *status = FmSuccess;
+ return True;
+ }
+ /*endif*/
+ *status = FmSuccess;
+ return False;
+}
+
+static FrameInst FrameInstInit (XimFrame frame)
+{
+ FrameInst fi;
+
+ fi = (FrameInst) Xmalloc (sizeof (FrameInstRec));
+
+ fi->template = frame;
+ fi->cur_no = 0;
+ ChainMgrInit (&fi->cm);
+ return fi;
+}
+
+static void FrameInstFree (FrameInst fi)
+{
+ ChainIterRec ci;
+ int frame_no;
+ ExtraDataRec d;
+
+ ChainIterInit (&ci, &fi->cm);
+
+ while (ChainIterGetNext (&ci, &frame_no, &d))
+ {
+ register XimFrameType type;
+ type = fi->template[frame_no].type;
+ if (type == ITER)
+ {
+ if (d.iter)
+ IterFree (d.iter);
+ /*endif*/
+ }
+ else if (type == POINTER)
+ {
+ if (d.fi)
+ FrameInstFree (d.fi);
+ /*endif*/
+ }
+ /*endif*/
+ }
+ /*endwhile*/
+ ChainIterFree (&ci);
+ ChainMgrFree (&fi->cm);
+ Xfree (fi);
+}
+
+static XimFrameType FrameInstGetNextType(FrameInst fi, XimFrameTypeInfo info)
+{
+ XimFrameType ret_type;
+
+ ret_type = fi->template[fi->cur_no].type;
+
+ switch (ret_type)
+ {
+ case BIT8:
+ case BIT16:
+ case BIT32:
+ case BIT64:
+ case EOL:
+ fi->cur_no = _FrameInstIncrement(fi->template, fi->cur_no);
+ break;
+
+ case COUNTER_BIT8:
+ case COUNTER_BIT16:
+ case COUNTER_BIT32:
+ case COUNTER_BIT64:
+ if (info)
+ {
+ register int offset, iter_idx;
+
+ info->counter.is_byte_len =
+ (((long) fi->template[fi->cur_no].data & 0xFF)) == FmCounterByte;
+ offset = ((long) fi->template[fi->cur_no].data) >> 8;
+ iter_idx = fi->cur_no + offset;
+ if (fi->template[iter_idx].type == ITER)
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, iter_idx)) == NULL)
+ {
+ dr.iter = IterInit (&fi->template[iter_idx + 1], NO_VALUE);
+ d = ChainMgrSetData (&fi->cm, iter_idx, dr);
+ }
+ /*endif*/
+ info->counter.iter = d->iter;
+ }
+ else
+ {
+ /* Should never reach here */
+ }
+ /*endif*/
+ }
+ /*endif*/
+ fi->cur_no = _FrameInstIncrement (fi->template, fi->cur_no);
+ break;
+
+ case BARRAY:
+ if (info)
+ {
+ ExtraData d;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, fi->cur_no)) == NULL)
+ info->num = NO_VALUE;
+ else
+ info->num = d->num;
+ /*endif*/
+ }
+ /*endif*/
+ fi->cur_no = _FrameInstIncrement (fi->template, fi->cur_no);
+ break;
+
+ case PADDING:
+ if (info)
+ {
+ register int unit;
+ register int number;
+ register int size;
+ register int i;
+
+ unit = _UNIT ((long) fi->template[fi->cur_no].data);
+ number = _NUMBER ((long) fi->template[fi->cur_no].data);
+
+ i = fi->cur_no;
+ size = 0;
+ while (number > 0)
+ {
+ i = _FrameInstDecrement (fi->template, i);
+ size += _FrameInstGetItemSize (fi, i);
+ number--;
+ }
+ /*endwhile*/
+ info->num = (unit - (size%unit))%unit;
+ }
+ /*endif*/
+ fi->cur_no = _FrameInstIncrement (fi->template, fi->cur_no);
+ break;
+
+ case ITER:
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+ XimFrameType sub_type;
+
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, fi->cur_no)) == NULL)
+ {
+ dr.iter = IterInit (&fi->template[fi->cur_no + 1], NO_VALUE);
+ d = ChainMgrSetData (&fi->cm, fi->cur_no, dr);
+ }
+ /*endif*/
+ sub_type = IterGetNextType (d->iter, info);
+ if (sub_type == EOL)
+ {
+ fi->cur_no = _FrameInstIncrement (fi->template, fi->cur_no);
+ ret_type = FrameInstGetNextType (fi, info);
+ }
+ else
+ {
+ ret_type = sub_type;
+ }
+ /*endif*/
+ }
+ break;
+
+ case POINTER:
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+ XimFrameType sub_type;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, fi->cur_no)) == NULL)
+ {
+ dr.fi = FrameInstInit (fi->template[fi->cur_no + 1].data);
+ d = ChainMgrSetData (&fi->cm, fi->cur_no, dr);
+ }
+ /*endif*/
+ sub_type = FrameInstGetNextType (d->fi, info);
+ if (sub_type == EOL)
+ {
+ fi->cur_no = _FrameInstIncrement (fi->template, fi->cur_no);
+ ret_type = FrameInstGetNextType (fi, info);
+ }
+ else
+ {
+ ret_type = sub_type;
+ }
+ /*endif*/
+ }
+ break;
+ default:
+ break;
+ }
+ /*endswitch*/
+ return ret_type;
+}
+
+static XimFrameType FrameInstPeekNextType (FrameInst fi, XimFrameTypeInfo info)
+{
+ XimFrameType ret_type;
+
+ ret_type = fi->template[fi->cur_no].type;
+
+ switch (ret_type)
+ {
+ case BIT8:
+ case BIT16:
+ case BIT32:
+ case BIT64:
+ case EOL:
+ break;
+
+ case COUNTER_BIT8:
+ case COUNTER_BIT16:
+ case COUNTER_BIT32:
+ case COUNTER_BIT64:
+ if (info)
+ {
+ register int offset;
+ register int iter_idx;
+
+ info->counter.is_byte_len =
+ (((long) fi->template[fi->cur_no].data) & 0xFF) == FmCounterByte;
+ offset = ((long)fi->template[fi->cur_no].data) >> 8;
+ iter_idx = fi->cur_no + offset;
+ if (fi->template[iter_idx].type == ITER)
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, iter_idx)) == NULL)
+ {
+ dr.iter = IterInit (&fi->template[iter_idx + 1], NO_VALUE);
+ d = ChainMgrSetData (&fi->cm, iter_idx, dr);
+ }
+ /*endif*/
+ info->counter.iter = d->iter;
+ }
+ else
+ {
+ /* Should not be reached here */
+ }
+ /*endif*/
+ }
+ /*endif*/
+ break;
+
+ case BARRAY:
+ if (info)
+ {
+ ExtraData d;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, fi->cur_no)) == NULL)
+ info->num = NO_VALUE;
+ else
+ info->num = d->num;
+ /*endif*/
+ }
+ /*endif*/
+ break;
+
+ case PADDING:
+ if (info)
+ {
+ register int unit;
+ register int number;
+ register int size;
+ register int i;
+
+ unit = _UNIT ((long) fi->template[fi->cur_no].data);
+ number = _NUMBER ((long) fi->template[fi->cur_no].data);
+
+ i = fi->cur_no;
+ size = 0;
+ while (number > 0)
+ {
+ i = _FrameInstDecrement (fi->template, i);
+ size += _FrameInstGetItemSize (fi, i);
+ number--;
+ }
+ /*endwhile*/
+ info->num = (unit - (size%unit))%unit;
+ }
+ /*endif*/
+ break;
+
+ case ITER:
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+ XimFrameType sub_type;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, fi->cur_no)) == NULL)
+ {
+ dr.iter = IterInit (&fi->template[fi->cur_no + 1], NO_VALUE);
+ d = ChainMgrSetData (&fi->cm, fi->cur_no, dr);
+ }
+ /*endif*/
+ sub_type = IterPeekNextType (d->iter, info);
+ if (sub_type == EOL)
+ ret_type = FrameInstPeekNextType (fi, info);
+ else
+ ret_type = sub_type;
+ /*endif*/
+ }
+ break;
+
+ case POINTER:
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+ XimFrameType sub_type;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, fi->cur_no)) == NULL)
+ {
+ dr.fi = FrameInstInit (fi->template[fi->cur_no + 1].data);
+ d = ChainMgrSetData (&fi->cm, fi->cur_no, dr);
+ }
+ /*endif*/
+ sub_type = FrameInstPeekNextType (d->fi, info);
+ if (sub_type == EOL)
+ ret_type = FrameInstPeekNextType (fi, info);
+ else
+ ret_type = sub_type;
+ /*endif*/
+ default:
+ break;
+ }
+ break;
+ }
+ /*endswitch*/
+ return ret_type;
+}
+
+static Bool FrameInstIsIterLoopEnd (FrameInst fi)
+{
+ Bool ret = False;
+
+ if (fi->template[fi->cur_no].type == ITER)
+ {
+ ExtraData d = ChainMgrGetExtraData (&fi->cm, fi->cur_no);
+ Bool yourself;
+
+ if (d)
+ {
+ ret = IterIsLoopEnd (d->iter, &yourself);
+ if (ret && yourself)
+ fi->cur_no = _FrameInstIncrement (fi->template, fi->cur_no);
+ /*endif*/
+ }
+ /*endif*/
+ }
+ /*endif*/
+ return (ret);
+}
+
+static FrameIter _FrameMgrAppendIter (FrameMgr fm, Iter it, int end)
+{
+ FrameIter p = fm->iters;
+
+ while (p && p->next)
+ p = p->next;
+ /*endwhile*/
+
+ if (!p)
+ {
+ fm->iters =
+ p = (FrameIter) Xmalloc (sizeof (FrameIterRec));
+ }
+ else
+ {
+ p->next = (FrameIter) Xmalloc (sizeof (FrameIterRec));
+ p = p->next;
+ }
+ /*endif*/
+ if (p)
+ {
+ p->iter = it;
+ p->counting = False;
+ p->counter = 0;
+ p->end = end;
+ p->next = NULL;
+ }
+ /*endif*/
+ return (p);
+}
+
+static void _FrameMgrRemoveIter (FrameMgr fm, FrameIter it)
+{
+ FrameIter prev;
+ FrameIter p;
+
+ prev = NULL;
+ p = fm->iters;
+ while (p)
+ {
+ if (p == it)
+ {
+ if (prev)
+ prev->next = p->next;
+ else
+ fm->iters = p->next;
+ /*endif*/
+ Xfree (p);
+ break;
+ }
+ /*endif*/
+ prev = p;
+ p = p->next;
+ }
+ /*endwhile*/
+}
+
+static FrameIter _FrameIterCounterIncr (FrameIter fitr, int i)
+{
+ FrameIter p = fitr;
+
+ while (p)
+ {
+ if (p->counting)
+ {
+ p->counter += i;
+ if (p->counter >= p->end)
+ {
+ IterFixIteration (p->iter);
+ return (p);
+ }
+ /*endif*/
+ }
+ /*endif*/
+ p = p->next;
+ }
+ /*endwhile*/
+ return (NULL);
+}
+
+static void _IterStartWatch (Iter it, void *client_data)
+{
+ FrameIter p = (FrameIter) client_data;
+ p->counting = True;
+}
+
+static FmStatus FrameInstSetSize (FrameInst fi, int num)
+{
+ ExtraData d;
+ ExtraDataRec dr;
+ XimFrameType type;
+ register int i;
+
+ i = 0;
+ while ((type = fi->template[i].type) != EOL)
+ {
+ switch (type)
+ {
+ case BARRAY:
+ if ((d = ChainMgrGetExtraData (&fi->cm, i)) == NULL)
+ {
+ dr.num = -1;
+ d = ChainMgrSetData (&fi->cm, i, dr);
+ }
+ /*endif*/
+ if (d->num == NO_VALUE)
+ {
+ d->num = num;
+ return FmSuccess;
+ }
+ /*endif*/
+ break;
+ case ITER:
+ if ((d = ChainMgrGetExtraData (&fi->cm, i)) == NULL)
+ {
+ dr.iter = IterInit (&fi->template[i + 1], NO_VALUE);
+ d = ChainMgrSetData (&fi->cm, i, dr);
+ }
+ /*endif*/
+ if (IterSetSize (d->iter, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ break;
+
+ case POINTER:
+ if ((d = ChainMgrGetExtraData(&fi->cm, i)) == NULL)
+ {
+ dr.fi = FrameInstInit(fi->template[i + 1].data);
+ d = ChainMgrSetData(&fi->cm, i, dr);
+ }
+ /*endif*/
+ if (FrameInstSetSize(d->fi, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ break;
+ default:
+ break;
+ }
+ /*endswitch*/
+ i = _FrameInstIncrement(fi->template, i);
+ }
+ /*endwhile*/
+ return FmNoMoreData;
+}
+
+static int FrameInstGetSize (FrameInst fi)
+{
+ XimFrameType type;
+ register int i;
+ ExtraData d;
+ ExtraDataRec dr;
+ int ret_size;
+
+ i = fi->cur_no;
+ while ((type = fi->template[i].type) != EOL)
+ {
+ switch (type)
+ {
+ case BARRAY:
+ if ((d = ChainMgrGetExtraData (&fi->cm, i)) == NULL)
+ return NO_VALUE;
+ /*endif*/
+ return d->num;
+
+ case ITER:
+ if ((d = ChainMgrGetExtraData (&fi->cm, i)) == NULL)
+ {
+ dr.iter = IterInit (&fi->template[i + 1], NO_VALUE);
+ d = ChainMgrSetData (&fi->cm, i, dr);
+ }
+ /*endif*/
+ ret_size = IterGetSize(d->iter);
+ if (ret_size != NO_VALID_FIELD)
+ return ret_size;
+ /*endif*/
+ break;
+
+ case POINTER:
+ if ((d = ChainMgrGetExtraData (&fi->cm, i)) == NULL)
+ {
+ dr.fi = FrameInstInit (fi->template[i + 1].data);
+ d = ChainMgrSetData (&fi->cm, i, dr);
+ }
+ /*endif*/
+ ret_size = FrameInstGetSize (d->fi);
+ if (ret_size != NO_VALID_FIELD)
+ return ret_size;
+ /*endif*/
+ break;
+ default:
+ break;
+ }
+ /*endswitch*/
+ i = _FrameInstIncrement (fi->template, i);
+ }
+ /*endwhile*/
+ return NO_VALID_FIELD;
+}
+
+static FmStatus FrameInstSetIterCount (FrameInst fi, int num)
+{
+ ExtraData d;
+ ExtraDataRec dr;
+ register int i;
+ XimFrameType type;
+
+ i = 0;
+ while ((type = fi->template[i].type) != EOL)
+ {
+ switch (type)
+ {
+ case ITER:
+ if ((d = ChainMgrGetExtraData (&fi->cm, i)) == NULL)
+ {
+ dr.iter = IterInit (&fi->template[i + 1], num);
+ (void)ChainMgrSetData (&fi->cm, i, dr);
+ return FmSuccess;
+ }
+ /*endif*/
+ if (IterSetIterCount (d->iter, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ break;
+
+ case POINTER:
+ if ((d = ChainMgrGetExtraData (&fi->cm, i)) == NULL)
+ {
+ dr.fi = FrameInstInit (fi->template[i + 1].data);
+ d = ChainMgrSetData (&fi->cm, i, dr);
+ }
+ /*endif*/
+ if (FrameInstSetIterCount (d->fi, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ break;
+
+ default:
+ break;
+ }
+ /*endswitch*/
+ i = _FrameInstIncrement (fi->template, i);
+ }
+ /*endwhile*/
+ return FmNoMoreData;
+}
+
+static int FrameInstGetTotalSize (FrameInst fi)
+{
+ register int size;
+ register int i;
+
+ size = 0;
+ i = 0;
+
+ while (fi->template[i].type != EOL)
+ {
+ size += _FrameInstGetItemSize (fi, i);
+ i = _FrameInstIncrement (fi->template, i);
+ }
+ /*endwhile*/
+ return size;
+}
+
+static void FrameInstReset (FrameInst fi)
+{
+ ChainIterRec ci;
+ int frame_no;
+ ExtraDataRec d;
+
+ ChainIterInit (&ci, &fi->cm);
+
+ while (ChainIterGetNext (&ci, &frame_no, &d))
+ {
+ register XimFrameType type;
+ type = fi->template[frame_no].type;
+ if (type == ITER)
+ {
+ if (d.iter)
+ IterReset (d.iter);
+ /*endif*/
+ }
+ else if (type == POINTER)
+ {
+ if (d.fi)
+ FrameInstReset (d.fi);
+ /*endif*/
+ }
+ /*endif*/
+ }
+ /*endwhile*/
+ ChainIterFree (&ci);
+
+ fi->cur_no = 0;
+}
+
+static Iter IterInit (XimFrame frame, int count)
+{
+ Iter it;
+ register XimFrameType type;
+
+ it = (Iter) Xmalloc (sizeof (IterRec));
+ it->template = frame;
+ it->max_count = (count == NO_VALUE) ? 0 : count;
+ it->allow_expansion = (count == NO_VALUE);
+ it->cur_no = 0;
+ it->start_watch_proc = NULL;
+ it->client_data = NULL;
+ it->start_counter = False;
+
+ type = frame->type;
+ if (type & COUNTER_MASK)
+ {
+ /* COUNTER_XXX cannot be an item of a ITER */
+ Xfree (it);
+ return NULL;
+ }
+ /*endif*/
+
+ switch (type)
+ {
+ case BIT8:
+ case BIT16:
+ case BIT32:
+ case BIT64:
+ /* Do nothing */
+ break;
+
+ case BARRAY:
+ case ITER:
+ case POINTER:
+ ChainMgrInit (&it->cm);
+ break;
+
+ default:
+ Xfree (it);
+ return NULL; /* This should never occur */
+ }
+ /*endswitch*/
+ return it;
+}
+
+static void IterFree (Iter it)
+{
+ switch (it->template->type)
+ {
+ case BARRAY:
+ ChainMgrFree (&it->cm);
+ break;
+
+ case ITER:
+ {
+ ChainIterRec ci;
+ int count;
+ ExtraDataRec d;
+
+ ChainIterInit (&ci, &it->cm);
+ while (ChainIterGetNext (&ci, &count, &d))
+ IterFree (d.iter);
+ /*endwhile*/
+ ChainIterFree (&ci);
+ ChainMgrFree (&it->cm);
+ }
+ break;
+
+ case POINTER:
+ {
+ ChainIterRec ci;
+ int count;
+ ExtraDataRec dr;
+
+ ChainIterInit (&ci, &it->cm);
+ while (ChainIterGetNext (&ci, &count, &dr))
+ FrameInstFree (dr.fi);
+ /*endwhile*/
+ ChainIterFree (&ci);
+ ChainMgrFree (&it->cm);
+ }
+ break;
+
+ default:
+ break;
+ }
+ /*endswitch*/
+ Xfree (it);
+}
+
+static Bool IterIsLoopEnd (Iter it, Bool *myself)
+{
+ Bool ret = False;
+ *myself = False;
+
+ if (!it->allow_expansion && (it->cur_no == it->max_count))
+ {
+ *myself = True;
+ return True;
+ }
+ /*endif*/
+
+ if (it->template->type == POINTER)
+ {
+ ExtraData d = ChainMgrGetExtraData (&it->cm, it->cur_no);
+ if (d)
+ {
+ if (FrameInstIsIterLoopEnd (d->fi))
+ {
+ ret = True;
+ }
+ else
+ {
+ if (FrameInstIsEnd (d->fi))
+ {
+ it->cur_no++;
+ if (!it->allow_expansion && it->cur_no == it->max_count)
+ {
+ *myself = True;
+ ret = True;
+ }
+ /*endif*/
+ }
+ /*endif*/
+ }
+ /*endif*/
+ }
+ /*endif*/
+ }
+ else if (it->template->type == ITER)
+ {
+ ExtraData d = ChainMgrGetExtraData (&it->cm, it->cur_no);
+ if (d)
+ {
+ Bool yourself;
+
+ if (IterIsLoopEnd (d->iter, &yourself))
+ ret = True;
+ /*endif*/
+ }
+ /*endif*/
+ }
+ /*endif*/
+
+ return ret;
+}
+
+static XimFrameType IterGetNextType (Iter it, XimFrameTypeInfo info)
+{
+ XimFrameType type = it->template->type;
+
+ if (it->start_counter)
+ {
+ (*it->start_watch_proc) (it, it->client_data);
+ it->start_counter = False;
+ }
+ /*endif*/
+ if (it->cur_no >= it->max_count)
+ {
+ if (it->allow_expansion)
+ it->max_count = it->cur_no + 1;
+ else
+ return EOL;
+ /*endif*/
+ }
+ /*endif*/
+
+ switch (type)
+ {
+ case BIT8:
+ case BIT16:
+ case BIT32:
+ case BIT64:
+ it->cur_no++;
+ return type;
+
+ case BARRAY:
+ if (info)
+ {
+ ExtraData d;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, it->cur_no)) == NULL)
+ info->num = NO_VALUE;
+ else
+ info->num = d->num;
+ /*endif*/
+ }
+ /*endif*/
+ it->cur_no++;
+ return BARRAY;
+
+ case ITER:
+ {
+ XimFrameType ret_type;
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, it->cur_no)) == NULL)
+ {
+ dr.iter = IterInit (it->template + 1, NO_VALUE);
+ d = ChainMgrSetData (&it->cm, it->cur_no, dr);
+ }
+ /*endif*/
+
+ ret_type = IterGetNextType (d->iter, info);
+ if (ret_type == EOL)
+ {
+ it->cur_no++;
+ ret_type = IterGetNextType (it, info);
+ }
+ /*endif*/
+ return ret_type;
+ }
+
+ case POINTER:
+ {
+ XimFrameType ret_type;
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, it->cur_no)) == NULL)
+ {
+ dr.fi = FrameInstInit (it->template[1].data);
+ d = ChainMgrSetData (&it->cm, it->cur_no, dr);
+ }
+ /*endif*/
+
+ ret_type = FrameInstGetNextType (d->fi, info);
+ if (ret_type == EOL)
+ {
+ it->cur_no++;
+ ret_type = IterGetNextType (it, info);
+ }
+ /*endif*/
+ return ret_type;
+ }
+
+ default:
+ return (XimFrameType) NULL;
+ }
+ /*endswitch*/
+ return (XimFrameType) NULL; /* This should never occur */
+}
+
+static XimFrameType IterPeekNextType (Iter it, XimFrameTypeInfo info)
+{
+ XimFrameType type = it->template->type;
+
+ if (!it->allow_expansion && it->cur_no >= it->max_count)
+ return (EOL);
+ /*endif*/
+
+ switch (type)
+ {
+ case BIT8:
+ case BIT16:
+ case BIT32:
+ case BIT64:
+ return type;
+
+ case BARRAY:
+ if (info)
+ {
+ ExtraData d;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, it->cur_no)) == NULL)
+ info->num = NO_VALUE;
+ else
+ info->num = d->num;
+ /*endif*/
+ }
+ /*endif*/
+ return BARRAY;
+
+ case ITER:
+ {
+ XimFrameType ret_type;
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, it->cur_no)) == NULL)
+ {
+ dr.iter = IterInit (it->template + 1, NO_VALUE);
+ d = ChainMgrSetData (&it->cm, it->cur_no, dr);
+ }
+ /*endif*/
+
+ ret_type = IterPeekNextType (d->iter, info);
+ if (ret_type == EOL)
+ ret_type = IterPeekNextType (it, info);
+ /*endif*/
+ return ret_type;
+ }
+
+ case POINTER:
+ {
+ XimFrameType ret_type;
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, it->cur_no)) == NULL)
+ {
+ dr.fi = FrameInstInit (it->template[1].data);
+ d = ChainMgrSetData (&it->cm, it->cur_no, dr);
+ }
+ /*endif*/
+
+ ret_type = FrameInstPeekNextType (d->fi, info);
+ if (ret_type == EOL)
+ ret_type = IterPeekNextType (it, info);
+ /*endif*/
+ return (ret_type);
+ }
+
+ default:
+ break;
+ }
+ /*endswitch*/
+ /* Reaching here is a bug! */
+ return (XimFrameType) NULL;
+}
+
+static FmStatus IterSetSize (Iter it, int num)
+{
+ XimFrameType type;
+ register int i;
+
+ if (!it->allow_expansion && it->max_count == 0)
+ return FmNoMoreData;
+ /*endif*/
+
+ type = it->template->type;
+ switch (type)
+ {
+ case BARRAY:
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+
+ for (i = 0; i < it->max_count; i++)
+ {
+ if ((d = ChainMgrGetExtraData (&it->cm, i)) == NULL)
+ {
+ dr.num = NO_VALUE;
+ d = ChainMgrSetData (&it->cm, i, dr);
+ }
+ /*endif*/
+ if (d->num == NO_VALUE)
+ {
+ d->num = num;
+ return FmSuccess;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ if (it->allow_expansion)
+ {
+ ExtraDataRec dr;
+
+ dr.num = num;
+ ChainMgrSetData (&it->cm, it->max_count, dr);
+ it->max_count++;
+
+ return FmSuccess;
+ }
+ /*endif*/
+ }
+ return FmNoMoreData;
+
+ case ITER:
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+
+ for (i = 0; i < it->max_count; i++)
+ {
+ if ((d = ChainMgrGetExtraData (&it->cm, i)) == NULL)
+ {
+ dr.iter = IterInit (it->template + 1, NO_VALUE);
+ d = ChainMgrSetData (&it->cm, i, dr);
+ }
+ /*endif*/
+ if (IterSetSize (d->iter, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ }
+ /*endfor*/
+ if (it->allow_expansion)
+ {
+ ExtraDataRec dr;
+
+ dr.iter = IterInit (it->template + 1, NO_VALUE);
+ ChainMgrSetData (&it->cm, it->max_count, dr);
+ it->max_count++;
+
+ if (IterSetSize(dr.iter, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ }
+ /*endif*/
+ }
+ return FmNoMoreData;
+
+ case POINTER:
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+
+ for (i = 0; i < it->max_count; i++)
+ {
+ if ((d = ChainMgrGetExtraData (&it->cm, i)) == NULL)
+ {
+ dr.fi = FrameInstInit (it->template[1].data);
+ d = ChainMgrSetData (&it->cm, i, dr);
+ }
+ /*endif*/
+ if (FrameInstSetSize (d->fi, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ }
+ /*endfor*/
+ if (it->allow_expansion)
+ {
+ ExtraDataRec dr;
+
+ dr.fi = FrameInstInit (it->template[1].data);
+ ChainMgrSetData (&it->cm, it->max_count, dr);
+ it->max_count++;
+
+ if (FrameInstSetSize (dr.fi, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ }
+ /*endif*/
+ }
+ return FmNoMoreData;
+
+ default:
+ break;
+ }
+ /*endswitch*/
+ return FmNoMoreData;
+}
+
+static int IterGetSize (Iter it)
+{
+ register int i;
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if (it->cur_no >= it->max_count)
+ return NO_VALID_FIELD;
+ /*endif*/
+
+ switch (it->template->type)
+ {
+ case BARRAY:
+ if ((d = ChainMgrGetExtraData (&it->cm, it->cur_no)) == NULL)
+ return NO_VALUE;
+ /*endif*/
+ return d->num;
+
+ case ITER:
+ for (i = it->cur_no; i < it->max_count; i++)
+ {
+ int ret_size;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, i)) == NULL)
+ {
+ dr.iter = IterInit (it->template + 1, NO_VALUE);
+ d = ChainMgrSetData (&it->cm, i, dr);
+ }
+ /*endif*/
+ ret_size = IterGetSize (d->iter);
+ if (ret_size != NO_VALID_FIELD)
+ return ret_size;
+ /*endif*/
+ }
+ /*endfor*/
+ return NO_VALID_FIELD;
+
+ case POINTER:
+ for (i = it->cur_no; i < it->max_count; i++)
+ {
+ int ret_size;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, i)) == NULL)
+ {
+ dr.fi = FrameInstInit (it->template[1].data);
+ d = ChainMgrSetData (&it->cm, i, dr);
+ }
+ /*endif*/
+ ret_size = FrameInstGetSize (d->fi);
+ if (ret_size != NO_VALID_FIELD)
+ return ret_size;
+ /*endif*/
+ }
+ /*endfor*/
+ return NO_VALID_FIELD;
+
+ default:
+ break;
+ }
+ /*endswitch*/
+ return NO_VALID_FIELD;
+}
+
+static FmStatus IterSetIterCount (Iter it, int num)
+{
+ register int i;
+
+ if (it->allow_expansion)
+ {
+ it->max_count = num;
+ it->allow_expansion = False;
+ return FmSuccess;
+ }
+ /*endif*/
+
+ if (it->max_count == 0)
+ return FmNoMoreData;
+ /*endif*/
+
+ switch (it->template->type)
+ {
+ case ITER:
+ for (i = 0; i < it->max_count; i++)
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if ((d = ChainMgrGetExtraData(&it->cm, i)) == NULL)
+ {
+ dr.iter = IterInit(it->template + 1, num);
+ (void)ChainMgrSetData(&it->cm, i, dr);
+ return FmSuccess;
+ }
+ /*endif*/
+ if (IterSetIterCount(d->iter, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ }
+ /*endfor*/
+ if (it->allow_expansion)
+ {
+ ExtraDataRec dr;
+
+ dr.iter = IterInit (it->template + 1, num);
+ ChainMgrSetData (&it->cm, it->max_count, dr);
+ it->max_count++;
+
+ return FmSuccess;
+ }
+ /*endif*/
+ break;
+
+ case POINTER:
+ for (i = 0; i < it->max_count; i++)
+ {
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, i)) == NULL)
+ {
+ dr.fi = FrameInstInit (it->template[1].data);
+ d = ChainMgrSetData (&it->cm, i, dr);
+ }
+ /*endif*/
+ if (FrameInstSetIterCount (d->fi, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ }
+ /*endfor*/
+ if (it->allow_expansion)
+ {
+ ExtraDataRec dr;
+
+ dr.fi = FrameInstInit (it->template[1].data);
+ ChainMgrSetData (&it->cm, it->max_count, dr);
+ it->max_count++;
+
+ if (FrameInstSetIterCount (dr.fi, num) == FmSuccess)
+ return FmSuccess;
+ /*endif*/
+ }
+ /*endif*/
+ break;
+
+ default:
+ break;
+ }
+ /*endswitch*/
+ return FmNoMoreData;
+}
+
+static int IterGetTotalSize (Iter it)
+{
+ register int size, i;
+ XimFrameType type;
+
+ if (it->allow_expansion)
+ return NO_VALUE;
+ /*endif*/
+ if (it->max_count == 0)
+ return 0;
+ /*endif*/
+
+ size = 0;
+ type = it->template->type;
+
+ switch (type)
+ {
+ case BIT8:
+ size = it->max_count;
+ break;
+
+ case BIT16:
+ size = it->max_count*2;
+ break;
+
+ case BIT32:
+ size = it->max_count*4;
+ break;
+
+ case BIT64:
+ size = it->max_count*8;
+ break;
+
+ case BARRAY:
+ for (i = 0; i < it->max_count; i++)
+ {
+ register int num;
+ ExtraData d;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, i)) == NULL)
+ return NO_VALUE;
+ /*endif*/
+ if ((num = d->num) == NO_VALUE)
+ return NO_VALUE;
+ /*endif*/
+ size += num;
+ }
+ /*endfor*/
+ break;
+
+ case ITER:
+ for (i = 0; i < it->max_count; i++)
+ {
+ register int num;
+ ExtraData d;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, i)) == NULL)
+ return NO_VALUE;
+ /*endif*/
+ if ((num = IterGetTotalSize (d->iter)) == NO_VALUE)
+ return NO_VALUE;
+ /*endif*/
+ size += num;
+ }
+ /*endfor*/
+ break;
+
+ case POINTER:
+ for (i = 0; i < it->max_count; i++)
+ {
+ register int num;
+ ExtraData d;
+ ExtraDataRec dr;
+
+ if ((d = ChainMgrGetExtraData (&it->cm, i)) == NULL)
+ {
+ dr.fi = FrameInstInit (it->template[1].data);
+ d = ChainMgrSetData (&it->cm, i, dr);
+ }
+ /*endif*/
+ if ((num = FrameInstGetTotalSize (d->fi)) == NO_VALUE)
+ return NO_VALUE;
+ /*endif*/
+ size += num;
+ }
+ /*endfor*/
+ break;
+
+ default:
+ break;
+ }
+ /*endswitch*/
+ return size;
+}
+
+static void IterReset (Iter it)
+{
+ ChainIterRec ci;
+ int count;
+ ExtraDataRec d;
+
+ switch (it->template->type)
+ {
+ case ITER:
+ ChainIterInit (&ci, &it->cm);
+ while (ChainIterGetNext (&ci, &count, &d))
+ IterReset (d.iter);
+ /*endwhile*/
+ ChainIterFree (&ci);
+ break;
+
+ case POINTER:
+ ChainIterInit (&ci, &it->cm);
+ while (ChainIterGetNext (&ci, &count, &d))
+ FrameInstReset (d.fi);
+ /*endwhile*/
+ ChainIterFree (&ci);
+ break;
+
+ default:
+ break;
+ }
+ /*endswitch*/
+ it->cur_no = 0;
+}
+
+static void IterSetStartWatch (Iter it,
+ IterStartWatchProc proc,
+ void *client_data)
+{
+ it->start_watch_proc = proc;
+ it->client_data = client_data;
+}
+
+static ExtraData ChainMgrSetData (ChainMgr cm,
+ int frame_no,
+ ExtraDataRec data)
+{
+ Chain cur = (Chain) Xmalloc (sizeof (ChainRec));
+
+ cur->frame_no = frame_no;
+ cur->d = data;
+ cur->next = NULL;
+
+ if (cm->top == NULL)
+ {
+ cm->top = cm->tail = cur;
+ }
+ else
+ {
+ cm->tail->next = cur;
+ cm->tail = cur;
+ }
+ /*endif*/
+ return &cur->d;
+}
+
+static ExtraData ChainMgrGetExtraData (ChainMgr cm, int frame_no)
+{
+ Chain cur;
+
+ cur = cm->top;
+
+ while (cur)
+ {
+ if (cur->frame_no == frame_no)
+ return &cur->d;
+ /*endif*/
+ cur = cur->next;
+ }
+ /*endwhile*/
+ return NULL;
+}
+
+static Bool ChainIterGetNext (ChainIter ci, int *frame_no, ExtraData d)
+{
+ if (ci->cur == NULL)
+ return False;
+ /*endif*/
+
+ *frame_no = ci->cur->frame_no;
+ *d = ci->cur->d;
+
+ ci->cur = ci->cur->next;
+
+ return True;
+}
+
+static int _FrameInstIncrement (XimFrame frame, int count)
+{
+ XimFrameType type;
+
+ type = frame[count].type;
+ type &= ~COUNTER_MASK;
+
+ switch (type)
+ {
+ case BIT8:
+ case BIT16:
+ case BIT32:
+ case BIT64:
+ case BARRAY:
+ case PADDING:
+ return count + 1;
+
+ case POINTER:
+ return count + 2;
+
+ case ITER:
+ return _FrameInstIncrement (frame, count + 1);
+ default:
+ break;
+ }
+ /*endswitch*/
+ return - 1; /* Error */
+}
+
+static int _FrameInstDecrement (XimFrame frame, int count)
+{
+ register int i;
+ XimFrameType type;
+
+ if (count == 0)
+ return - 1; /* cannot decrement */
+ /*endif*/
+
+ if (count == 1)
+ return 0; /* BOGUS - It should check the contents of data */
+ /*endif*/
+
+ type = frame[count - 2].type;
+ type &= ~COUNTER_MASK;
+
+ switch (type)
+ {
+ case BIT8:
+ case BIT16:
+ case BIT32:
+ case BIT64:
+ case BARRAY:
+ case PADDING:
+ case PTR_ITEM:
+ return count - 1;
+
+ case POINTER:
+ case ITER:
+ i = count - 3;
+ while (i >= 0)
+ {
+ if (frame[i].type != ITER)
+ return i + 1;
+ /*endif*/
+ i--;
+ }
+ /*endwhile*/
+ return 0;
+ default:
+ break;
+ }
+ /*enswitch*/
+ return - 1; /* Error */
+}
+
+static int _FrameInstGetItemSize (FrameInst fi, int cur_no)
+{
+ XimFrameType type;
+
+ type = fi->template[cur_no].type;
+ type &= ~COUNTER_MASK;
+
+ switch (type)
+ {
+ case BIT8:
+ return 1;
+
+ case BIT16:
+ return 2;
+
+ case BIT32:
+ return 4;
+
+ case BIT64:
+ return 8;
+
+ case BARRAY:
+ {
+ ExtraData d;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, cur_no)) == NULL)
+ return NO_VALUE;
+ /*endif*/
+ if (d->num == NO_VALUE)
+ return NO_VALUE;
+ /*endif*/
+ return d->num;
+ }
+
+ case PADDING:
+ {
+ register int unit;
+ register int number;
+ register int size;
+ register int i;
+
+ unit = _UNIT ((long) fi->template[cur_no].data);
+ number = _NUMBER ((long) fi->template[cur_no].data);
+
+ i = cur_no;
+ size = 0;
+ while (number > 0)
+ {
+ i = _FrameInstDecrement (fi->template, i);
+ size += _FrameInstGetItemSize (fi, i);
+ number--;
+ }
+ /*endwhile*/
+ size = (unit - (size%unit))%unit;
+ return size;
+ }
+
+ case ITER:
+ {
+ ExtraData d;
+ int sub_size;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, cur_no)) == NULL)
+ return NO_VALUE;
+ /*endif*/
+ sub_size = IterGetTotalSize (d->iter);
+ if (sub_size == NO_VALUE)
+ return NO_VALUE;
+ /*endif*/
+ return sub_size;
+ }
+
+ case POINTER:
+ {
+ ExtraData d;
+ int sub_size;
+
+ if ((d = ChainMgrGetExtraData (&fi->cm, cur_no)) == NULL)
+ return NO_VALUE;
+ /*endif*/
+ sub_size = FrameInstGetTotalSize (d->fi);
+ if (sub_size == NO_VALUE)
+ return NO_VALUE;
+ /*endif*/
+ return sub_size;
+ }
+
+ default:
+ break;
+ }
+ /*endswitch*/
+ return NO_VALUE;
+}
--- /dev/null
+/******************************************************************
+Copyright 1993, 1994 by Digital Equipment Corporation, Maynard, Massachusetts,
+
+ All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the names of Digital or MIT not be
+used in advertising or publicity pertaining to distribution of the
+software without specific, written prior permission.
+
+DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
+ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
+SOFTWARE.
+
+ Author: Hiroyuki Miyamoto Digital Equipment Corporation
+ miyamoto@jrd.dec.com
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#ifndef FRAMEMGR_H
+#define FRAMEMGR_H
+
+#include <X11/Xmd.h>
+#include <X11/Xlib.h>
+#include <stdio.h>
+
+#if defined(VAXC) && !defined(__DECC)
+#define xim_externalref globalref
+#define xim_externaldef globaldef
+#else
+#define xim_externalref extern
+#define xim_externaldef
+#endif
+
+/* Definitions for FrameMgr */
+
+#define COUNTER_MASK 0x10
+
+typedef enum
+{
+ BIT8 = 0x1, /* {CARD8* | INT8*} */
+ BIT16 = 0x2, /* {CARD16* | INT16*} */
+ BIT32 = 0x3, /* {CARD32* | INT32*} */
+ BIT64 = 0x4, /* {CARD64* | INT64*} */
+ BARRAY = 0x5, /* int*, void* */
+ ITER = 0x6, /* int* */
+ POINTER = 0x7, /* specifies next item is a PTR_ITEM */
+ PTR_ITEM = 0x8, /* specifies the item has a pointer */
+ /* BOGUS - POINTER and PTR_ITEM
+ * In the current implementation, PTR_ITEM should be lead by
+ * POINTER. But actually, it's just redundant logically. Someone
+ * may remove this redundancy and POINTER from the enum member but he
+ * should also modify the logic in FrameMgr program.
+ */
+ PADDING = 0x9, /* specifies that a padding is needed.
+ * This requires extra data in data field.
+ */
+ EOL = 0xA, /* specifies the end of list */
+
+ COUNTER_BIT8 = COUNTER_MASK | 0x1,
+ COUNTER_BIT16 = COUNTER_MASK | 0x2,
+ COUNTER_BIT32 = COUNTER_MASK | 0x3,
+ COUNTER_BIT64 = COUNTER_MASK | 0x4
+} XimFrameType;
+
+/* Convenient macro */
+#define _FRAME(a) {a, NULL}
+#define _PTR(p) {PTR_ITEM, (void *)p}
+/* PADDING's usage of data field
+ * B15-B8 : Shows the number of effective items.
+ * B7-B0 : Shows padding unit. ex) 04 shows 4 unit padding.
+ */
+#define _PAD2(n) {PADDING, (void*)((n)<<8|2)}
+#define _PAD4(n) {PADDING, (void*)((n)<<8|4)}
+
+#define FmCounterByte 0
+#define FmCounterNumber 1
+
+#define _BYTE_COUNTER(type, offset) \
+ {(COUNTER_MASK|type), (void*)((offset)<<8|FmCounterByte)}
+
+#define _NUMBER_COUNTER(type, offset) \
+ {(COUNTER_MASK|type), (void*)((offset)<<8|FmCounterNumber)}
+
+typedef struct _XimFrame
+{
+ XimFrameType type;
+ void* data; /* For PTR_ITEM and PADDING */
+} XimFrameRec, *XimFrame;
+
+typedef enum
+{
+ FmSuccess,
+ FmEOD,
+ FmInvalidCall,
+ FmBufExist,
+ FmCannotCalc,
+ FmNoMoreData
+} FmStatus;
+
+typedef struct _FrameMgr *FrameMgr;
+
+FrameMgr FrameMgrInit(XimFrame frame, char* area, Bool byte_swap);
+void FrameMgrInitWithData(FrameMgr fm, XimFrame frame, void* area,
+ Bool byte_swap);
+void FrameMgrFree(FrameMgr fm);
+FmStatus FrameMgrSetBuffer(FrameMgr, void*);
+FmStatus _FrameMgrPutToken(FrameMgr, void*, int);
+FmStatus _FrameMgrGetToken(FrameMgr, void*, int);
+FmStatus FrameMgrSetSize(FrameMgr, int);
+FmStatus FrameMgrSetIterCount(FrameMgr, int);
+FmStatus FrameMgrSetTotalSize(FrameMgr, int);
+int FrameMgrGetTotalSize(FrameMgr);
+int FrameMgrGetSize(FrameMgr);
+FmStatus FrameMgrSkipToken(FrameMgr, int);
+void FrameMgrReset(FrameMgr);
+Bool FrameMgrIsIterLoopEnd(FrameMgr, FmStatus*);
+
+#define FrameMgrPutToken(fm, obj) _FrameMgrPutToken((fm), &(obj), sizeof(obj))
+#define FrameMgrGetToken(fm, obj) _FrameMgrGetToken((fm), &(obj), sizeof(obj))
+
+#endif /* FRAMEMGR_H */
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <X11/Xlib.h>
+#include <stdlib.h>
+#include <string.h>
+#include "IMdkit.h"
+#include <stdarg.h>
+
+#define Va_start(a,b) va_start(a,b)
+
+static void _IMCountVaList(va_list var, int *total_count)
+{
+ char *attr;
+
+ *total_count = 0;
+
+ for (attr = va_arg (var, char*); attr; attr = va_arg (var, char*))
+ {
+ (void)va_arg (var, XIMArg *);
+ ++(*total_count);
+ }
+ /*endfor*/
+}
+
+static void _IMVaToNestedList(va_list var, int max_count, XIMArg **args_return)
+{
+ XIMArg *args;
+ char *attr;
+
+ if (max_count <= 0)
+ {
+ *args_return = (XIMArg *) NULL;
+ return;
+ }
+ /*endif*/
+
+ args = (XIMArg *) malloc ((unsigned) (max_count + 1)*sizeof (XIMArg));
+ *args_return = args;
+ if (!args)
+ return;
+ /*endif*/
+
+ for (attr = va_arg (var, char*); attr; attr = va_arg (var, char *))
+ {
+ args->name = attr;
+ args->value = va_arg (var, XPointer);
+ args++;
+ }
+ /*endfor*/
+ args->name = (char*)NULL;
+}
+
+static char *_FindModifiers (XIMArg *args)
+{
+ char *modifiers;
+
+ while (args->name)
+ {
+ if (strcmp (args->name, IMModifiers) == 0)
+ {
+ modifiers = args->value;
+ return modifiers;
+ }
+ else
+ {
+ args++;
+ }
+ /*endif*/
+ }
+ /*endwhile*/
+ return NULL;
+}
+
+XIMS _GetIMS (char *modifiers)
+{
+ XIMS ims;
+ extern IMMethodsRec Xi18n_im_methods;
+
+ if ((ims = (XIMS) malloc (sizeof (XIMProtocolRec))) == (XIMS) NULL)
+ return ((XIMS) NULL);
+ /*endif*/
+ memset ((void *) ims, 0, sizeof (XIMProtocolRec));
+
+ if (modifiers == NULL
+ ||
+ modifiers[0] == '\0'
+ ||
+ strcmp (modifiers, "Xi18n") == 0)
+ {
+ ims->methods = &Xi18n_im_methods;
+ return ims;
+ }
+ /*endif*/
+ XFree (ims);
+ return (XIMS) NULL;
+}
+
+XIMS IMOpenIM (Display *display, ...)
+{
+ va_list var;
+ int total_count;
+ XIMArg *args;
+ XIMS ims;
+ char *modifiers;
+ Status ret;
+
+ Va_start (var, display);
+ _IMCountVaList (var, &total_count);
+ va_end (var);
+
+ Va_start (var, display);
+ _IMVaToNestedList (var, total_count, &args);
+ va_end (var);
+
+ modifiers = _FindModifiers (args);
+
+ ims = _GetIMS (modifiers);
+ if (ims == (XIMS) NULL)
+ return (XIMS) NULL;
+ /*endif*/
+
+ ims->core.display = display;
+
+ ims->protocol = (*ims->methods->setup) (display, args);
+ XFree (args);
+ if (ims->protocol == (void *) NULL)
+ {
+ XFree (ims);
+ return (XIMS) NULL;
+ }
+ /*endif*/
+ ret = (ims->methods->openIM) (ims);
+ if (ret == False)
+ {
+ XFree (ims);
+ return (XIMS) NULL;
+ }
+ /*endif*/
+ return (XIMS) ims;
+}
+
+Status IMCloseIM (XIMS ims)
+{
+ (ims->methods->closeIM) (ims);
+ XFree (ims);
+ return True;
+}
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <X11/Xlib.h>
+#include "IMdkit.h"
+
+/* Public Function */
+void IMForwardEvent (XIMS ims, XPointer call_data)
+{
+ (ims->methods->forwardEvent) (ims, call_data);
+}
+
+void IMCommitString (XIMS ims, XPointer call_data)
+{
+ (ims->methods->commitString) (ims, call_data);
+}
+
+int IMCallCallback (XIMS ims, XPointer call_data)
+{
+ return (ims->methods->callCallback) (ims, call_data);
+}
+
+int IMPreeditStart (XIMS ims, XPointer call_data)
+{
+ return (ims->methods->preeditStart) (ims, call_data);
+}
+
+int IMPreeditEnd (XIMS ims, XPointer call_data)
+{
+ return (ims->methods->preeditEnd) (ims, call_data);
+}
+
+int IMSyncXlib(XIMS ims, XPointer call_data)
+{
+ ims->sync = True;
+ return (ims->methods->syncXlib) (ims, call_data);
+}
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <stdlib.h>
+#include <X11/Xlib.h>
+#include "IMdkit.h"
+#include <stdarg.h>
+
+#define Va_start(a,b) va_start(a,b)
+
+static void _IMCountVaList (va_list var, int *total_count)
+{
+ char *attr;
+
+ *total_count = 0;
+
+ for (attr = va_arg (var, char *); attr; attr = va_arg (var, char *))
+ {
+ (void)va_arg (var, XIMArg *);
+ ++(*total_count);
+ }
+ /*endfor*/
+}
+
+static void _IMVaToNestedList (va_list var, int max_count, XIMArg **args_return)
+{
+ XIMArg *args;
+ char *attr;
+
+ if (max_count <= 0)
+ {
+ *args_return = (XIMArg *) NULL;
+ return;
+ }
+ /*endif*/
+
+ args = (XIMArg *) malloc ((unsigned) (max_count + 1)*sizeof (XIMArg));
+ *args_return = args;
+ if (!args)
+ return;
+ /*endif*/
+ for (attr = va_arg (var, char *); attr; attr = va_arg (var, char *))
+ {
+ args->name = attr;
+ args->value = va_arg (var, XPointer);
+ args++;
+ }
+ /*endfor*/
+ args->name = (char *) NULL;
+}
+
+char *IMGetIMValues (XIMS ims, ...)
+{
+ va_list var;
+ int total_count;
+ XIMArg *args;
+ char *ret;
+
+ Va_start (var, ims);
+ _IMCountVaList (var, &total_count);
+ va_end (var);
+
+ Va_start (var, ims);
+ _IMVaToNestedList (var, total_count, &args);
+ va_end (var);
+
+ ret = (*ims->methods->getIMValues) (ims, args);
+
+ if (args)
+ XFree ((char *) args);
+ /*endif*/
+ return ret;
+}
+
+char *IMSetIMValues (XIMS ims, ...)
+{
+ va_list var;
+ int total_count;
+ XIMArg *args;
+ char *ret;
+
+ Va_start (var, ims);
+ _IMCountVaList (var, &total_count);
+ va_end (var);
+
+ Va_start (var, ims);
+ _IMVaToNestedList (var, total_count, &args);
+ va_end (var);
+
+ ret = (*ims->methods->setIMValues) (ims, args);
+
+ if (args)
+ XFree ((char *) args);
+ /*endif*/
+ return ret;
+}
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#ifndef _IMdkit_h
+#define _IMdkit_h
+
+#include <X11/Xmd.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* IM Attributes Name */
+#define IMModifiers "modifiers"
+#define IMServerWindow "serverWindow"
+#define IMServerName "serverName"
+#define IMServerTransport "serverTransport"
+#define IMLocale "locale"
+#define IMInputStyles "inputStyles"
+#define IMProtocolHandler "protocolHandler"
+#define IMOnKeysList "onKeysList"
+#define IMOffKeysList "offKeysList"
+#define IMEncodingList "encodingList"
+#define IMFilterEventMask "filterEventMask"
+#define IMProtocolDepend "protocolDepend"
+
+/* Masks for IM Attributes Name */
+#define I18N_IMSERVER_WIN 0x0001 /* IMServerWindow */
+#define I18N_IM_NAME 0x0002 /* IMServerName */
+#define I18N_IM_LOCALE 0x0004 /* IMLocale */
+#define I18N_IM_ADDRESS 0x0008 /* IMServerTransport */
+#define I18N_INPUT_STYLES 0x0010 /* IMInputStyles */
+#define I18N_ON_KEYS 0x0020 /* IMOnKeysList */
+#define I18N_OFF_KEYS 0x0040 /* IMOffKeysList */
+#define I18N_IM_HANDLER 0x0080 /* IMProtocolHander */
+#define I18N_ENCODINGS 0x0100 /* IMEncodingList */
+#define I18N_FILTERMASK 0x0200 /* IMFilterEventMask */
+#define I18N_PROTO_DEPEND 0x0400 /* IMProtoDepend */
+
+typedef struct
+{
+ char *name;
+ XPointer value;
+} XIMArg;
+
+typedef struct
+{
+ CARD32 keysym;
+ CARD32 modifier;
+ CARD32 modifier_mask;
+} XIMTriggerKey;
+
+typedef struct
+{
+ unsigned short count_keys;
+ XIMTriggerKey *keylist;
+} XIMTriggerKeys;
+
+typedef char *XIMEncoding;
+
+typedef struct
+{
+ unsigned short count_encodings;
+ XIMEncoding *supported_encodings;
+} XIMEncodings;
+
+typedef struct _XIMS *XIMS;
+
+typedef struct
+{
+ void* (*setup) (Display *, XIMArg *);
+ Status (*openIM) (XIMS);
+ Status (*closeIM) (XIMS);
+ char* (*setIMValues) (XIMS, XIMArg *);
+ char* (*getIMValues) (XIMS, XIMArg *);
+ Status (*forwardEvent) (XIMS, XPointer);
+ Status (*commitString) (XIMS, XPointer);
+ int (*callCallback) (XIMS, XPointer);
+ int (*preeditStart) (XIMS, XPointer);
+ int (*preeditEnd) (XIMS, XPointer);
+ int (*syncXlib) (XIMS, XPointer);
+} IMMethodsRec, *IMMethods;
+
+typedef struct
+{
+ Display *display;
+ int screen;
+} IMCoreRec, *IMCore;
+
+typedef struct _XIMS
+{
+ IMMethods methods;
+ IMCoreRec core;
+ Bool sync;
+ void *protocol;
+} XIMProtocolRec;
+
+/*
+ * X function declarations.
+ */
+extern XIMS IMOpenIM (Display *, ...);
+extern Status IMCloseIM (XIMS);
+extern char *IMSetIMValues (XIMS, ...);
+extern char *IMGetIMValues (XIMS, ...);
+void IMForwardEvent (XIMS, XPointer);
+void IMCommitString (XIMS, XPointer);
+int IMCallCallback (XIMS, XPointer);
+int IMPreeditStart (XIMS, XPointer);
+int IMPreeditEnd (XIMS, XPointer);
+int IMSyncXlib (XIMS, XPointer);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* IMdkit_h */
--- /dev/null
+## Makefile.am -- Process this file with automake to produce Makefile.in
+## Copyright (C) 2002 James Su
+##
+## 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., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+MAINTAINERCLEANFILES = Makefile.in
+
+noinst_HEADERS = FrameMgr.h \
+ Xi18n.h \
+ Xi18nX.h \
+ XimProto.h \
+ IMdkit.h \
+ XimFunc.h \
+ Xtrans.h
+
+
+noinst_LTLIBRARIES = libXimd.la
+
+libXimd_la_SOURCES = FrameMgr.c \
+ i18nIc.c \
+ i18nPtHdr.c \
+ i18nX.c \
+ IMValues.c \
+ i18nAttr.c \
+ i18nIMProto.c \
+ IMConn.c \
+ i18nClbk.c \
+ i18nMethod.c \
+ i18nUtil.c \
+ IMMethod.c
+
+libXimd_la_CFLAGS = @X_CFLAGS@
+libXimd_la_LDFLAGS = @X_LIBS@
+
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#ifndef _Xi18n_h
+#define _Xi18n_h
+#include <X11/Xlib.h>
+#include <X11/Xfuncs.h>
+#include <X11/Xos.h>
+#include "XimProto.h"
+
+/*
+ * Minor Protocol Number for Extension Protocol
+ */
+#define XIM_EXTENSION 128
+#define XIM_EXT_SET_EVENT_MASK (0x30)
+#define XIM_EXT_FORWARD_KEYEVENT (0x32)
+#define XIM_EXT_MOVE (0x33)
+#define COMMON_EXTENSIONS_NUM 3
+
+#include <stdlib.h>
+#include "IMdkit.h"
+
+/* XI18N Valid Attribute Name Definition */
+#define ExtForwardKeyEvent "extForwardKeyEvent"
+#define ExtMove "extMove"
+#define ExtSetEventMask "extSetEventMask"
+
+/*
+ * Padding macro
+ */
+#define IMPAD(length) ((4 - ((length)%4))%4)
+
+/*
+ * Target Atom for Transport Connection
+ */
+#define LOCALES "LOCALES"
+#define TRANSPORT "TRANSPORT"
+
+#define I18N_OPEN 0
+#define I18N_SET 1
+#define I18N_GET 2
+
+typedef struct
+{
+ char *transportname;
+ int namelen;
+ Bool (*checkAddr) ();
+} TransportSW;
+
+typedef struct _XIMPending
+{
+ unsigned char *p;
+ struct _XIMPending *next;
+} XIMPending;
+
+typedef struct _XimProtoHdr
+{
+ CARD8 major_opcode;
+ CARD8 minor_opcode;
+ CARD16 length;
+} XimProtoHdr;
+
+typedef struct
+{
+ CARD16 attribute_id;
+ CARD16 type;
+ CARD16 length;
+ char *name;
+} XIMAttr;
+
+typedef struct
+{
+ CARD16 attribute_id;
+ CARD16 type;
+ CARD16 length;
+ char *name;
+} XICAttr;
+
+typedef struct
+{
+ int attribute_id;
+ CARD16 name_length;
+ char *name;
+ int value_length;
+ void *value;
+ int type;
+} XIMAttribute;
+
+typedef struct
+{
+ int attribute_id;
+ CARD16 name_length;
+ char *name;
+ int value_length;
+ void *value;
+ int type;
+} XICAttribute;
+
+typedef struct
+{
+ int length;
+ char *name;
+} XIMStr;
+
+typedef struct
+{
+ CARD16 major_opcode;
+ CARD16 minor_opcode;
+ CARD16 length;
+ char *name;
+} XIMExt;
+
+typedef struct _Xi18nClient
+{
+ int connect_id;
+ CARD8 byte_order;
+ /*
+ '?': initial value
+ 'B': for Big-Endian
+ 'l': for little-endian
+ */
+ int sync;
+ XIMPending *pending;
+ void *trans_rec; /* contains transport specific data */
+ struct _Xi18nClient *next;
+} Xi18nClient;
+
+typedef struct _Xi18nCore *Xi18n;
+
+/*
+ * Callback Struct for XIM Protocol
+ */
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+} IMAnyStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD8 byte_order;
+ CARD16 major_version;
+ CARD16 minor_version;
+} IMConnectStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+} IMDisConnectStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ XIMStr lang;
+} IMOpenStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+} IMCloseStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 number;
+ XIMStr *extension;
+} IMQueryExtensionStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 number;
+ char **im_attr_list;
+} IMGetIMValuesStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ CARD16 preedit_attr_num;
+ CARD16 status_attr_num;
+ CARD16 ic_attr_num;
+ XICAttribute *preedit_attr;
+ XICAttribute *status_attr;
+ XICAttribute *ic_attr;
+} IMChangeICStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+} IMDestroyICStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ CARD16 length;
+ char *commit_string;
+} IMResetICStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+} IMChangeFocusStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ BITMASK16 sync_bit;
+ CARD16 serial_number;
+ XEvent event;
+} IMForwardEventStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ CARD16 flag;
+ KeySym keysym;
+ char *commit_string;
+} IMCommitStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ CARD32 flag;
+ CARD32 key_index;
+ CARD32 event_mask;
+} IMTriggerNotifyStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 encoding_number;
+ XIMStr *encoding; /* name information */
+ CARD16 encoding_info_number;
+ XIMStr *encodinginfo; /* detailed information */
+ CARD16 category; /* #0 for name, #1 for detail */
+ INT16 enc_index; /* index of the encoding determined */
+} IMEncodingNegotiationStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ CARD32 flag;
+ CARD32 forward_event_mask;
+ CARD32 sync_event_mask;
+} IMSetEventMaskStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ CARD32 filter_event_mask;
+ CARD32 intercept_event_mask;
+ CARD32 select_event_mask;
+ CARD32 forward_event_mask;
+ CARD32 sync_event_mask;
+} IMExtSetEventMaskStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ CARD16 x;
+ CARD16 y;
+} IMMoveStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ BITMASK16 flag;
+ CARD16 error_code;
+ CARD16 str_length;
+ CARD16 error_type;
+ char *error_detail;
+} IMErrorStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+} IMPreeditStateStruct;
+
+/* Callbacks */
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+} IMGeometryCBStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ union
+ {
+ int return_value; /* PreeditStart */
+ XIMPreeditDrawCallbackStruct draw; /* PreeditDraw */
+ XIMPreeditCaretCallbackStruct caret; /* PreeditCaret */
+ } todo;
+} IMPreeditCBStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ union
+ {
+ XIMStatusDrawCallbackStruct draw; /* StatusDraw */
+ } todo;
+} IMStatusCBStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+ XIMStringConversionCallbackStruct strconv;
+} IMStrConvCBStruct;
+
+typedef struct
+{
+ int major_code;
+ int minor_code;
+ CARD16 connect_id;
+ CARD16 icid;
+} IMSyncXlibStruct;
+
+typedef union _IMProtocol
+{
+ int major_code;
+ IMAnyStruct any;
+ IMConnectStruct imconnect;
+ IMDisConnectStruct imdisconnect;
+ IMOpenStruct imopen;
+ IMCloseStruct imclose;
+ IMQueryExtensionStruct queryext;
+ IMGetIMValuesStruct getim;
+ IMEncodingNegotiationStruct encodingnego;
+ IMExtSetEventMaskStruct extsetevent;
+ IMMoveStruct extmove;
+ IMSetEventMaskStruct setevent;
+ IMChangeICStruct changeic;
+ IMDestroyICStruct destroyic;
+ IMResetICStruct resetic;
+ IMChangeFocusStruct changefocus;
+ IMCommitStruct commitstring;
+ IMForwardEventStruct forwardevent;
+ IMTriggerNotifyStruct triggernotify;
+ IMPreeditStateStruct preedit_state;
+ IMErrorStruct imerror;
+ IMGeometryCBStruct geometry_callback;
+ IMPreeditCBStruct preedit_callback;
+ IMStatusCBStruct status_callback;
+ IMStrConvCBStruct strconv_callback;
+ IMSyncXlibStruct sync_xlib;
+ long pad[32];
+} IMProtocol;
+
+typedef int (*IMProtoHandler) (XIMS, IMProtocol*);
+
+#define DEFAULT_FILTER_MASK (KeyPressMask)
+
+/* Xi18nAddressRec structure */
+typedef struct _Xi18nAddressRec
+{
+ Display *dpy;
+ CARD8 im_byteOrder; /* byte order 'B' or 'l' */
+ /* IM Values */
+ long imvalue_mask;
+ Window im_window; /* IMServerWindow */
+ char *im_name; /* IMServerName */
+ char *im_locale; /* IMLocale */
+ char *im_addr; /* IMServerTransport */
+ XIMStyles input_styles; /* IMInputStyles */
+ XIMTriggerKeys on_keys; /* IMOnKeysList */
+ XIMTriggerKeys off_keys; /* IMOffKeysList */
+ XIMEncodings encoding_list; /* IMEncodingList */
+ IMProtoHandler improto; /* IMProtocolHander */
+ long filterevent_mask; /* IMFilterEventMask */
+ /* XIM_SERVERS target Atoms */
+ Atom selection;
+ Atom Localename;
+ Atom Transportname;
+ /* XIM/XIC Attr */
+ int im_attr_num;
+ XIMAttr *xim_attr;
+ int ic_attr_num;
+ XICAttr *xic_attr;
+ CARD16 preeditAttr_id;
+ CARD16 statusAttr_id;
+ CARD16 separatorAttr_id;
+ /* XIMExtension List */
+ int ext_num;
+ XIMExt extension[COMMON_EXTENSIONS_NUM];
+ /* transport specific connection address */
+ void *connect_addr;
+ /* actual data is defined:
+ XSpecRec in Xi18nX.h for X-based connection.
+ TransSpecRec in Xi18nTr.h for Socket-based connection.
+ */
+ /* clients table */
+ Xi18nClient *clients;
+ Xi18nClient *free_clients;
+} Xi18nAddressRec;
+
+typedef struct _Xi18nMethodsRec
+{
+ Bool (*begin) (XIMS);
+ Bool (*end) (XIMS);
+ Bool (*send) (XIMS, CARD16, unsigned char*, long);
+ Bool (*wait) (XIMS, CARD16, CARD8, CARD8);
+ Bool (*disconnect) (XIMS, CARD16);
+} Xi18nMethodsRec;
+
+typedef struct _Xi18nCore
+{
+ Xi18nAddressRec address;
+ Xi18nMethodsRec methods;
+} Xi18nCore;
+
+#endif
+
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#ifndef _Xi18nTrX_h
+#define _Xi18nTrX_h
+
+#define _XIM_PROTOCOL "_XIM_PROTOCOL"
+#define _XIM_XCONNECT "_XIM_XCONNECT"
+
+#define XCM_DATA_LIMIT 20
+
+typedef struct _XClient
+{
+ Window client_win; /* client window */
+ Window accept_win; /* accept window */
+} XClient;
+
+typedef struct
+{
+ Atom xim_request;
+ Atom connect_request;
+} XSpecRec;
+
+#endif
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#ifndef _XimFunc_h
+#define _XimFunc_h
+
+/* i18nAttr.c */
+void _Xi18nInitAttrList (Xi18n i18n_core);
+void _Xi18nInitExtension(Xi18n i18n_core);
+
+/* i18nClbk.c */
+int _Xi18nGeometryCallback (XIMS ims, IMProtocol *call_data);
+int _Xi18nPreeditStartCallback (XIMS ims, IMProtocol *call_data);
+int _Xi18nPreeditDrawCallback (XIMS ims, IMProtocol *call_data);
+int _Xi18nPreeditCaretCallback (XIMS ims, IMProtocol *call_data);
+int _Xi18nPreeditDoneCallback (XIMS ims, IMProtocol *call_data);
+int _Xi18nStatusStartCallback (XIMS ims, IMProtocol *call_data);
+int _Xi18nStatusDrawCallback (XIMS ims, IMProtocol *call_data);
+int _Xi18nStatusDoneCallback (XIMS ims, IMProtocol *call_data);
+int _Xi18nStringConversionCallback (XIMS ims, IMProtocol *call_data);
+
+/* i18nIc.c */
+void _Xi18nChangeIC (XIMS ims, IMProtocol *call_data, unsigned char *p,
+ int create_flag);
+void _Xi18nGetIC (XIMS ims, IMProtocol *call_data, unsigned char *p);
+
+/* i18nUtil.c */
+int _Xi18nNeedSwap (Xi18n i18n_core, CARD16 connect_id);
+Xi18nClient *_Xi18nNewClient(Xi18n i18n_core);
+Xi18nClient *_Xi18nFindClient (Xi18n i18n_core, CARD16 connect_id);
+void _Xi18nDeleteClient (Xi18n i18n_core, CARD16 connect_id);
+void _Xi18nSendMessage (XIMS ims, CARD16 connect_id, CARD8 major_opcode,
+ CARD8 minor_opcode, unsigned char *data, long length);
+void _Xi18nSendTriggerKey (XIMS ims, CARD16 connect_id);
+void _Xi18nSetEventMask (XIMS ims, CARD16 connect_id, CARD16 im_id,
+ CARD16 ic_id, CARD32 forward_mask, CARD32 sync_mask);
+
+/* Xlib internal */
+void _XRegisterFilterByType(Display*, Window, int, int,
+ Bool (*filter)(Display*, Window, XEvent*, XPointer), XPointer);
+void _XUnregisterFilter(Display*, Window,
+ Bool (*filter)(Display*, Window, XEvent*, XPointer), XPointer);
+
+#endif
--- /dev/null
+/* $XConsortium: XimProto.h,v 1.2 94/01/20 18:02:24 rws Exp $ */
+/******************************************************************
+
+ Copyright 1992, 1993, 1994 by FUJITSU LIMITED
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of FUJITSU LIMITED
+not be used in advertising or publicity pertaining to distribution
+of the software without specific, written prior permission.
+FUJITSU LIMITED makes no representations about the suitability of
+this software for any purpose.
+It is provided "as is" without express or implied warranty.
+
+FUJITSU LIMITED DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+EVENT SHALL FUJITSU LIMITED BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
+USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Takashi Fujiwara FUJITSU LIMITED
+ fujiwara@a80.tech.yk.fujitsu.co.jp
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#ifndef _XIMPROTO_H
+#define _XIMPROTO_H
+
+/*
+ * Default Preconnection selection target
+ */
+#define XIM_SERVERS "XIM_SERVERS"
+#define XIM_LOCALES "LOCALES"
+#define XIM_TRANSPORT "TRANSPORT"
+
+/*
+ * categories in XIM_SERVERS
+ */
+#define XIM_SERVER_CATEGORY "@server="
+#define XIM_LOCAL_CATEGORY "@locale="
+#define XIM_TRANSPORT_CATEGORY "@transport="
+
+/*
+ * Xim implementation revision
+ */
+#define PROTOCOLMAJORVERSION 0
+#define PROTOCOLMINORVERSION 0
+
+/*
+ * Major Protocol number
+ */
+#define XIM_CONNECT 1
+#define XIM_CONNECT_REPLY 2
+#define XIM_DISCONNECT 3
+#define XIM_DISCONNECT_REPLY 4
+
+#define XIM_AUTH_REQUIRED 10
+#define XIM_AUTH_REPLY 11
+#define XIM_AUTH_NEXT 12
+#define XIM_AUTH_SETUP 13
+#define XIM_AUTH_NG 14
+
+#define XIM_ERROR 20
+
+#define XIM_OPEN 30
+#define XIM_OPEN_REPLY 31
+#define XIM_CLOSE 32
+#define XIM_CLOSE_REPLY 33
+#define XIM_REGISTER_TRIGGERKEYS 34
+#define XIM_TRIGGER_NOTIFY 35
+#define XIM_TRIGGER_NOTIFY_REPLY 36
+#define XIM_SET_EVENT_MASK 37
+#define XIM_ENCODING_NEGOTIATION 38
+#define XIM_ENCODING_NEGOTIATION_REPLY 39
+#define XIM_QUERY_EXTENSION 40
+#define XIM_QUERY_EXTENSION_REPLY 41
+#define XIM_SET_IM_VALUES 42
+#define XIM_SET_IM_VALUES_REPLY 43
+#define XIM_GET_IM_VALUES 44
+#define XIM_GET_IM_VALUES_REPLY 45
+
+#define XIM_CREATE_IC 50
+#define XIM_CREATE_IC_REPLY 51
+#define XIM_DESTROY_IC 52
+#define XIM_DESTROY_IC_REPLY 53
+#define XIM_SET_IC_VALUES 54
+#define XIM_SET_IC_VALUES_REPLY 55
+#define XIM_GET_IC_VALUES 56
+#define XIM_GET_IC_VALUES_REPLY 57
+#define XIM_SET_IC_FOCUS 58
+#define XIM_UNSET_IC_FOCUS 59
+#define XIM_FORWARD_EVENT 60
+#define XIM_SYNC 61
+#define XIM_SYNC_REPLY 62
+#define XIM_COMMIT 63
+#define XIM_RESET_IC 64
+#define XIM_RESET_IC_REPLY 65
+
+#define XIM_GEOMETRY 70
+#define XIM_STR_CONVERSION 71
+#define XIM_STR_CONVERSION_REPLY 72
+#define XIM_PREEDIT_START 73
+#define XIM_PREEDIT_START_REPLY 74
+#define XIM_PREEDIT_DRAW 75
+#define XIM_PREEDIT_CARET 76
+#define XIM_PREEDIT_CARET_REPLY 77
+#define XIM_PREEDIT_DONE 78
+#define XIM_STATUS_START 79
+#define XIM_STATUS_DRAW 80
+#define XIM_STATUS_DONE 81
+
+/*
+ * values for the flag of XIM_ERROR
+ */
+#define XIM_IMID_VALID 0x0001
+#define XIM_ICID_VALID 0x0002
+
+/*
+ * XIM Error Code
+ */
+#define XIM_BadAlloc 1
+#define XIM_BadStyle 2
+#define XIM_BadClientWindow 3
+#define XIM_BadFocusWindow 4
+#define XIM_BadArea 5
+#define XIM_BadSpotLocation 6
+#define XIM_BadColormap 7
+#define XIM_BadAtom 8
+#define XIM_BadPixel 9
+#define XIM_BadPixmap 10
+#define XIM_BadName 11
+#define XIM_BadCursor 12
+#define XIM_BadProtocol 13
+#define XIM_BadForeground 14
+#define XIM_BadBackground 15
+#define XIM_LocaleNotSupported 16
+#define XIM_BadSomething 999
+
+/*
+ * byte order
+ */
+#define BIGENDIAN (CARD8) 0x42 /* MSB first */
+#define LITTLEENDIAN (CARD8) 0x6c /* LSB first */
+
+/*
+ * values for the type of XIMATTR & XICATTR
+ */
+#define XimType_SeparatorOfNestedList 0
+#define XimType_CARD8 1
+#define XimType_CARD16 2
+#define XimType_CARD32 3
+#define XimType_STRING8 4
+#define XimType_Window 5
+#define XimType_XIMStyles 10
+#define XimType_XRectangle 11
+#define XimType_XPoint 12
+#define XimType_XFontSet 13
+#define XimType_XIMOptions 14
+#define XimType_XIMHotKeyTriggers 15
+#define XimType_XIMHotKeyState 16
+#define XimType_XIMStringConversion 17
+#define XimType_XIMValuesList 18
+#define XimType_NEST 0x7FFF
+
+/*
+ * values for the category of XIM_ENCODING_NEGOTIATON_REPLY
+ */
+#define XIM_Encoding_NameCategory 0
+#define XIM_Encoding_DetailCategory 1
+
+/*
+ * value for the index of XIM_ENCODING_NEGOTIATON_REPLY
+ */
+#define XIM_Default_Encoding_IDX -1
+
+/*
+ * value for the flag of XIM_FORWARD_EVENT, XIM_COMMIT
+ */
+#define XimSYNCHRONUS 0x0001
+#define XimLookupChars 0x0002
+#define XimLookupKeySym 0x0004
+#define XimLookupBoth 0x0006
+
+/*
+ * request packet header size
+ */
+#define XIM_HEADER_SIZE \
+ sizeof(CARD8) /* sizeof mejor-opcode */ \
+ + sizeof(CARD8) /* sizeof minor-opcode */ \
+ + sizeof(INT16) /* sizeof length */
+
+/*
+ * Client Message data size
+ */
+#define XIM_CM_DATA_SIZE 20
+
+/*
+ * XIM data structure
+ */
+typedef CARD16 BITMASK16;
+typedef CARD32 BITMASK32;
+typedef CARD32 EVENTMASK;
+
+typedef CARD16 XIMID; /* Input Method ID */
+typedef CARD16 XICID; /* Input Context ID */
+
+/*
+ * Padding macro
+ */
+#define XIM_PAD(length) ((4 - ((length) % 4)) % 4)
+
+#define XIM_SET_PAD(ptr, length) \
+ { \
+ register int Counter = XIM_PAD((int)length); \
+ if (Counter) { \
+ register char *Ptr = (char *)(ptr) + (length); \
+ length += Counter; \
+ for (; Counter; --Counter, ++Ptr) \
+ *Ptr = '\0'; \
+ } \
+ }
+
+#endif
+
--- /dev/null
+/* $XConsortium: Xtrans.h,v 1.24 94/05/02 10:45:32 mor Exp $ */
+/*
+
+Copyright (c) 1993, 1994 X Consortium
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of the X Consortium shall
+not be used in advertising or otherwise to promote the sale, use or
+other dealings in this Software without prior written authorization
+from the X Consortium.
+
+*/
+
+/* Copyright (c) 1993, 1994 NCR Corporation - Dayton, Ohio, USA
+ *
+ * All Rights Reserved
+ *
+ * Permission to use, copy, modify, and distribute this software and its
+ * documentation for any purpose and without fee is hereby granted, provided
+ * that the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name NCR not be used in advertising
+ * or publicity pertaining to distribution of the software without specific,
+ * written prior permission. NCR makes no representations about the
+ * suitability of this software for any purpose. It is provided "as is"
+ * without express or implied warranty.
+ *
+ * NCR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN
+ * NO EVENT SHALL NCR BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
+ * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+ * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifndef _XTRANS_H_
+#define _XTRANS_H_
+
+#include <X11/Xfuncproto.h>
+#include <X11/Xos.h>
+
+
+/*
+ * Set the functions names according to where this code is being compiled.
+ */
+
+#ifdef X11_t
+#if (__STDC__ && !defined(UNIXCPP)) || defined(ANSICPP)
+#define TRANS(func) _X11Trans##func
+#else
+#define TRANS(func) _X11Trans/**/func
+#endif
+#endif /* X11_t */
+
+#ifdef XSERV_t
+#if (__STDC__ && !defined(UNIXCPP)) || defined(ANSICPP)
+#define TRANS(func) _XSERVTrans##func
+#else
+#define TRANS(func) _XSERVTrans/**/func
+#endif
+#define X11_t
+#endif /* X11_t */
+
+#ifdef XIM_t
+#if (__STDC__ && !defined(UNIXCPP)) || defined(ANSICPP)
+#define TRANS(func) _XimdXTrans##func
+#else
+#define TRANS(func) _XimdXTrans/**/func
+#endif
+#endif /* XIM_t */
+
+#ifdef FS_t
+#if (__STDC__ && !defined(UNIXCPP)) || defined(ANSICPP)
+#define TRANS(func) _FSTrans##func
+#else
+#define TRANS(func) _FSTrans/**/func
+#endif
+#endif /* FS_t */
+
+#ifdef FONT_t
+#if (__STDC__ && !defined(UNIXCPP)) || defined(ANSICPP)
+#define TRANS(func) _FontTrans##func
+#else
+#define TRANS(func) _FontTrans/**/func
+#endif
+#endif /* FONT_t */
+
+#ifdef ICE_t
+#if (__STDC__ && !defined(UNIXCPP)) || defined(ANSICPP)
+#define TRANS(func) _IceTrans##func
+#else
+#define TRANS(func) _IceTrans/**/func
+#endif
+#endif /* ICE_t */
+
+#ifdef TEST_t
+#if (__STDC__ && !defined(UNIXCPP)) || defined(ANSICPP)
+#define TRANS(func) _TESTTrans##func
+#else
+#define TRANS(func) _TESTTrans/**/func
+#endif
+#endif /* TEST_t */
+
+#if !defined(TRANS)
+#if (__STDC__ && !defined(UNIXCPP)) || defined(ANSICPP)
+#define TRANS(func) _XTrans##func
+#else
+#define TRANS(func) _XTrans/**/func
+#endif
+#endif /* !TRANS */
+
+
+/*
+ * Create a single address structure that can be used wherever
+ * an address structure is needed. struct sockaddr is not big enough
+ * to hold a sockadd_un, so we create this definition to have a single
+ * structure that is big enough for all the structures we might need.
+ *
+ * This structure needs to be independent of the socket/TLI interface used.
+ */
+
+#define XTRANS_MAX_ADDR_LEN 128 /* large enough to hold sun_path */
+
+typedef struct {
+ unsigned char addr[XTRANS_MAX_ADDR_LEN];
+} Xtransaddr;
+
+
+#ifdef LONG64
+typedef int BytesReadable_t;
+#else
+typedef long BytesReadable_t;
+#endif
+
+
+#if defined(WIN32) || (defined(USG) && !defined(CRAY) && !defined(umips) && !defined(MOTOROLA) && !defined(uniosu) && !defined(__sxg__))
+
+/*
+ * TRANS(Readv) and TRANS(Writev) use struct iovec, normally found
+ * in Berkeley systems in <sys/uio.h>. See the readv(2) and writev(2)
+ * manual pages for details.
+ */
+
+struct iovec {
+ caddr_t iov_base;
+ int iov_len;
+};
+
+#else
+#include <sys/uio.h>
+#endif
+
+typedef struct _XtransConnInfo *XtransConnInfo;
+
+
+/*
+ * Transport Option definitions
+ */
+
+#define TRANS_NONBLOCKING 1
+#define TRANS_CLOSEONEXEC 2
+
+
+/*
+ * Return values of Connect (0 is success)
+ */
+
+#define TRANS_CONNECT_FAILED -1
+#define TRANS_TRY_CONNECT_AGAIN -2
+
+
+/*
+ * Return values of Accept (0 is success)
+ */
+
+#define TRANS_ACCEPT_BAD_MALLOC -1
+#define TRANS_ACCEPT_FAILED -2
+#define TRANS_ACCEPT_MISC_ERROR -3
+
+
+/*
+ * ResetListener return values
+ */
+
+#define TRANS_RESET_NOOP 1
+#define TRANS_RESET_NEW_FD 2
+#define TRANS_RESET_FAILURE 3
+
+
+/*
+ * Function prototypes for the exposed interface
+ */
+
+#ifdef TRANS_CLIENT
+
+XtransConnInfo TRANS(OpenCOTSClient)(
+#if NeedFunctionPrototypes
+ char * /* address */
+#endif
+);
+
+#endif /* TRANS_CLIENT */
+
+#ifdef TRANS_SERVER
+
+XtransConnInfo TRANS(OpenCOTSServer)(
+#if NeedFunctionPrototypes
+ char * /* address */
+#endif
+);
+
+#endif /* TRANS_SERVER */
+
+#ifdef TRANS_CLIENT
+
+XtransConnInfo TRANS(OpenCLTSClient)(
+#if NeedFunctionPrototypes
+ char * /* address */
+#endif
+);
+
+#endif /* TRANS_CLIENT */
+
+#ifdef TRANS_SERVER
+
+XtransConnInfo TRANS(OpenCLTSServer)(
+#if NeedFunctionPrototypes
+ char * /* address */
+#endif
+);
+
+#endif /* TRANS_SERVER */
+
+#ifdef TRANS_REOPEN
+
+XtransConnInfo TRANS(ReopenCOTSServer)(
+#if NeedFunctionPrototypes
+ int, /* trans_id */
+ int, /* fd */
+ char * /* port */
+#endif
+);
+
+XtransConnInfo TRANS(ReopenCLTSServer)(
+#if NeedFunctionPrototypes
+ int, /* trans_id */
+ int, /* fd */
+ char * /* port */
+#endif
+);
+
+int TRANS(GetReopenInfo)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ int *, /* trans_id */
+ int *, /* fd */
+ char ** /* port */
+#endif
+);
+
+#endif /* TRANS_REOPEN */
+
+
+int TRANS(SetOption)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ int, /* option */
+ int /* arg */
+#endif
+);
+
+#ifdef TRANS_SERVER
+
+int TRANS(CreateListener)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ char * /* port */
+#endif
+);
+
+int TRANS(ResetListener)(
+#if NeedFunctionPrototypes
+ XtransConnInfo /* ciptr */
+#endif
+);
+
+XtransConnInfo TRANS(Accept)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ int * /* status */
+#endif
+);
+
+#endif /* TRANS_SERVER */
+
+#ifdef TRANS_CLIENT
+
+int TRANS(Connect)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ char * /* address */
+#endif
+);
+
+#endif /* TRANS_CLIENT */
+
+int TRANS(BytesReadable)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ BytesReadable_t * /* pend */
+#endif
+);
+
+int TRANS(Read)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ char *, /* buf */
+ int /* size */
+#endif
+);
+
+int TRANS(Write)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ char *, /* buf */
+ int /* size */
+#endif
+);
+
+int TRANS(Readv)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ struct iovec *, /* buf */
+ int /* size */
+#endif
+);
+
+int TRANS(Writev)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ struct iovec *, /* buf */
+ int /* size */
+#endif
+);
+
+int TRANS(Disconnect)(
+#if NeedFunctionPrototypes
+ XtransConnInfo /* ciptr */
+#endif
+);
+
+int TRANS(Close)(
+#if NeedFunctionPrototypes
+ XtransConnInfo /* ciptr */
+#endif
+);
+
+int TRANS(CloseForCloning)(
+#if NeedFunctionPrototypes
+ XtransConnInfo /* ciptr */
+#endif
+);
+
+int TRANS(IsLocal)(
+#if NeedFunctionPrototypes
+ XtransConnInfo /* ciptr */
+#endif
+);
+
+int TRANS(GetMyAddr)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ int *, /* familyp */
+ int *, /* addrlenp */
+ Xtransaddr ** /* addrp */
+#endif
+);
+
+int TRANS(GetPeerAddr)(
+#if NeedFunctionPrototypes
+ XtransConnInfo, /* ciptr */
+ int *, /* familyp */
+ int *, /* addrlenp */
+ Xtransaddr ** /* addrp */
+#endif
+);
+
+int TRANS(GetConnectionNumber)(
+#if NeedFunctionPrototypes
+ XtransConnInfo /* ciptr */
+#endif
+);
+
+#ifdef TRANS_SERVER
+
+int TRANS(MakeAllCOTSServerListeners)(
+#if NeedFunctionPrototypes
+ char *, /* port */
+ int *, /* partial */
+ int *, /* count_ret */
+ XtransConnInfo ** /* ciptrs_ret */
+#endif
+);
+
+int TRANS(MakeAllCLTSServerListeners)(
+#if NeedFunctionPrototypes
+ char *, /* port */
+ int *, /* partial */
+ int *, /* count_ret */
+ XtransConnInfo ** /* ciptrs_ret */
+#endif
+);
+
+#endif /* TRANS_SERVER */
+
+
+/*
+ * Function Prototypes for Utility Functions.
+ */
+
+#ifdef X11_t
+
+int TRANS(ConvertAddress)(
+#if NeedFunctionPrototypes
+ int *, /* familyp */
+ int *, /* addrlenp */
+ Xtransaddr * /* addrp */
+#endif
+);
+
+#endif /* X11_t */
+
+#ifdef ICE_t
+
+char *
+TRANS(GetMyNetworkId)(
+#if NeedFunctionPrototypes
+ XtransConnInfo /* ciptr */
+#endif
+);
+
+char *
+TRANS(GetPeerNetworkId)(
+#if NeedFunctionPrototypes
+ XtransConnInfo /* ciptr */
+#endif
+);
+
+#endif /* ICE_t */
+
+#endif /* _XTRANS_H_ */
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <X11/Xlib.h>
+#include <X11/Xresource.h>
+#include "IMdkit.h"
+#include "Xi18n.h"
+#include "XimFunc.h"
+
+typedef struct
+{
+ char *name;
+ CARD16 type;
+} IMListOfAttr;
+
+typedef struct
+{
+ char *name;
+ CARD8 major_opcode;
+ CARD8 minor_opcode;
+} IMExtList;
+
+IMListOfAttr Default_IMattr[] =
+{
+ {XNQueryInputStyle, XimType_XIMStyles},
+/* {XNQueryIMValuesList, XimType_XIMValuesList}, */
+ {(char *) NULL, (CARD16) 0}
+};
+
+IMListOfAttr Default_ICattr[] =
+{
+ {XNInputStyle, XimType_CARD32},
+ {XNClientWindow, XimType_Window},
+ {XNFocusWindow, XimType_Window},
+ {XNFilterEvents, XimType_CARD32},
+ {XNPreeditAttributes, XimType_NEST},
+ {XNStatusAttributes, XimType_NEST},
+ {XNFontSet, XimType_XFontSet},
+ {XNArea, XimType_XRectangle},
+ {XNAreaNeeded, XimType_XRectangle},
+ {XNColormap, XimType_CARD32},
+ {XNStdColormap, XimType_CARD32},
+ {XNForeground, XimType_CARD32},
+ {XNBackground, XimType_CARD32},
+ {XNBackgroundPixmap, XimType_CARD32},
+ {XNSpotLocation, XimType_XPoint},
+ {XNLineSpace, XimType_CARD32},
+ {XNPreeditState, XimType_CARD32},
+ {XNSeparatorofNestedList, XimType_SeparatorOfNestedList},
+ {(char *) NULL, (CARD16) NULL}
+};
+
+IMExtList Default_Extension[] =
+{
+ {"XIM_EXT_MOVE", XIM_EXTENSION, XIM_EXT_MOVE},
+ {"XIM_EXT_SET_EVENT_MASK", XIM_EXTENSION, XIM_EXT_SET_EVENT_MASK},
+ {"XIM_EXT_FORWARD_KEYEVENT", XIM_EXTENSION, XIM_EXT_FORWARD_KEYEVENT},
+ {(char *) NULL, (CARD8) NULL, (CARD8) NULL}
+};
+
+static void CountAttrList(IMListOfAttr *attr, int *total_count)
+{
+ *total_count = 0;
+
+ while (attr->name != NULL)
+ {
+ attr++;
+ ++(*total_count);
+ }
+}
+
+static XIMAttr *CreateAttrList (Xi18n i18n_core,
+ IMListOfAttr *attr,
+ int *total_count)
+{
+ XIMAttr *args, *p;
+ unsigned int buf_size;
+
+ CountAttrList(attr, total_count);
+
+ buf_size = (unsigned) (*total_count + 1)*sizeof (XIMAttr);
+ args = (XIMAttr *) malloc (buf_size);
+ if (!args)
+ return (XIMAttr *) NULL;
+ /*endif*/
+ memset (args, 0, buf_size);
+
+ for (p = args; attr->name != NULL; attr++, p++)
+ {
+ p->name = attr->name;
+ p->length = strlen (attr->name);
+ p->type = (CARD16) attr->type;
+ p->attribute_id = XrmStringToQuark (p->name);
+ if (strcmp (p->name, XNPreeditAttributes) == 0)
+ i18n_core->address.preeditAttr_id = p->attribute_id;
+ else if (strcmp (p->name, XNStatusAttributes) == 0)
+ i18n_core->address.statusAttr_id = p->attribute_id;
+ else if (strcmp (p->name, XNSeparatorofNestedList) == 0)
+ i18n_core->address.separatorAttr_id = p->attribute_id;
+ /*endif*/
+ }
+ /*endfor*/
+ p->name = (char *) NULL;
+
+ return args;
+}
+
+void _Xi18nInitAttrList (Xi18n i18n_core)
+{
+ XIMAttr *args;
+ int total_count;
+
+ /* init IMAttr list */
+ if (i18n_core->address.xim_attr)
+ XFree ((char *)i18n_core->address.xim_attr);
+ /*endif*/
+ args = CreateAttrList (i18n_core, Default_IMattr, &total_count);
+
+ i18n_core->address.im_attr_num = total_count;
+ i18n_core->address.xim_attr = (XIMAttr *)args;
+
+ /* init ICAttr list */
+ if (i18n_core->address.xic_attr)
+ XFree ((char *) i18n_core->address.xic_attr);
+ /*endif*/
+ args = CreateAttrList (i18n_core, Default_ICattr, &total_count);
+
+ i18n_core->address.ic_attr_num = total_count;
+ i18n_core->address.xic_attr = (XICAttr *) args;
+}
+
+void _Xi18nInitExtension(Xi18n i18n_core)
+{
+ register int i;
+ IMExtList *extensions = (IMExtList *) Default_Extension;
+ XIMExt *ext_list = (XIMExt *) i18n_core->address.extension;
+
+ for (i = 0; extensions->name; i++, ext_list++, extensions++)
+ {
+ ext_list->major_opcode = extensions->major_opcode;
+ ext_list->minor_opcode = extensions->minor_opcode;
+ ext_list->name = extensions->name;
+ ext_list->length = strlen(ext_list->name);
+ }
+ /*endfor*/
+ i18n_core->address.ext_num = i;
+}
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <X11/Xlib.h>
+#include "IMdkit.h"
+#include "Xi18n.h"
+#include "FrameMgr.h"
+#include "XimFunc.h"
+
+int _Xi18nGeometryCallback (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec geometry_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMGeometryCBStruct *geometry_CB =
+ (IMGeometryCBStruct *) &call_data->geometry_callback;
+ CARD16 connect_id = call_data->any.connect_id;
+
+ fm = FrameMgrInit (geometry_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, geometry_CB->icid);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_GEOMETRY,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ /* XIM_GEOMETRY is an asyncronous protocol,
+ so return immediately. */
+ return True;
+}
+
+int _Xi18nPreeditStartCallback (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec preedit_start_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMPreeditCBStruct *preedit_CB =
+ (IMPreeditCBStruct*) &call_data->preedit_callback;
+ CARD16 connect_id = call_data->any.connect_id;
+
+ fm = FrameMgrInit (preedit_start_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage(ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, preedit_CB->icid);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_PREEDIT_START,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ return True;
+}
+
+int _Xi18nPreeditDrawCallback (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec preedit_draw_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMPreeditCBStruct *preedit_CB =
+ (IMPreeditCBStruct *) &call_data->preedit_callback;
+ XIMPreeditDrawCallbackStruct *draw =
+ (XIMPreeditDrawCallbackStruct *) &preedit_CB->todo.draw;
+ CARD16 connect_id = call_data->any.connect_id;
+ register int feedback_count;
+ register int i;
+ BITMASK32 status = 0x0;
+
+ if (draw->text->length == 0)
+ status = 0x00000001;
+ else if (draw->text->feedback[0] == 0)
+ status = 0x00000002;
+ /*endif*/
+
+ fm = FrameMgrInit (preedit_draw_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* set length of preedit string */
+ FrameMgrSetSize (fm, draw->text->length);
+
+ /* set iteration count for list of feedback */
+ for (i = 0; draw->text->feedback[i] != 0; i++)
+ ;
+ /*endfor*/
+ feedback_count = i;
+ FrameMgrSetIterCount (fm, feedback_count);
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, preedit_CB->icid);
+ FrameMgrPutToken (fm, draw->caret);
+ FrameMgrPutToken (fm, draw->chg_first);
+ FrameMgrPutToken (fm, draw->chg_length);
+ FrameMgrPutToken (fm, status);
+ FrameMgrPutToken (fm, draw->text->length);
+ FrameMgrPutToken (fm, draw->text->string);
+ for (i = 0; i < feedback_count; i++)
+ FrameMgrPutToken (fm, draw->text->feedback[i]);
+ /*endfor*/
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_PREEDIT_DRAW,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ /* XIM_PREEDIT_DRAW is an asyncronous protocol, so return immediately. */
+ return True;
+}
+
+int _Xi18nPreeditCaretCallback (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec preedit_caret_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMPreeditCBStruct *preedit_CB =
+ (IMPreeditCBStruct*) &call_data->preedit_callback;
+ XIMPreeditCaretCallbackStruct *caret =
+ (XIMPreeditCaretCallbackStruct *) &preedit_CB->todo.caret;
+ CARD16 connect_id = call_data->any.connect_id;
+
+ fm = FrameMgrInit (preedit_caret_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, preedit_CB->icid);
+ FrameMgrPutToken (fm, caret->position);
+ FrameMgrPutToken (fm, caret->direction);
+ FrameMgrPutToken (fm, caret->style);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_PREEDIT_CARET,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ return True;
+}
+
+int _Xi18nPreeditDoneCallback (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec preedit_done_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMPreeditCBStruct *preedit_CB =
+ (IMPreeditCBStruct *) &call_data->preedit_callback;
+ CARD16 connect_id = call_data->any.connect_id;
+
+ fm = FrameMgrInit (preedit_done_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, preedit_CB->icid);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_PREEDIT_DONE,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ /* XIM_PREEDIT_DONE is an asyncronous protocol, so return immediately. */
+ return True;
+}
+
+int _Xi18nStatusStartCallback (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec status_start_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMStatusCBStruct *status_CB =
+ (IMStatusCBStruct*) &call_data->status_callback;
+ CARD16 connect_id = call_data->any.connect_id;
+
+ fm = FrameMgrInit (status_start_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, status_CB->icid);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_STATUS_START,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ /* XIM_STATUS_START is an asyncronous protocol, so return immediately. */
+ return True;
+}
+
+int _Xi18nStatusDrawCallback (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm = (FrameMgr)0;
+ extern XimFrameRec status_draw_text_fr[];
+ extern XimFrameRec status_draw_bitmap_fr[];
+ register int total_size = 0;
+ unsigned char *reply = NULL;
+ IMStatusCBStruct *status_CB =
+ (IMStatusCBStruct *) &call_data->status_callback;
+ XIMStatusDrawCallbackStruct *draw =
+ (XIMStatusDrawCallbackStruct *) &status_CB->todo.draw;
+ CARD16 connect_id = call_data->any.connect_id;
+ register int feedback_count;
+ register int i;
+ BITMASK32 status = 0x0;
+
+ switch (draw->type)
+ {
+ case XIMTextType:
+ fm = FrameMgrInit (status_draw_text_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ if (draw->data.text->length == 0)
+ status = 0x00000001;
+ else if (draw->data.text->feedback[0] == 0)
+ status = 0x00000002;
+ /*endif*/
+
+ /* set length of status string */
+ FrameMgrSetSize(fm, draw->data.text->length);
+ /* set iteration count for list of feedback */
+ for (i = 0; draw->data.text->feedback[i] != 0; i++)
+ ;
+ /*endfor*/
+ feedback_count = i;
+ FrameMgrSetIterCount (fm, feedback_count);
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, status_CB->icid);
+ FrameMgrPutToken (fm, draw->type);
+ FrameMgrPutToken (fm, status);
+ FrameMgrPutToken (fm, draw->data.text->length);
+ FrameMgrPutToken (fm, draw->data.text->string);
+ for (i = 0; i < feedback_count; i++)
+ FrameMgrPutToken (fm, draw->data.text->feedback[i]);
+ /*endfor*/
+ break;
+
+ case XIMBitmapType:
+ fm = FrameMgrInit (status_draw_bitmap_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, status_CB->icid);
+ FrameMgrPutToken (fm, draw->data.bitmap);
+ break;
+ }
+ /*endswitch*/
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_STATUS_DRAW,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ /* XIM_STATUS_DRAW is an asyncronous protocol, so return immediately. */
+ return True;
+}
+
+int _Xi18nStatusDoneCallback (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec status_done_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMStatusCBStruct *status_CB =
+ (IMStatusCBStruct *) &call_data->status_callback;
+ CARD16 connect_id = call_data->any.connect_id;
+
+ fm = FrameMgrInit (status_done_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, status_CB->icid);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_STATUS_DONE,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ /* XIM_STATUS_DONE is an asyncronous protocol, so return immediately. */
+ return True;
+}
+
+int _Xi18nStringConversionCallback (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec str_conversion_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMStrConvCBStruct *call_back =
+ (IMStrConvCBStruct *) &call_data->strconv_callback;
+ XIMStringConversionCallbackStruct *strconv =
+ (XIMStringConversionCallbackStruct *) &call_back->strconv;
+ CARD16 connect_id = call_data->any.connect_id;
+
+ fm = FrameMgrInit (str_conversion_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, connect_id);
+ FrameMgrPutToken (fm, call_back->icid);
+ FrameMgrPutToken (fm, strconv->position);
+ FrameMgrPutToken (fm, strconv->direction);
+ FrameMgrPutToken (fm, strconv->operation);
+
+ _Xi18nSendMessage (ims, connect_id,
+ XIM_STR_CONVERSION,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ /* XIM_STR_CONVERSION is a syncronous protocol,
+ so should wait here for XIM_STR_CONVERSION_REPLY. */
+ if (i18n_core->methods.wait (ims,
+ connect_id,
+ XIM_STR_CONVERSION_REPLY,
+ 0) == False)
+ {
+ return False;
+ }
+ /*endif*/
+ return True;
+}
--- /dev/null
+/******************************************************************
+Copyright 1993, 1994 by Digital Equipment Corporation, Maynard, Massachusetts,
+Copyright 1993, 1994 by Hewlett-Packard Company
+
+Copyright 1994, 1995 by Sun Microsystems, Inc.
+
+ All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the names of Digital or MIT not be
+used in advertising or publicity pertaining to distribution of the
+software without specific, written prior permission.
+
+DIGITAL AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL WARRANTIES WITH REGARD
+TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS, IN NO EVENT SHALL DIGITAL AND HEWLETT-PACKARD COMPANY BE LIABLE
+FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hiroyuki Miyamoto Digital Equipment Corporation
+ miyamoto@jrd.dec.com
+ Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+/* Protocol Packet frames */
+
+#include "FrameMgr.h"
+
+/* Data type definitions */
+
+static XimFrameRec ximattr_fr[] =
+{
+ _FRAME(BIT16), /* attribute ID */
+ _FRAME(BIT16), /* type of the value */
+ _FRAME(BIT16), /* length of im-attribute */
+ _FRAME(BARRAY), /* im-attribute */
+ _PAD4(2),
+ _FRAME(EOL),
+};
+
+static XimFrameRec xicattr_fr[] =
+{
+ _FRAME(BIT16), /* attribute ID */
+ _FRAME(BIT16), /* type of the value */
+ _FRAME(BIT16), /* length of ic-attribute */
+ _FRAME(BARRAY), /* ic-attribute */
+ _PAD4(2),
+ _FRAME(EOL),
+};
+
+static XimFrameRec ximattribute_fr[] =
+{
+ _FRAME(BIT16), /* attribute ID */
+ _FRAME(BIT16), /* value length */
+ _FRAME(BARRAY), /* value */
+ _PAD4(1),
+ _FRAME(EOL),
+};
+
+static XimFrameRec xicattribute_fr[] =
+{
+ _FRAME(BIT16), /* attribute ID */
+ _FRAME(BIT16), /* value length */
+ _FRAME(BARRAY), /* value */
+ _PAD4(1),
+ _FRAME(EOL),
+};
+
+static XimFrameRec ximtriggerkey_fr[] =
+{
+ _FRAME(BIT32), /* keysym */
+ _FRAME(BIT32), /* modifier */
+ _FRAME(BIT32), /* modifier mask */
+ _FRAME(EOL),
+};
+
+static XimFrameRec encodinginfo_fr[] =
+{
+ _FRAME(BIT16), /* length of encoding info */
+ _FRAME(BARRAY), /* encoding info */
+ _PAD4(2),
+ _FRAME(EOL),
+};
+
+static XimFrameRec str_fr[] =
+{
+ _FRAME(BIT8), /* number of byte */
+ _FRAME(BARRAY), /* string */
+ _FRAME(EOL),
+};
+
+static XimFrameRec xpcs_fr[] =
+{
+ _FRAME(BIT16), /* length of string in bytes */
+ _FRAME(BARRAY), /* string */
+ _PAD4(2),
+};
+
+static XimFrameRec ext_fr[] =
+{
+ _FRAME(BIT16), /* extension major-opcode */
+ _FRAME(BIT16), /* extension minor-opcode */
+ _FRAME(BIT16), /* length of extension name */
+ _FRAME(BARRAY), /* extension name */
+ _PAD4(2),
+ _FRAME(EOL),
+};
+
+static XimFrameRec inputstyle_fr[] =
+{
+ _FRAME(BIT32), /* inputstyle */
+ _FRAME(EOL),
+};
+/* Protocol definitions */
+
+xim_externaldef XimFrameRec attr_head_fr[] =
+{
+ _FRAME(BIT16), /* attribute id */
+ _FRAME(BIT16), /* attribute length */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec short_fr[] =
+{
+ _FRAME(BIT16), /* value */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec long_fr[] =
+{
+ _FRAME(BIT32), /* value */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec xrectangle_fr[] =
+{
+ _FRAME(BIT16), /* x */
+ _FRAME(BIT16), /* y */
+ _FRAME(BIT16), /* width */
+ _FRAME(BIT16), /* height */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec xpoint_fr[] =
+{
+ _FRAME(BIT16), /* x */
+ _FRAME(BIT16), /* y */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec fontset_fr[] =
+{
+ _FRAME(BIT16), /* length of base font name */
+ _FRAME(BARRAY), /* base font name list */
+ _PAD4(2), /* unused */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec input_styles_fr[] =
+{
+ _FRAME(BIT16), /* number of list */
+ _PAD4(1), /* unused */
+ _FRAME(ITER), /* XIMStyle list */
+ _FRAME(POINTER),
+ _PTR(inputstyle_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec packet_header_fr[] =
+{
+ _FRAME(BIT8), /* major-opcode */
+ _FRAME(BIT8), /* minor-opcode */
+ _FRAME(BIT16), /* length */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec error_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT16), /* flag */
+ _FRAME(BIT16), /* Error Code */
+ _FRAME(BIT16), /* length of error detail */
+ _FRAME(BIT16), /* type of error detail */
+ _FRAME(BARRAY), /* error detail */
+ _PAD4(1),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec connect_fr[] =
+{
+ _FRAME(BIT8), /* byte order */
+ _PAD2(1), /* unused */
+ _FRAME(BIT16), /* client-major-protocol-version */
+ _FRAME(BIT16), /* client-minor-protocol-version */
+ _BYTE_COUNTER(BIT16, 1), /* length of client-auth-protocol-names */
+ _FRAME(ITER), /* client-auth-protocol-names */
+ _FRAME(POINTER),
+ _PTR(xpcs_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec connect_reply_fr[] =
+{
+ _FRAME(BIT16), /* server-major-protocol-version */
+ _FRAME(BIT16), /* server-minor-protocol-version */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec auth_required_fr[] =
+{
+ _FRAME(BIT8), /* auth-protocol-index */
+ _FRAME(BIT8), /* auth-data1 */
+ _FRAME(BARRAY), /* auth-data2 */
+ _PAD4(3),
+ _FRAME(EOL),
+};
+
+
+xim_externaldef XimFrameRec auth_reply_fr[] =
+{
+ _FRAME(BIT8),
+ _FRAME(BARRAY),
+ _PAD4(2),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec auth_next_fr[] =
+{
+ _FRAME(BIT8), /* auth-data1 */
+ _FRAME(BARRAY), /* auth-data2 */
+ _PAD4(2),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec auth_setup_fr[] =
+{
+ _BYTE_COUNTER(BIT16, 2), /* number of client-auth-protocol-names */
+ _PAD4(1), /* unused */
+ _FRAME(ITER), /* server-auth-protocol-names */
+ _FRAME(POINTER),
+ _PTR(xpcs_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec auth_ng_fr[] =
+{
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec disconnect_fr[] =
+{
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec disconnect_reply_fr[] =
+{
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec open_fr[] =
+{
+ _FRAME(POINTER), /* locale name */
+ _PTR(str_fr),
+ _PAD4(1),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec open_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _BYTE_COUNTER(BIT16, 1), /* byte length of IM attributes supported */
+ _FRAME(ITER), /* IM attribute supported */
+ _FRAME(POINTER),
+ _PTR(ximattr_fr),
+ _BYTE_COUNTER(BIT16, 2), /* number of IC attribute supported */
+ _PAD4(1), /* unused */
+ _FRAME(ITER), /* IC attribute supported */
+ _FRAME(POINTER),
+ _PTR(xicattr_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec close_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _PAD4(1), /* unused */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec close_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _PAD4(1), /* unused */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec register_triggerkeys_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _PAD4(1), /* unused */
+ _BYTE_COUNTER(BIT32, 1), /* byte length of on-keys */
+ _FRAME(ITER), /* on-keys list */
+ _FRAME(POINTER),
+ _PTR(ximtriggerkey_fr),
+ _BYTE_COUNTER(BIT32, 1), /* byte length of off-keys */
+ _FRAME(ITER), /* off-keys list */
+ _FRAME(POINTER),
+ _PTR(ximtriggerkey_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec trigger_notify_fr[] =
+{
+ _FRAME(BIT16), /* input-mehotd-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* flag */
+ _FRAME(BIT32), /* index of keys list */
+ _FRAME(BIT32), /* client-select-event-mask */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec trigger_notify_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec set_event_mask_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* forward-event-mask */
+ _FRAME(BIT32), /* synchronous-event-mask */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec encoding_negotiation_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _BYTE_COUNTER(BIT16, 1), /* byte length of encodings listed by name */
+ _FRAME(ITER), /* supported list of encoding in IM library */
+ _FRAME(POINTER),
+ _PTR(str_fr),
+ _PAD4(1),
+ _BYTE_COUNTER(BIT16, 2), /* byte length of encodings listed by
+ detailed data */
+ _PAD4(1),
+ _FRAME(ITER), /* list of encodings supported in the
+ IM library */
+ _FRAME(POINTER),
+ _PTR(encodinginfo_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec encoding_negotiation_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* category of the encoding determined */
+ _FRAME(BIT16), /* index of the encoding dterminated */
+ _PAD4(1),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec query_extension_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _BYTE_COUNTER(BIT16, 1), /* byte length of extensions supported
+ by the IM library */
+ _FRAME(ITER), /* extensions supported by the IM library */
+ _FRAME(POINTER),
+ _PTR(str_fr),
+ _PAD4(1),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec query_extension_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _BYTE_COUNTER(BIT16, 1), /* byte length of extensions supported
+ by the IM server */
+ _FRAME(ITER), /* list of extensions supported by the
+ IM server */
+ _FRAME(POINTER),
+ _PTR(ext_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec get_im_values_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _BYTE_COUNTER(BIT16, 1), /* byte length of im-attribute-id */
+ _FRAME(ITER), /* im-attribute-id */
+ _FRAME(BIT16),
+ _PAD4(1),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec get_im_values_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _BYTE_COUNTER(BIT16, 1), /* byte length of im-attribute returned */
+ _FRAME(ITER), /* im-attribute returned */
+ _FRAME(POINTER),
+ _PTR(ximattribute_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec create_ic_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _BYTE_COUNTER(BIT16, 1), /* byte length of ic-attributes */
+ _FRAME(ITER), /* ic-attributes */
+ _FRAME(POINTER),
+ _PTR(xicattribute_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec create_ic_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec destroy_ic_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec destroy_ic_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec set_ic_values_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _BYTE_COUNTER(BIT16, 2), /* byte length of ic-attributes */
+ _PAD4(1),
+ _FRAME(ITER), /* ic-attribute */
+ _FRAME(POINTER),
+ _PTR(xicattribute_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec set_ic_values_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec get_ic_values_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _BYTE_COUNTER(BIT16, 1), /* byte length of ic-attribute-id */
+ _FRAME(ITER), /* ic-attribute */
+ _FRAME(BIT16),
+ _PAD4(2),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec get_ic_values_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _BYTE_COUNTER(BIT16, 2), /* byte length of ic-attribute */
+ _PAD4(1),
+ _FRAME(ITER), /* ic-attribute */
+ _FRAME(POINTER),
+ _PTR(xicattribute_fr),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec set_ic_focus_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec unset_ic_focus_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec forward_event_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT16), /* flag */
+ _FRAME(BIT16), /* sequence number */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec wire_keyevent_fr[] = {
+ _FRAME(BIT8), /* type */
+ _FRAME(BIT8), /* detail */
+ _FRAME(BIT16), /* serial number */
+ _FRAME(BIT32), /* time */
+ _FRAME(BIT32), /* root */
+ _FRAME(BIT32), /* window */
+ _FRAME(BIT32), /* subwindow */
+ _FRAME(BIT16), /* rootX */
+ _FRAME(BIT16), /* rootY */
+ _FRAME(BIT16), /* X */
+ _FRAME(BIT16), /* Y */
+ _FRAME(BIT16), /* state */
+ _FRAME(BIT8), /* sameScreen */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec sync_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec sync_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+#if 0
+xim_externaldef XimFrameRec commit_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT16), /* flag */
+ _FRAME(BIT16), /* byte length of committed string */
+ _FRAME(BARRAY), /* committed string */
+ _PAD4(1),
+ _BYTE_COUNTER(BIT16, 1), /* byte length of keysym */
+ _FRAME(ITER), /* keysym */
+ _FRAME(BIT32),
+ _PAD4(1),
+ _FRAME(EOL),
+};
+#endif
+
+xim_externaldef XimFrameRec commit_chars_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT16), /* flag */
+ _FRAME(BIT16), /* byte length of committed string */
+ _FRAME(BARRAY), /* committed string */
+ _PAD4(1),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec commit_both_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT16), /* flag */
+ _PAD4(1), /* unused */
+ _FRAME(BIT32), /* keysym */
+ _FRAME(BIT16), /* byte length of committed string */
+ _FRAME(BARRAY), /* committed string */
+ _PAD4(2),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec reset_ic_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec reset_ic_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT16), /* byte length of committed string */
+ _FRAME(BARRAY), /* committed string */
+ _PAD4(2),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec geometry_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec str_conversion_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* XIMStringConversionPosition */
+ _FRAME(BIT32), /* XIMStringConversionType */
+ _FRAME(BIT32), /* XIMStringConversionOperation */
+ _FRAME(BIT16), /* length to multiply the
+ XIMStringConversionType */
+ _FRAME(BIT16), /* length of the string to be
+ substituted */
+#if 0
+ _FRAME(BARRAY), /* string */
+ _PAD4(1),
+#endif
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec str_conversion_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* XIMStringConversionFeedback */
+ _FRAME(BIT16), /* length of the retrieved string */
+ _FRAME(BARRAY), /* retrieved string */
+ _PAD4(2),
+ _BYTE_COUNTER(BIT16, 2), /* number of feedback array */
+ _PAD4(1),
+ _FRAME(ITER), /* feedback array */
+ _FRAME(BIT32),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec preedit_start_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec preedit_start_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* return value */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec preedit_draw_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* caret */
+ _FRAME(BIT32), /* chg_first */
+ _FRAME(BIT32), /* chg_length */
+ _FRAME(BIT32), /* status */
+ _FRAME(BIT16), /* length of preedit string */
+ _FRAME(BARRAY), /* preedit string */
+ _PAD4(2),
+ _BYTE_COUNTER(BIT16, 2), /* number of feedback array */
+ _PAD4(1),
+ _FRAME(ITER), /* feedback array */
+ _FRAME(BIT32),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec preedit_caret_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* position */
+ _FRAME(BIT32), /* direction */
+ _FRAME(BIT32), /* style */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec preedit_caret_reply_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* position */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec preedit_done_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec status_start_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec status_draw_text_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* type */
+ _FRAME(BIT32), /* status */
+ _FRAME(BIT16), /* length of status string */
+ _FRAME(BARRAY), /* status string */
+ _PAD4(2),
+ _BYTE_COUNTER(BIT16, 2), /* number of feedback array */
+ _PAD4(1),
+ _FRAME(ITER), /* feedback array */
+ _FRAME(BIT32),
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec status_draw_bitmap_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* type */
+ _FRAME(BIT32), /* pixmap data */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec status_done_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec ext_set_event_mask_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT32), /* filter-event-mask */
+ _FRAME(BIT32), /* intercept-event-mask */
+ _FRAME(BIT32), /* select-event-mask */
+ _FRAME(BIT32), /* forward-event-mask */
+ _FRAME(BIT32), /* synchronous-event-mask */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec ext_forward_keyevent_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT16), /* flag */
+ _FRAME(BIT16), /* sequence number */
+ _FRAME(BIT8), /* xEvent.u.u.type */
+ _FRAME(BIT8), /* keycode */
+ _FRAME(BIT16), /* state */
+ _FRAME(BIT32), /* time */
+ _FRAME(BIT32), /* window */
+ _FRAME(EOL),
+};
+
+xim_externaldef XimFrameRec ext_move_fr[] =
+{
+ _FRAME(BIT16), /* input-method-ID */
+ _FRAME(BIT16), /* input-context-ID */
+ _FRAME(BIT16), /* X */
+ _FRAME(BIT16), /* Y */
+ _FRAME(EOL),
+};
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <X11/Xlib.h>
+#include "IMdkit.h"
+#include "Xi18n.h"
+#include "FrameMgr.h"
+#include "XimFunc.h"
+
+#define IC_SIZE 64
+
+/* Set IC values */
+static void SetCardAttribute (XICAttribute *value_ret,
+ char *p,
+ XICAttr *ic_attr,
+ int value_length,
+ int need_swap,
+ void **value_buf)
+{
+ FrameMgr fm;
+
+ /*endif*/
+ if (value_length == sizeof (CARD8))
+ {
+ memmove (*value_buf, p, value_length);
+ }
+ else if (value_length == sizeof (CARD16))
+ {
+ INT16 value;
+ extern XimFrameRec short_fr[];
+
+ fm = FrameMgrInit (short_fr, (char *) p, need_swap);
+ /* get data */
+ FrameMgrGetToken (fm, value);
+ FrameMgrFree (fm);
+ memmove (*value_buf, &value, value_length);
+ }
+ else if (value_length == sizeof(CARD32))
+ {
+ INT32 value;
+ extern XimFrameRec long_fr[];
+
+ fm = FrameMgrInit (long_fr, (char *) p, need_swap);
+ /* get data */
+ FrameMgrGetToken (fm, value);
+ FrameMgrFree (fm);
+ memmove (*value_buf, &value, value_length);
+ }
+ /*endif*/
+ value_ret->attribute_id = ic_attr->attribute_id;
+ value_ret->name = ic_attr->name;
+ value_ret->name_length = ic_attr->length;
+ value_ret->type = ic_attr->type;
+ value_ret->value_length = value_length;
+ value_ret->value = *value_buf;
+
+ *value_buf += value_length;
+}
+
+static void SetFontAttribute (XICAttribute *value_ret,
+ char *p,
+ XICAttr *ic_attr,
+ int value_length,
+ int need_swap,
+ void **value_buf)
+{
+ char *base_name;
+ CARD16 base_length;
+ FrameMgr fm;
+ extern XimFrameRec fontset_fr[];
+
+ fm = FrameMgrInit (fontset_fr, (char *) p, need_swap);
+ /* get data */
+ FrameMgrGetToken (fm, base_length);
+ FrameMgrSetSize (fm, base_length);
+
+ /*endif*/
+ FrameMgrGetToken (fm, base_name);
+ FrameMgrFree(fm);
+ strncpy ((char *) (*value_buf), base_name, base_length);
+ ((char *) *value_buf)[base_length] = (char) 0;
+
+ value_ret->attribute_id = ic_attr->attribute_id;
+ value_ret->name = ic_attr->name;
+ value_ret->name_length = ic_attr->length;
+ value_ret->type = ic_attr->type;
+ value_ret->value_length = value_length;
+ value_ret->value = *value_buf;
+
+ *value_buf += (base_length + 1);
+}
+
+static void SetPointAttribute (XICAttribute *value_ret,
+ char *p,
+ XICAttr *ic_attr,
+ int value_length,
+ int need_swap,
+ void **value_buf)
+{
+ XPoint *buf;
+ FrameMgr fm;
+ extern XimFrameRec xpoint_fr[];
+
+ buf = (XPoint *) (*value_buf);
+
+ fm = FrameMgrInit (xpoint_fr, (char *) p, need_swap);
+ /* get data */
+ FrameMgrGetToken (fm, buf->x);
+ FrameMgrGetToken (fm, buf->y);
+ FrameMgrFree (fm);
+
+ value_ret->attribute_id = ic_attr->attribute_id;
+ value_ret->name = ic_attr->name;
+ value_ret->name_length = ic_attr->length;
+ value_ret->type = ic_attr->type;
+ value_ret->value_length = value_length;
+ value_ret->value = (char *) buf;
+
+ *value_buf += value_length;
+}
+
+static void SetRectAttribute (XICAttribute *value_ret,
+ char *p,
+ XICAttr *ic_attr,
+ int value_length,
+ int need_swap,
+ void **value_buf)
+{
+ XRectangle *buf;
+ FrameMgr fm;
+ extern XimFrameRec xrectangle_fr[];
+
+ buf = (XRectangle *) (*value_buf);
+
+ fm = FrameMgrInit (xrectangle_fr, (char *) p, need_swap);
+ /* get data */
+ FrameMgrGetToken (fm, buf->x);
+ FrameMgrGetToken (fm, buf->y);
+ FrameMgrGetToken (fm, buf->width);
+ FrameMgrGetToken (fm, buf->height);
+ FrameMgrFree (fm);
+
+ value_ret->attribute_id = ic_attr->attribute_id;
+ value_ret->name = ic_attr->name;
+ value_ret->name_length = ic_attr->length;
+ value_ret->type = ic_attr->type;
+ value_ret->value_length = value_length;
+ value_ret->value = (char *) buf;
+
+ *value_buf += value_length;
+}
+
+#if 0
+static void SetHotKeyAttribute (XICAttribute *value_ret,
+ char *p,
+ XICAttr *ic_attr,
+ int value_length,
+ int need_swap,
+ void **value_buf)
+{
+ INT32 list_number;
+ XIMTriggerKey *hotkeys;
+
+ memmove (&list_number, p, sizeof(INT32)); p += sizeof(INT32);
+
+ hotkeys = (XIMTriggerKey *) (*value_buf);
+
+ memmove (hotkeys, p, list_number*sizeof (XIMTriggerKey));
+
+ value_ret->attribute_id = ic_attr->attribute_id;
+ value_ret->name = ic_attr->name;
+ value_ret->name_length = ic_attr->length;
+ value_ret->type = ic_attr->type;
+ value_ret->value_length = value_length;
+ value_ret->value = (char *) hotkeys;
+
+ *value_buf += value_length;
+}
+#endif
+
+/* get IC values */
+static void GetAttrHeader (unsigned char *rec,
+ XICAttribute *list,
+ int need_swap)
+{
+ FrameMgr fm;
+ extern XimFrameRec attr_head_fr[];
+
+ fm = FrameMgrInit (attr_head_fr, (char *) rec, need_swap);
+ /* put data */
+ FrameMgrPutToken (fm, list->attribute_id);
+ FrameMgrPutToken (fm, list->value_length);
+ FrameMgrFree (fm);
+}
+
+static void GetCardAttribute (char *rec, XICAttribute *list, int need_swap)
+{
+ FrameMgr fm;
+ unsigned char *recp = (unsigned char *) rec;
+
+ GetAttrHeader (recp, list, need_swap);
+ recp += sizeof (CARD16)*2;
+
+ if (list->value_length == sizeof (CARD8))
+ {
+ memmove (recp, list->value, list->value_length);
+ }
+ else if (list->value_length == sizeof (CARD16))
+ {
+ INT16 *value = (INT16 *) list->value;
+ extern XimFrameRec short_fr[];
+
+ fm = FrameMgrInit (short_fr, (char *) recp, need_swap);
+ /* put data */
+ FrameMgrPutToken (fm, *value);
+ FrameMgrFree (fm);
+ }
+ else if (list->value_length == sizeof (CARD32))
+ {
+ INT32 *value = (INT32 *) list->value;
+ extern XimFrameRec long_fr[];
+
+ fm = FrameMgrInit (long_fr, (char *) recp, need_swap);
+ /* put data */
+ FrameMgrPutToken (fm, *value);
+ FrameMgrFree (fm);
+ }
+ /*endif*/
+}
+
+static void GetFontAttribute(char *rec, XICAttribute *list, int need_swap)
+{
+ FrameMgr fm;
+ extern XimFrameRec fontset_fr[];
+ char *base_name = (char *) list->value;
+ unsigned char *recp = (unsigned char *) rec;
+
+ GetAttrHeader (recp, list, need_swap);
+ recp += sizeof (CARD16)*2;
+
+ fm = FrameMgrInit (fontset_fr, (char *)recp, need_swap);
+ /* put data */
+ FrameMgrSetSize (fm, list->value_length);
+ FrameMgrPutToken (fm, list->value_length);
+ FrameMgrPutToken (fm, base_name);
+ FrameMgrFree (fm);
+}
+
+static void GetRectAttribute (char *rec, XICAttribute *list, int need_swap)
+{
+ FrameMgr fm;
+ extern XimFrameRec xrectangle_fr[];
+ XRectangle *rect = (XRectangle *) list->value;
+ unsigned char *recp = (unsigned char *) rec;
+
+ GetAttrHeader (recp, list, need_swap);
+ recp += sizeof(CARD16)*2;
+
+ fm = FrameMgrInit (xrectangle_fr, (char *) recp, need_swap);
+ /* put data */
+ FrameMgrPutToken (fm, rect->x);
+ FrameMgrPutToken (fm, rect->y);
+ FrameMgrPutToken (fm, rect->width);
+ FrameMgrPutToken (fm, rect->height);
+ FrameMgrFree (fm);
+}
+
+static void GetPointAttribute (char *rec, XICAttribute *list, int need_swap)
+{
+ FrameMgr fm;
+ extern XimFrameRec xpoint_fr[];
+ XPoint *rect = (XPoint *) list->value;
+ unsigned char *recp = (unsigned char *) rec;
+
+ GetAttrHeader (recp, list, need_swap);
+ recp += sizeof(CARD16)*2;
+
+ fm = FrameMgrInit (xpoint_fr, (char *) recp, need_swap);
+ /* put data */
+ FrameMgrPutToken (fm, rect->x);
+ FrameMgrPutToken (fm, rect->y);
+ FrameMgrFree (fm);
+}
+
+static int ReadICValue (Xi18n i18n_core,
+ CARD16 icvalue_id,
+ int value_length,
+ void *p,
+ XICAttribute *value_ret,
+ CARD16 *number_ret,
+ int need_swap,
+ void **value_buf)
+{
+ XICAttr *ic_attr = i18n_core->address.xic_attr;
+ int i;
+
+ *number_ret = (CARD16) 0;
+
+ for (i = 0; i < i18n_core->address.ic_attr_num; i++, ic_attr++)
+ {
+ if (ic_attr->attribute_id == icvalue_id)
+ break;
+ /*endif*/
+ }
+ /*endfor*/
+ switch (ic_attr->type)
+ {
+ case XimType_NEST:
+ {
+ int total_length = 0;
+ CARD16 attribute_ID;
+ INT16 attribute_length;
+ unsigned char *p1 = (unsigned char *) p;
+ CARD16 ic_len = 0;
+ CARD16 number;
+ FrameMgr fm;
+ extern XimFrameRec attr_head_fr[];
+
+ while (total_length < value_length)
+ {
+ fm = FrameMgrInit (attr_head_fr, (char *) p1, need_swap);
+ /* get data */
+ FrameMgrGetToken (fm, attribute_ID);
+ FrameMgrGetToken (fm, attribute_length);
+ FrameMgrFree (fm);
+ p1 += sizeof (CARD16)*2;
+ ReadICValue (i18n_core,
+ attribute_ID,
+ attribute_length,
+ p1,
+ (value_ret + ic_len),
+ &number,
+ need_swap,
+ value_buf);
+ ic_len++;
+ *number_ret += number;
+ p1 += attribute_length;
+ p1 += IMPAD (attribute_length);
+ total_length += (CARD16) sizeof(CARD16)*2
+ + (INT16) attribute_length
+ + IMPAD (attribute_length);
+ }
+ /*endwhile*/
+ return ic_len;
+ }
+
+ case XimType_CARD8:
+ case XimType_CARD16:
+ case XimType_CARD32:
+ case XimType_Window:
+ SetCardAttribute (value_ret, p, ic_attr, value_length, need_swap, value_buf);
+ *number_ret = (CARD16) 1;
+ return *number_ret;
+
+ case XimType_XFontSet:
+ SetFontAttribute (value_ret, p, ic_attr, value_length, need_swap, value_buf);
+ *number_ret = (CARD16) 1;
+ return *number_ret;
+
+ case XimType_XRectangle:
+ SetRectAttribute (value_ret, p, ic_attr, value_length, need_swap, value_buf);
+ *number_ret = (CARD16) 1;
+ return *number_ret;
+
+ case XimType_XPoint:
+ SetPointAttribute(value_ret, p, ic_attr, value_length, need_swap, value_buf);
+ *number_ret = (CARD16) 1;
+ return *number_ret;
+
+#if 0
+ case XimType_XIMHotKeyTriggers:
+ SetHotKeyAttribute (value_ret, p, ic_attr, value_length, need_swap, value_buf);
+ *number_ret = (CARD16) 1;
+ return *number_ret;
+#endif
+ }
+ /*endswitch*/
+ return 0;
+}
+
+static XICAttribute *CreateNestedList (CARD16 attr_id,
+ XICAttribute *list,
+ int number,
+ int need_swap)
+{
+ XICAttribute *nest_list = NULL;
+ register int i;
+ char *values = NULL;
+ char *valuesp;
+ int value_length = 0;
+
+ if (number == 0)
+ return NULL;
+ /*endif*/
+ for (i = 0; i < number; i++)
+ {
+ value_length += sizeof (CARD16)*2;
+ value_length += list[i].value_length;
+ value_length += IMPAD (list[i].value_length);
+ }
+ /*endfor*/
+ if ((values = (char *) malloc (value_length)) == NULL)
+ return NULL;
+ /*endif*/
+ memset (values, 0, value_length);
+
+ valuesp = values;
+ for (i = 0; i < number; i++)
+ {
+ switch (list[i].type)
+ {
+ case XimType_CARD8:
+ case XimType_CARD16:
+ case XimType_CARD32:
+ case XimType_Window:
+ GetCardAttribute (valuesp, &list[i], need_swap);
+ break;
+
+ case XimType_XFontSet:
+ GetFontAttribute (valuesp, &list[i], need_swap);
+ break;
+
+ case XimType_XRectangle:
+ GetRectAttribute (valuesp, &list[i], need_swap);
+ break;
+
+ case XimType_XPoint:
+ GetPointAttribute (valuesp, &list[i], need_swap);
+ break;
+
+#if 0
+ case XimType_XIMHotKeyTriggers:
+ GetHotKeyAttribute (valuesp, &list[i], need_swap);
+ break;
+#endif
+ }
+ /*endswitch*/
+ valuesp += sizeof (CARD16)*2;
+ valuesp += list[i].value_length;
+ valuesp += IMPAD(list[i].value_length);
+ }
+ /*endfor*/
+
+ nest_list = (XICAttribute *) malloc (sizeof (XICAttribute));
+ if (nest_list == NULL)
+ return NULL;
+ /*endif*/
+ memset (nest_list, 0, sizeof (XICAttribute));
+ nest_list->value = (void *) malloc (value_length);
+ if (nest_list->value == NULL)
+ return NULL;
+ /*endif*/
+ memset (nest_list->value, 0, sizeof (value_length));
+
+ nest_list->attribute_id = attr_id;
+ nest_list->value_length = value_length;
+ memmove (nest_list->value, values, value_length);
+
+ XFree (values);
+ return nest_list;
+}
+
+static Bool IsNestedList (Xi18n i18n_core, CARD16 icvalue_id)
+{
+ XICAttr *ic_attr = i18n_core->address.xic_attr;
+ int i;
+
+ for (i = 0; i < i18n_core->address.ic_attr_num; i++, ic_attr++)
+ {
+ if (ic_attr->attribute_id == icvalue_id)
+ {
+ if (ic_attr->type == XimType_NEST)
+ return True;
+ /*endif*/
+ return False;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ return False;
+}
+
+static Bool IsSeparator (Xi18n i18n_core, CARD16 icvalue_id)
+{
+ return (i18n_core->address.separatorAttr_id == icvalue_id);
+}
+
+static int GetICValue (Xi18n i18n_core,
+ XICAttribute *attr_ret,
+ CARD16 *id_list,
+ int list_num)
+{
+ XICAttr *xic_attr = i18n_core->address.xic_attr;
+ register int i;
+ register int j;
+ register int n;
+
+ i =
+ n = 0;
+ if (IsNestedList (i18n_core, id_list[i]))
+ {
+ i++;
+ while (i < list_num && !IsSeparator (i18n_core, id_list[i]))
+ {
+ for (j = 0; j < i18n_core->address.ic_attr_num; j++)
+ {
+ if (xic_attr[j].attribute_id == id_list[i])
+ {
+ attr_ret[n].attribute_id = xic_attr[j].attribute_id;
+ attr_ret[n].name_length = xic_attr[j].length;
+ attr_ret[n].name = malloc (xic_attr[j].length + 1);
+ strcpy(attr_ret[n].name, xic_attr[j].name);
+ attr_ret[n].type = xic_attr[j].type;
+ n++;
+ i++;
+ break;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ }
+ /*endwhile*/
+ }
+ else
+ {
+ for (j = 0; j < i18n_core->address.ic_attr_num; j++)
+ {
+ if (xic_attr[j].attribute_id == id_list[i])
+ {
+ attr_ret[n].attribute_id = xic_attr[j].attribute_id;
+ attr_ret[n].name_length = xic_attr[j].length;
+ attr_ret[n].name = malloc (xic_attr[j].length + 1);
+ strcpy(attr_ret[n].name, xic_attr[j].name);
+ attr_ret[n].type = xic_attr[j].type;
+ n++;
+ break;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ }
+ /*endif*/
+ return n;
+}
+
+static void SwapAttributes (XICAttribute *list,
+ int number){
+ FrameMgr fm;
+ CARD16 c16;
+ extern XimFrameRec short_fr[];
+ CARD32 c32;
+ extern XimFrameRec long_fr[];
+ XPoint xpoint;
+ extern XimFrameRec xpoint_fr[];
+ XRectangle xrect;
+ extern XimFrameRec xrectangle_fr[];
+ int i;
+
+ for (i = 0; i < number; ++i, ++list) {
+ if (list->value == NULL)
+ continue;
+ switch (list->type) {
+ case XimType_CARD16:
+ fm = FrameMgrInit (short_fr, (char *)list->value, 1);
+ FrameMgrGetToken (fm, c16);
+ memmove(list->value, &c16, sizeof(CARD16));
+ FrameMgrFree (fm);
+ break;
+ case XimType_CARD32:
+ case XimType_Window:
+ fm = FrameMgrInit (long_fr, (char *)list->value, 1);
+ FrameMgrGetToken (fm, c32);
+ memmove(list->value, &c32, sizeof(CARD32));
+ FrameMgrFree (fm);
+ break;
+ case XimType_XRectangle:
+ fm = FrameMgrInit (xrectangle_fr, (char *)list->value, 1);
+ FrameMgrGetToken (fm, xrect);
+ memmove(list->value, &xrect, sizeof(XRectangle));
+ FrameMgrFree (fm);
+ break;
+ case XimType_XPoint:
+ fm = FrameMgrInit (xpoint_fr, (char *)list->value, 1);
+ FrameMgrGetToken (fm, xpoint);
+ memmove(list->value, &xpoint, sizeof(XPoint));
+ FrameMgrFree (fm);
+ break;
+ default:
+ break;
+ }
+ }
+}
+
+/* called from CreateICMessageProc and SetICValueMessageProc */
+void _Xi18nChangeIC (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p,
+ int create_flag)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ FmStatus status;
+ CARD16 byte_length;
+ register int total_size;
+ unsigned char *reply = NULL;
+ register int i;
+ register int attrib_num;
+ XICAttribute *attrib_list;
+ XICAttribute pre_attr[IC_SIZE];
+ XICAttribute sts_attr[IC_SIZE];
+ XICAttribute ic_attr[IC_SIZE];
+ CARD16 preedit_ic_num = 0;
+ CARD16 status_ic_num = 0;
+ CARD16 ic_num = 0;
+ CARD16 connect_id = call_data->any.connect_id;
+ IMChangeICStruct *changeic = (IMChangeICStruct *) &call_data->changeic;
+ extern XimFrameRec create_ic_fr[];
+ extern XimFrameRec create_ic_reply_fr[];
+ extern XimFrameRec set_ic_values_fr[];
+ extern XimFrameRec set_ic_values_reply_fr[];
+ CARD16 input_method_ID;
+
+ void *value_buf = NULL;
+ void *value_buf_ptr;
+
+ register int total_value_length = 0;
+
+ memset (pre_attr, 0, sizeof (XICAttribute)*IC_SIZE);
+ memset (sts_attr, 0, sizeof (XICAttribute)*IC_SIZE);
+ memset (ic_attr, 0, sizeof (XICAttribute)*IC_SIZE);
+
+ if (create_flag == True)
+ {
+ fm = FrameMgrInit (create_ic_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, byte_length);
+ }
+ else
+ {
+ fm = FrameMgrInit (set_ic_values_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, changeic->icid);
+ FrameMgrGetToken (fm, byte_length);
+ }
+ /*endif*/
+ attrib_list = (XICAttribute *) malloc (sizeof (XICAttribute)*IC_SIZE);
+ if (!attrib_list)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (attrib_list, 0, sizeof(XICAttribute)*IC_SIZE);
+
+ attrib_num = 0;
+ while (FrameMgrIsIterLoopEnd (fm, &status) == False)
+ {
+ void *value;
+ int value_length;
+
+ FrameMgrGetToken (fm, attrib_list[attrib_num].attribute_id);
+ FrameMgrGetToken (fm, value_length);
+ FrameMgrSetSize (fm, value_length);
+ attrib_list[attrib_num].value_length = value_length;
+ FrameMgrGetToken (fm, value);
+ attrib_list[attrib_num].value = (void *) malloc (value_length + 1);
+ memmove (attrib_list[attrib_num].value, value, value_length);
+ ((char *)attrib_list[attrib_num].value)[value_length] = '\0';
+ attrib_num++;
+ total_value_length += (value_length + 1);
+ }
+ /*endwhile*/
+
+ value_buf = (void *) malloc (total_value_length);
+ value_buf_ptr = value_buf;
+
+ if (!value_buf)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ for (i = 0; i < attrib_num; i++)
+ XFree (attrib_list[i].value);
+ /*endfor*/
+ XFree (attrib_list);
+ return;
+ }
+ /*endif*/
+
+ for (i = 0; i < attrib_num; i++)
+ {
+ CARD16 number;
+
+ if (IsNestedList (i18n_core, attrib_list[i].attribute_id))
+ {
+ if (attrib_list[i].attribute_id
+ == i18n_core->address.preeditAttr_id)
+ {
+ ReadICValue (i18n_core,
+ attrib_list[i].attribute_id,
+ attrib_list[i].value_length,
+ attrib_list[i].value,
+ &pre_attr[preedit_ic_num],
+ &number,
+ _Xi18nNeedSwap(i18n_core, connect_id),
+ &value_buf_ptr);
+ preedit_ic_num += number;
+ }
+ else if (attrib_list[i].attribute_id == i18n_core->address.statusAttr_id)
+ {
+ ReadICValue (i18n_core,
+ attrib_list[i].attribute_id,
+ attrib_list[i].value_length,
+ attrib_list[i].value,
+ &sts_attr[status_ic_num],
+ &number,
+ _Xi18nNeedSwap (i18n_core, connect_id),
+ &value_buf_ptr);
+ status_ic_num += number;
+ }
+ else
+ {
+ /* another nested list.. possible? */
+ }
+ /*endif*/
+ }
+ else
+ {
+ ReadICValue (i18n_core,
+ attrib_list[i].attribute_id,
+ attrib_list[i].value_length,
+ attrib_list[i].value,
+ &ic_attr[ic_num],
+ &number,
+ _Xi18nNeedSwap (i18n_core, connect_id),
+ &value_buf_ptr);
+ ic_num += number;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ for (i = 0; i < attrib_num; i++)
+ XFree (attrib_list[i].value);
+ /*endfor*/
+ XFree (attrib_list);
+
+ FrameMgrFree (fm);
+
+ changeic->preedit_attr_num = preedit_ic_num;
+ changeic->status_attr_num = status_ic_num;
+ changeic->ic_attr_num = ic_num;
+ changeic->preedit_attr = pre_attr;
+ changeic->status_attr = sts_attr;
+ changeic->ic_attr = ic_attr;
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto(ims, call_data))) {
+ XFree (value_buf);
+ return;
+ }
+ /*endif*/
+ }
+
+ XFree (value_buf);
+
+ /*endif*/
+ if (create_flag == True)
+ {
+ fm = FrameMgrInit (create_ic_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ }
+ else
+ {
+ fm = FrameMgrInit (set_ic_values_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ }
+ /*endif*/
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, input_method_ID);
+ FrameMgrPutToken (fm, changeic->icid);
+
+ if (create_flag == True)
+ {
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_CREATE_IC_REPLY,
+ 0,
+ reply,
+ total_size);
+ }
+ else
+ {
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_SET_IC_VALUES_REPLY,
+ 0,
+ reply,
+ total_size);
+ }
+ /*endif*/
+ if (create_flag == True)
+ {
+ int on_key_num = i18n_core->address.on_keys.count_keys;
+ int off_key_num = i18n_core->address.off_keys.count_keys;
+
+ if (on_key_num == 0 && off_key_num == 0)
+ {
+ long mask;
+
+ if (i18n_core->address.imvalue_mask & I18N_FILTERMASK)
+ mask = i18n_core->address.filterevent_mask;
+ else
+ mask = DEFAULT_FILTER_MASK;
+ /*endif*/
+ /* static event flow is default */
+ _Xi18nSetEventMask (ims,
+ connect_id,
+ input_method_ID,
+ changeic->icid,
+ mask,
+ ~mask);
+ }
+ /*endif*/
+ }
+ /*endif*/
+ FrameMgrFree (fm);
+ XFree(reply);
+}
+
+/* called from GetICValueMessageProc */
+void _Xi18nGetIC (XIMS ims, IMProtocol *call_data, unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ FmStatus status;
+ extern XimFrameRec get_ic_values_fr[];
+ extern XimFrameRec get_ic_values_reply_fr[];
+ CARD16 byte_length;
+ register int total_size;
+ unsigned char *reply = NULL;
+ XICAttribute *preedit_ret = NULL;
+ XICAttribute *status_ret = NULL;
+ register int i;
+ register int number;
+ int iter_count;
+ CARD16 *attrID_list;
+ XICAttribute pre_attr[IC_SIZE];
+ XICAttribute sts_attr[IC_SIZE];
+ XICAttribute ic_attr[IC_SIZE];
+ CARD16 pre_count = 0;
+ CARD16 sts_count = 0;
+ CARD16 ic_count = 0;
+ IMChangeICStruct *getic = (IMChangeICStruct *) &call_data->changeic;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ memset (pre_attr, 0, sizeof (XICAttribute)*IC_SIZE);
+ memset (sts_attr, 0, sizeof (XICAttribute)*IC_SIZE);
+ memset (ic_attr, 0, sizeof (XICAttribute)*IC_SIZE);
+
+ fm = FrameMgrInit (get_ic_values_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, getic->icid);
+ FrameMgrGetToken (fm, byte_length);
+
+ attrID_list = (CARD16 *) malloc (sizeof (CARD16)*IC_SIZE); /* bogus */
+ memset (attrID_list, 0, sizeof (CARD16)*IC_SIZE);
+
+ number = 0;
+ while (FrameMgrIsIterLoopEnd (fm, &status) == False)
+ FrameMgrGetToken (fm, attrID_list[number++]);
+ /*endwhile*/
+ FrameMgrFree (fm);
+
+ i = 0;
+ while (i < number)
+ {
+ int read_number;
+
+ if (IsNestedList (i18n_core, attrID_list[i]))
+ {
+ if (attrID_list[i] == i18n_core->address.preeditAttr_id)
+ {
+ read_number = GetICValue (i18n_core,
+ &pre_attr[pre_count],
+ &attrID_list[i],
+ number);
+ i += read_number + 1;
+ pre_count += read_number;
+ }
+ else if (attrID_list[i] == i18n_core->address.statusAttr_id)
+ {
+ read_number = GetICValue (i18n_core,
+ &sts_attr[sts_count],
+ &attrID_list[i],
+ number);
+ i += read_number + 1;
+ sts_count += read_number;
+ }
+ else
+ {
+ /* another nested list.. possible? */
+ }
+ /*endif*/
+ }
+ else
+ {
+ read_number = GetICValue (i18n_core,
+ &ic_attr[ic_count],
+ &attrID_list[i],
+ number);
+ i += read_number;
+ ic_count += read_number;
+ }
+ /*endif*/
+ }
+ /*endwhile*/
+ getic->preedit_attr_num = pre_count;
+ getic->status_attr_num = sts_count;
+ getic->ic_attr_num = ic_count;
+ getic->preedit_attr = pre_attr;
+ getic->status_attr = sts_attr;
+ getic->ic_attr = ic_attr;
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ /*endif*/
+ if (_Xi18nNeedSwap (i18n_core, connect_id))
+ SwapAttributes(getic->ic_attr, getic->ic_attr_num);
+ }
+ /*endif*/
+ iter_count = getic->ic_attr_num;
+
+ preedit_ret = CreateNestedList (i18n_core->address.preeditAttr_id,
+ getic->preedit_attr,
+ getic->preedit_attr_num,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ if (preedit_ret)
+ iter_count++;
+ /*endif*/
+ status_ret = CreateNestedList (i18n_core->address.statusAttr_id,
+ getic->status_attr,
+ getic->status_attr_num,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ if (status_ret)
+ iter_count++;
+ /*endif*/
+
+ fm = FrameMgrInit (get_ic_values_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* set iteration count for list of ic_attribute */
+ FrameMgrSetIterCount (fm, iter_count);
+
+ /* set length of BARRAY item in xicattribute_fr */
+ for (i = 0; i < (int) getic->ic_attr_num; i++)
+ FrameMgrSetSize (fm, ic_attr[i].value_length);
+ /*endfor*/
+
+ if (preedit_ret)
+ FrameMgrSetSize (fm, preedit_ret->value_length);
+ /*endif*/
+ if (status_ret)
+ FrameMgrSetSize (fm, status_ret->value_length);
+ /*endif*/
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (reply == NULL)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, input_method_ID);
+ FrameMgrPutToken (fm, getic->icid);
+
+ for (i = 0; i < (int) getic->ic_attr_num; i++)
+ {
+ FrameMgrPutToken (fm, ic_attr[i].attribute_id);
+ FrameMgrPutToken (fm, ic_attr[i].value_length);
+ FrameMgrPutToken (fm, ic_attr[i].value);
+ }
+ /*endfor*/
+ if (preedit_ret)
+ {
+ FrameMgrPutToken (fm, preedit_ret->attribute_id);
+ FrameMgrPutToken (fm, preedit_ret->value_length);
+ FrameMgrPutToken (fm, preedit_ret->value);
+ }
+ /*endif*/
+ if (status_ret)
+ {
+ FrameMgrPutToken (fm, status_ret->attribute_id);
+ FrameMgrPutToken (fm, status_ret->value_length);
+ FrameMgrPutToken (fm, status_ret->value);
+ }
+ /*endif*/
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_GET_IC_VALUES_REPLY,
+ 0,
+ reply,
+ total_size);
+ XFree (reply);
+ XFree (attrID_list);
+
+ for (i = 0; i < (int) getic->ic_attr_num; i++)
+ {
+ if (getic->ic_attr[i].name)
+ XFree (getic->ic_attr[i].name);
+ /*endif*/
+ if (getic->ic_attr[i].value)
+ XFree (getic->ic_attr[i].value);
+ /*endif*/
+ }
+ /*endfor*/
+ for (i = 0; i < (int) getic->preedit_attr_num; i++)
+ {
+ if (getic->preedit_attr[i].name)
+ XFree (getic->preedit_attr[i].name);
+ /*endif*/
+ if (getic->preedit_attr[i].value)
+ XFree (getic->preedit_attr[i].value);
+ /*endif*/
+ }
+ /*endfor*/
+ for (i = 0; i < (int) getic->status_attr_num; i++)
+ {
+ if (getic->status_attr[i].name)
+ XFree (getic->status_attr[i].name);
+ /*endif*/
+ if (getic->status_attr[i].value)
+ XFree (getic->status_attr[i].value);
+ /*endif*/
+ }
+ /*endfor*/
+
+ if (preedit_ret)
+ {
+ XFree (preedit_ret->value);
+ XFree (preedit_ret);
+ }
+ /*endif*/
+ if (status_ret)
+ {
+ XFree (status_ret->value);
+ XFree (status_ret);
+ }
+ /*endif*/
+ FrameMgrFree (fm);
+}
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <X11/Xlib.h>
+#include <X11/Xatom.h>
+#ifndef NEED_EVENTS
+#define NEED_EVENTS
+#endif
+#include <X11/Xproto.h>
+#undef NEED_EVENTS
+#include "FrameMgr.h"
+#include "IMdkit.h"
+#include "Xi18n.h"
+#include "XimFunc.h"
+
+extern Xi18nClient *_Xi18nFindClient (Xi18n, CARD16);
+
+static void *xi18n_setup (Display *, XIMArg *);
+static Status xi18n_openIM (XIMS);
+static Status xi18n_closeIM (XIMS);
+static char *xi18n_setIMValues (XIMS, XIMArg *);
+static char *xi18n_getIMValues (XIMS, XIMArg *);
+static Status xi18n_forwardEvent (XIMS, XPointer);
+static Status xi18n_commit (XIMS, XPointer);
+static int xi18n_callCallback (XIMS, XPointer);
+static int xi18n_preeditStart (XIMS, XPointer);
+static int xi18n_preeditEnd (XIMS, XPointer);
+static int xi18n_syncXlib (XIMS, XPointer);
+
+#ifndef XIM_SERVERS
+#define XIM_SERVERS "XIM_SERVERS"
+#endif
+static Atom XIM_Servers = None;
+
+
+IMMethodsRec Xi18n_im_methods =
+{
+ xi18n_setup,
+ xi18n_openIM,
+ xi18n_closeIM,
+ xi18n_setIMValues,
+ xi18n_getIMValues,
+ xi18n_forwardEvent,
+ xi18n_commit,
+ xi18n_callCallback,
+ xi18n_preeditStart,
+ xi18n_preeditEnd,
+ xi18n_syncXlib,
+};
+
+extern Bool _Xi18nCheckXAddress (Xi18n, TransportSW *, char *);
+extern Bool _Xi18nCheckTransAddress (Xi18n, TransportSW *, char *);
+
+TransportSW _TransR[] =
+{
+ {"X", 1, _Xi18nCheckXAddress},
+#ifdef TCPCONN
+ {"tcp", 3, _Xi18nCheckTransAddress},
+ {"local", 5, _Xi18nCheckTransAddress},
+#endif
+#ifdef DNETCONN
+ {"decnet", 6, _Xi18nCheckTransAddress},
+#endif
+ {(char *) NULL, 0, (Bool (*) ()) NULL}
+};
+
+static Bool GetInputStyles (Xi18n i18n_core, XIMStyles **p_style)
+{
+ Xi18nAddressRec *address = (Xi18nAddressRec *) &i18n_core->address;
+ XIMStyles *p;
+ int i;
+
+ p = &address->input_styles;
+ if ((*p_style = (XIMStyles *) malloc (sizeof (XIMStyles)
+ + p->count_styles*sizeof (XIMStyle)))
+ == NULL)
+ {
+ return False;
+ }
+ /*endif*/
+ (*p_style)->count_styles = p->count_styles;
+ (*p_style)->supported_styles = (XIMStyle *) ((XPointer) *p_style + sizeof (XIMStyles));
+ for (i = 0; i < (int) p->count_styles; i++)
+ (*p_style)->supported_styles[i] = p->supported_styles[i];
+ /*endfor*/
+ return True;
+}
+
+static Bool GetOnOffKeys (Xi18n i18n_core, long mask, XIMTriggerKeys **p_key)
+{
+ Xi18nAddressRec *address = (Xi18nAddressRec *) &i18n_core->address;
+ XIMTriggerKeys *p;
+ int i;
+
+ if (mask & I18N_ON_KEYS)
+ p = &address->on_keys;
+ else
+ p = &address->off_keys;
+ /*endif*/
+ if ((*p_key = (XIMTriggerKeys *) malloc (sizeof(XIMTriggerKeys)
+ + p->count_keys*sizeof(XIMTriggerKey)))
+ == NULL)
+ {
+ return False;
+ }
+ /*endif*/
+ (*p_key)->count_keys = p->count_keys;
+ (*p_key)->keylist =
+ (XIMTriggerKey *) ((XPointer) *p_key + sizeof(XIMTriggerKeys));
+ for (i = 0; i < (int) p->count_keys; i++)
+ {
+ (*p_key)->keylist[i].keysym = p->keylist[i].keysym;
+ (*p_key)->keylist[i].modifier = p->keylist[i].modifier;
+ (*p_key)->keylist[i].modifier_mask = p->keylist[i].modifier_mask;
+ }
+ /*endfor*/
+ return True;
+}
+
+static Bool GetEncodings(Xi18n i18n_core, XIMEncodings **p_encoding)
+{
+ Xi18nAddressRec *address = (Xi18nAddressRec *) &i18n_core->address;
+ XIMEncodings *p;
+ int i;
+
+ p = &address->encoding_list;
+
+ if ((*p_encoding = (XIMEncodings *) malloc (sizeof (XIMEncodings)
+ + p->count_encodings*sizeof(XIMEncoding))) == NULL)
+ {
+ return False;
+ }
+ /*endif*/
+ (*p_encoding)->count_encodings = p->count_encodings;
+ (*p_encoding)->supported_encodings =
+ (XIMEncoding *) ((XPointer)*p_encoding + sizeof (XIMEncodings));
+ for (i = 0; i < (int) p->count_encodings; i++)
+ {
+ (*p_encoding)->supported_encodings[i]
+ = (char *) malloc (strlen (p->supported_encodings[i]) + 1);
+ strcpy ((*p_encoding)->supported_encodings[i],
+ p->supported_encodings[i]);
+ }
+ /*endif*/
+ return True;
+}
+
+static char *ParseArgs (Xi18n i18n_core, int mode, XIMArg *args)
+{
+ Xi18nAddressRec *address = (Xi18nAddressRec *) &i18n_core->address;
+ XIMArg *p;
+
+ if (mode == I18N_OPEN || mode == I18N_SET)
+ {
+ for (p = args; p->name != NULL; p++)
+ {
+ if (strcmp (p->name, IMLocale) == 0)
+ {
+ if (address->imvalue_mask & I18N_IM_LOCALE)
+ return IMLocale;
+ /*endif*/
+ address->im_locale = (char *) malloc (strlen (p->value) + 1);
+ if (!address->im_locale)
+ return IMLocale;
+ /*endif*/
+ strcpy (address->im_locale, p->value);
+ address->imvalue_mask |= I18N_IM_LOCALE;
+ }
+ else if (strcmp (p->name, IMServerTransport) == 0)
+ {
+ if (address->imvalue_mask & I18N_IM_ADDRESS)
+ return IMServerTransport;
+ /*endif*/
+ address->im_addr = (char *) malloc (strlen (p->value) + 1);
+ if (!address->im_addr)
+ return IMServerTransport;
+ /*endif*/
+ strcpy(address->im_addr, p->value);
+ address->imvalue_mask |= I18N_IM_ADDRESS;
+ }
+ else if (strcmp (p->name, IMServerName) == 0)
+ {
+ if (address->imvalue_mask & I18N_IM_NAME)
+ return IMServerName;
+ /*endif*/
+ address->im_name = (char *) malloc (strlen (p->value) + 1);
+ if (!address->im_name)
+ return IMServerName;
+ /*endif*/
+ strcpy (address->im_name, p->value);
+ address->imvalue_mask |= I18N_IM_NAME;
+ }
+ else if (strcmp (p->name, IMServerWindow) == 0)
+ {
+ if (address->imvalue_mask & I18N_IMSERVER_WIN)
+ return IMServerWindow;
+ /*endif*/
+ address->im_window = (Window) p->value;
+ address->imvalue_mask |= I18N_IMSERVER_WIN;
+ }
+ else if (strcmp (p->name, IMInputStyles) == 0)
+ {
+ if (address->imvalue_mask & I18N_INPUT_STYLES)
+ return IMInputStyles;
+ /*endif*/
+ address->input_styles.count_styles =
+ ((XIMStyles*)p->value)->count_styles;
+ address->input_styles.supported_styles =
+ (XIMStyle *) malloc (sizeof (XIMStyle)*address->input_styles.count_styles);
+ if (address->input_styles.supported_styles == (XIMStyle *) NULL)
+ return IMInputStyles;
+ /*endif*/
+ memmove (address->input_styles.supported_styles,
+ ((XIMStyles *) p->value)->supported_styles,
+ sizeof (XIMStyle)*address->input_styles.count_styles);
+ address->imvalue_mask |= I18N_INPUT_STYLES;
+ }
+ else if (strcmp (p->name, IMProtocolHandler) == 0)
+ {
+ address->improto = (IMProtoHandler) p->value;
+ address->imvalue_mask |= I18N_IM_HANDLER;
+ }
+ else if (strcmp (p->name, IMOnKeysList) == 0)
+ {
+ if (address->imvalue_mask & I18N_ON_KEYS)
+ return IMOnKeysList;
+ /*endif*/
+ address->on_keys.count_keys =
+ ((XIMTriggerKeys *) p->value)->count_keys;
+ address->on_keys.keylist =
+ (XIMTriggerKey *) malloc (sizeof (XIMTriggerKey)*address->on_keys.count_keys);
+ if (address->on_keys.keylist == (XIMTriggerKey *) NULL)
+ return IMOnKeysList;
+ /*endif*/
+ memmove (address->on_keys.keylist,
+ ((XIMTriggerKeys *) p->value)->keylist,
+ sizeof (XIMTriggerKey)*address->on_keys.count_keys);
+ address->imvalue_mask |= I18N_ON_KEYS;
+ }
+ else if (strcmp (p->name, IMOffKeysList) == 0)
+ {
+ if (address->imvalue_mask & I18N_OFF_KEYS)
+ return IMOffKeysList;
+ /*endif*/
+ address->off_keys.count_keys =
+ ((XIMTriggerKeys *) p->value)->count_keys;
+ address->off_keys.keylist =
+ (XIMTriggerKey *) malloc (sizeof (XIMTriggerKey)*address->off_keys.count_keys);
+ if (address->off_keys.keylist == (XIMTriggerKey *) NULL)
+ return IMOffKeysList;
+ /*endif*/
+ memmove (address->off_keys.keylist,
+ ((XIMTriggerKeys *) p->value)->keylist,
+ sizeof (XIMTriggerKey)*address->off_keys.count_keys);
+ address->imvalue_mask |= I18N_OFF_KEYS;
+ }
+ else if (strcmp (p->name, IMEncodingList) == 0)
+ {
+ if (address->imvalue_mask & I18N_ENCODINGS)
+ return IMEncodingList;
+ /*endif*/
+ address->encoding_list.count_encodings =
+ ((XIMEncodings *) p->value)->count_encodings;
+ address->encoding_list.supported_encodings =
+ (XIMEncoding *) malloc (sizeof (XIMEncoding)*address->encoding_list.count_encodings);
+ if (address->encoding_list.supported_encodings
+ == (XIMEncoding *) NULL)
+ {
+ return IMEncodingList;
+ }
+ /*endif*/
+ memmove (address->encoding_list.supported_encodings,
+ ((XIMEncodings *) p->value)->supported_encodings,
+ sizeof (XIMEncoding)*address->encoding_list.count_encodings);
+ address->imvalue_mask |= I18N_ENCODINGS;
+ }
+ else if (strcmp (p->name, IMFilterEventMask) == 0)
+ {
+ if (address->imvalue_mask & I18N_FILTERMASK)
+ return IMFilterEventMask;
+ /*endif*/
+ address->filterevent_mask = (long) p->value;
+ address->imvalue_mask |= I18N_FILTERMASK;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ if (mode == I18N_OPEN)
+ {
+ /* check mandatory IM values */
+ if (!(address->imvalue_mask & I18N_IM_LOCALE))
+ {
+ /* locales must be set in IMOpenIM */
+ return IMLocale;
+ }
+ /*endif*/
+ if (!(address->imvalue_mask & I18N_IM_ADDRESS))
+ {
+ /* address must be set in IMOpenIM */
+ return IMServerTransport;
+ }
+ /*endif*/
+ }
+ /*endif*/
+ }
+ else if (mode == I18N_GET)
+ {
+ for (p = args; p->name != NULL; p++)
+ {
+ if (strcmp (p->name, IMLocale) == 0)
+ {
+ p->value = (char *) malloc (strlen (address->im_locale) + 1);
+ if (!p->value)
+ return IMLocale;
+ /*endif*/
+ strcpy (p->value, address->im_locale);
+ }
+ else if (strcmp (p->name, IMServerTransport) == 0)
+ {
+ p->value = (char *) malloc (strlen (address->im_addr) + 1);
+ if (!p->value)
+ return IMServerTransport;
+ /*endif*/
+ strcpy (p->value, address->im_addr);
+ }
+ else if (strcmp (p->name, IMServerName) == 0)
+ {
+ if (address->imvalue_mask & I18N_IM_NAME)
+ {
+ p->value = (char *) malloc (strlen (address->im_name) + 1);
+ if (!p->value)
+ return IMServerName;
+ /*endif*/
+ strcpy (p->value, address->im_name);
+ }
+ else
+ {
+ return IMServerName;
+ }
+ /*endif*/
+ }
+ else if (strcmp (p->name, IMServerWindow) == 0)
+ {
+ if (address->imvalue_mask & I18N_IMSERVER_WIN)
+ *((Window *) (p->value)) = address->im_window;
+ else
+ return IMServerWindow;
+ /*endif*/
+ }
+ else if (strcmp (p->name, IMInputStyles) == 0)
+ {
+ if (GetInputStyles (i18n_core,
+ (XIMStyles **) p->value) == False)
+ {
+ return IMInputStyles;
+ }
+ /*endif*/
+ }
+ else if (strcmp (p->name, IMProtocolHandler) == 0)
+ {
+ if (address->imvalue_mask & I18N_IM_HANDLER)
+ *((IMProtoHandler *) (p->value)) = address->improto;
+ else
+ return IMProtocolHandler;
+ /*endif*/
+ }
+ else if (strcmp (p->name, IMOnKeysList) == 0)
+ {
+ if (address->imvalue_mask & I18N_ON_KEYS)
+ {
+ if (GetOnOffKeys (i18n_core,
+ I18N_ON_KEYS,
+ (XIMTriggerKeys **) p->value) == False)
+ {
+ return IMOnKeysList;
+ }
+ /*endif*/
+ }
+ else
+ {
+ return IMOnKeysList;
+ }
+ /*endif*/
+ }
+ else if (strcmp (p->name, IMOffKeysList) == 0)
+ {
+ if (address->imvalue_mask & I18N_OFF_KEYS)
+ {
+ if (GetOnOffKeys (i18n_core,
+ I18N_OFF_KEYS,
+ (XIMTriggerKeys **) p->value) == False)
+ {
+ return IMOffKeysList;
+ }
+ /*endif*/
+ }
+ else
+ {
+ return IMOffKeysList;
+ }
+ /*endif*/
+ }
+ else if (strcmp (p->name, IMEncodingList) == 0)
+ {
+ if (address->imvalue_mask & I18N_ENCODINGS)
+ {
+ if (GetEncodings (i18n_core,
+ (XIMEncodings **) p->value) == False)
+ {
+ return IMEncodingList;
+ }
+ /*endif*/
+ }
+ else
+ {
+ return IMEncodingList;
+ }
+ /*endif*/
+ }
+ else if (strcmp (p->name, IMFilterEventMask) == 0)
+ {
+ if (address->imvalue_mask & I18N_FILTERMASK)
+ *((long *) (p->value)) = address->filterevent_mask;
+ else
+ return IMFilterEventMask;
+ /*endif*/
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ }
+ /*endif*/
+ return NULL;
+}
+
+static int CheckIMName (Xi18n i18n_core)
+{
+ char *address = i18n_core->address.im_addr;
+ int i;
+
+ for (i = 0; _TransR[i].transportname; i++)
+ {
+ while (*address == ' ' || *address == '\t')
+ address++;
+ /*endwhile*/
+ if (strncmp (address,
+ _TransR[i].transportname,
+ _TransR[i].namelen) == 0
+ &&
+ address[_TransR[i].namelen] == '/')
+ {
+ if (_TransR[i].checkAddr (i18n_core,
+ &_TransR[i],
+ address + _TransR[i].namelen + 1) == True)
+ {
+ return True;
+ }
+ /*endif*/
+ return False;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ return False;
+}
+
+static int SetXi18nSelectionOwner(Xi18n i18n_core)
+{
+ Display *dpy = i18n_core->address.dpy;
+ Window ims_win = i18n_core->address.im_window;
+ Window root = RootWindow (dpy, DefaultScreen (dpy));
+ Atom realtype;
+ int realformat;
+ unsigned long bytesafter;
+ long *data=NULL;
+ unsigned long length;
+ Atom atom;
+ int i;
+ int found;
+ int forse = False;
+ char buf[256];
+
+ (void)snprintf(buf, 256, "@server=%s", i18n_core->address.im_name);
+ if ((atom = XInternAtom(dpy, buf, False)) == 0)
+ return False;
+ i18n_core->address.selection = atom;
+
+ if (XIM_Servers == None)
+ XIM_Servers = XInternAtom (dpy, XIM_SERVERS, False);
+ /*endif*/
+ XGetWindowProperty (dpy,
+ root,
+ XIM_Servers,
+ 0L,
+ 1000000L,
+ False,
+ XA_ATOM,
+ &realtype,
+ &realformat,
+ &length,
+ &bytesafter,
+ (unsigned char **) (&data));
+ if (realtype != None && (realtype != XA_ATOM || realformat != 32)) {
+ if (data != NULL)
+ XFree ((char *) data);
+ return False;
+ }
+
+ found = False;
+ for (i = 0; i < length; i++) {
+ if (data[i] == atom) {
+ Window owner;
+ found = True;
+ if ((owner = XGetSelectionOwner (dpy, atom)) != ims_win) {
+ if (owner == None || forse == True)
+ XSetSelectionOwner (dpy, atom, ims_win, CurrentTime);
+ else
+ return False;
+ }
+ break;
+ }
+ }
+
+ if (found == False) {
+ XSetSelectionOwner (dpy, atom, ims_win, CurrentTime);
+ XChangeProperty (dpy,
+ root,
+ XIM_Servers,
+ XA_ATOM,
+ 32,
+ PropModePrepend,
+ (unsigned char *) &atom,
+ 1);
+ }
+ else {
+ /*
+ * We always need to generate the PropertyNotify to the Root Window
+ */
+ XChangeProperty (dpy,
+ root,
+ XIM_Servers,
+ XA_ATOM,
+ 32,
+ PropModePrepend,
+ (unsigned char *) data,
+ 0);
+ }
+ if (data != NULL)
+ XFree ((char *) data);
+
+ /* Intern "LOCALES" and "TRANSOPORT" Target Atoms */
+ i18n_core->address.Localename = XInternAtom (dpy, LOCALES, False);
+ i18n_core->address.Transportname = XInternAtom (dpy, TRANSPORT, False);
+ return (XGetSelectionOwner (dpy, atom) == ims_win);
+}
+
+static int DeleteXi18nAtom(Xi18n i18n_core)
+{
+ Display *dpy = i18n_core->address.dpy;
+ Window root = RootWindow (dpy, DefaultScreen (dpy));
+ Atom realtype;
+ int realformat;
+ unsigned long bytesafter;
+ long *data=NULL;
+ unsigned long length;
+ Atom atom;
+ int i, ret;
+ int found;
+ char buf[256];
+
+ (void)snprintf(buf, 256, "@server=%s", i18n_core->address.im_name);
+ if ((atom = XInternAtom(dpy, buf, False)) == 0)
+ return False;
+ i18n_core->address.selection = atom;
+
+ if (XIM_Servers == None)
+ XIM_Servers = XInternAtom (dpy, XIM_SERVERS, False);
+ XGetWindowProperty (dpy,
+ root,
+ XIM_Servers,
+ 0L,
+ 1000000L,
+ False,
+ XA_ATOM,
+ &realtype,
+ &realformat,
+ &length,
+ &bytesafter,
+ (unsigned char **) (&data));
+ if (realtype != XA_ATOM || realformat != 32) {
+ if (data != NULL)
+ XFree ((char *) data);
+ return False;
+ }
+
+ found = False;
+ for (i = 0; i < length; i++) {
+ if (data[i] == atom) {
+ found = True;
+ break;
+ }
+ }
+
+ if (found == True) {
+ for (i=i+1; i<length; i++)
+ data[i-1] = data[i];
+ XChangeProperty (dpy,
+ root,
+ XIM_Servers,
+ XA_ATOM,
+ 32,
+ PropModeReplace,
+ (unsigned char *)data,
+ length-1);
+ ret = True;
+ }
+ else {
+ XChangeProperty (dpy,
+ root,
+ XIM_Servers,
+ XA_ATOM,
+ 32,
+ PropModePrepend,
+ (unsigned char *)data,
+ 0);
+ ret = False;
+ }
+ if (data != NULL)
+ XFree ((char *) data);
+ return ret;
+}
+
+
+/* XIM protocol methods */
+static void *xi18n_setup (Display *dpy, XIMArg *args)
+{
+ Xi18n i18n_core;
+ CARD16 endian = 1;
+
+ if ((i18n_core = (Xi18n) malloc (sizeof (Xi18nCore))) == (Xi18n) NULL)
+ return NULL;
+ /*endif*/
+
+ memset (i18n_core, 0, sizeof (Xi18nCore));
+
+ i18n_core->address.dpy = dpy;
+
+ if (ParseArgs (i18n_core, I18N_OPEN, args) != NULL)
+ {
+ XFree (i18n_core);
+ return NULL;
+ }
+ /*endif*/
+ if (*(char *) &endian)
+ i18n_core->address.im_byteOrder = 'l';
+ else
+ i18n_core->address.im_byteOrder = 'B';
+ /*endif*/
+
+ /* install IMAttr and ICAttr list in i18n_core */
+ _Xi18nInitAttrList (i18n_core);
+
+ /* install IMExtension list in i18n_core */
+ _Xi18nInitExtension (i18n_core);
+
+ return i18n_core;
+}
+
+static void ReturnSelectionNotify (Xi18n i18n_core, XSelectionRequestEvent *ev)
+{
+ XEvent event;
+ Display *dpy = i18n_core->address.dpy;
+ char buf[4096];
+
+ event.type = SelectionNotify;
+ event.xselection.requestor = ev->requestor;
+ event.xselection.selection = ev->selection;
+ event.xselection.target = ev->target;
+ event.xselection.time = ev->time;
+ event.xselection.property = ev->property;
+ if (ev->target == i18n_core->address.Localename)
+ {
+ snprintf (buf, 4096, "@locale=%s", i18n_core->address.im_locale);
+ }
+ else if (ev->target == i18n_core->address.Transportname)
+ {
+ snprintf (buf, 4096, "@transport=%s", i18n_core->address.im_addr);
+ }
+ /*endif*/
+ XChangeProperty (dpy,
+ event.xselection.requestor,
+ ev->target,
+ ev->target,
+ 8,
+ PropModeReplace,
+ (unsigned char *) buf,
+ strlen (buf));
+ XSendEvent (dpy, event.xselection.requestor, False, NoEventMask, &event);
+ XFlush (i18n_core->address.dpy);
+}
+
+static Bool WaitXSelectionRequest (Display *dpy,
+ Window win,
+ XEvent *ev,
+ XPointer client_data)
+{
+ XIMS ims = (XIMS) client_data;
+ Xi18n i18n_core = ims->protocol;
+
+ if (((XSelectionRequestEvent *) ev)->selection
+ == i18n_core->address.selection)
+ {
+ ReturnSelectionNotify (i18n_core, (XSelectionRequestEvent *) ev);
+ return True;
+ }
+ /*endif*/
+ return False;
+}
+
+static Status xi18n_openIM(XIMS ims)
+{
+ Xi18n i18n_core = ims->protocol;
+ Display *dpy = i18n_core->address.dpy;
+
+ if (!CheckIMName (i18n_core)
+ ||
+ !SetXi18nSelectionOwner (i18n_core)
+ ||
+ !i18n_core->methods.begin (ims))
+ {
+ XFree (i18n_core->address.im_name);
+ XFree (i18n_core->address.im_locale);
+ XFree (i18n_core->address.im_addr);
+ XFree (i18n_core);
+ return False;
+ }
+ /*endif*/
+
+ _XRegisterFilterByType (dpy,
+ i18n_core->address.im_window,
+ SelectionRequest,
+ SelectionRequest,
+ WaitXSelectionRequest,
+ (XPointer)ims);
+ XFlush(dpy);
+ return True;
+}
+
+static Status xi18n_closeIM(XIMS ims)
+{
+ Xi18n i18n_core = ims->protocol;
+ Display *dpy = i18n_core->address.dpy;
+
+ DeleteXi18nAtom(i18n_core);
+ if (!i18n_core->methods.end (ims))
+ return False;
+
+ _XUnregisterFilter (dpy,
+ i18n_core->address.im_window,
+ WaitXSelectionRequest,
+ (XPointer)ims);
+ XFree (i18n_core->address.im_name);
+ XFree (i18n_core->address.im_locale);
+ XFree (i18n_core->address.im_addr);
+ XFree (i18n_core);
+ return True;
+}
+
+static char *xi18n_setIMValues (XIMS ims, XIMArg *args)
+{
+ Xi18n i18n_core = ims->protocol;
+ char *ret;
+
+ if ((ret = ParseArgs (i18n_core, I18N_SET, args)) != NULL)
+ return ret;
+ /*endif*/
+ return NULL;
+}
+
+static char *xi18n_getIMValues (XIMS ims, XIMArg *args)
+{
+ Xi18n i18n_core = ims->protocol;
+ char *ret;
+
+ if ((ret = ParseArgs (i18n_core, I18N_GET, args)) != NULL)
+ return ret;
+ /*endif*/
+ return NULL;
+}
+
+static void EventToWireEvent (XEvent *ev, xEvent *event,
+ CARD16 *serial, Bool byte_swap)
+{
+ FrameMgr fm;
+ extern XimFrameRec wire_keyevent_fr[];
+ extern XimFrameRec short_fr[];
+ BYTE b;
+ CARD16 c16;
+ CARD32 c32;
+
+ *serial = (CARD16)(ev->xany.serial >> 16);
+ switch (ev->type) {
+ case KeyPress:
+ case KeyRelease:
+ {
+ XKeyEvent *kev = (XKeyEvent*)ev;
+ /* create FrameMgr */
+ fm = FrameMgrInit(wire_keyevent_fr, (char *)(&(event->u)), byte_swap);
+
+ /* set values */
+ b = (BYTE)kev->type; FrameMgrPutToken(fm, b);
+ b = (BYTE)kev->keycode; FrameMgrPutToken(fm, b);
+ c16 = (CARD16)(kev->serial & (unsigned long)0xffff);
+ FrameMgrPutToken(fm, c16);
+ c32 = (CARD32)kev->time; FrameMgrPutToken(fm, c32);
+ c32 = (CARD32)kev->root; FrameMgrPutToken(fm, c32);
+ c32 = (CARD32)kev->window; FrameMgrPutToken(fm, c32);
+ c32 = (CARD32)kev->subwindow; FrameMgrPutToken(fm, c32);
+ c16 = (CARD16)kev->x_root; FrameMgrPutToken(fm, c16);
+ c16 = (CARD16)kev->y_root; FrameMgrPutToken(fm, c16);
+ c16 = (CARD16)kev->x; FrameMgrPutToken(fm, c16);
+ c16 = (CARD16)kev->y; FrameMgrPutToken(fm, c16);
+ c16 = (CARD16)kev->state; FrameMgrPutToken(fm, c16);
+ b = (BYTE)kev->same_screen; FrameMgrPutToken(fm, b);
+ }
+ break;
+ default:
+ /* create FrameMgr */
+ fm = FrameMgrInit(short_fr, (char *)(&(event->u.u.sequenceNumber)),
+ byte_swap);
+ c16 = (CARD16)(ev->xany.serial & (unsigned long)0xffff);
+ FrameMgrPutToken(fm, c16);
+ break;
+ }
+ /* free FrameMgr */
+ FrameMgrFree(fm);
+}
+
+static Status xi18n_forwardEvent (XIMS ims, XPointer xp)
+{
+ Xi18n i18n_core = ims->protocol;
+ IMForwardEventStruct *call_data = (IMForwardEventStruct *)xp;
+ FrameMgr fm;
+ extern XimFrameRec forward_event_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ unsigned char *replyp;
+ CARD16 serial;
+ int event_size;
+ Xi18nClient *client;
+
+ client = (Xi18nClient *) _Xi18nFindClient (i18n_core, call_data->connect_id);
+
+ /* create FrameMgr */
+ fm = FrameMgrInit (forward_event_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, call_data->connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ event_size = sizeof (xEvent);
+ reply = (unsigned char *) malloc (total_size + event_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims,
+ call_data->connect_id,
+ XIM_ERROR,
+ 0,
+ 0,
+ 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size + event_size);
+ FrameMgrSetBuffer (fm, reply);
+ replyp = reply;
+
+ call_data->sync_bit = 1; /* always sync */
+ client->sync = True;
+
+ FrameMgrPutToken (fm, call_data->connect_id);
+ FrameMgrPutToken (fm, call_data->icid);
+ FrameMgrPutToken (fm, call_data->sync_bit);
+
+ replyp += total_size;
+ EventToWireEvent (&(call_data->event),
+ (xEvent *) replyp,
+ &serial,
+ _Xi18nNeedSwap (i18n_core, call_data->connect_id));
+
+ FrameMgrPutToken (fm, serial);
+
+ _Xi18nSendMessage (ims,
+ call_data->connect_id,
+ XIM_FORWARD_EVENT,
+ 0,
+ reply,
+ total_size + event_size);
+
+ XFree (reply);
+ FrameMgrFree (fm);
+
+ return True;
+}
+
+static Status xi18n_commit (XIMS ims, XPointer xp)
+{
+ Xi18n i18n_core = ims->protocol;
+ IMCommitStruct *call_data = (IMCommitStruct *)xp;
+ FrameMgr fm;
+ extern XimFrameRec commit_chars_fr[];
+ extern XimFrameRec commit_both_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ CARD16 str_length;
+
+ call_data->flag |= XimSYNCHRONUS; /* always sync */
+
+ if (!(call_data->flag & XimLookupKeySym)
+ &&
+ (call_data->flag & XimLookupChars))
+ {
+ fm = FrameMgrInit (commit_chars_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, call_data->connect_id));
+
+ /* set length of STRING8 */
+ str_length = strlen (call_data->commit_string);
+ FrameMgrSetSize (fm, str_length);
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims,
+ call_data->connect_id,
+ XIM_ERROR,
+ 0,
+ 0,
+ 0);
+ return False;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ str_length = FrameMgrGetSize (fm);
+ FrameMgrPutToken (fm, call_data->connect_id);
+ FrameMgrPutToken (fm, call_data->icid);
+ FrameMgrPutToken (fm, call_data->flag);
+ FrameMgrPutToken (fm, str_length);
+ FrameMgrPutToken (fm, call_data->commit_string);
+ }
+ else
+ {
+ fm = FrameMgrInit (commit_both_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, call_data->connect_id));
+ /* set length of STRING8 */
+ str_length = strlen (call_data->commit_string);
+ if (str_length > 0)
+ FrameMgrSetSize (fm, str_length);
+ /*endif*/
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims,
+ call_data->connect_id,
+ XIM_ERROR,
+ 0,
+ 0,
+ 0);
+ return False;
+ }
+ /*endif*/
+ FrameMgrSetBuffer (fm, reply);
+ FrameMgrPutToken (fm, call_data->connect_id);
+ FrameMgrPutToken (fm, call_data->icid);
+ FrameMgrPutToken (fm, call_data->flag);
+ FrameMgrPutToken (fm, call_data->keysym);
+ if (str_length > 0)
+ {
+ str_length = FrameMgrGetSize (fm);
+ FrameMgrPutToken (fm, str_length);
+ FrameMgrPutToken (fm, call_data->commit_string);
+ }
+ /*endif*/
+ }
+ /*endif*/
+ _Xi18nSendMessage (ims,
+ call_data->connect_id,
+ XIM_COMMIT,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ return True;
+}
+
+static int xi18n_callCallback (XIMS ims, XPointer xp)
+{
+ IMProtocol *call_data = (IMProtocol *)xp;
+ switch (call_data->major_code)
+ {
+ case XIM_GEOMETRY:
+ return _Xi18nGeometryCallback (ims, call_data);
+
+ case XIM_PREEDIT_START:
+ return _Xi18nPreeditStartCallback (ims, call_data);
+
+ case XIM_PREEDIT_DRAW:
+ return _Xi18nPreeditDrawCallback (ims, call_data);
+
+ case XIM_PREEDIT_CARET:
+ return _Xi18nPreeditCaretCallback (ims, call_data);
+
+ case XIM_PREEDIT_DONE:
+ return _Xi18nPreeditDoneCallback (ims, call_data);
+
+ case XIM_STATUS_START:
+ return _Xi18nStatusStartCallback (ims, call_data);
+
+ case XIM_STATUS_DRAW:
+ return _Xi18nStatusDrawCallback (ims, call_data);
+
+ case XIM_STATUS_DONE:
+ return _Xi18nStatusDoneCallback (ims, call_data);
+
+ case XIM_STR_CONVERSION:
+ return _Xi18nStringConversionCallback (ims, call_data);
+ }
+ /*endswitch*/
+ return False;
+}
+
+/* preeditStart and preeditEnd are used only for Dynamic Event Flow. */
+static int xi18n_preeditStart (XIMS ims, XPointer xp)
+{
+ IMProtocol *call_data = (IMProtocol *)xp;
+ Xi18n i18n_core = ims->protocol;
+ IMPreeditStateStruct *preedit_state =
+ (IMPreeditStateStruct *) &call_data->preedit_state;
+ long mask;
+ int on_key_num = i18n_core->address.on_keys.count_keys;
+ int off_key_num = i18n_core->address.off_keys.count_keys;
+
+ if (on_key_num == 0 && off_key_num == 0)
+ return False;
+ /*endif*/
+ if (i18n_core->address.imvalue_mask & I18N_FILTERMASK)
+ mask = i18n_core->address.filterevent_mask;
+ else
+ mask = DEFAULT_FILTER_MASK;
+ /*endif*/
+ _Xi18nSetEventMask (ims,
+ preedit_state->connect_id,
+ preedit_state->connect_id,
+ preedit_state->icid,
+ mask,
+ ~mask);
+ return True;
+}
+
+static int xi18n_preeditEnd (XIMS ims, XPointer xp)
+{
+ IMProtocol *call_data = (IMProtocol *)xp;
+ Xi18n i18n_core = ims->protocol;
+ int on_key_num = i18n_core->address.on_keys.count_keys;
+ int off_key_num = i18n_core->address.off_keys.count_keys;
+ IMPreeditStateStruct *preedit_state;
+
+ preedit_state = (IMPreeditStateStruct *) &call_data->preedit_state;
+
+ if (on_key_num == 0 && off_key_num == 0)
+ return False;
+ /*endif*/
+
+ _Xi18nSetEventMask (ims,
+ preedit_state->connect_id,
+ preedit_state->connect_id,
+ preedit_state->icid,
+ 0,
+ 0);
+ return True;
+}
+
+static int xi18n_syncXlib (XIMS ims, XPointer xp)
+{
+ IMProtocol *call_data = (IMProtocol *)xp;
+ Xi18n i18n_core = ims->protocol;
+ IMSyncXlibStruct *sync_xlib;
+
+ extern XimFrameRec sync_fr[];
+ FrameMgr fm;
+ CARD16 connect_id = call_data->any.connect_id;
+ int total_size;
+ unsigned char *reply;
+
+ sync_xlib = (IMSyncXlibStruct *) &call_data->sync_xlib;
+ fm = FrameMgrInit (sync_fr, NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ total_size = FrameMgrGetTotalSize(fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply) {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return False;
+ }
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ /* input input-method ID */
+ FrameMgrPutToken (fm, connect_id);
+ /* input input-context ID */
+ FrameMgrPutToken (fm, sync_xlib->icid);
+ _Xi18nSendMessage (ims, connect_id, XIM_SYNC, 0, reply, total_size);
+
+ FrameMgrFree (fm);
+ XFree(reply);
+ return True;
+}
+
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <stdlib.h>
+#include <sys/param.h>
+#include <X11/Xlib.h>
+#ifndef NEED_EVENTS
+#define NEED_EVENTS
+#endif
+#include <X11/Xproto.h>
+#undef NEED_EVENTS
+#include "FrameMgr.h"
+#include "IMdkit.h"
+#include "Xi18n.h"
+#include "XimFunc.h"
+
+#ifdef XIM_DEBUG
+#include <stdio.h>
+
+static void DebugLog(char * msg)
+{
+ fprintf(stderr, msg);
+}
+#endif
+
+extern Xi18nClient *_Xi18nFindClient (Xi18n, CARD16);
+
+static void GetProtocolVersion (CARD16 client_major,
+ CARD16 client_minor,
+ CARD16 *server_major,
+ CARD16 *server_minor)
+{
+ *server_major = client_major;
+ *server_minor = client_minor;
+}
+
+static void ConnectMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec connect_fr[], connect_reply_fr[];
+ register int total_size;
+ CARD16 server_major_version, server_minor_version;
+ unsigned char *reply = NULL;
+ IMConnectStruct *imconnect =
+ (IMConnectStruct*) &call_data->imconnect;
+ CARD16 connect_id = call_data->any.connect_id;
+
+ fm = FrameMgrInit (connect_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* get data */
+ FrameMgrGetToken (fm, imconnect->byte_order);
+ FrameMgrGetToken (fm, imconnect->major_version);
+ FrameMgrGetToken (fm, imconnect->minor_version);
+
+ FrameMgrFree (fm);
+
+ GetProtocolVersion (imconnect->major_version,
+ imconnect->minor_version,
+ &server_major_version,
+ &server_minor_version);
+#ifdef PROTOCOL_RICH
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto(ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+#endif /* PROTOCOL_RICH */
+
+ fm = FrameMgrInit (connect_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, server_major_version);
+ FrameMgrPutToken (fm, server_minor_version);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_CONNECT_REPLY,
+ 0,
+ reply,
+ total_size);
+
+ FrameMgrFree (fm);
+ XFree (reply);
+}
+
+static void DisConnectMessageProc (XIMS ims, IMProtocol *call_data)
+{
+ Xi18n i18n_core = ims->protocol;
+ unsigned char *reply = NULL;
+ CARD16 connect_id = call_data->any.connect_id;
+
+#ifdef PROTOCOL_RICH
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+#endif /* PROTOCOL_RICH */
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_DISCONNECT_REPLY,
+ 0,
+ reply,
+ 0);
+
+ i18n_core->methods.disconnect (ims, connect_id);
+}
+
+static void OpenMessageProc(XIMS ims, IMProtocol *call_data, unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec open_fr[];
+ extern XimFrameRec open_reply_fr[];
+ unsigned char *reply = NULL;
+ int str_size;
+ register int i, total_size;
+ CARD16 connect_id = call_data->any.connect_id;
+ int str_length;
+ char *name;
+ IMOpenStruct *imopen = (IMOpenStruct *) &call_data->imopen;
+
+ fm = FrameMgrInit (open_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* get data */
+ FrameMgrGetToken (fm, str_length);
+ FrameMgrSetSize (fm, str_length);
+ FrameMgrGetToken (fm, name);
+ imopen->lang.length = str_length;
+ imopen->lang.name = malloc (str_length + 1);
+ strncpy (imopen->lang.name, name, str_length);
+ imopen->lang.name[str_length] = (char) 0;
+
+ FrameMgrFree (fm);
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto(ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+ if ((i18n_core->address.imvalue_mask & I18N_ON_KEYS)
+ ||
+ (i18n_core->address.imvalue_mask & I18N_OFF_KEYS))
+ {
+ _Xi18nSendTriggerKey (ims, connect_id);
+ }
+ /*endif*/
+ XFree (imopen->lang.name);
+
+ fm = FrameMgrInit (open_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* set iteration count for list of imattr */
+ FrameMgrSetIterCount (fm, i18n_core->address.im_attr_num);
+
+ /* set length of BARRAY item in ximattr_fr */
+ for (i = 0; i < i18n_core->address.im_attr_num; i++)
+ {
+ str_size = strlen (i18n_core->address.xim_attr[i].name);
+ FrameMgrSetSize (fm, str_size);
+ }
+ /*endfor*/
+ /* set iteration count for list of icattr */
+ FrameMgrSetIterCount (fm, i18n_core->address.ic_attr_num);
+ /* set length of BARRAY item in xicattr_fr */
+ for (i = 0; i < i18n_core->address.ic_attr_num; i++)
+ {
+ str_size = strlen (i18n_core->address.xic_attr[i].name);
+ FrameMgrSetSize (fm, str_size);
+ }
+ /*endfor*/
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ /* input input-method ID */
+ FrameMgrPutToken (fm, connect_id);
+
+ for (i = 0; i < i18n_core->address.im_attr_num; i++)
+ {
+ str_size = FrameMgrGetSize (fm);
+ FrameMgrPutToken (fm, i18n_core->address.xim_attr[i].attribute_id);
+ FrameMgrPutToken (fm, i18n_core->address.xim_attr[i].type);
+ FrameMgrPutToken (fm, str_size);
+ FrameMgrPutToken (fm, i18n_core->address.xim_attr[i].name);
+ }
+ /*endfor*/
+ for (i = 0; i < i18n_core->address.ic_attr_num; i++)
+ {
+ str_size = FrameMgrGetSize (fm);
+ FrameMgrPutToken (fm, i18n_core->address.xic_attr[i].attribute_id);
+ FrameMgrPutToken (fm, i18n_core->address.xic_attr[i].type);
+ FrameMgrPutToken (fm, str_size);
+ FrameMgrPutToken (fm, i18n_core->address.xic_attr[i].name);
+ }
+ /*endfor*/
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_OPEN_REPLY,
+ 0,
+ reply,
+ total_size);
+
+ FrameMgrFree (fm);
+ XFree (reply);
+}
+
+static void CloseMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec close_fr[];
+ extern XimFrameRec close_reply_fr[];
+ unsigned char *reply = NULL;
+ register int total_size;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (close_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ FrameMgrGetToken (fm, input_method_ID);
+
+ FrameMgrFree (fm);
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+
+ fm = FrameMgrInit (close_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_ERROR,
+ 0,
+ 0,
+ 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, input_method_ID);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_CLOSE_REPLY,
+ 0,
+ reply,
+ total_size);
+
+ FrameMgrFree (fm);
+ XFree (reply);
+}
+
+static XIMExt *MakeExtensionList (Xi18n i18n_core,
+ XIMStr *lib_extension,
+ int number,
+ int *reply_number)
+{
+ XIMExt *ext_list;
+ XIMExt *im_ext = (XIMExt *) i18n_core->address.extension;
+ int im_ext_len = i18n_core->address.ext_num;
+ int i;
+ int j;
+
+ *reply_number = 0;
+
+ if (number == 0)
+ {
+ /* query all extensions */
+ *reply_number = im_ext_len;
+ }
+ else
+ {
+ for (i = 0; i < im_ext_len; i++)
+ {
+ for (j = 0; j < (int) number; j++)
+ {
+ if (strcmp (lib_extension[j].name, im_ext[i].name) == 0)
+ {
+ (*reply_number)++;
+ break;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ }
+ /*endfor*/
+ }
+ /*endif*/
+
+ if (!(*reply_number))
+ return NULL;
+ /*endif*/
+ ext_list = (XIMExt *) malloc (sizeof (XIMExt)*(*reply_number));
+ if (!ext_list)
+ return NULL;
+ /*endif*/
+ memset (ext_list, 0, sizeof (XIMExt)*(*reply_number));
+
+ if (number == 0)
+ {
+ /* query all extensions */
+ for (i = 0; i < im_ext_len; i++)
+ {
+ ext_list[i].major_opcode = im_ext[i].major_opcode;
+ ext_list[i].minor_opcode = im_ext[i].minor_opcode;
+ ext_list[i].length = im_ext[i].length;
+ ext_list[i].name = malloc (im_ext[i].length + 1);
+ strcpy (ext_list[i].name, im_ext[i].name);
+ }
+ /*endfor*/
+ }
+ else
+ {
+ int n = 0;
+
+ for (i = 0; i < im_ext_len; i++)
+ {
+ for (j = 0; j < (int)number; j++)
+ {
+ if (strcmp (lib_extension[j].name, im_ext[i].name) == 0)
+ {
+ ext_list[n].major_opcode = im_ext[i].major_opcode;
+ ext_list[n].minor_opcode = im_ext[i].minor_opcode;
+ ext_list[n].length = im_ext[i].length;
+ ext_list[n].name = malloc (im_ext[i].length + 1);
+ strcpy (ext_list[n].name, im_ext[i].name);
+ n++;
+ break;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ }
+ /*endfor*/
+ }
+ /*endif*/
+ return ext_list;
+}
+
+static void QueryExtensionMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ FmStatus status;
+ extern XimFrameRec query_extension_fr[];
+ extern XimFrameRec query_extension_reply_fr[];
+ unsigned char *reply = NULL;
+ int str_size;
+ register int i;
+ register int number;
+ register int total_size;
+ int byte_length;
+ int reply_number = 0;
+ XIMExt *ext_list;
+ IMQueryExtensionStruct *query_ext =
+ (IMQueryExtensionStruct *) &call_data->queryext;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (query_extension_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, byte_length);
+ query_ext->extension = (XIMStr *) malloc (sizeof (XIMStr)*10);
+ memset (query_ext->extension, 0, sizeof (XIMStr)*10);
+ number = 0;
+ while (FrameMgrIsIterLoopEnd (fm, &status) == False)
+ {
+ char *name;
+ int str_length;
+
+ FrameMgrGetToken (fm, str_length);
+ FrameMgrSetSize (fm, str_length);
+ query_ext->extension[number].length = str_length;
+ FrameMgrGetToken (fm, name);
+ query_ext->extension[number].name = malloc (str_length + 1);
+ strncpy (query_ext->extension[number].name, name, str_length);
+ query_ext->extension[number].name[str_length] = (char) 0;
+ number++;
+ }
+ /*endwhile*/
+ query_ext->number = number;
+
+#ifdef PROTOCOL_RICH
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto(ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+#endif /* PROTOCOL_RICH */
+
+ FrameMgrFree (fm);
+
+ ext_list = MakeExtensionList (i18n_core,
+ query_ext->extension,
+ number,
+ &reply_number);
+
+ for (i = 0; i < number; i++)
+ XFree (query_ext->extension[i].name);
+ /*endfor*/
+ XFree (query_ext->extension);
+
+ fm = FrameMgrInit (query_extension_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* set iteration count for list of extensions */
+ FrameMgrSetIterCount (fm, reply_number);
+
+ /* set length of BARRAY item in ext_fr */
+ for (i = 0; i < reply_number; i++)
+ {
+ str_size = strlen (ext_list[i].name);
+ FrameMgrSetSize (fm, str_size);
+ }
+ /*endfor*/
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_ERROR,
+ 0,
+ 0,
+ 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, input_method_ID);
+
+ for (i = 0; i < reply_number; i++)
+ {
+ str_size = FrameMgrGetSize (fm);
+ FrameMgrPutToken (fm, ext_list[i].major_opcode);
+ FrameMgrPutToken (fm, ext_list[i].minor_opcode);
+ FrameMgrPutToken (fm, str_size);
+ FrameMgrPutToken (fm, ext_list[i].name);
+ }
+ /*endfor*/
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_QUERY_EXTENSION_REPLY,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ for (i = 0; i < reply_number; i++)
+ XFree (ext_list[i].name);
+ /*endfor*/
+ XFree ((char *) ext_list);
+}
+
+static void SyncReplyMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec sync_reply_fr[];
+ CARD16 connect_id = call_data->any.connect_id;
+ Xi18nClient *client;
+ CARD16 input_method_ID;
+ CARD16 input_context_ID;
+
+ client = (Xi18nClient *)_Xi18nFindClient (i18n_core, connect_id);
+ fm = FrameMgrInit (sync_reply_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, input_context_ID);
+ FrameMgrFree (fm);
+
+ client->sync = False;
+
+ if (ims->sync == True) {
+ ims->sync = False;
+ if (i18n_core->address.improto) {
+ call_data->sync_xlib.major_code = XIM_SYNC_REPLY;
+ call_data->sync_xlib.minor_code = 0;
+ call_data->sync_xlib.connect_id = input_method_ID;
+ call_data->sync_xlib.icid = input_context_ID;
+ i18n_core->address.improto(ims, call_data);
+ }
+ }
+}
+
+static void GetIMValueFromName (Xi18n i18n_core,
+ CARD16 connect_id,
+ char *buf,
+ char *name,
+ int *length)
+{
+ register int i;
+
+ if (strcmp (name, XNQueryInputStyle) == 0)
+ {
+ XIMStyles *styles = (XIMStyles *) &i18n_core->address.input_styles;
+
+ *length = sizeof (CARD16)*2; /* count_styles, unused */
+ *length += styles->count_styles*sizeof (CARD32);
+
+ if (buf != NULL)
+ {
+ FrameMgr fm;
+ extern XimFrameRec input_styles_fr[];
+ unsigned char *data = NULL;
+ int total_size;
+
+ fm = FrameMgrInit (input_styles_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* set iteration count for list of input_style */
+ FrameMgrSetIterCount (fm, styles->count_styles);
+
+ total_size = FrameMgrGetTotalSize (fm);
+ data = (unsigned char *) malloc (total_size);
+ if (!data)
+ return;
+ /*endif*/
+ memset (data, 0, total_size);
+ FrameMgrSetBuffer (fm, data);
+
+ FrameMgrPutToken (fm, styles->count_styles);
+ for (i = 0; i < (int) styles->count_styles; i++)
+ FrameMgrPutToken (fm, styles->supported_styles[i]);
+ /*endfor*/
+ memmove (buf, data, total_size);
+ FrameMgrFree (fm);
+
+ /* ADDED BY SUZHE */
+ free (data);
+ /* ADDED BY SUZHE */
+ }
+ /*endif*/
+ }
+ /*endif*/
+
+ else if (strcmp (name, XNQueryIMValuesList) == 0) {
+ }
+}
+
+static XIMAttribute *MakeIMAttributeList (Xi18n i18n_core,
+ CARD16 connect_id,
+ CARD16 *list,
+ int *number,
+ int *length)
+{
+ XIMAttribute *attrib_list;
+ int list_num;
+ XIMAttr *attr = i18n_core->address.xim_attr;
+ int list_len = i18n_core->address.im_attr_num;
+ register int i;
+ register int j;
+ int value_length;
+ int number_ret = 0;
+
+ *length = 0;
+ list_num = 0;
+ for (i = 0; i < *number; i++)
+ {
+ for (j = 0; j < list_len; j++)
+ {
+ if (attr[j].attribute_id == list[i])
+ {
+ list_num++;
+ break;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ }
+ /*endfor*/
+ attrib_list = (XIMAttribute *) malloc (sizeof (XIMAttribute)*list_num);
+ if (!attrib_list)
+ return NULL;
+ /*endif*/
+ memset (attrib_list, 0, sizeof (XIMAttribute)*list_num);
+ number_ret = list_num;
+ list_num = 0;
+ for (i = 0; i < *number; i++)
+ {
+ for (j = 0; j < list_len; j++)
+ {
+ if (attr[j].attribute_id == list[i])
+ {
+ attrib_list[list_num].attribute_id = attr[j].attribute_id;
+ attrib_list[list_num].name_length = attr[j].length;
+ attrib_list[list_num].name = attr[j].name;
+ attrib_list[list_num].type = attr[j].type;
+ GetIMValueFromName (i18n_core,
+ connect_id,
+ NULL,
+ attr[j].name,
+ &value_length);
+ attrib_list[list_num].value_length = value_length;
+ attrib_list[list_num].value = (void *) malloc (value_length);
+ memset(attrib_list[list_num].value, 0, value_length);
+ GetIMValueFromName (i18n_core,
+ connect_id,
+ attrib_list[list_num].value,
+ attr[j].name,
+ &value_length);
+ *length += sizeof (CARD16)*2;
+ *length += value_length;
+ *length += IMPAD (value_length);
+ list_num++;
+ break;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ }
+ /*endfor*/
+ *number = number_ret;
+ return attrib_list;
+}
+
+static void GetIMValuesMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ FmStatus status;
+ extern XimFrameRec get_im_values_fr[];
+ extern XimFrameRec get_im_values_reply_fr[];
+ CARD16 byte_length;
+ int list_len, total_size;
+ unsigned char *reply = NULL;
+ int iter_count;
+ register int i;
+ register int j;
+ int number;
+ CARD16 *im_attrID_list;
+ char **name_list;
+ CARD16 name_number;
+ XIMAttribute *im_attribute_list;
+ IMGetIMValuesStruct *getim = (IMGetIMValuesStruct *)&call_data->getim;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ /* create FrameMgr */
+ fm = FrameMgrInit (get_im_values_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, byte_length);
+ im_attrID_list = (CARD16 *) malloc (sizeof (CARD16)*20);
+ memset (im_attrID_list, 0, sizeof (CARD16)*20);
+ name_list = (char **)malloc(sizeof(char *) * 20);
+ memset(name_list, 0, sizeof(char *) * 20);
+ number = 0;
+ while (FrameMgrIsIterLoopEnd (fm, &status) == False)
+ {
+ FrameMgrGetToken (fm, im_attrID_list[number]);
+ number++;
+ }
+ FrameMgrFree (fm);
+
+ name_number = 0;
+ for (i = 0; i < number; i++) {
+ for (j = 0; j < i18n_core->address.im_attr_num; j++) {
+ if (i18n_core->address.xim_attr[j].attribute_id ==
+ im_attrID_list[i]) {
+ name_list[name_number++] =
+ i18n_core->address.xim_attr[j].name;
+ break;
+ }
+ }
+ }
+ getim->number = name_number;
+ getim->im_attr_list = name_list;
+ XFree (name_list);
+
+
+#ifdef PROTOCOL_RICH
+ if (i18n_core->address.improto) {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ }
+#endif /* PROTOCOL_RICH */
+
+ im_attribute_list = MakeIMAttributeList (i18n_core,
+ connect_id,
+ im_attrID_list,
+ &number,
+ &list_len);
+ if (im_attrID_list)
+ XFree (im_attrID_list);
+ /*endif*/
+
+ fm = FrameMgrInit (get_im_values_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ iter_count = number;
+
+ /* set iteration count for list of im_attribute */
+ FrameMgrSetIterCount (fm, iter_count);
+
+ /* set length of BARRAY item in ximattribute_fr */
+ for (i = 0; i < iter_count; i++)
+ FrameMgrSetSize (fm, im_attribute_list[i].value_length);
+ /*endfor*/
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, input_method_ID);
+
+ for (i = 0; i < iter_count; i++)
+ {
+ FrameMgrPutToken (fm, im_attribute_list[i].attribute_id);
+ FrameMgrPutToken (fm, im_attribute_list[i].value_length);
+ FrameMgrPutToken (fm, im_attribute_list[i].value);
+ }
+ /*endfor*/
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_GET_IM_VALUES_REPLY,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree (reply);
+
+ for (i = 0; i < iter_count; i++)
+ XFree(im_attribute_list[i].value);
+ XFree (im_attribute_list);
+}
+
+static void CreateICMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ _Xi18nChangeIC (ims, call_data, p, True);
+}
+
+static void SetICValuesMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ _Xi18nChangeIC (ims, call_data, p, False);
+}
+
+static void GetICValuesMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ _Xi18nGetIC (ims, call_data, p);
+}
+
+static void SetICFocusMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec set_ic_focus_fr[];
+ IMChangeFocusStruct *setfocus;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ setfocus = (IMChangeFocusStruct *) &call_data->changefocus;
+
+ fm = FrameMgrInit (set_ic_focus_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, setfocus->icid);
+
+ FrameMgrFree (fm);
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+}
+
+static void UnsetICFocusMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec unset_ic_focus_fr[];
+ IMChangeFocusStruct *unsetfocus;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ unsetfocus = (IMChangeFocusStruct *) &call_data->changefocus;
+
+ fm = FrameMgrInit (unset_ic_focus_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, unsetfocus->icid);
+
+ FrameMgrFree (fm);
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+}
+
+static void DestroyICMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec destroy_ic_fr[];
+ extern XimFrameRec destroy_ic_reply_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMDestroyICStruct *destroy =
+ (IMDestroyICStruct *) &call_data->destroyic;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (destroy_ic_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, destroy->icid);
+
+ FrameMgrFree (fm);
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+
+ fm = FrameMgrInit (destroy_ic_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, input_method_ID);
+ FrameMgrPutToken (fm, destroy->icid);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_DESTROY_IC_REPLY,
+ 0,
+ reply,
+ total_size);
+ XFree(reply);
+ FrameMgrFree (fm);
+}
+
+static void ResetICMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec reset_ic_fr[];
+ extern XimFrameRec reset_ic_reply_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMResetICStruct *resetic =
+ (IMResetICStruct *) &call_data->resetic;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (reset_ic_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, resetic->icid);
+
+ FrameMgrFree (fm);
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto(ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+
+ /* create FrameMgr */
+ fm = FrameMgrInit (reset_ic_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* set length of STRING8 */
+ FrameMgrSetSize (fm, resetic->length);
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, input_method_ID);
+ FrameMgrPutToken (fm, resetic->icid);
+ FrameMgrPutToken(fm, resetic->length);
+ FrameMgrPutToken (fm, resetic->commit_string);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_RESET_IC_REPLY,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree(reply);
+}
+
+static int WireEventToEvent (Xi18n i18n_core,
+ xEvent *event,
+ CARD16 serial,
+ XEvent *ev,
+ Bool byte_swap)
+{
+ FrameMgr fm;
+ extern XimFrameRec wire_keyevent_fr[];
+ BYTE b;
+ CARD16 c16;
+ CARD32 c32;
+ int ret = False;
+
+ /* create FrameMgr */
+ fm = FrameMgrInit(wire_keyevent_fr, (char *)(&(event->u)), byte_swap);
+
+
+ /* get & set type */
+ FrameMgrGetToken(fm, b);
+ ev->type = (unsigned int)b;
+ /* get detail */
+ FrameMgrGetToken(fm, b);
+ /* get & set serial */
+ FrameMgrGetToken(fm, c16);
+ ev->xany.serial = (unsigned long)c16;
+ ev->xany.serial |= serial << 16;
+ ev->xany.send_event = False;
+ ev->xany.display = i18n_core->address.dpy;
+
+ /* Remove SendEvent flag from event type to emulate KeyPress/Release */
+ ev->type &= 0x7F;
+
+ switch (ev->type) {
+ case KeyPress:
+ case KeyRelease:
+ {
+ XKeyEvent *kev = (XKeyEvent*)ev;
+
+ /* set keycode (detail) */
+ kev->keycode = (unsigned int)b;
+
+ /* get & set values */
+ FrameMgrGetToken(fm, c32); kev->time = (Time)c32;
+ FrameMgrGetToken(fm, c32); kev->root = (Window)c32;
+ FrameMgrGetToken(fm, c32); kev->window = (Window)c32;
+ FrameMgrGetToken(fm, c32); kev->subwindow = (Window)c32;
+ FrameMgrGetToken(fm, c16); kev->x_root = (int)c16;
+ FrameMgrGetToken(fm, c16); kev->y_root = (int)c16;
+ FrameMgrGetToken(fm, c16); kev->x = (int)c16;
+ FrameMgrGetToken(fm, c16); kev->y = (int)c16;
+ FrameMgrGetToken(fm, c16); kev->state = (unsigned int)c16;
+ FrameMgrGetToken(fm, b); kev->same_screen = (Bool)b;
+ }
+ ret = True;
+ break;
+ default:
+ break;
+ }
+ /* free FrameMgr */
+ FrameMgrFree(fm);
+ return ret;
+}
+
+static void ForwardEventMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec forward_event_fr[];
+ xEvent wire_event;
+ IMForwardEventStruct *forward =
+ (IMForwardEventStruct*) &call_data->forwardevent;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (forward_event_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, forward->icid);
+ FrameMgrGetToken (fm, forward->sync_bit);
+ FrameMgrGetToken (fm, forward->serial_number);
+ p += sizeof (CARD16)*4;
+ memmove (&wire_event, p, sizeof (xEvent));
+
+ FrameMgrFree (fm);
+
+ if (WireEventToEvent (i18n_core,
+ &wire_event,
+ forward->serial_number,
+ &forward->event,
+ _Xi18nNeedSwap (i18n_core, connect_id)) == True)
+ {
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto(ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+ }
+ /*endif*/
+}
+
+static void ExtForwardKeyEventMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec ext_forward_keyevent_fr[];
+ CARD8 type, keycode;
+ CARD16 state;
+ CARD32 ev_time, window;
+ IMForwardEventStruct *forward =
+ (IMForwardEventStruct *) &call_data->forwardevent;
+ XEvent *ev = (XEvent *) &forward->event;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (ext_forward_keyevent_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, forward->icid);
+ FrameMgrGetToken (fm, forward->sync_bit);
+ FrameMgrGetToken (fm, forward->serial_number);
+ FrameMgrGetToken (fm, type);
+ FrameMgrGetToken (fm, keycode);
+ FrameMgrGetToken (fm, state);
+ FrameMgrGetToken (fm, ev_time);
+ FrameMgrGetToken (fm, window);
+
+ FrameMgrFree (fm);
+
+ if (type != KeyPress)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+
+ /* make a faked keypress event */
+ ev->type = (int)type;
+ ev->xany.send_event = True;
+ ev->xany.display = i18n_core->address.dpy;
+ ev->xany.serial = (unsigned long) forward->serial_number;
+ ((XKeyEvent *) ev)->keycode = (unsigned int) keycode;
+ ((XKeyEvent *) ev)->state = (unsigned int) state;
+ ((XKeyEvent *) ev)->time = (Time) ev_time;
+ ((XKeyEvent *) ev)->window = (Window) window;
+ ((XKeyEvent *) ev)->root = DefaultRootWindow (ev->xany.display);
+ ((XKeyEvent *) ev)->x = 0;
+ ((XKeyEvent *) ev)->y = 0;
+ ((XKeyEvent *) ev)->x_root = 0;
+ ((XKeyEvent *) ev)->y_root = 0;
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+}
+
+static void ExtMoveMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec ext_move_fr[];
+ IMMoveStruct *extmove =
+ (IMMoveStruct*) & call_data->extmove;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (ext_move_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, extmove->icid);
+ FrameMgrGetToken (fm, extmove->x);
+ FrameMgrGetToken (fm, extmove->y);
+
+ FrameMgrFree (fm);
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+}
+
+static void ExtensionMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ switch (call_data->any.minor_code)
+ {
+ case XIM_EXT_FORWARD_KEYEVENT:
+ ExtForwardKeyEventMessageProc (ims, call_data, p);
+ break;
+
+ case XIM_EXT_MOVE:
+ ExtMoveMessageProc (ims, call_data, p);
+ break;
+ }
+ /*endswitch*/
+}
+
+static void TriggerNotifyMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec trigger_notify_fr[], trigger_notify_reply_fr[];
+ register int total_size;
+ unsigned char *reply = NULL;
+ IMTriggerNotifyStruct *trigger =
+ (IMTriggerNotifyStruct *) &call_data->triggernotify;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+ CARD32 flag;
+
+ fm = FrameMgrInit (trigger_notify_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, trigger->icid);
+ FrameMgrGetToken (fm, trigger->flag);
+ FrameMgrGetToken (fm, trigger->key_index);
+ FrameMgrGetToken (fm, trigger->event_mask);
+ /*
+ In order to support Front End Method, this event_mask must be saved
+ per clients so that it should be restored by an XIM_EXT_SET_EVENT_MASK
+ call when preediting mode is reset to off.
+ */
+
+ flag = trigger->flag;
+
+ FrameMgrFree (fm);
+
+ fm = FrameMgrInit (trigger_notify_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, input_method_ID);
+ FrameMgrPutToken (fm, trigger->icid);
+
+ /* NOTE:
+ XIM_TRIGGER_NOTIFY_REPLY should be sent before XIM_SET_EVENT_MASK
+ in case of XIM_TRIGGER_NOTIFY(flag == ON), while it should be
+ sent after XIM_SET_EVENT_MASK in case of
+ XIM_TRIGGER_NOTIFY(flag == OFF).
+ */
+ if (flag == 0)
+ {
+ /* on key */
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_TRIGGER_NOTIFY_REPLY,
+ 0,
+ reply,
+ total_size);
+ IMPreeditStart (ims, (XPointer)call_data);
+ }
+ /*endif*/
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto(ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+
+ if (flag == 1)
+ {
+ /* off key */
+ IMPreeditEnd (ims, (XPointer) call_data);
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_TRIGGER_NOTIFY_REPLY,
+ 0,
+ reply,
+ total_size);
+ }
+ /*endif*/
+ FrameMgrFree (fm);
+ XFree (reply);
+}
+
+static INT16 ChooseEncoding (Xi18n i18n_core,
+ IMEncodingNegotiationStruct *enc_nego)
+{
+ Xi18nAddressRec *address = (Xi18nAddressRec *) & i18n_core->address;
+ XIMEncodings *p;
+ int i, j;
+ int enc_index=0;
+
+ p = (XIMEncodings *) &address->encoding_list;
+ for (i = 0; i < (int) p->count_encodings; i++)
+ {
+ for (j = 0; j < (int) enc_nego->encoding_number; j++)
+ {
+ if (strcmp (p->supported_encodings[i],
+ enc_nego->encoding[j].name) == 0)
+ {
+ enc_index = j;
+ break;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+ }
+ /*endfor*/
+
+ return (INT16) enc_index;
+#if 0
+ return (INT16) XIM_Default_Encoding_IDX;
+#endif
+}
+
+static void EncodingNegotiatonMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ FmStatus status;
+ CARD16 byte_length;
+ extern XimFrameRec encoding_negotiation_fr[];
+ extern XimFrameRec encoding_negotiation_reply_fr[];
+ register int i, total_size;
+ unsigned char *reply = NULL;
+ IMEncodingNegotiationStruct *enc_nego =
+ (IMEncodingNegotiationStruct *) &call_data->encodingnego;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (encoding_negotiation_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ FrameMgrGetToken (fm, input_method_ID);
+
+ /* get ENCODING STR field */
+ FrameMgrGetToken (fm, byte_length);
+ if (byte_length > 0)
+ {
+ enc_nego->encoding = (XIMStr *) malloc (sizeof (XIMStr)*10);
+ memset (enc_nego->encoding, 0, sizeof (XIMStr)*10);
+ i = 0;
+ while (FrameMgrIsIterLoopEnd (fm, &status) == False)
+ {
+ char *name;
+ int str_length;
+
+ FrameMgrGetToken (fm, str_length);
+ FrameMgrSetSize (fm, str_length);
+ enc_nego->encoding[i].length = str_length;
+ FrameMgrGetToken (fm, name);
+ enc_nego->encoding[i].name = malloc (str_length + 1);
+ strncpy (enc_nego->encoding[i].name, name, str_length);
+ enc_nego->encoding[i].name[str_length] = '\0';
+ i++;
+ }
+ /*endwhile*/
+ enc_nego->encoding_number = i;
+ }
+ /*endif*/
+ /* get ENCODING INFO field */
+ FrameMgrGetToken (fm, byte_length);
+ if (byte_length > 0)
+ {
+ enc_nego->encodinginfo = (XIMStr *) malloc (sizeof (XIMStr)*10);
+ memset (enc_nego->encoding, 0, sizeof (XIMStr)*10);
+ i = 0;
+ while (FrameMgrIsIterLoopEnd (fm, &status) == False)
+ {
+ char *name;
+ int str_length;
+
+ FrameMgrGetToken (fm, str_length);
+ FrameMgrSetSize (fm, str_length);
+ enc_nego->encodinginfo[i].length = str_length;
+ FrameMgrGetToken (fm, name);
+ enc_nego->encodinginfo[i].name = malloc (str_length + 1);
+ strncpy (enc_nego->encodinginfo[i].name, name, str_length);
+ enc_nego->encodinginfo[i].name[str_length] = '\0';
+ i++;
+ }
+ /*endwhile*/
+ enc_nego->encoding_info_number = i;
+ }
+ /*endif*/
+
+ enc_nego->enc_index = ChooseEncoding (i18n_core, enc_nego);
+ enc_nego->category = 0;
+
+#ifdef PROTOCOL_RICH
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto(ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+#endif /* PROTOCOL_RICH */
+
+ FrameMgrFree (fm);
+
+ fm = FrameMgrInit (encoding_negotiation_reply_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, input_method_ID);
+ FrameMgrPutToken (fm, enc_nego->category);
+ FrameMgrPutToken (fm, enc_nego->enc_index);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_ENCODING_NEGOTIATION_REPLY,
+ 0,
+ reply,
+ total_size);
+ XFree (reply);
+
+ /* free data for encoding list */
+ if (enc_nego->encoding)
+ {
+ for (i = 0; i < (int) enc_nego->encoding_number; i++)
+ XFree (enc_nego->encoding[i].name);
+ /*endfor*/
+ XFree (enc_nego->encoding);
+ }
+ /*endif*/
+ if (enc_nego->encodinginfo)
+ {
+ for (i = 0; i < (int) enc_nego->encoding_info_number; i++)
+ XFree (enc_nego->encodinginfo[i].name);
+ /*endfor*/
+ XFree (enc_nego->encodinginfo);
+ }
+ /*endif*/
+ FrameMgrFree (fm);
+}
+
+void PreeditStartReplyMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec preedit_start_reply_fr[];
+ IMPreeditCBStruct *preedit_CB =
+ (IMPreeditCBStruct *) &call_data->preedit_callback;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (preedit_start_reply_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, preedit_CB->icid);
+ FrameMgrGetToken (fm, preedit_CB->todo.return_value);
+
+ FrameMgrFree (fm);
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto (ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+}
+
+void PreeditCaretReplyMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec preedit_caret_reply_fr[];
+ IMPreeditCBStruct *preedit_CB =
+ (IMPreeditCBStruct *) &call_data->preedit_callback;
+ XIMPreeditCaretCallbackStruct *caret =
+ (XIMPreeditCaretCallbackStruct *) & preedit_CB->todo.caret;
+ CARD16 connect_id = call_data->any.connect_id;
+ CARD16 input_method_ID;
+
+ fm = FrameMgrInit (preedit_caret_reply_fr,
+ (char *) p,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+ /* get data */
+ FrameMgrGetToken (fm, input_method_ID);
+ FrameMgrGetToken (fm, preedit_CB->icid);
+ FrameMgrGetToken (fm, caret->position);
+
+ FrameMgrFree (fm);
+
+ if (i18n_core->address.improto)
+ {
+ if (!(i18n_core->address.improto(ims, call_data)))
+ return;
+ /*endif*/
+ }
+ /*endif*/
+}
+
+void StrConvReplyMessageProc (XIMS ims,
+ IMProtocol *call_data,
+ unsigned char *p)
+{
+ return;
+}
+
+static void AddQueue (Xi18nClient *client, unsigned char *p)
+{
+ XIMPending *new;
+ XIMPending *last;
+
+ if ((new = (XIMPending *) malloc (sizeof (XIMPending))) == NULL)
+ return;
+ /*endif*/
+ new->p = p;
+ new->next = (XIMPending *) NULL;
+ if (!client->pending)
+ {
+ client->pending = new;
+ }
+ else
+ {
+ for (last = client->pending; last->next; last = last->next)
+ ;
+ /*endfor*/
+ last->next = new;
+ }
+ /*endif*/
+ return;
+}
+
+static void ProcessQueue (XIMS ims, CARD16 connect_id)
+{
+ Xi18n i18n_core = ims->protocol;
+ Xi18nClient *client = (Xi18nClient *) _Xi18nFindClient (i18n_core,
+ connect_id);
+
+ while (client->sync == False && client->pending)
+ {
+ XimProtoHdr *hdr = (XimProtoHdr *) client->pending->p;
+ unsigned char *p1 = (unsigned char *) (hdr + 1);
+ IMProtocol call_data;
+
+ call_data.major_code = hdr->major_opcode;
+ call_data.any.minor_code = hdr->minor_opcode;
+ call_data.any.connect_id = connect_id;
+
+ switch (hdr->major_opcode)
+ {
+ case XIM_FORWARD_EVENT:
+ ForwardEventMessageProc(ims, &call_data, p1);
+ break;
+ }
+ /*endswitch*/
+ XFree (hdr);
+ {
+ XIMPending *old = client->pending;
+
+ client->pending = old->next;
+ XFree (old);
+ }
+ }
+ /*endwhile*/
+ return;
+}
+
+
+void _Xi18nMessageHandler (XIMS ims,
+ CARD16 connect_id,
+ unsigned char *p,
+ Bool *delete)
+{
+ XimProtoHdr *hdr = (XimProtoHdr *)p;
+ unsigned char *p1 = (unsigned char *)(hdr + 1);
+ IMProtocol call_data;
+ Xi18n i18n_core = ims->protocol;
+ Xi18nClient *client;
+
+ client = (Xi18nClient *) _Xi18nFindClient (i18n_core, connect_id);
+ if (hdr == (XimProtoHdr *) NULL)
+ return;
+ /*endif*/
+
+ memset (&call_data, 0, sizeof(IMProtocol));
+
+ call_data.major_code = hdr->major_opcode;
+ call_data.any.minor_code = hdr->minor_opcode;
+ call_data.any.connect_id = connect_id;
+
+ switch (call_data.major_code)
+ {
+ case XIM_CONNECT:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_CONNECT\n");
+#endif
+ ConnectMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_DISCONNECT:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_DISCONNECT\n");
+#endif
+ DisConnectMessageProc (ims, &call_data);
+ break;
+
+ case XIM_OPEN:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_OPEN\n");
+#endif
+ OpenMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_CLOSE:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_CLOSE\n");
+#endif
+ CloseMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_QUERY_EXTENSION:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_QUERY_EXTENSION\n");
+#endif
+ QueryExtensionMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_GET_IM_VALUES:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_GET_IM_VALUES\n");
+#endif
+ GetIMValuesMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_CREATE_IC:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_CREATE_IC\n");
+#endif
+ CreateICMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_SET_IC_VALUES:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_SET_IC_VALUES\n");
+#endif
+ SetICValuesMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_GET_IC_VALUES:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_GET_IC_VALUES\n");
+#endif
+ GetICValuesMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_SET_IC_FOCUS:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_SET_IC_FOCUS\n");
+#endif
+ SetICFocusMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_UNSET_IC_FOCUS:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_UNSET_IC_FOCUS\n");
+#endif
+ UnsetICFocusMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_DESTROY_IC:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_DESTROY_IC\n");
+#endif
+ DestroyICMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_RESET_IC:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_RESET_IC\n");
+#endif
+ ResetICMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_FORWARD_EVENT:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_FORWARD_EVENT\n");
+#endif
+ if (client->sync == True)
+ {
+ AddQueue (client, p);
+ *delete = False;
+ }
+ else
+ {
+ ForwardEventMessageProc (ims, &call_data, p1);
+ }
+ break;
+
+ case XIM_EXTENSION:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_EXTENSION\n");
+#endif
+ ExtensionMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_SYNC:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_SYNC\n");
+#endif
+ break;
+
+ case XIM_SYNC_REPLY:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_SYNC_REPLY\n");
+#endif
+ SyncReplyMessageProc (ims, &call_data, p1);
+ ProcessQueue (ims, connect_id);
+ break;
+
+ case XIM_TRIGGER_NOTIFY:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_TRIGGER_NOTIFY\n");
+#endif
+ TriggerNotifyMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_ENCODING_NEGOTIATION:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_ENCODING_NEGOTIATION\n");
+#endif
+ EncodingNegotiatonMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_PREEDIT_START_REPLY:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_PREEDIT_START_REPLY\n");
+#endif
+ PreeditStartReplyMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_PREEDIT_CARET_REPLY:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_PREEDIT_CARET_REPLY\n");
+#endif
+ PreeditCaretReplyMessageProc (ims, &call_data, p1);
+ break;
+
+ case XIM_STR_CONVERSION_REPLY:
+#ifdef XIM_DEBUG
+ DebugLog("-- XIM_STR_CONVERSION_REPLY\n");
+#endif
+ StrConvReplyMessageProc (ims, &call_data, p1);
+ break;
+ }
+ /*endswitch*/
+}
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <X11/Xlib.h>
+#include "IMdkit.h"
+#include "Xi18n.h"
+#include "FrameMgr.h"
+#include "XimFunc.h"
+
+Xi18nClient *_Xi18nFindClient (Xi18n, CARD16);
+
+int
+_Xi18nNeedSwap (Xi18n i18n_core, CARD16 connect_id)
+{
+ CARD8 im_byteOrder = i18n_core->address.im_byteOrder;
+ Xi18nClient *client = _Xi18nFindClient (i18n_core, connect_id);
+
+ return (client->byte_order != im_byteOrder);
+}
+
+Xi18nClient *_Xi18nNewClient(Xi18n i18n_core)
+{
+ static CARD16 connect_id = 0;
+ int new_connect_id;
+ Xi18nClient *client;
+
+ if (i18n_core->address.free_clients)
+ {
+ client = i18n_core->address.free_clients;
+ i18n_core->address.free_clients = client->next;
+ new_connect_id = client->connect_id;
+ }
+ else
+ {
+ client = (Xi18nClient *) malloc (sizeof (Xi18nClient));
+ new_connect_id = ++connect_id;
+ }
+ /*endif*/
+ memset (client, 0, sizeof (Xi18nClient));
+ client->connect_id = new_connect_id;
+ client->pending = (XIMPending *) NULL;
+ client->sync = False;
+ client->byte_order = '?'; /* initial value */
+ memset (&client->pending, 0, sizeof (XIMPending *));
+ client->next = i18n_core->address.clients;
+ i18n_core->address.clients = client;
+
+ return (Xi18nClient *) client;
+}
+
+Xi18nClient *_Xi18nFindClient (Xi18n i18n_core, CARD16 connect_id)
+{
+ Xi18nClient *client = i18n_core->address.clients;
+
+ while (client)
+ {
+ if (client->connect_id == connect_id)
+ return client;
+ /*endif*/
+ client = client->next;
+ }
+ /*endwhile*/
+ return NULL;
+}
+
+void _Xi18nDeleteClient (Xi18n i18n_core, CARD16 connect_id)
+{
+ Xi18nClient *target = _Xi18nFindClient (i18n_core, connect_id);
+ Xi18nClient *ccp;
+ Xi18nClient *ccp0;
+
+ for (ccp = i18n_core->address.clients, ccp0 = NULL;
+ ccp != NULL;
+ ccp0 = ccp, ccp = ccp->next)
+ {
+ if (ccp == target)
+ {
+ if (ccp0 == NULL)
+ i18n_core->address.clients = ccp->next;
+ else
+ ccp0->next = ccp->next;
+ /*endif*/
+ /* put it back to free list */
+ target->next = i18n_core->address.free_clients;
+ i18n_core->address.free_clients = target;
+ return;
+ }
+ /*endif*/
+ }
+ /*endfor*/
+}
+
+void _Xi18nSendMessage (XIMS ims,
+ CARD16 connect_id,
+ CARD8 major_opcode,
+ CARD8 minor_opcode,
+ unsigned char *data,
+ long length)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec packet_header_fr[];
+ unsigned char *reply_hdr = NULL;
+ int header_size;
+ unsigned char *reply = NULL;
+ unsigned char *replyp;
+ int reply_length;
+ long p_len = length/4;
+
+ fm = FrameMgrInit (packet_header_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ header_size = FrameMgrGetTotalSize (fm);
+ reply_hdr = (unsigned char *) malloc (header_size);
+ if (reply_hdr == NULL)
+ {
+ _Xi18nSendMessage (ims, connect_id, XIM_ERROR, 0, 0, 0);
+ return;
+ }
+ /*endif*/
+ FrameMgrSetBuffer (fm, reply_hdr);
+
+ /* put data */
+ FrameMgrPutToken (fm, major_opcode);
+ FrameMgrPutToken (fm, minor_opcode);
+ FrameMgrPutToken (fm, p_len);
+
+ reply_length = header_size + length;
+ reply = (unsigned char *) malloc (reply_length);
+ replyp = reply;
+ memmove (reply, reply_hdr, header_size);
+ replyp += header_size;
+ memmove (replyp, data, length);
+
+ i18n_core->methods.send (ims, connect_id, reply, reply_length);
+
+ XFree (reply);
+ XFree (reply_hdr);
+ FrameMgrFree (fm);
+}
+
+void _Xi18nSendTriggerKey (XIMS ims, CARD16 connect_id)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec register_triggerkeys_fr[];
+ XIMTriggerKey *on_keys = i18n_core->address.on_keys.keylist;
+ XIMTriggerKey *off_keys = i18n_core->address.off_keys.keylist;
+ int on_key_num = i18n_core->address.on_keys.count_keys;
+ int off_key_num = i18n_core->address.off_keys.count_keys;
+ unsigned char *reply = NULL;
+ register int i, total_size;
+ CARD16 im_id;
+
+ if (on_key_num == 0 && off_key_num == 0)
+ return;
+ /*endif*/
+
+ fm = FrameMgrInit (register_triggerkeys_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ /* set iteration count for on-keys list */
+ FrameMgrSetIterCount (fm, on_key_num);
+ /* set iteration count for off-keys list */
+ FrameMgrSetIterCount (fm, off_key_num);
+
+ /* get total_size */
+ total_size = FrameMgrGetTotalSize (fm);
+
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ return;
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ /* Right now XIM_OPEN_REPLY hasn't been sent to this new client, so
+ the input-method-id is still invalid, and should be set to zero...
+ Reter to $(XC)/lib/X11/imDefLkup.c:_XimRegisterTriggerKeysCallback
+ */
+ im_id = 0;
+ FrameMgrPutToken (fm, im_id); /* input-method-id */
+ for (i = 0; i < on_key_num; i++)
+ {
+ FrameMgrPutToken (fm, on_keys[i].keysym);
+ FrameMgrPutToken (fm, on_keys[i].modifier);
+ FrameMgrPutToken (fm, on_keys[i].modifier_mask);
+ }
+ /*endfor*/
+ for (i = 0; i < off_key_num; i++)
+ {
+ FrameMgrPutToken (fm, off_keys[i].keysym);
+ FrameMgrPutToken (fm, off_keys[i].modifier);
+ FrameMgrPutToken (fm, off_keys[i].modifier_mask);
+ }
+ /*endfor*/
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_REGISTER_TRIGGERKEYS,
+ 0,
+ reply,
+ total_size);
+ FrameMgrFree (fm);
+ XFree(reply);
+}
+
+void _Xi18nSetEventMask (XIMS ims,
+ CARD16 connect_id,
+ CARD16 im_id,
+ CARD16 ic_id,
+ CARD32 forward_mask,
+ CARD32 sync_mask)
+{
+ Xi18n i18n_core = ims->protocol;
+ FrameMgr fm;
+ extern XimFrameRec set_event_mask_fr[];
+ unsigned char *reply = NULL;
+ register int total_size;
+
+ fm = FrameMgrInit (set_event_mask_fr,
+ NULL,
+ _Xi18nNeedSwap (i18n_core, connect_id));
+
+ total_size = FrameMgrGetTotalSize (fm);
+ reply = (unsigned char *) malloc (total_size);
+ if (!reply)
+ return;
+ /*endif*/
+ memset (reply, 0, total_size);
+ FrameMgrSetBuffer (fm, reply);
+
+ FrameMgrPutToken (fm, im_id); /* input-method-id */
+ FrameMgrPutToken (fm, ic_id); /* input-context-id */
+ FrameMgrPutToken (fm, forward_mask);
+ FrameMgrPutToken (fm, sync_mask);
+
+ _Xi18nSendMessage (ims,
+ connect_id,
+ XIM_SET_EVENT_MASK,
+ 0,
+ reply,
+ total_size);
+
+ FrameMgrFree (fm);
+ XFree(reply);
+}
--- /dev/null
+/******************************************************************
+
+ Copyright 1994, 1995 by Sun Microsystems, Inc.
+ Copyright 1993, 1994 by Hewlett-Packard Company
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that the above copyright notice appear in all copies and
+that both that copyright notice and this permission notice appear
+in supporting documentation, and that the name of Sun Microsystems, Inc.
+and Hewlett-Packard not be used in advertising or publicity pertaining to
+distribution of the software without specific, written prior permission.
+Sun Microsystems, Inc. and Hewlett-Packard make no representations about
+the suitability of this software for any purpose. It is provided "as is"
+without express or implied warranty.
+
+SUN MICROSYSTEMS INC. AND HEWLETT-PACKARD COMPANY DISCLAIMS ALL
+WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+SUN MICROSYSTEMS, INC. AND HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY
+SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ Author: Hidetoshi Tajima(tajima@Eng.Sun.COM) Sun Microsystems, Inc.
+
+ This version tidied and debugged by Steve Underwood May 1999
+
+******************************************************************/
+
+#include <X11/Xlib.h>
+#include <X11/Xatom.h>
+#include "FrameMgr.h"
+#include "IMdkit.h"
+#include "Xi18n.h"
+#include "Xi18nX.h"
+#include "XimFunc.h"
+
+extern Xi18nClient *_Xi18nFindClient(Xi18n, CARD16);
+extern Xi18nClient *_Xi18nNewClient(Xi18n);
+extern void _Xi18nDeleteClient(Xi18n, CARD16);
+static Bool WaitXConnectMessage(Display*, Window,
+ XEvent*, XPointer);
+static Bool WaitXIMProtocol(Display*, Window, XEvent*, XPointer);
+
+static XClient *NewXClient (Xi18n i18n_core, Window new_client)
+{
+ Display *dpy = i18n_core->address.dpy;
+ Xi18nClient *client = _Xi18nNewClient (i18n_core);
+ XClient *x_client;
+
+ x_client = (XClient *) malloc (sizeof (XClient));
+ x_client->client_win = new_client;
+ x_client->accept_win = XCreateSimpleWindow (dpy,
+ DefaultRootWindow(dpy),
+ 0,
+ 0,
+ 1,
+ 1,
+ 1,
+ 0,
+ 0);
+ client->trans_rec = x_client;
+ return ((XClient *) x_client);
+}
+
+static unsigned char *ReadXIMMessage (XIMS ims,
+ XClientMessageEvent *ev,
+ int *connect_id)
+{
+ Xi18n i18n_core = ims->protocol;
+ Xi18nClient *client = i18n_core->address.clients;
+ XClient *x_client = NULL;
+ FrameMgr fm;
+ extern XimFrameRec packet_header_fr[];
+ unsigned char *p = NULL;
+ unsigned char *p1;
+
+ while (client != NULL) {
+ x_client = (XClient *) client->trans_rec;
+ if (x_client->accept_win == ev->window) {
+ *connect_id = client->connect_id;
+ break;
+ }
+ client = client->next;
+ }
+
+ if (ev->format == 8) {
+ /* ClientMessage only */
+ XimProtoHdr *hdr = (XimProtoHdr *) ev->data.b;
+ unsigned char *rec = (unsigned char *) (hdr + 1);
+ register int total_size;
+ CARD8 major_opcode;
+ CARD8 minor_opcode;
+ CARD16 length;
+ extern int _Xi18nNeedSwap (Xi18n, CARD16);
+
+ if (client->byte_order == '?')
+ {
+ if (hdr->major_opcode != XIM_CONNECT)
+ return (unsigned char *) NULL; /* can do nothing */
+ client->byte_order = (CARD8) rec[0];
+ }
+
+ fm = FrameMgrInit (packet_header_fr,
+ (char *) hdr,
+ _Xi18nNeedSwap (i18n_core, *connect_id));
+ total_size = FrameMgrGetTotalSize (fm);
+ /* get data */
+ FrameMgrGetToken (fm, major_opcode);
+ FrameMgrGetToken (fm, minor_opcode);
+ FrameMgrGetToken (fm, length);
+ FrameMgrFree (fm);
+
+ if ((p = (unsigned char *) malloc (total_size + length * 4)) == NULL)
+ return (unsigned char *) NULL;
+
+ p1 = p;
+ memmove (p1, &major_opcode, sizeof (CARD8));
+ p1 += sizeof (CARD8);
+ memmove (p1, &minor_opcode, sizeof (CARD8));
+ p1 += sizeof (CARD8);
+ memmove (p1, &length, sizeof (CARD16));
+ p1 += sizeof (CARD16);
+ memmove (p1, rec, length * 4);
+ }
+ else if (ev->format == 32) {
+ /* ClientMessage and WindowProperty */
+ unsigned long length = (unsigned long) ev->data.l[0];
+ Atom atom = (Atom) ev->data.l[1];
+ int return_code;
+ Atom actual_type_ret;
+ int actual_format_ret;
+ unsigned long bytes_after_ret;
+ unsigned char *prop;
+ unsigned long nitems;
+
+ return_code = XGetWindowProperty (i18n_core->address.dpy,
+ x_client->accept_win,
+ atom,
+ 0L,
+ length,
+ True,
+ AnyPropertyType,
+ &actual_type_ret,
+ &actual_format_ret,
+ &nitems,
+ &bytes_after_ret,
+ &prop);
+ if (return_code != Success || actual_format_ret == 0 || nitems == 0) {
+ if (return_code == Success)
+ XFree (prop);
+ return (unsigned char *) NULL;
+ }
+ if (length != nitems)
+ length = nitems;
+ if (actual_format_ret == 16)
+ length *= 2;
+ else if (actual_format_ret == 32)
+ length *= 4;
+
+ /* if hit, it might be an error */
+ if ((p = (unsigned char *) malloc (length)) == NULL)
+ return (unsigned char *) NULL;
+
+ memmove (p, prop, length);
+ XFree (prop);
+ }
+ return (unsigned char *) p;
+}
+
+static void ReadXConnectMessage (XIMS ims, XClientMessageEvent *ev)
+{
+ Xi18n i18n_core = ims->protocol;
+ XSpecRec *spec = (XSpecRec *) i18n_core->address.connect_addr;
+ XEvent event;
+ Display *dpy = i18n_core->address.dpy;
+ Window new_client = ev->data.l[0];
+ CARD32 major_version = ev->data.l[1];
+ CARD32 minor_version = ev->data.l[2];
+ XClient *x_client = NewXClient (i18n_core, new_client);
+
+ if (ev->window != i18n_core->address.im_window)
+ return; /* incorrect connection request */
+ /*endif*/
+ if (major_version != 0 || minor_version != 0)
+ {
+ major_version =
+ minor_version = 0;
+ /* Only supporting only-CM & Property-with-CM method */
+ }
+ /*endif*/
+ _XRegisterFilterByType (dpy,
+ x_client->accept_win,
+ ClientMessage,
+ ClientMessage,
+ WaitXIMProtocol,
+ (XPointer)ims);
+ event.xclient.type = ClientMessage;
+ event.xclient.display = dpy;
+ event.xclient.window = new_client;
+ event.xclient.message_type = spec->connect_request;
+ event.xclient.format = 32;
+ event.xclient.data.l[0] = x_client->accept_win;
+ event.xclient.data.l[1] = major_version;
+ event.xclient.data.l[2] = minor_version;
+ event.xclient.data.l[3] = XCM_DATA_LIMIT;
+
+ XSendEvent (dpy,
+ new_client,
+ False,
+ NoEventMask,
+ &event);
+ XFlush (dpy);
+}
+
+static Bool Xi18nXBegin (XIMS ims)
+{
+ Xi18n i18n_core = ims->protocol;
+ Display *dpy = i18n_core->address.dpy;
+ XSpecRec *spec = (XSpecRec *) i18n_core->address.connect_addr;
+
+ spec->xim_request = XInternAtom (i18n_core->address.dpy,
+ _XIM_PROTOCOL,
+ False);
+ spec->connect_request = XInternAtom (i18n_core->address.dpy,
+ _XIM_XCONNECT,
+ False);
+
+ _XRegisterFilterByType (dpy,
+ i18n_core->address.im_window,
+ ClientMessage,
+ ClientMessage,
+ WaitXConnectMessage,
+ (XPointer)ims);
+ return True;
+}
+
+static Bool Xi18nXEnd(XIMS ims)
+{
+ Xi18n i18n_core = ims->protocol;
+ Display *dpy = i18n_core->address.dpy;
+
+ _XUnregisterFilter (dpy,
+ i18n_core->address.im_window,
+ WaitXConnectMessage,
+ (XPointer)ims);
+ return True;
+}
+
+static char *MakeNewAtom (CARD16 connect_id, char *atomName)
+{
+ static int sequence = 0;
+
+ sprintf (atomName,
+ "_server%d_%d",
+ connect_id,
+ ((sequence > 20) ? (sequence = 0) : sequence++));
+ return atomName;
+}
+
+static Bool Xi18nXSend (XIMS ims,
+ CARD16 connect_id,
+ unsigned char *reply,
+ long length)
+{
+ Xi18n i18n_core = ims->protocol;
+ Xi18nClient *client = _Xi18nFindClient (i18n_core, connect_id);
+ XSpecRec *spec = (XSpecRec *) i18n_core->address.connect_addr;
+ XClient *x_client = (XClient *) client->trans_rec;
+ XEvent event;
+
+ event.type = ClientMessage;
+ event.xclient.window = x_client->client_win;
+ event.xclient.message_type = spec->xim_request;
+
+ if (length > XCM_DATA_LIMIT)
+ {
+ Atom atom;
+ char atomName[16];
+ Atom actual_type_ret;
+ int actual_format_ret;
+ int return_code;
+ unsigned long nitems_ret;
+ unsigned long bytes_after_ret;
+ unsigned char *win_data;
+
+ event.xclient.format = 32;
+ atom = XInternAtom (i18n_core->address.dpy,
+ MakeNewAtom (connect_id, atomName),
+ False);
+ return_code = XGetWindowProperty (i18n_core->address.dpy,
+ x_client->client_win,
+ atom,
+ 0L,
+ 10000L,
+ False,
+ XA_STRING,
+ &actual_type_ret,
+ &actual_format_ret,
+ &nitems_ret,
+ &bytes_after_ret,
+ &win_data);
+ if (return_code != Success)
+ return False;
+ /*endif*/
+ if (win_data)
+ XFree ((char *) win_data);
+ /*endif*/
+ XChangeProperty (i18n_core->address.dpy,
+ x_client->client_win,
+ atom,
+ XA_STRING,
+ 8,
+ PropModeAppend,
+ (unsigned char *) reply,
+ length);
+ event.xclient.data.l[0] = length;
+ event.xclient.data.l[1] = atom;
+ }
+ else
+ {
+ unsigned char buffer[XCM_DATA_LIMIT];
+ int i;
+
+ event.xclient.format = 8;
+
+ /* Clear unused field with NULL */
+ memmove(buffer, reply, length);
+ for (i = length; i < XCM_DATA_LIMIT; i++)
+ buffer[i] = (char) 0;
+ /*endfor*/
+ length = XCM_DATA_LIMIT;
+ memmove (event.xclient.data.b, buffer, length);
+ }
+ XSendEvent (i18n_core->address.dpy,
+ x_client->client_win,
+ False,
+ NoEventMask,
+ &event);
+ XFlush (i18n_core->address.dpy);
+ return True;
+}
+
+static Bool CheckCMEvent (Display *display, XEvent *event, XPointer xi18n_core)
+{
+ Xi18n i18n_core = (Xi18n) ((void *) xi18n_core);
+ XSpecRec *spec = (XSpecRec *) i18n_core->address.connect_addr;
+
+ if ((event->type == ClientMessage)
+ &&
+ (event->xclient.message_type == spec->xim_request))
+ {
+ return True;
+ }
+ /*endif*/
+ return False;
+}
+
+static Bool Xi18nXWait (XIMS ims,
+ CARD16 connect_id,
+ CARD8 major_opcode,
+ CARD8 minor_opcode)
+{
+ Xi18n i18n_core = ims->protocol;
+ XEvent event;
+ Xi18nClient *client = _Xi18nFindClient (i18n_core, connect_id);
+ XClient *x_client = (XClient *) client->trans_rec;
+
+ for (;;)
+ {
+ unsigned char *packet;
+ XimProtoHdr *hdr;
+ int connect_id_ret;
+
+ XIfEvent (i18n_core->address.dpy,
+ &event,
+ CheckCMEvent,
+ (XPointer) i18n_core);
+ if (event.xclient.window == x_client->accept_win)
+ {
+ if ((packet = ReadXIMMessage (ims,
+ (XClientMessageEvent *) & event,
+ &connect_id_ret))
+ == (unsigned char*) NULL)
+ {
+ return False;
+ }
+ /*endif*/
+ hdr = (XimProtoHdr *)packet;
+
+ if ((hdr->major_opcode == major_opcode)
+ &&
+ (hdr->minor_opcode == minor_opcode))
+ {
+ return True;
+ }
+ else if (hdr->major_opcode == XIM_ERROR)
+ {
+ return False;
+ }
+ /*endif*/
+ }
+ /*endif*/
+ }
+ /*endfor*/
+}
+
+static Bool Xi18nXDisconnect (XIMS ims, CARD16 connect_id)
+{
+ Xi18n i18n_core = ims->protocol;
+ Display *dpy = i18n_core->address.dpy;
+ Xi18nClient *client = _Xi18nFindClient (i18n_core, connect_id);
+ XClient *x_client = (XClient *) client->trans_rec;
+
+ XDestroyWindow (dpy, x_client->accept_win);
+ _XUnregisterFilter (dpy,
+ x_client->accept_win,
+ WaitXIMProtocol,
+ (XPointer)ims);
+ XFree (x_client);
+ _Xi18nDeleteClient (i18n_core, connect_id);
+ return True;
+}
+
+Bool _Xi18nCheckXAddress (Xi18n i18n_core,
+ TransportSW *transSW,
+ char *address)
+{
+ XSpecRec *spec;
+
+ if (!(spec = (XSpecRec *) malloc (sizeof (XSpecRec))))
+ return False;
+ /*endif*/
+
+ i18n_core->address.connect_addr = (XSpecRec *) spec;
+ i18n_core->methods.begin = Xi18nXBegin;
+ i18n_core->methods.end = Xi18nXEnd;
+ i18n_core->methods.send = Xi18nXSend;
+ i18n_core->methods.wait = Xi18nXWait;
+ i18n_core->methods.disconnect = Xi18nXDisconnect;
+ return True;
+}
+
+static Bool WaitXConnectMessage (Display *dpy,
+ Window win,
+ XEvent *ev,
+ XPointer client_data)
+{
+ XIMS ims = (XIMS)client_data;
+ Xi18n i18n_core = ims->protocol;
+ XSpecRec *spec = (XSpecRec *) i18n_core->address.connect_addr;
+
+ if (((XClientMessageEvent *) ev)->message_type
+ == spec->connect_request)
+ {
+ ReadXConnectMessage (ims, (XClientMessageEvent *) ev);
+ return True;
+ }
+ /*endif*/
+ return False;
+}
+
+static Bool WaitXIMProtocol (Display *dpy,
+ Window win,
+ XEvent *ev,
+ XPointer client_data)
+{
+ extern void _Xi18nMessageHandler (XIMS, CARD16, unsigned char *, Bool *);
+ XIMS ims = (XIMS) client_data;
+ Xi18n i18n_core = ims->protocol;
+ XSpecRec *spec = (XSpecRec *) i18n_core->address.connect_addr;
+ Bool delete = True;
+ unsigned char *packet;
+ int connect_id;
+
+ if (((XClientMessageEvent *) ev)->message_type
+ == spec->xim_request)
+ {
+ if ((packet = ReadXIMMessage (ims,
+ (XClientMessageEvent *) ev,
+ &connect_id))
+ == (unsigned char *) NULL)
+ {
+ return False;
+ }
+ /*endif*/
+ _Xi18nMessageHandler (ims, connect_id, packet, &delete);
+ if (delete == True)
+ XFree (packet);
+ /*endif*/
+ return True;
+ }
+ /*endif*/
+ return False;
+}
/*
* Smart Common Input Method
- *
+ *
* Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
*
*
}
/**
- * To reduce the number of the servers, we merge the function of
+ * To reduce the number of the servers, we merge the function of
* HelperManager process into the SocketFrontEnd.
*/
void SocketFrontEnd::load_helper_modules (const std::vector<String> &load_engine_list)
{
SCIM_DEBUG_MAIN (1) << "load_helper_modules ()\n";
-
+
size_t i;
__load_engine_list.clear ();
if (pid < 0) return;
if (pid == 0) {
+ if (m_socket_server.is_running ())
+ m_socket_server.shutdown ();
+
const char *argv [] = { SCIM_HELPER_LAUNCHER_PROGRAM,
"--daemon",
"--config", const_cast<char*> (config.c_str ()),
socket_lookup_table_page_up (id);
else if (cmd == SCIM_TRANS_CMD_LOOKUP_TABLE_PAGE_DOWN)
socket_lookup_table_page_down (id);
+ else if (cmd == ISM_TRANS_CMD_SET_PREDICTION_ALLOW)
+ socket_set_prediction_allow (id);
+ else if (cmd == ISM_TRANS_CMD_SET_LAYOUT)
+ socket_set_layout (id);
else if (cmd == ISM_TRANS_CMD_RESET_ISE_OPTION)
socket_reset_option (id);
else if (cmd == SCIM_TRANS_CMD_RESET)
m_current_socket_client = -1;
m_current_socket_client_key = 0;
return;
- }else if(cmd == SCIM_TRANS_CMD_HELPER_MANAGER_GET_HELPER_LIST) {
+ } else if (cmd == SCIM_TRANS_CMD_HELPER_MANAGER_GET_HELPER_LIST) {
SCIM_DEBUG_FRONTEND (1) << "receive cmd SCIM_TRANS_CMD_HELPER_MANAGER_GET_HELPER_LIST\n";
get_helper_list (client);
} else if (cmd == SCIM_TRANS_CMD_HELPER_MANAGER_RUN_HELPER) {
uint32 key;
String type = scim_socket_accept_connection (key,
- String ("SocketFrontEnd,HelperLauncher"),
+ String ("SocketFrontEnd,HelperLauncher"),
String ("SocketIMEngine,SocketConfig,HelperManager"),
client,
m_socket_timeout);
if (type.length ()) {
ClientInfo info;
info.key = key;
- info.type = ((type == "SocketIMEngine") ? IMENGINE_CLIENT
+ info.type = ((type == "SocketIMEngine") ? IMENGINE_CLIENT
: ((type == "SocketConfig") ? CONFIG_CLIENT : HELPER_MANAGER_CLIENT));
SCIM_DEBUG_MAIN (2) << " Add client to repository. Type=" << type << " key=" << key << "\n";
}
// Client did not pass the registration process, close it.
- SCIM_DEBUG_FRONTEND (2) << " Failed to create new connection.\n";
+ SCIM_DEBUG_FRONTEND (2) << " Failed to create new connection.\n";
server->close_connection (client);
return false;
}
m_current_instance = (int) siid;
- move_preedit_caret ((int) siid, caret);
+ move_preedit_caret ((int) siid, caret);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- select_aux ((int) siid, item);
+ select_aux ((int) siid, item);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- select_candidate ((int) siid, item);
+ select_candidate ((int) siid, item);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- update_lookup_table_page_size ((int) siid, size);
+ update_lookup_table_page_size ((int) siid, size);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- lookup_table_page_up ((int) siid);
+ lookup_table_page_up ((int) siid);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- lookup_table_page_down ((int) siid);
+ lookup_table_page_down ((int) siid);
+ m_send_trans.put_command (SCIM_TRANS_CMD_OK);
+
+ m_current_instance = -1;
+ }
+}
+
+void
+SocketFrontEnd::socket_set_prediction_allow (int /*client_id*/)
+{
+ uint32 siid;
+ uint32 allow;
+
+ SCIM_DEBUG_FRONTEND (2) << __func__ << "\n";
+
+ if (m_receive_trans.get_data (siid) &&
+ m_receive_trans.get_data (allow)) {
+
+ SCIM_DEBUG_FRONTEND (3) << " SI (" << siid << ").\n";
+
+ m_current_instance = (int) siid;
+
+ set_prediction_allow ((int) siid, (bool) allow);
+ m_send_trans.put_command (SCIM_TRANS_CMD_OK);
+
+ m_current_instance = -1;
+ }
+}
+
+void
+SocketFrontEnd::socket_set_layout (int /*client_id*/)
+{
+ uint32 siid;
+ uint32 layout;
+
+ SCIM_DEBUG_FRONTEND (2) << __func__ << "\n";
+
+ if (m_receive_trans.get_data (siid) &&
+ m_receive_trans.get_data (layout)) {
+
+ SCIM_DEBUG_FRONTEND (3) << " SI (" << siid << ").\n";
+
+ m_current_instance = (int) siid;
+
+ set_layout ((int) siid, layout);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- reset_option ((int) siid);
+ reset_option ((int) siid);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- reset ((int) siid);
+ reset ((int) siid);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- focus_in ((int) siid);
+ focus_in ((int) siid);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- focus_out ((int) siid);
+ focus_out ((int) siid);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- trigger_property ((int) siid, property);
+ trigger_property ((int) siid, property);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- process_helper_event ((int) siid, helper_uuid, trans);
+ process_helper_event ((int) siid, helper_uuid, trans);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
m_current_instance = -1;
m_current_instance = (int) siid;
- update_client_capabilities ((int) siid, cap);
+ update_client_capabilities ((int) siid, cap);
m_send_trans.put_command (SCIM_TRANS_CMD_OK);
/* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable. */
-/*
+/*
* Smart Common Input Method
- *
+ *
* Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
*
*
void socket_update_lookup_table_page_size (int client_id);
void socket_lookup_table_page_up (int client_id);
void socket_lookup_table_page_down (int client_id);
+ void socket_set_prediction_allow (int client_id);
+ void socket_set_layout (int client_id);
void socket_reset_option (int client_id);
void socket_reset (int client_id);
void socket_focus_in (int client_id);
--- /dev/null
+/* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable. */
+
+/** @file scim_x11_frontend.cpp
+ * implementation of class X11FrontEnd.
+ */
+
+/*
+ * Smart Common Input Method
+ *
+ * Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
+ *
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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 Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+ * Boston, MA 02111-1307 USA
+ *
+ * $Id: scim_x11_frontend.cpp,v 1.179.2.6 2007/06/16 06:23:38 suzhe Exp $
+ *
+ */
+
+#define Uses_SCIM_CONFIG_PATH
+#define Uses_SCIM_FRONTEND
+#define Uses_SCIM_ICONV
+#define Uses_SCIM_SOCKET
+#define Uses_SCIM_TRANSACTION
+#define Uses_SCIM_HOTKEY
+#define Uses_SCIM_PANEL_CLIENT
+#define Uses_C_LOCALE
+#define Uses_C_STDIO
+#define Uses_C_STDLIB
+
+#include <sys/types.h>
+#include <sys/wait.h>
+#include <unistd.h>
+#include <errno.h>
+#include <X11/Xproto.h>
+#include <X11/Xlib.h>
+#include <X11/keysym.h>
+#include <X11/Xutil.h>
+#include "imdkit/IMdkit.h"
+#include "imdkit/Xi18n.h"
+
+#include "scim_private.h"
+#include "scim.h"
+
+#include "scim_x11_ic.h"
+#include "scim_x11_frontend.h"
+#include "scim_x11_utils.h"
+
+#define scim_module_init x11_LTX_scim_module_init
+#define scim_module_exit x11_LTX_scim_module_exit
+#define scim_frontend_module_init x11_LTX_scim_frontend_module_init
+#define scim_frontend_module_run x11_LTX_scim_frontend_module_run
+
+#define SCIM_CONFIG_FRONTEND_X11_BROKEN_WCHAR "/FrontEnd/X11/BrokenWchar"
+#define SCIM_CONFIG_FRONTEND_X11_DYNAMIC "/FrontEnd/X11/Dynamic"
+#define SCIM_CONFIG_FRONTEND_X11_SERVER_NAME "/FrontEnd/X11/ServerName"
+#define SCIM_CONFIG_FRONTEND_X11_ONTHESPOT "/FrontEnd/X11/OnTheSpot"
+
+#define SCIM_KEYBOARD_ICON_FILE (SCIM_ICONDIR "/keyboard.png")
+
+using namespace scim;
+
+//Local static data
+static Pointer <X11FrontEnd> _scim_frontend (0);
+
+//Module Interface
+extern "C" {
+ void scim_module_init (void)
+ {
+ SCIM_DEBUG_FRONTEND(1) << "Initializing X11 FrontEnd module...\n";
+ }
+
+ void scim_module_exit (void)
+ {
+ SCIM_DEBUG_FRONTEND(1) << "Exiting X11 FrontEnd module...\n";
+ _scim_frontend.reset ();
+ }
+
+ void scim_frontend_module_init (const BackEndPointer &backend,
+ const ConfigPointer &config,
+ int argc,
+ char **argv)
+ {
+ if (config.null () || backend.null ())
+ throw FrontEndError (String ("X11 FrontEnd couldn't run without Config and BackEnd.\n"));
+
+ if (_scim_frontend.null ()) {
+ SCIM_DEBUG_FRONTEND(1) << "Initializing X11 FrontEnd module (more)...\n";
+ _scim_frontend = new X11FrontEnd (backend, config);
+ _scim_frontend->init (argc, argv);
+ }
+ }
+
+ void scim_frontend_module_run (void)
+ {
+ if (!_scim_frontend.null ()) {
+ SCIM_DEBUG_FRONTEND(1) << "Starting X11 FrontEnd module...\n";
+ _scim_frontend->run ();
+ }
+ }
+}
+
+X11FrontEnd::X11FrontEnd (const BackEndPointer &backend,
+ const ConfigPointer &config,
+ const String& server_name)
+ : FrontEndBase (backend),
+ m_xims (0),
+ m_display (0),
+ m_xims_window (0),
+ m_server_name (server_name),
+ m_focus_ic (0),
+ m_xims_dynamic (true),
+ m_wchar_ucs4_equal (scim_if_wchar_ucs4_equal ()),
+ m_broken_wchar (false),
+ m_shared_input_method (false),
+ m_keyboard_layout (SCIM_KEYBOARD_Default),
+ m_valid_key_mask (SCIM_KEY_AllMasks),
+ m_should_exit (false),
+ m_iconv (String ()),
+ m_config (config),
+ m_old_x_error_handler (0)
+{
+ if (!_scim_frontend.null () && _scim_frontend != this) {
+ throw FrontEndError (
+ String ("X11 -- only one frontend can be created!"));
+ }
+
+ if (!m_server_name.length ())
+ m_server_name = String ("SCIM");
+
+ // Attach Panel Client signal.
+ m_panel_client.signal_connect_reload_config (slot (this, &X11FrontEnd::panel_slot_reload_config));
+ m_panel_client.signal_connect_exit (slot (this, &X11FrontEnd::panel_slot_exit));
+ m_panel_client.signal_connect_update_lookup_table_page_size (slot (this, &X11FrontEnd::panel_slot_update_lookup_table_page_size));
+ m_panel_client.signal_connect_lookup_table_page_up (slot (this, &X11FrontEnd::panel_slot_lookup_table_page_up));
+ m_panel_client.signal_connect_lookup_table_page_down (slot (this, &X11FrontEnd::panel_slot_lookup_table_page_down));
+ m_panel_client.signal_connect_trigger_property (slot (this, &X11FrontEnd::panel_slot_trigger_property));
+ m_panel_client.signal_connect_process_helper_event (slot (this, &X11FrontEnd::panel_slot_process_helper_event));
+ m_panel_client.signal_connect_move_preedit_caret (slot (this, &X11FrontEnd::panel_slot_move_preedit_caret));
+ m_panel_client.signal_connect_select_candidate (slot (this, &X11FrontEnd::panel_slot_select_candidate));
+ m_panel_client.signal_connect_process_key_event (slot (this, &X11FrontEnd::panel_slot_process_key_event));
+ m_panel_client.signal_connect_commit_string (slot (this, &X11FrontEnd::panel_slot_commit_string));
+ m_panel_client.signal_connect_forward_key_event (slot (this, &X11FrontEnd::panel_slot_forward_key_event));
+ m_panel_client.signal_connect_request_help (slot (this, &X11FrontEnd::panel_slot_request_help));
+ m_panel_client.signal_connect_request_factory_menu (slot (this, &X11FrontEnd::panel_slot_request_factory_menu));
+ m_panel_client.signal_connect_change_factory (slot (this, &X11FrontEnd::panel_slot_change_factory));
+
+ m_panel_client.signal_connect_select_aux (slot (this, &X11FrontEnd::panel_slot_select_aux));
+ m_panel_client.signal_connect_show_preedit_string (slot (this, &X11FrontEnd::panel_slot_show_preedit_string));
+ m_panel_client.signal_connect_hide_preedit_string (slot (this, &X11FrontEnd::panel_slot_hide_preedit_string));
+ m_panel_client.signal_connect_update_preedit_string (slot (this, &X11FrontEnd::panel_slot_update_preedit_string));
+}
+
+X11FrontEnd::~X11FrontEnd ()
+{
+ if (m_xims) {
+ if (validate_ic (m_focus_ic)) {
+ m_panel_client.prepare (m_focus_ic->icid);
+ focus_out (m_focus_ic->siid);
+ m_panel_client.turn_off (m_focus_ic->icid);
+ m_panel_client.send ();
+ ims_sync_ic (m_focus_ic);
+ }
+
+ XSync(m_display, False);
+ IMCloseIM (m_xims);
+ }
+
+ if (m_display && m_xims_window) {
+ XDestroyWindow (m_display, m_xims_window);
+ XCloseDisplay (m_display);
+ }
+
+ m_panel_client.close_connection ();
+}
+
+void
+X11FrontEnd::show_preedit_string (int siid)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Show preedit string, siid=" << siid << "\n";
+
+ if (is_inputing_ic (siid)) {
+ if (ims_is_preedit_callback_mode (m_focus_ic))
+ ims_preedit_callback_start (m_focus_ic);
+ else
+ m_panel_client.show_preedit_string (m_focus_ic->icid);
+ }
+}
+
+void
+X11FrontEnd::show_aux_string (int siid)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Show aux string, siid=" << siid << "\n";
+
+ if (is_inputing_ic (siid))
+ m_panel_client.show_aux_string (m_focus_ic->icid);
+}
+
+void
+X11FrontEnd::show_lookup_table (int siid)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Show lookup table, siid=" << siid << "\n";
+
+ if (is_inputing_ic (siid))
+ m_panel_client.show_lookup_table (m_focus_ic->icid);
+}
+
+void
+X11FrontEnd::hide_preedit_string (int siid)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Hide preedit string, siid=" << siid << "\n";
+
+ if (is_focused_ic (siid)) {
+ if (ims_is_preedit_callback_mode (m_focus_ic))
+ ims_preedit_callback_done (m_focus_ic);
+ else
+ m_panel_client.hide_preedit_string (m_focus_ic->icid);
+ }
+}
+
+void
+X11FrontEnd::hide_aux_string (int siid)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Hide aux string, siid=" << siid << "\n";
+
+ if (is_focused_ic (siid))
+ m_panel_client.hide_aux_string (m_focus_ic->icid);
+}
+
+void
+X11FrontEnd::hide_lookup_table (int siid)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Hide lookup table, siid=" << siid << "\n";
+
+ if (is_focused_ic (siid))
+ m_panel_client.hide_lookup_table (m_focus_ic->icid);
+}
+
+void
+X11FrontEnd::update_preedit_caret (int siid, int caret)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Update preedit caret, siid=" << siid << " caret=" << caret << "\n";
+
+ if (is_inputing_ic (siid)) {
+ if (ims_is_preedit_callback_mode (m_focus_ic))
+ ims_preedit_callback_caret (m_focus_ic, caret);
+ else
+ m_panel_client.update_preedit_caret (m_focus_ic->icid, caret);
+ }
+}
+
+void
+X11FrontEnd::update_preedit_string (int siid, const WideString & str, const AttributeList & attrs)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Update preedit string, siid=" << siid << "\n";
+
+ if (is_inputing_ic (siid)) {
+ if (ims_is_preedit_callback_mode (m_focus_ic))
+ ims_preedit_callback_draw (m_focus_ic, str, attrs);
+ else
+ m_panel_client.update_preedit_string (m_focus_ic->icid, str, attrs);
+ }
+}
+
+void
+X11FrontEnd::update_aux_string (int siid, const WideString & str, const AttributeList & attrs)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Update aux string, siid=" << siid << "\n";
+
+ if (is_inputing_ic (siid))
+ m_panel_client.update_aux_string (m_focus_ic->icid, str, attrs);
+}
+
+void
+X11FrontEnd::update_lookup_table (int siid, const LookupTable & table)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Update lookup table, siid=" << siid << "\n";
+
+ if (is_inputing_ic (siid))
+ m_panel_client.update_lookup_table (m_focus_ic->icid, table);
+}
+
+void
+X11FrontEnd::commit_string (int siid, const WideString & str)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Commit string, siid=" << siid << "\n";
+
+ if (is_focused_ic (siid))
+ ims_commit_string (m_focus_ic, str);
+}
+
+void
+X11FrontEnd::forward_key_event (int siid, const KeyEvent & key)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Forward keyevent, siid=" << siid << "\n";
+
+ if (is_focused_ic (siid))
+ ims_forward_key_event (m_focus_ic, key);
+}
+
+void
+X11FrontEnd::register_properties (int siid, const PropertyList &properties)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Register properties, siid=" << siid << "\n";
+
+ if (is_inputing_ic (siid))
+ m_panel_client.register_properties (m_focus_ic->icid, properties);
+}
+
+void
+X11FrontEnd::update_property (int siid, const Property &property)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Update property, siid=" << siid << "\n";
+
+ if (is_inputing_ic (siid))
+ m_panel_client.update_property (m_focus_ic->icid, property);
+}
+
+void
+X11FrontEnd::beep (int siid)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Beep, siid=" << siid << "\n";
+
+ if (is_inputing_ic (siid))
+ XBell (m_display, 0);
+}
+
+void
+X11FrontEnd::start_helper (int siid, const String &helper_uuid)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Start helper, siid=" << siid << " Helper=" << helper_uuid << "\n";
+
+ X11IC *ic = m_ic_manager.find_ic_by_siid (siid);
+
+ if (validate_ic (ic))
+ m_panel_client.start_helper (ic->icid, helper_uuid);
+}
+
+void
+X11FrontEnd::stop_helper (int siid, const String &helper_uuid)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Stop helper, siid=" << siid << " Helper=" << helper_uuid << "\n";
+
+ X11IC *ic = m_ic_manager.find_ic_by_siid (siid);
+
+ if (validate_ic (ic))
+ m_panel_client.stop_helper (ic->icid, helper_uuid);
+}
+
+void
+X11FrontEnd::send_helper_event (int siid, const String &helper_uuid, const Transaction &trans)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Send helper event, siid=" << siid << " Helper=" << helper_uuid << "\n";
+
+ X11IC *ic = m_ic_manager.find_ic_by_siid (siid);
+
+ if (validate_ic (ic))
+ m_panel_client.send_helper_event (ic->icid, helper_uuid, trans);
+}
+
+bool
+X11FrontEnd::get_surrounding_text (int siid, WideString &text, int &cursor, int maxlen_before, int maxlen_after)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Get surrounding text, siid=" << siid << "\n";
+
+ text.clear ();
+ cursor = 0;
+
+ if (is_inputing_ic (siid)) {
+// return ims_string_conversion_callback_retrieval (m_focus_ic, text, cursor, maxlen_before, maxlen_after);
+ return false;
+ }
+
+ return false;
+}
+
+bool
+X11FrontEnd::delete_surrounding_text (int siid, int offset, int len)
+{
+ SCIM_DEBUG_FRONTEND(2) << " Delete surrounding text, siid=" << siid << " offset = " << offset << " len = " << len << "\n";
+
+ if (is_inputing_ic (siid)) {
+// return ims_string_conversion_callback_substitution (m_focus_ic, offset, len);
+ return false;
+ }
+
+ return false;
+}
+
+void
+X11FrontEnd::init (int argc, char **argv)
+{
+ String str;
+
+ SCIM_DEBUG_FRONTEND (1) << "X11 -- Loading configuration.\n";
+
+ //Read settings.
+ reload_config_callback (m_config);
+
+ m_server_name =
+ m_config->read (String (SCIM_CONFIG_FRONTEND_X11_SERVER_NAME),
+ m_server_name);
+
+ m_xims_dynamic =
+ m_config->read (String (SCIM_CONFIG_FRONTEND_X11_DYNAMIC),
+ true);
+
+ m_config->signal_connect_reload (slot (this, &X11FrontEnd::reload_config_callback));
+
+ m_display_name = init_ims ();
+
+ SCIM_DEBUG_FRONTEND (1) << "X11 -- Connecting to panel daemon.\n";
+
+ if (m_panel_client.open_connection (m_config->get_name (), m_display_name) < 0)
+ throw FrontEndError (String ("X11 -- failed to connect to the panel daemon!"));
+
+ // Only use ComposeKeyFactory when it's enabled.
+ if (validate_factory (SCIM_COMPOSE_KEY_FACTORY_UUID, "UTF-8"))
+ m_fallback_factory = new ComposeKeyFactory ();
+ else
+ m_fallback_factory = new DummyIMEngineFactory ();
+
+ m_fallback_instance = m_fallback_factory->create_instance (String ("UTF-8"), 0);
+ m_fallback_instance->signal_connect_commit_string (slot (this, &X11FrontEnd::fallback_commit_string_cb));
+}
+
+void
+X11FrontEnd::run ()
+{
+ if (!m_display || !m_xims_window || !m_xims || m_panel_client.get_connection_number () < 0) {
+ SCIM_DEBUG_FRONTEND(1) << "X11 -- Cannot run without initialization!\n";
+ return;
+ }
+
+ XEvent event;
+
+ fd_set read_fds, active_fds;
+
+ int panel_fd = m_panel_client.get_connection_number ();
+ int xserver_fd = ConnectionNumber (m_display);
+ int max_fd = (panel_fd > xserver_fd) ? panel_fd : xserver_fd;
+
+ FD_ZERO (&active_fds);
+ FD_SET (panel_fd, &active_fds);
+ FD_SET (xserver_fd, &active_fds);
+
+ m_should_exit = false;
+
+ // Select between the X Server and the Panel GUI.
+ while (!m_should_exit) {
+ int ret;
+
+ read_fds = active_fds;
+
+ // Process the events which are already send to me from the X Server
+ // before calling select.
+ while (XPending (m_display)) {
+ XNextEvent (m_display, &event);
+ XFilterEvent (&event, None);
+ }
+
+ if ((ret = select (max_fd + 1, &read_fds, NULL, NULL, NULL)) < 0) {
+ SCIM_DEBUG_FRONTEND(1) << "X11 -- Error when watching events!\n";
+ return;
+ }
+
+ if (m_should_exit) break;
+
+ if (FD_ISSET (panel_fd, &read_fds)) {
+ if (!m_panel_client.filter_event ()) {
+ SCIM_DEBUG_FRONTEND(1) << "X11 -- Lost connection with panel daemon, re-establish it!\n";
+
+ m_panel_client.close_connection ();
+
+ max_fd = xserver_fd;
+ FD_ZERO (&active_fds);
+ FD_SET (xserver_fd, &active_fds);
+
+ if (m_panel_client.open_connection (m_config->get_name (), m_display_name) >= 0) {
+ panel_fd = m_panel_client.get_connection_number ();
+ FD_SET (panel_fd, &active_fds);
+ max_fd = (panel_fd > xserver_fd) ? panel_fd : xserver_fd;
+ } else {
+ panel_fd = -1;
+ SCIM_DEBUG_FRONTEND(1) << "X11 -- Lost connection with panel daemon, can't re-establish it!\n";
+ }
+ }
+ }
+ // X Events will be processed at beginning of the loop.
+ }
+}
+
+String
+X11FrontEnd::get_supported_locales (void)
+{
+ std::vector <String> all_locales;
+ std::vector <String> supported_locales;
+
+ scim_split_string_list (all_locales, get_all_locales (), ',');
+
+ String last = String (setlocale (LC_CTYPE, 0));
+
+ for (size_t i = 0; i < all_locales.size (); ++i) {
+ if (setlocale (LC_CTYPE, all_locales [i].c_str ()) && XSupportsLocale ())
+ supported_locales.push_back (all_locales [i]);
+ }
+
+ setlocale (LC_CTYPE, last.c_str ());
+
+ return scim_combine_string_list (supported_locales, ',');
+}
+
+int
+X11FrontEnd::get_default_instance (const String &language, const String &encoding)
+{
+ DefaultInstanceMap::iterator it = m_default_instance_map.find (encoding);
+ String sfid = get_default_factory (language, encoding);
+
+ if (it == m_default_instance_map.end ()) {
+ int siid = new_instance (m_config, sfid, encoding);
+
+ m_default_instance_map [encoding] = siid;
+
+ return siid;
+ } else if (get_instance_uuid (it->second) != sfid) {
+ replace_instance (it->second, sfid);
+ }
+ return it->second;
+}
+
+String
+X11FrontEnd::init_ims (void)
+{
+ XIMStyle ims_styles_overspot [] = {
+ XIMPreeditPosition | XIMStatusNothing,
+ XIMPreeditNothing | XIMStatusNothing,
+ XIMPreeditPosition | XIMStatusCallbacks,
+ XIMPreeditNothing | XIMStatusCallbacks,
+ 0
+ };
+
+ XIMStyle ims_styles_onspot [] = {
+ XIMPreeditPosition | XIMStatusNothing,
+ XIMPreeditCallbacks | XIMStatusNothing,
+ XIMPreeditNothing | XIMStatusNothing,
+ XIMPreeditPosition | XIMStatusCallbacks,
+ XIMPreeditCallbacks | XIMStatusCallbacks,
+ XIMPreeditNothing | XIMStatusCallbacks,
+ 0
+ };
+
+ XIMEncoding ims_encodings[] = {
+ "COMPOUND_TEXT",
+ 0
+ };
+
+ XIMStyles styles;
+ XIMEncodings encodings;
+
+ String locales;
+
+ locales = get_supported_locales ();
+
+ SCIM_DEBUG_FRONTEND(1) << "Initializing XIMS: "
+ << m_server_name << " with locale (" << locales.length () << "): " << locales << " ...\n";
+
+ // Initialize X Display and Root Windows.
+ if (m_xims != (XIMS) 0) {
+ throw FrontEndError (String ("X11 -- XIMS already initialized!"));
+ }
+
+ m_display = XOpenDisplay (NULL);
+
+ if (!m_display)
+ throw FrontEndError (String ("X11 -- Cannot open Display!"));
+
+ m_xims_window = XCreateSimpleWindow (m_display,
+ DefaultRootWindow (m_display),
+ -1, -1, 1, 1, 0, 0, 0);
+
+ if (!m_xims_window)
+ throw FrontEndError (String ("X11 -- Cannot create IMS Window!"));
+
+ XSetWindowAttributes attrs;
+ unsigned long attrmask;
+
+ attrs.override_redirect = true;
+ attrmask = CWOverrideRedirect;
+
+ XChangeWindowAttributes (m_display, m_xims_window, attrmask, &attrs);
+ XSelectInput (m_display, m_xims_window, KeyPressMask | KeyReleaseMask);
+
+ m_old_x_error_handler = XSetErrorHandler (x_error_handler);
+
+ // Initialize XIMS.
+ if (m_config->read (String (SCIM_CONFIG_FRONTEND_ON_THE_SPOT), true) &&
+ m_config->read (String (SCIM_CONFIG_FRONTEND_X11_ONTHESPOT), true)) {
+ styles.count_styles = sizeof (ims_styles_onspot)/sizeof (XIMStyle) - 1;
+ styles.supported_styles = ims_styles_onspot;
+ } else {
+ styles.count_styles = sizeof (ims_styles_overspot)/sizeof (XIMStyle) - 1;
+ styles.supported_styles = ims_styles_overspot;
+ }
+
+ encodings.count_encodings = sizeof (ims_encodings)/sizeof (XIMEncoding) - 1;
+ encodings.supported_encodings = ims_encodings;
+
+ m_xims = IMOpenIM(m_display,
+ IMModifiers, "Xi18n",
+ IMServerWindow, m_xims_window,
+ IMServerName, m_server_name.c_str (),
+ IMLocale, locales.c_str (),
+ IMServerTransport, "X/",
+ IMInputStyles, &styles,
+ IMEncodingList, &encodings,
+ IMProtocolHandler, ims_protocol_handler,
+ IMFilterEventMask, KeyPressMask | KeyReleaseMask,
+ NULL);
+
+ if (m_xims == (XIMS)NULL)
+ throw FrontEndError (String ("X11 -- failed to initialize XIM Server!"));
+
+ if (m_xims_dynamic) {
+ XIMTriggerKey xim_on_key_list[10];
+ XIMTriggerKey xim_off_key_list[10];
+
+ XIMTriggerKeys xim_on_keys;
+ XIMTriggerKeys xim_off_keys;
+
+ uint32 count_trigger_keys, count_on_keys, count_off_keys;
+
+ KeyEventList keys;
+
+ m_frontend_hotkey_matcher.find_hotkeys (SCIM_FRONTEND_HOTKEY_TRIGGER, keys);
+
+ for (count_trigger_keys=0; count_trigger_keys < 10 && count_trigger_keys < keys.size (); ++count_trigger_keys) {
+ XKeyEvent xkey = scim_x11_keyevent_scim_to_x11 (m_display, keys [count_trigger_keys]);
+ xim_on_key_list [count_trigger_keys].keysym = keys [count_trigger_keys].code;
+ xim_on_key_list [count_trigger_keys].modifier = xkey.state;
+ xim_on_key_list [count_trigger_keys].modifier_mask = xkey.state;
+ }
+
+ m_frontend_hotkey_matcher.find_hotkeys (SCIM_FRONTEND_HOTKEY_ON, keys);
+
+ for (count_on_keys=count_trigger_keys; count_on_keys < 10 && (count_on_keys - count_trigger_keys) < keys.size (); ++count_on_keys) {
+ XKeyEvent xkey = scim_x11_keyevent_scim_to_x11 (m_display, keys [count_on_keys - count_trigger_keys]);
+ xim_on_key_list [count_on_keys].keysym = keys [count_on_keys - count_trigger_keys].code;
+ xim_on_key_list [count_on_keys].modifier = xkey.state;
+ xim_on_key_list [count_on_keys].modifier_mask = xkey.state;
+ }
+
+ m_frontend_hotkey_matcher.find_hotkeys (SCIM_FRONTEND_HOTKEY_OFF, keys);
+
+ for (count_off_keys=0; count_off_keys < 10 && count_off_keys < keys.size (); ++count_off_keys) {
+ XKeyEvent xkey = scim_x11_keyevent_scim_to_x11 (m_display, keys [count_off_keys]);
+ xim_off_key_list [count_off_keys].keysym = keys [count_off_keys].code;
+ xim_off_key_list [count_off_keys].modifier = xkey.state;
+ xim_off_key_list [count_off_keys].modifier_mask = xkey.state;
+ }
+
+ xim_on_keys.count_keys = count_on_keys;
+ xim_on_keys.keylist = xim_on_key_list;
+
+ xim_off_keys.count_keys = count_off_keys;
+ xim_off_keys.keylist = xim_off_key_list;
+
+ IMSetIMValues(m_xims, IMOnKeysList, &xim_on_keys, IMOffKeysList, &xim_off_keys, NULL);
+ }
+
+ return String (DisplayString (m_display));
+}
+
+bool
+X11FrontEnd::filter_hotkeys (X11IC *ic, const KeyEvent &scimkey)
+{
+ bool ok = false;
+
+ if (!is_focused_ic (ic)) return false;
+
+ m_frontend_hotkey_matcher.push_key_event (scimkey);
+ m_imengine_hotkey_matcher.push_key_event (scimkey);
+
+ FrontEndHotkeyAction hotkey_action = m_frontend_hotkey_matcher.get_match_result ();
+
+ // Match trigger and show factory menu hotkeys.
+ if (hotkey_action == SCIM_FRONTEND_HOTKEY_TRIGGER) {
+ if (!ic->xims_on)
+ ims_turn_on_ic (ic);
+ else
+ ims_turn_off_ic (ic);
+ ok = true;
+ } else if (hotkey_action == SCIM_FRONTEND_HOTKEY_ON) {
+ if (!ic->xims_on) ims_turn_on_ic (ic);
+ ok = true;
+ } else if (hotkey_action == SCIM_FRONTEND_HOTKEY_OFF) {
+ if (ic->xims_on) ims_turn_off_ic (ic);
+ ok = true;
+ } else if (hotkey_action == SCIM_FRONTEND_HOTKEY_NEXT_FACTORY) {
+ String encoding = scim_get_locale_encoding (ic->locale);
+ String language = scim_get_locale_language (ic->locale);
+ String sfid = get_next_factory ("", encoding, get_instance_uuid (ic->siid));
+ if (validate_factory (sfid, encoding)) {
+ ims_turn_off_ic (ic);
+ replace_instance (ic->siid, sfid);
+ m_panel_client.register_input_context (ic->icid, get_instance_uuid (ic->siid));
+ set_ic_capabilities (ic);
+ set_default_factory (language, sfid);
+ ims_turn_on_ic (ic);
+ }
+ ok = true;
+ } else if (hotkey_action == SCIM_FRONTEND_HOTKEY_PREVIOUS_FACTORY) {
+ String encoding = scim_get_locale_encoding (ic->locale);
+ String language = scim_get_locale_language (ic->locale);
+ String sfid = get_previous_factory ("", encoding, get_instance_uuid (ic->siid));
+ if (validate_factory (sfid, encoding)) {
+ ims_turn_off_ic (ic);
+ replace_instance (ic->siid, sfid);
+ m_panel_client.register_input_context (ic->icid, get_instance_uuid (ic->siid));
+ set_ic_capabilities (ic);
+ set_default_factory (language, sfid);
+ ims_turn_on_ic (ic);
+ }
+ ok = true;
+ } else if (hotkey_action == SCIM_FRONTEND_HOTKEY_SHOW_FACTORY_MENU) {
+ panel_req_show_factory_menu (ic);
+ ok = true;
+ } else if (m_imengine_hotkey_matcher.is_matched ()) {
+ String encoding = scim_get_locale_encoding (ic->locale);
+ String language = scim_get_locale_language (ic->locale);
+ ISEInfo info = m_imengine_hotkey_matcher.get_match_result ();
+ String sfid = info.uuid;
+ if (info.type == IMENGINE_T) {
+ if (validate_factory (sfid, encoding)) {
+ ims_turn_off_ic (ic);
+ replace_instance (ic->siid, sfid);
+ m_panel_client.register_input_context (ic->icid, get_instance_uuid (ic->siid));
+ set_ic_capabilities (ic);
+ set_default_factory (language, sfid);
+ ims_turn_on_ic (ic);
+ }
+ }
+ ok = true;
+ }
+ return ok;
+}
+
+int
+X11FrontEnd::ims_open_handler (XIMS ims, IMOpenStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Open handler: LANG=" << call_data->lang.name
+ << " Connect ID=" << call_data->connect_id << "\n";
+
+ m_ic_manager.new_connection (call_data);
+ return 1;
+}
+
+int
+X11FrontEnd::ims_close_handler (XIMS ims, IMCloseStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Close handler: Connect ID="
+ << call_data->connect_id << "\n";
+
+ m_ic_manager.delete_connection (call_data);
+ return 1;
+}
+
+int
+X11FrontEnd::ims_create_ic_handler (XIMS ims, IMChangeICStruct *call_data)
+{
+ String locale = m_ic_manager.get_connection_locale (call_data->connect_id);
+ String language = scim_get_locale_language (locale);
+ String encoding = scim_get_locale_encoding (locale);
+
+ SCIM_DEBUG_FRONTEND(2) << " IMS Create handler: Encoding=" << encoding << "\n";
+
+ if (language.empty () || encoding.empty ())
+ return 0;
+
+ int siid = -1;
+
+ if (m_shared_input_method) {
+ siid = get_default_instance (language, encoding);
+ } else {
+ String sfid = get_default_factory (language, encoding);
+ siid = new_instance (m_config, sfid, encoding);
+ }
+
+ if (siid >= 0) {
+ uint32 attrs = m_ic_manager.create_ic (call_data, siid);
+
+ X11IC *ic = m_ic_manager.find_ic (call_data->icid);
+
+ SCIM_DEBUG_FRONTEND(2) << " IMS Create handler OK: SIID="
+ << siid << " ICID = " << ic->icid << " Connect ID=" << call_data->connect_id << "\n";
+
+ m_panel_client.prepare (ic->icid);
+
+ m_panel_client.register_input_context (ic->icid, get_instance_uuid (siid));
+
+ if (attrs & SCIM_X11_IC_INPUT_STYLE)
+ set_ic_capabilities (ic);
+
+ m_panel_client.send ();
+
+ if (m_shared_input_method) {
+ ic->xims_on = m_config->read (String (SCIM_CONFIG_FRONTEND_IM_OPENED_BY_DEFAULT), ic->xims_on);
+ ic->shared_siid = true;
+ }
+
+ return 1;
+ } else {
+ SCIM_DEBUG_FRONTEND(2) << " IMS Create handler Failed: "
+ << " Connect ID=" << call_data->connect_id << "\n";
+ }
+ return 0;
+}
+
+int
+X11FrontEnd::ims_set_ic_values_handler (XIMS ims, IMChangeICStruct *call_data)
+{
+ uint32 changes;
+
+ X11IC *ic = m_ic_manager.find_ic (call_data->icid);
+
+ if (!validate_ic (ic)) {
+ SCIM_DEBUG_FRONTEND(1) << "Cannot find IC for icid " << call_data->icid << "\n";
+ return 0;
+ }
+
+ changes = m_ic_manager.set_ic_values (call_data);
+
+ if (changes & SCIM_X11_IC_ENCODING) {
+ SCIM_DEBUG_FRONTEND(1) << "Cannot change IC encoding on the fly!\n";
+ return 0;
+ }
+
+ SCIM_DEBUG_FRONTEND(2) << " IMS Set IC values handler, ICID="
+ << call_data->icid << " Connect ID="
+ << call_data->connect_id << " Changes="
+ << changes << "\n";
+
+ m_panel_client.prepare (ic->icid);
+
+ //It's focus IC
+ if (is_focused_ic (ic)) {
+ if (changes & SCIM_X11_IC_PRE_SPOT_LOCATION)
+ panel_req_update_spot_location (ic);
+ }
+
+ // Update the client capabilities, if the input style was changed.
+ if (changes & SCIM_X11_IC_INPUT_STYLE)
+ set_ic_capabilities (ic);
+
+ m_panel_client.send ();
+
+ return 1;
+}
+
+int
+X11FrontEnd::ims_get_ic_values_handler (XIMS ims, IMChangeICStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Get IC values handler, ICID="
+ << call_data->icid << " Connect ID="
+ << call_data->connect_id << "\n";
+
+ m_ic_manager.get_ic_values (call_data);
+ return 1;
+}
+
+int
+X11FrontEnd::ims_destroy_ic_handler (XIMS ims, IMDestroyICStruct *call_data)
+{
+ X11IC *ic = m_ic_manager.find_ic (call_data->icid);
+
+ SCIM_DEBUG_FRONTEND(2) << " IMS Destroy IC handler, ICID="
+ << call_data->icid << " Connect ID="
+ << call_data->connect_id << "\n";
+
+ if (!validate_ic (ic)) {
+ SCIM_DEBUG_FRONTEND(1) << "Cannot find IC for icid " << call_data->icid << "\n";
+ return 0;
+ }
+
+ m_panel_client.prepare (ic->icid);
+
+ if (is_focused_ic (ic)) {
+ focus_out (ic->siid);
+ m_panel_client.turn_off (ic->icid);
+ m_panel_client.focus_out (ic->icid);
+ }
+
+ X11IC *old_focus = m_focus_ic;
+
+ m_focus_ic = ic;
+
+ if (!ic->shared_siid) delete_instance (ic->siid);
+
+ m_panel_client.remove_input_context (ic->icid);
+ m_panel_client.send ();
+
+ if (is_focused_ic (ic))
+ m_focus_ic = 0;
+ else
+ m_focus_ic = old_focus;
+
+ m_ic_manager.destroy_ic (call_data);
+ return 1;
+}
+
+int
+X11FrontEnd::ims_set_ic_focus_handler (XIMS ims, IMChangeFocusStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Set IC focus handler, ID="
+ << call_data->icid << " Connect ID="
+ << call_data->connect_id << "\n";
+
+ X11IC *ic =m_ic_manager.find_ic (call_data->icid);
+
+ if (!validate_ic (ic)) {
+ SCIM_DEBUG_FRONTEND(1) << "Cannot find IC for icid " << call_data->icid << "\n";
+ return 0;
+ }
+
+ if (validate_ic (m_focus_ic) && m_focus_ic->icid != ic->icid) {
+ m_panel_client.prepare (m_focus_ic->icid);
+ stop_ic (m_focus_ic);
+ m_panel_client.focus_out (m_focus_ic->icid);
+ m_panel_client.send ();
+ }
+
+ String encoding = scim_get_locale_encoding (ic->locale);
+ String language = scim_get_locale_language (ic->locale);
+ bool need_reg = false;
+ bool need_cap = false;
+ bool need_reset = false;
+
+ m_focus_ic = ic;
+
+ m_panel_client.prepare (ic->icid);
+
+ if (m_shared_input_method) {
+ SCIM_DEBUG_FRONTEND(3) << "Shared input method.\n";
+
+ if (!ic->shared_siid) {
+ delete_instance (ic->siid);
+ ic->shared_siid = true;
+ }
+
+ ic->siid = get_default_instance (language, encoding);
+ ic->onspot_preedit_started = false;
+ ic->onspot_preedit_length = 0;
+ ic->onspot_caret = 0;
+
+ ic->xims_on = m_config->read (String (SCIM_CONFIG_FRONTEND_IM_OPENED_BY_DEFAULT), ic->xims_on);
+
+ need_reg = true;
+ need_cap = true;
+ need_reset = true;
+ } else if (ic->shared_siid) {
+ String sfid = get_default_factory (language, encoding);
+ ic->siid = new_instance (m_config, sfid, encoding);
+ ic->onspot_preedit_started = false;
+ ic->onspot_preedit_length = 0;
+ ic->onspot_caret = 0;
+ ic->shared_siid = false;
+ need_reg = true;
+ need_cap = true;
+ }
+
+ panel_req_focus_in (ic);
+
+ if (need_reset) reset (ic->siid);
+ if (need_cap) set_ic_capabilities (ic);
+ if (need_reg) m_panel_client.register_input_context (ic->icid, get_instance_uuid (ic->siid));
+
+ if (ic->xims_on) {
+ start_ic (ic);
+ } else {
+ m_panel_client.turn_off (ic->icid);
+ }
+
+ m_panel_client.send ();
+
+ return 1;
+}
+
+int
+X11FrontEnd::ims_unset_ic_focus_handler (XIMS ims, IMChangeFocusStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Unset IC focus handler, ID="
+ << call_data->icid << " Connect ID="
+ << call_data->connect_id << "\n";
+
+ X11IC *ic =m_ic_manager.find_ic (call_data->icid);
+
+ if (!validate_ic (ic)) {
+ SCIM_DEBUG_FRONTEND(1) << "Cannot find IC for icid " << call_data->icid << "\n";
+ return 0;
+ }
+
+ if (is_focused_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ stop_ic (ic);
+ m_panel_client.focus_out (ic->icid);
+ m_panel_client.send ();
+ m_focus_ic = 0;
+ }
+
+ return 1;
+}
+
+int
+X11FrontEnd::ims_reset_ic_handler (XIMS ims, IMResetICStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Reset IC handler, ID="
+ << call_data->icid << " Connect ID="
+ << call_data->connect_id << "\n";
+
+ X11IC *ic =m_ic_manager.find_ic (call_data->icid);
+
+ if (!validate_ic (ic)) {
+ SCIM_DEBUG_FRONTEND(1) << "Cannot find IC for icid " << call_data->icid << "\n";
+ return 0;
+ }
+
+ m_panel_client.prepare (ic->icid);
+ reset (ic->siid);
+ m_panel_client.send ();
+
+ return 1;
+}
+
+int
+X11FrontEnd::ims_trigger_notify_handler (XIMS ims, IMTriggerNotifyStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Trigger notify handler, Flag="
+ << call_data->flag << " KeyIndex="
+ << call_data->key_index << " EventMask="
+ << call_data->event_mask << "\n";
+
+ X11IC *ic =m_ic_manager.find_ic (call_data->icid);
+
+ if (!validate_ic (ic)) {
+ SCIM_DEBUG_FRONTEND(1) << "Cannot find IC for icid " << call_data->icid << "\n";
+ return 0;
+ }
+
+ int ret = 0;
+
+ m_panel_client.prepare (ic->icid);
+
+ if (!call_data->flag) {
+ ims_turn_on_ic (ic);
+ ret = 1;
+ } else {
+ ims_turn_off_ic (ic);
+ ret = 1;
+ }
+
+ m_panel_client.send ();
+
+ return ret;
+}
+
+int
+X11FrontEnd::ims_forward_event_handler (XIMS ims, IMForwardEventStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Forward event handler, ICID="
+ << call_data->icid << " Connect ID="
+ << call_data->connect_id << " SerialNo="
+ << call_data->serial_number << "EventType="
+ << call_data->event.type << "\n";
+
+ if (call_data->event.type != KeyPress && call_data->event.type != KeyRelease)
+ return 1;
+
+ X11IC *ic = m_ic_manager.find_ic (call_data->icid);
+
+ if (!validate_ic (ic)) {
+ SCIM_DEBUG_FRONTEND(1) << "Cannot find IC for icid " << call_data->icid << "\n";
+ return 0;
+ }
+
+ // If the ic is not focused, then return.
+ if (!is_focused_ic (ic)) {
+ SCIM_DEBUG_FRONTEND(1) << "IC " << call_data->icid << " is not focused, focus it first.\n";
+ ims_set_ic_focus_handler (ims, (IMChangeFocusStruct *) call_data);
+ }
+
+ XKeyEvent *event = (XKeyEvent*) &(call_data->event);
+ KeyEvent scimkey = scim_x11_keyevent_x11_to_scim (m_display, *event);
+
+ scimkey.mask &= m_valid_key_mask;
+
+ // Set keyboard layout information.
+ scimkey.layout = m_keyboard_layout;
+
+ SCIM_DEBUG_FRONTEND(3) << " KeyEvent:\n"
+ << " Type=" << event->type << " Display=" << event->display << " Serial=" << event->serial << " Send=" << event->send_event << "\n"
+ << " X=" << event->x << " Y=" << event->y << " XRoot=" << event->x_root << " YRoot=" << event->y_root << "\n"
+ << " Time=" << event->time << " SameScreen=" << event->same_screen << " SubWin=" << event->subwindow << " Win=" << event->window << "\n"
+ << " Root=" << event->root << " KeyCode=" << event->keycode << " State=" << event->state << "\n"
+ << " scimKeyEvent=(" << scimkey.code << "," << scimkey.mask << ")\n";
+
+ m_panel_client.prepare (ic->icid);
+
+ if (!filter_hotkeys (ic, scimkey)) {
+ if (!ic->xims_on || !process_key_event (ic->siid, scimkey)) {
+ if (!m_fallback_instance->process_key_event (scimkey))
+ IMForwardEvent (ims, (XPointer) call_data);
+ }
+ }
+
+ m_panel_client.send ();
+
+ return 1;
+}
+
+int
+X11FrontEnd::ims_sync_reply_handler (XIMS ims, IMSyncXlibStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Sync reply handler.\n";
+ return 1;
+}
+
+int
+X11FrontEnd::ims_preedit_start_reply_handler (XIMS ims, IMPreeditCBStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Preedit start reply handler.\n";
+ return 1;
+}
+
+int
+X11FrontEnd::ims_preedit_caret_reply_handler (XIMS ims, IMPreeditCBStruct *call_data)
+{
+ SCIM_DEBUG_FRONTEND(2) << " IMS Preedit caret reply handler.\n";
+ return 1;
+}
+
+void
+X11FrontEnd::ims_commit_string (const X11IC *ic, const WideString& str)
+{
+ IMCommitStruct cms;
+ XTextProperty tp;
+
+ SCIM_DEBUG_FRONTEND(2) << " IMS Committing string.\n";
+
+ if (ims_wcstocts (tp, ic, str)) {
+ memset (&cms, 0, sizeof (cms));
+ cms.major_code = XIM_COMMIT;
+ cms.icid = ic->icid;
+ cms.connect_id = ic->connect_id;
+ cms.flag = XimLookupChars;
+ cms.commit_string = (char *) tp.value;
+ IMCommitString (m_xims, (XPointer) & cms);
+ XFree (tp.value);
+ }
+}
+
+void
+X11FrontEnd::ims_forward_key_event (const X11IC *ic, const KeyEvent &key)
+{
+ IMForwardEventStruct fe;
+ XEvent xkp;
+
+ //create event
+ xkp.xkey = scim_x11_keyevent_scim_to_x11 (m_display, key);
+
+ memset (&fe, 0, sizeof (fe));
+ fe.major_code = XIM_FORWARD_EVENT;
+ fe.icid = ic->icid;
+ fe.connect_id = ic->connect_id;
+ fe.sync_bit = 0;
+ fe.serial_number = 0L;
+
+ if (ic->focus_win)
+ xkp.xkey.window = ic->focus_win;
+ else if (ic->client_win)
+ xkp.xkey.window = ic->client_win;
+
+ memcpy (&(fe.event), &xkp, sizeof (fe.event));
+ IMForwardEvent (m_xims, (XPointer) & fe);
+}
+
+bool
+X11FrontEnd::ims_wcstocts (XTextProperty &tp,const X11IC *ic, const WideString& src)
+{
+ if (!validate_ic (ic)) return false;
+
+ String last = String (setlocale (LC_CTYPE, 0));
+
+ if (!setlocale (LC_CTYPE, ic->locale.c_str ())) {
+ SCIM_DEBUG_FRONTEND(3) << " wcstocts -- unspported locale " << ic->locale.c_str () << "\n";
+
+ setlocale (LC_CTYPE, last.c_str ());
+ return false;
+ }
+
+ int ret;
+
+ if (m_wchar_ucs4_equal && !m_broken_wchar) {
+ wchar_t *wclist [1];
+
+ SCIM_DEBUG_FRONTEND(3) << " Convert WideString to COMPOUND_TEXT -- Using XwcTextListToTextProperty.\n";
+
+ wclist [0] = new wchar_t [src.length () + 1];
+ memcpy (wclist [0], src.data (), sizeof (wchar_t) * src.length ());
+ wclist [0][src.length ()] = 0;
+ ret = XwcTextListToTextProperty (m_display, wclist, 1, XCompoundTextStyle, &tp);
+ delete [] wclist [0];
+ } else {
+ char *clist [1];
+ String mbs;
+
+ SCIM_DEBUG_FRONTEND(3) << " Convert WideString to COMPOUND_TEXT -- Using XmbTextListToTextProperty.\n";
+
+ if (!m_iconv.set_encoding (ic->encoding)) {
+ SCIM_DEBUG_FRONTEND(3) << " Convert WideString to COMPOUND_TEXT -- Cannot initialize iconv for encoding "
+ << ic->encoding << "\n";
+
+ setlocale (LC_CTYPE, last.c_str ());
+ return false;
+ }
+
+ m_iconv.convert (mbs, src);
+ clist [0] = (char *) mbs.c_str ();
+ ret = XmbTextListToTextProperty (m_display, clist, 1, XCompoundTextStyle, &tp);
+ }
+
+ setlocale (LC_CTYPE, last.c_str ());
+ return ret >= 0;
+}
+
+bool
+X11FrontEnd::ims_is_preedit_callback_mode (const X11IC *ic)
+{
+ return validate_ic (ic) && (ic->input_style & XIMPreeditCallbacks);
+}
+
+void
+X11FrontEnd::ims_preedit_callback_start (X11IC *ic)
+{
+ if (!validate_ic (ic) || ic->onspot_preedit_started) return;
+
+ ic->onspot_preedit_started = true;
+
+ SCIM_DEBUG_FRONTEND(2) << " Onspot preedit start, ICID="
+ << ic->icid << " Connect ID=" << ic->connect_id << "\n";
+
+ IMPreeditCBStruct pcb;
+
+ pcb.major_code = XIM_PREEDIT_START;
+ pcb.minor_code = 0;
+ pcb.connect_id = ic->connect_id;
+ pcb.icid = ic->icid;
+ pcb.todo.return_value = 0;
+ IMCallCallback (m_xims, (XPointer) & pcb);
+}
+
+void
+X11FrontEnd::ims_preedit_callback_done (X11IC *ic)
+{
+ if (!validate_ic (ic) || !ic->onspot_preedit_started) return;
+
+ SCIM_DEBUG_FRONTEND(2) << " Onspot preedit done, ICID="
+ << ic->icid << " Connect ID=" << ic->connect_id << "\n";
+
+ // First clear the preedit string.
+ ims_preedit_callback_draw (ic, WideString ());
+
+ ic->onspot_preedit_started = false;
+
+ IMPreeditCBStruct pcb;
+
+ pcb.major_code = XIM_PREEDIT_DONE;
+ pcb.minor_code = 0;
+ pcb.connect_id = ic->connect_id;
+ pcb.icid = ic->icid;
+ pcb.todo.return_value = 0;
+ IMCallCallback (m_xims, (XPointer) & pcb);
+}
+
+void
+X11FrontEnd::ims_preedit_callback_draw (X11IC *ic, const WideString& str, const AttributeList & attrs)
+{
+ if (!validate_ic (ic)) return;
+
+ if (!ic->onspot_preedit_started)
+ ims_preedit_callback_start (ic);
+
+ SCIM_DEBUG_FRONTEND(2) << " Onspot preedit draw, ICID="
+ << ic->icid << " Connect ID=" << ic->connect_id << "\n";
+
+ IMPreeditCBStruct pcb;
+ XIMText text;
+ XIMFeedback *feedback;
+ XIMFeedback attr;
+ XTextProperty tp;
+
+ unsigned int i, j, len;
+
+ len = str.length ();
+ if (!len && !ic->onspot_preedit_length)
+ return;
+
+ feedback = new XIMFeedback [str.length () + 1];
+
+ for (i = 0; i < len; ++i)
+ feedback [i] = 0;
+
+ for (i = 0; i < attrs.size (); ++i) {
+ attr = 0;
+ if (attrs [i].get_type () == SCIM_ATTR_DECORATE) {
+ if (attrs [i].get_value () == SCIM_ATTR_DECORATE_REVERSE)
+ attr = XIMReverse;
+ else if (attrs [i].get_value () == SCIM_ATTR_DECORATE_HIGHLIGHT)
+ attr = XIMHighlight;
+ }
+ for (j = attrs [i].get_start (); j < attrs [i].get_end () && j < len; ++j)
+ feedback [j] |= attr;
+ }
+
+ for (i = 0; i < len; ++i)
+ if (!feedback [i])
+ feedback [i] = XIMUnderline;
+
+ feedback [len] = 0;
+
+ pcb.major_code = XIM_PREEDIT_DRAW;
+ pcb.connect_id = ic->connect_id;
+ pcb.icid = ic->icid;
+
+ pcb.todo.draw.caret = len;
+ pcb.todo.draw.chg_first = 0;
+ pcb.todo.draw.chg_length = ic->onspot_preedit_length;
+ pcb.todo.draw.text = &text;
+
+ text.feedback = feedback;
+
+ if (len > 0 && ims_wcstocts (tp, ic, str)) {
+ text.encoding_is_wchar = false;
+ text.length = strlen ((char*)tp.value);
+ text.string.multi_byte = (char*)tp.value;
+ IMCallCallback (m_xims, (XPointer) & pcb);
+ XFree (tp.value);
+ } else {
+ text.encoding_is_wchar = false;
+ text.length = 0;
+ text.string.multi_byte = "";
+ IMCallCallback (m_xims, (XPointer) & pcb);
+ len = 0;
+ }
+
+ ic->onspot_preedit_length = len;
+
+ delete [] feedback;
+}
+
+void
+X11FrontEnd::ims_preedit_callback_caret (X11IC *ic, int caret)
+{
+ if (!validate_ic (ic) || !ic->onspot_preedit_started || caret > ic->onspot_preedit_length || caret < 0)
+ return;
+
+ SCIM_DEBUG_FRONTEND(2) << " Onspot preedit caret, ICID="
+ << ic->icid << " Connect ID=" << ic->connect_id << "\n";
+
+ //save the caret position for future usage when updating preedit string.
+ ic->onspot_caret = caret;
+
+ //client usually does not support this callback
+ IMPreeditCBStruct pcb;
+
+ pcb.major_code = XIM_PREEDIT_CARET;
+ pcb.connect_id = ic->connect_id;
+ pcb.icid = ic->icid;
+ pcb.todo.caret.direction = XIMAbsolutePosition;
+ pcb.todo.caret.position = caret;
+ pcb.todo.caret.style = XIMIsPrimary;
+ IMCallCallback (m_xims, (XPointer) & pcb);
+}
+
+bool
+X11FrontEnd::ims_string_conversion_callback_retrieval (X11IC *ic, WideString &text, int &cursor, int maxlen_before, int maxlen_after)
+{
+#if 0
+ if (!validate_ic (ic) || (maxlen_before == 0 && maxlen_after == 0))
+ return false;
+
+ SCIM_DEBUG_FRONTEND(2) << " String conversion callback retrieval, ICID="
+ << ic->icid << " Connect ID=" << ic->connect_id << "\n";
+
+ //client usually does not support this callback
+ IMStrConvCBStruct sccb;
+
+ sccb.major_code = XIM_STR_CONVERSION;
+ sccb.connect_id = ic->connect_id;
+ sccb.icid = ic->icid;
+ sccb.strconv.text = 0;
+
+ sccb.strconv.operation = XIMStringConversionRetrieval;
+ sccb.strconv.position = 0;
+
+ sccb.strconv.direction = XIMBackwardChar;
+ sccb.strconv.factor = (short)((maxlen_before > 0) ? maxlen_before : 1);
+
+ IMCallCallback (m_xims, (XPointer) & sccb);
+
+ std::cerr << "Surrounding text: ";
+
+ if (sccb.strconv.text && sccb.strconv.text->string.mbs) {
+ std::cerr << sccb.strconv.text->string.mbs << " ";
+ }
+
+ sccb.strconv.direction = XIMForwardChar;
+ sccb.strconv.factor = (maxlen_after > 0) ? maxlen_after : 1;
+
+ IMCallCallback (m_xims, (XPointer) & sccb);
+
+ if (sccb.strconv.text && sccb.strconv.text->string.mbs) {
+ std::cerr << sccb.strconv.text->string.mbs;
+ }
+
+ std::cerr << "\n";
+#endif
+ return false;
+}
+
+bool
+X11FrontEnd::ims_string_conversion_callback_substitution (X11IC *ic, int offset, int len)
+{
+#if 0
+ if (!validate_ic (ic) || len <= 0)
+ return false;
+
+ SCIM_DEBUG_FRONTEND(2) << " String conversion callback substitution, ICID="
+ << ic->icid << " Connect ID=" << ic->connect_id << "\n";
+
+ //client usually does not support this callback
+ IMStrConvCBStruct sccb;
+
+ sccb.major_code = XIM_STR_CONVERSION;
+ sccb.connect_id = ic->connect_id;
+ sccb.icid = ic->icid;
+ sccb.strconv.text = 0;
+ sccb.strconv.operation = XIMStringConversionSubstitution;
+ sccb.strconv.position = (XIMStringConversionPosition) offset;
+ sccb.strconv.direction = XIMForwardChar;
+ sccb.strconv.factor = (short) len;
+
+ IMCallCallback (m_xims, (XPointer) & sccb);
+
+ return sccb.strconv.text != NULL;
+#endif
+ return false;
+}
+
+void
+X11FrontEnd::ims_turn_on_ic (X11IC *ic)
+{
+ if (validate_ic (ic) && !ic->xims_on) {
+ SCIM_DEBUG_FRONTEND(2) << "ims_turn_on_ic.\n";
+
+ ic->xims_on = true;
+
+ //Record the IC on/off status
+ if (m_shared_input_method)
+ m_config->write (String (SCIM_CONFIG_FRONTEND_IM_OPENED_BY_DEFAULT), true);
+
+ if (is_focused_ic (ic)) {
+ panel_req_focus_in (ic);
+ start_ic (ic);
+ }
+ }
+}
+
+void
+X11FrontEnd::ims_turn_off_ic (X11IC *ic)
+{
+ if (validate_ic (ic) && ic->xims_on) {
+ SCIM_DEBUG_FRONTEND(2) << "ims_turn_off_ic.\n";
+
+ ic->xims_on = false;
+
+ //Record the IC on/off status
+ if (m_shared_input_method)
+ m_config->write (String (SCIM_CONFIG_FRONTEND_IM_OPENED_BY_DEFAULT), false);
+
+ if (is_focused_ic (ic))
+ stop_ic (ic);
+ }
+}
+
+void
+X11FrontEnd::ims_sync_ic (X11IC *ic)
+{
+ if (validate_ic (ic)) {
+ IMSyncXlibStruct data;
+
+ data.major_code = XIM_SYNC;
+ data.minor_code = 0;
+ data.connect_id = ic->connect_id;
+ data.icid = ic->icid;
+
+ IMSyncXlib(m_xims, (XPointer) &data);
+ }
+}
+
+void
+X11FrontEnd::set_ic_capabilities (const X11IC *ic)
+{
+ if (validate_ic (ic)) {
+ unsigned int cap = SCIM_CLIENT_CAP_ALL_CAPABILITIES - SCIM_CLIENT_CAP_SURROUNDING_TEXT;
+
+ if (!ims_is_preedit_callback_mode (ic))
+ cap -= SCIM_CLIENT_CAP_ONTHESPOT_PREEDIT;
+
+ update_client_capabilities (ic->siid, cap);
+ }
+}
+
+void
+X11FrontEnd::start_ic (X11IC *ic)
+{
+ if (validate_ic (ic)) {
+ if (m_xims_dynamic) {
+ IMPreeditStateStruct ips;
+ ips.major_code = 0;
+ ips.minor_code = 0;
+ ips.icid = ic->icid;
+ ips.connect_id = ic->connect_id;
+ IMPreeditStart (m_xims, (XPointer) & ips);
+ }
+
+ panel_req_update_screen (ic);
+ panel_req_update_spot_location (ic);
+ panel_req_update_factory_info (ic);
+
+ m_panel_client.turn_on (ic->icid);
+ m_panel_client.hide_preedit_string (ic->icid);
+ m_panel_client.hide_aux_string (ic->icid);
+ m_panel_client.hide_lookup_table (ic->icid);
+
+ if (ic->shared_siid) reset (ic->siid);
+
+ focus_in (ic->siid);
+ }
+}
+
+void
+X11FrontEnd::stop_ic (X11IC *ic)
+{
+ if (validate_ic (ic)) {
+ focus_out (ic->siid);
+ if (ic->shared_siid) reset (ic->siid);
+
+ if (ims_is_preedit_callback_mode (ic))
+ ims_preedit_callback_done (ic);
+
+ panel_req_update_factory_info (ic);
+ m_panel_client.turn_off (ic->icid);
+
+ if (m_xims_dynamic) {
+ IMPreeditStateStruct ips;
+ ips.major_code = 0;
+ ips.minor_code = 0;
+ ips.icid = ic->icid;
+ ips.connect_id = ic->connect_id;
+ IMPreeditEnd (m_xims, (XPointer) & ips);
+ }
+ }
+}
+
+int
+X11FrontEnd::ims_protocol_handler (XIMS ims, IMProtocol *call_data)
+{
+ if (!_scim_frontend || !call_data || ims != _scim_frontend->m_xims)
+ return 0;
+
+ switch (call_data->major_code) {
+ case XIM_OPEN:
+ return _scim_frontend->ims_open_handler (ims, (IMOpenStruct *) call_data);
+ case XIM_CLOSE:
+ return _scim_frontend->ims_close_handler (ims, (IMCloseStruct *) call_data);
+ case XIM_CREATE_IC:
+ return _scim_frontend->ims_create_ic_handler (ims, (IMChangeICStruct *) call_data);
+ case XIM_DESTROY_IC:
+ return _scim_frontend->ims_destroy_ic_handler (ims, (IMDestroyICStruct *) call_data);
+ case XIM_SET_IC_VALUES:
+ return _scim_frontend->ims_set_ic_values_handler (ims, (IMChangeICStruct *) call_data);
+ case XIM_GET_IC_VALUES:
+ return _scim_frontend->ims_get_ic_values_handler (ims, (IMChangeICStruct *) call_data);
+ case XIM_FORWARD_EVENT:
+ return _scim_frontend->ims_forward_event_handler (ims, (IMForwardEventStruct *) call_data);
+ case XIM_SET_IC_FOCUS:
+ return _scim_frontend->ims_set_ic_focus_handler (ims, (IMChangeFocusStruct *) call_data);
+ case XIM_UNSET_IC_FOCUS:
+ return _scim_frontend->ims_unset_ic_focus_handler (ims, (IMChangeFocusStruct *) call_data);
+ case XIM_RESET_IC:
+ return _scim_frontend->ims_reset_ic_handler (ims, (IMResetICStruct *) call_data);
+ case XIM_TRIGGER_NOTIFY:
+ return _scim_frontend->ims_trigger_notify_handler (ims, (IMTriggerNotifyStruct *) call_data);
+ case XIM_PREEDIT_START_REPLY:
+ return _scim_frontend->ims_preedit_start_reply_handler (ims, (IMPreeditCBStruct *) call_data);
+ case XIM_PREEDIT_CARET_REPLY:
+ return _scim_frontend->ims_preedit_caret_reply_handler (ims, (IMPreeditCBStruct *) call_data);
+ case XIM_SYNC_REPLY:
+ return _scim_frontend->ims_sync_reply_handler (ims, (IMSyncXlibStruct *) call_data);
+ default:
+ SCIM_DEBUG_FRONTEND(1) << "Unknown major code " << call_data->major_code << "\n";
+ break;
+ }
+ return 1;
+}
+
+int
+X11FrontEnd::x_error_handler (Display *display, XErrorEvent *error)
+{
+#if ENABLE_DEBUG
+ char buf [256];
+
+ XGetErrorText (display, error->error_code, buf, 256);
+
+ SCIM_DEBUG_FRONTEND (1)
+ << "X Error occurred:\n"
+ << " Display = " << display << "\n"
+ << " Type = " << error->type << "\n"
+ << " Resourceid = " << error->resourceid << "\n"
+ << " Serial = " << error->serial << "\n"
+ << " ErrorCode = " << (uint32) error->error_code << "\n"
+ << " RequestCode = " << (uint32) error->request_code << "\n"
+ << " MinorCode = " << (uint32) error->minor_code << "\n"
+ << " Error Text = " << buf << "\n";
+#endif
+
+ // trap all possible error for broken focus ic.
+ if ((error->error_code == BadWindow ||
+ error->error_code == BadMatch) &&
+ (error->request_code == X_GetWindowAttributes ||
+ error->request_code == X_GetProperty ||
+ error->request_code == X_SendEvent ||
+ error->request_code == X_TranslateCoords)) {
+ SCIM_DEBUG_FRONTEND(1) << "Discard This Error\n";
+ } else if (_scim_frontend && _scim_frontend->m_old_x_error_handler) {
+ _scim_frontend->m_old_x_error_handler (display, error);
+ }
+
+ return 0;
+}
+
+
+//===================== Panel Slot callbacks =======================
+void
+X11FrontEnd::panel_slot_reload_config (int context)
+{
+ m_config->reload ();
+}
+
+void
+X11FrontEnd::panel_slot_exit (int context)
+{
+ m_should_exit = true;
+}
+
+void
+X11FrontEnd::panel_slot_update_lookup_table_page_size (int context, int page_size)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ update_lookup_table_page_size (ic->siid, page_size);
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_lookup_table_page_up (int context)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ lookup_table_page_up (ic->siid);
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_lookup_table_page_down (int context)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ lookup_table_page_down (ic->siid);
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_trigger_property (int context, const String &property)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ trigger_property (ic->siid, property);
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_process_helper_event (int context, const String &target_uuid, const String &helper_uuid, const Transaction &trans)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic) && get_instance_uuid (ic->siid) == target_uuid) {
+ m_panel_client.prepare (ic->icid);
+ process_helper_event (ic->siid, helper_uuid, trans);
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_move_preedit_caret (int context, int caret_pos)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ move_preedit_caret (ic->siid, caret_pos);
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_select_candidate (int context, int cand_index)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ select_candidate (ic->siid, cand_index);
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_process_key_event (int context, const KeyEvent &key)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+
+ if (!filter_hotkeys (ic, key)) {
+ if (!ic->xims_on || !process_key_event (ic->siid, key)) {
+ if (!m_fallback_instance->process_key_event (key))
+ ims_forward_key_event (ic, key);
+ }
+ }
+
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_commit_string (int context, const WideString &wstr)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ ims_commit_string (ic, wstr);
+ }
+}
+void
+X11FrontEnd::panel_slot_forward_key_event (int context, const KeyEvent &key)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ ims_forward_key_event (ic, key);
+ }
+}
+void
+X11FrontEnd::panel_slot_request_help (int context)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ panel_req_show_help (ic);
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_request_factory_menu (int context)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ panel_req_show_factory_menu (ic);
+ m_panel_client.send ();
+ }
+}
+void
+X11FrontEnd::panel_slot_change_factory (int context, const String &uuid)
+{
+ SCIM_DEBUG_FRONTEND (1) << "panel_slot_change_factory " << uuid << "\n";
+
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ if (uuid.length () == 0 && ic->xims_on) {
+ SCIM_DEBUG_FRONTEND (2) << "panel_slot_change_factory : turn off.\n";
+ ims_turn_off_ic (ic);
+ } else if (uuid.length ()) {
+ String encoding = scim_get_locale_encoding (ic->locale);
+ String language = scim_get_locale_language (ic->locale);
+ if (validate_factory (uuid, encoding)) {
+ ims_turn_off_ic (ic);
+ replace_instance (ic->siid, uuid);
+ m_panel_client.register_input_context (ic->icid, get_instance_uuid (ic->siid));
+ set_ic_capabilities (ic);
+ set_default_factory (language, uuid);
+ ims_turn_on_ic (ic);
+ }
+ }
+ m_panel_client.send ();
+ }
+}
+
+void
+X11FrontEnd::panel_slot_select_aux (int context, int aux_index)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << " context=" << context << " aux=" << aux_index << " ic=" << ic << "\n";
+ if (validate_ic (ic)) {
+ m_panel_client.prepare (ic->icid);
+ select_aux (ic->siid,aux_index);
+ m_panel_client.send ();
+ }
+}
+
+void
+X11FrontEnd::panel_slot_show_preedit_string (int context)
+{
+ X11IC *ic = m_ic_manager.find_ic (context);
+ SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << " context=" << context << "\n";
+ if (validate_ic (ic)) {
+ show_preedit_string(ic->siid);
+ }
+}
+
+void
+X11FrontEnd::panel_slot_hide_preedit_string (int context)
+{
+ SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ hide_preedit_string(ic->siid);
+ }
+}
+
+void
+X11FrontEnd::panel_slot_update_preedit_string (int context,
+ const WideString &str,
+ const AttributeList &attrs)
+{
+ SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
+
+ X11IC *ic = m_ic_manager.find_ic (context);
+ if (validate_ic (ic)) {
+ update_preedit_string(ic->siid,str,attrs);
+ }
+}
+
+//================ Panel Request methods ====================
+void
+X11FrontEnd::panel_req_update_screen (const X11IC *ic)
+{
+ Window target = ic->focus_win ? ic->focus_win : ic->client_win;
+ XWindowAttributes xwa;
+ if (target &&
+ XGetWindowAttributes (m_display, target, &xwa) &&
+ validate_ic (ic)) {
+ int num = ScreenCount (m_display);
+ int idx;
+ for (idx = 0; idx < num; ++ idx) {
+ if (ScreenOfDisplay (m_display, idx) == xwa.screen) {
+ m_panel_client.update_screen (ic->icid, idx);
+ return;
+ }
+ }
+ }
+}
+
+void
+X11FrontEnd::panel_req_show_help (const X11IC *ic)
+{
+ String help;
+ String tmp;
+
+ help = String (_("Smart Common Input Method platform ")) +
+ String (SCIM_VERSION) +
+ String (_("\n(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n\n"));
+
+ if (ic->xims_on) {
+ help += utf8_wcstombs (get_instance_name (ic->siid));
+ help += String (_(":\n\n"));
+
+ help += utf8_wcstombs (get_instance_authors (ic->siid));
+ help += String (_("\n\n"));
+
+ help += utf8_wcstombs (get_instance_help (ic->siid));
+ help += String (_("\n\n"));
+
+ help += utf8_wcstombs (get_instance_credits (ic->siid));
+ }
+
+ m_panel_client.show_help (ic->icid, help);
+}
+
+void
+X11FrontEnd::panel_req_show_factory_menu (const X11IC *ic)
+{
+ std::vector<String> uuids;
+ if (get_factory_list_for_encoding (uuids, ic->encoding)) {
+ std::vector <PanelFactoryInfo> menu;
+ for (size_t i = 0; i < uuids.size (); ++ i) {
+ menu.push_back (PanelFactoryInfo (
+ uuids [i],
+ utf8_wcstombs (get_factory_name (uuids [i])),
+ get_factory_language (uuids [i]),
+ get_factory_icon_file (uuids [i])));
+ }
+ m_panel_client.show_factory_menu (ic->icid, menu);
+ }
+}
+
+void
+X11FrontEnd::panel_req_focus_in (const X11IC * ic)
+{
+ m_panel_client.focus_in (ic->icid, get_instance_uuid (ic->siid));
+}
+
+void
+X11FrontEnd::panel_req_update_factory_info (const X11IC *ic)
+{
+ if (is_focused_ic (ic)) {
+ PanelFactoryInfo info;
+ if (ic->xims_on) {
+ String uuid = get_instance_uuid (ic->siid);
+ info = PanelFactoryInfo (uuid, utf8_wcstombs (get_factory_name (uuid)), get_factory_language (uuid), get_factory_icon_file (uuid));
+ } else {
+ info = PanelFactoryInfo (String (""), String (_("English/Keyboard")), String ("C"), String (SCIM_KEYBOARD_ICON_FILE));
+ }
+ m_panel_client.update_factory_info (ic->icid, info);
+ }
+}
+
+void
+X11FrontEnd::panel_req_update_spot_location (const X11IC *ic)
+{
+ Window target = ic->focus_win ? ic->focus_win : ic->client_win;
+ XWindowAttributes xwa;
+
+ if (target &&
+ XGetWindowAttributes (m_display, target, &xwa) &&
+ validate_ic (ic)) {
+
+ int spot_x, spot_y, spot_top_y;
+ Window child;
+
+ if (m_focus_ic->pre_attr.spot_location.x >= 0 &&
+ m_focus_ic->pre_attr.spot_location.y >= 0) {
+ XTranslateCoordinates (m_display, target,
+ xwa.root,
+ m_focus_ic->pre_attr.spot_location.x + 8,
+ m_focus_ic->pre_attr.spot_location.y + 8,
+ &spot_x, &spot_y, &child);
+ spot_top_y = spot_y;
+ } else {
+ XTranslateCoordinates (m_display, target,
+ xwa.root,
+ 0,
+ xwa.height,
+ &spot_x, &spot_y, &child);
+ spot_top_y = spot_y; // Fix me
+ }
+ m_panel_client.update_spot_location (ic->icid, spot_x, spot_y, spot_top_y);
+ }
+}
+
+void
+X11FrontEnd::reload_config_callback (const ConfigPointer &config)
+{
+ SCIM_DEBUG_FRONTEND(1) << "Reload configuration.\n";
+
+ m_frontend_hotkey_matcher.load_hotkeys (config);
+ m_imengine_hotkey_matcher.load_hotkeys (config);
+
+ KeyEvent key;
+
+ scim_string_to_key (key,
+ config->read (String (SCIM_CONFIG_HOTKEYS_FRONTEND_VALID_KEY_MASK),
+ String ("Shift+Control+Alt+Lock")));
+
+ m_valid_key_mask = (key.mask > 0) ? key.mask : 0xFFFF;
+ m_valid_key_mask |= SCIM_KEY_ReleaseMask;
+ // Special treatment for two backslash keys on jp106 keyboard.
+ m_valid_key_mask |= SCIM_KEY_QuirkKanaRoMask;
+
+ m_broken_wchar =
+ config->read (String (SCIM_CONFIG_FRONTEND_X11_BROKEN_WCHAR),
+ m_broken_wchar);
+
+ m_shared_input_method =
+ config->read (String (SCIM_CONFIG_FRONTEND_SHARED_INPUT_METHOD),
+ m_shared_input_method);
+
+ // Get keyboard layout setting
+ // Flush the global config first, in order to load the new configs from disk.
+ scim_global_config_flush ();
+
+ m_keyboard_layout = scim_get_default_keyboard_layout ();
+}
+
+void
+X11FrontEnd::fallback_commit_string_cb (IMEngineInstanceBase * si, const WideString & str)
+{
+ if (validate_ic (m_focus_ic))
+ ims_commit_string (m_focus_ic, str);
+}
+
+/*
+vi:ts=4:nowrap:expandtab
+*/
--- /dev/null
+/**
+ * @file scim_x11_frontend.h
+ * @brief definition of X11FrontEnd related classes.
+ */
+
+/*
+ * Smart Common Input Method
+ *
+ * Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
+ *
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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 Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+ * Boston, MA 02111-1307 USA
+ *
+ * $Id: scim_x11_frontend.h,v 1.56 2005/06/26 16:35:12 suzhe Exp $
+ */
+
+#if !defined (__SCIM_X11_FRONTEND_H)
+#define __SCIM_X11_FRONTEND_H
+
+#include "scim_stl_map.h"
+
+using namespace scim;
+
+class X11FrontEnd : public FrontEndBase
+{
+// first = UUID.
+// second= siid.
+#if SCIM_USE_STL_EXT_HASH_MAP
+ typedef __gnu_cxx::hash_map <String, int, scim_hash_string> DefaultInstanceMap;
+#elif SCIM_USE_STL_HASH_MAP
+ typedef std::hash_map <String, int, scim_hash_string> DefaultInstanceMap;
+#else
+ typedef std::map <String, int> DefaultInstanceMap;
+#endif
+
+ X11ICManager m_ic_manager;
+ XIMS m_xims;
+ Display *m_display;
+ Window m_xims_window;
+ String m_server_name;
+ String m_display_name;
+
+ PanelClient m_panel_client;
+
+ X11IC *m_focus_ic;
+
+ FrontEndHotkeyMatcher m_frontend_hotkey_matcher;
+ IMEngineHotkeyMatcher m_imengine_hotkey_matcher;
+
+ bool m_xims_dynamic;
+ bool m_wchar_ucs4_equal;
+ bool m_broken_wchar;
+ bool m_shared_input_method;
+
+ KeyboardLayout m_keyboard_layout;
+
+ int m_valid_key_mask;
+
+ bool m_should_exit;
+
+ IConvert m_iconv;
+ ConfigPointer m_config;
+
+ IMEngineFactoryPointer m_fallback_factory;
+ IMEngineInstancePointer m_fallback_instance;
+
+ DefaultInstanceMap m_default_instance_map;
+
+ int (*m_old_x_error_handler) (Display *, XErrorEvent *);
+
+public:
+ X11FrontEnd (const BackEndPointer &backend,
+ const ConfigPointer &config,
+ const String &server_name = String ("SCIM"));
+
+ virtual ~X11FrontEnd ();
+
+protected:
+ virtual void show_preedit_string (int siid);
+ virtual void show_aux_string (int siid);
+ virtual void show_lookup_table (int siid);
+
+ virtual void hide_preedit_string (int siid);
+ virtual void hide_aux_string (int siid);
+ virtual void hide_lookup_table (int siid);
+
+ virtual void update_preedit_caret (int siid, int caret);
+ virtual void update_preedit_string (int siid, const WideString & str, const AttributeList & attrs = AttributeList ());
+ virtual void update_aux_string (int siid, const WideString & str, const AttributeList & attrs = AttributeList ());
+ virtual void commit_string (int siid, const WideString & str);
+ virtual void forward_key_event (int siid, const KeyEvent & key);
+ virtual void update_lookup_table (int siid, const LookupTable & table);
+
+ virtual void register_properties (int siid, const PropertyList & properties);
+ virtual void update_property (int siid, const Property & property);
+ virtual void beep (int siid);
+ virtual void start_helper (int siid, const String &helper_uuid);
+ virtual void stop_helper (int siid, const String &helper_uuid);
+ virtual void send_helper_event (int siid, const String &helper_uuid, const Transaction &trans);
+
+ virtual bool get_surrounding_text (int siid, WideString &text, int &cursor, int maxlen_before, int maxlen_after);
+ virtual bool delete_surrounding_text (int siid, int offset, int len);
+
+public:
+ virtual void init (int argc, char **argv);
+ virtual void run ();
+
+private:
+ String get_supported_locales (void);
+
+ int get_default_instance (const String &language, const String &encoding);
+
+ // Return the display name
+ String init_ims (void);
+
+ XKeyEvent keyevent_scim_to_x11 (const KeyEvent& key);
+ KeyEvent keyevent_x11_to_scim (const XKeyEvent& key);
+
+ bool filter_hotkeys (X11IC *ic, const KeyEvent &key);
+
+ int ims_open_handler (XIMS ims, IMOpenStruct *call_data);
+ int ims_close_handler (XIMS ims, IMCloseStruct *call_data);
+ int ims_create_ic_handler (XIMS ims, IMChangeICStruct *call_data);
+ int ims_set_ic_values_handler (XIMS ims, IMChangeICStruct *call_data);
+ int ims_get_ic_values_handler (XIMS ims, IMChangeICStruct *call_data);
+ int ims_destroy_ic_handler (XIMS ims, IMDestroyICStruct *call_data);
+ int ims_set_ic_focus_handler (XIMS ims, IMChangeFocusStruct *call_data);
+ int ims_unset_ic_focus_handler (XIMS ims, IMChangeFocusStruct *call_data);
+ int ims_reset_ic_handler (XIMS ims, IMResetICStruct *call_data);
+ int ims_trigger_notify_handler (XIMS ims, IMTriggerNotifyStruct *call_data);
+ int ims_forward_event_handler (XIMS ims, IMForwardEventStruct *call_data);
+ int ims_sync_reply_handler (XIMS ims, IMSyncXlibStruct *call_data);
+ int ims_preedit_start_reply_handler (XIMS ims, IMPreeditCBStruct *call_data);
+ int ims_preedit_caret_reply_handler (XIMS ims, IMPreeditCBStruct *call_data);
+
+ void ims_commit_string (const X11IC *ic, const WideString& str);
+ void ims_forward_key_event (const X11IC *ic, const KeyEvent& key);
+ bool ims_wcstocts (XTextProperty &tp, const X11IC *ic, const WideString& src);
+
+ bool ims_is_preedit_callback_mode (const X11IC *ic);
+ void ims_preedit_callback_start (X11IC *ic);
+ void ims_preedit_callback_done (X11IC *ic);
+ void ims_preedit_callback_draw (X11IC *ic, const WideString& str, const AttributeList & attrs = AttributeList ());
+ void ims_preedit_callback_caret (X11IC *ic, int caret);
+
+ bool ims_string_conversion_callback_retrieval (X11IC *ic, WideString &text, int &cursor, int maxlen_before, int maxlen_after);
+ bool ims_string_conversion_callback_substitution (X11IC *ic, int offset, int len);
+
+ void ims_turn_on_ic (X11IC *ic);
+ void ims_turn_off_ic (X11IC *ic);
+
+ void ims_sync_ic (X11IC *ic);
+
+ void set_ic_capabilities (const X11IC *ic);
+
+ void start_ic (X11IC *ic);
+ void stop_ic (X11IC *ic);
+
+ bool is_focused_ic (int siid) { return validate_ic (m_focus_ic) && m_focus_ic->siid == siid; }
+ bool is_inputing_ic (int siid) { return is_focused_ic (siid) && m_focus_ic->xims_on; }
+ bool is_forwarding_ic (int siid) { return is_focused_ic (siid) && !m_focus_ic->xims_on; }
+
+ bool is_focused_ic (const X11IC *ic) { return validate_ic (m_focus_ic) && validate_ic (ic) && m_focus_ic->icid == ic->icid; }
+ bool is_inputing_ic (const X11IC *ic) { return is_focused_ic (ic) && ic->xims_on; }
+ bool is_forwarding_ic (const X11IC *ic) { return is_focused_ic (ic) && !ic->xims_on; }
+
+ bool is_input_mode () {
+ return validate_ic (m_focus_ic) && m_focus_ic->xims_on;
+ }
+
+ bool is_forward_mode () {
+ return !is_input_mode ();
+ }
+
+ void panel_slot_reload_config (int context);
+ void panel_slot_exit (int context);
+ void panel_slot_update_lookup_table_page_size (int context, int page_size);
+ void panel_slot_lookup_table_page_up (int context);
+ void panel_slot_lookup_table_page_down (int context);
+ void panel_slot_trigger_property (int context, const String &property);
+ void panel_slot_process_helper_event (int context, const String &target_uuid, const String &helper_uuid, const Transaction &trans);
+ void panel_slot_move_preedit_caret (int context, int caret_pos);
+ void panel_slot_select_candidate (int context, int cand_index);
+ void panel_slot_process_key_event (int context, const KeyEvent &key);
+ void panel_slot_commit_string (int context, const WideString &wstr);
+ void panel_slot_forward_key_event (int context, const KeyEvent &key);
+ void panel_slot_request_help (int context);
+ void panel_slot_request_factory_menu (int context);
+ void panel_slot_change_factory (int context, const String &uuid);
+
+ void panel_slot_select_aux (int context,int aux_index);
+ void panel_slot_show_preedit_string (int context);
+ void panel_slot_hide_preedit_string (int context);
+ void panel_slot_update_preedit_string (int context,const WideString &str,const AttributeList &attrs);
+
+ void panel_req_update_screen (const X11IC *ic);
+ void panel_req_show_help (const X11IC *ic);
+ void panel_req_show_factory_menu (const X11IC *ic);
+ void panel_req_focus_in (const X11IC *ic);
+ void panel_req_update_factory_info (const X11IC *ic);
+ void panel_req_update_spot_location (const X11IC *ic);
+
+ void reload_config_callback (const ConfigPointer &config);
+
+ void fallback_commit_string_cb (IMEngineInstanceBase * si, const WideString & str);
+
+private:
+ static int ims_protocol_handler (XIMS ims, IMProtocol *call_data);
+
+ static int x_error_handler (Display *display, XErrorEvent *error);
+
+ static bool validate_ic (const X11IC * ic) { return ic && ic->icid > 0 && ic->siid >= 0; }
+};
+
+#endif
+
+/*
+vi:ts=4:nowrap:ai:expandtab
+*/
--- /dev/null
+/** @file scim_x11_ic.cpp
+ * implementation of class X11ICManager.
+ */
+
+/*
+ * Smart Common Input Method
+ *
+ * Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
+ *
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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 Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+ * Boston, MA 02111-1307 USA
+ *
+ * $Id: scim_x11_ic.cpp,v 1.19 2005/06/26 16:35:12 suzhe Exp $
+ *
+ */
+
+#include <X11/Xlib.h>
+#include <X11/keysym.h>
+#include <X11/Xutil.h>
+#include "imdkit/IMdkit.h"
+#include "imdkit/Xi18n.h"
+
+#include "scim_private.h"
+#include "scim.h"
+#include "scim_x11_ic.h"
+
+using namespace scim;
+
+static int
+_is_attr (char *attr, XICAttribute * attr_list)
+{
+ return !strcmp (attr, attr_list->name);
+}
+
+X11ICManager::X11ICManager ()
+ : m_ic_list (NULL),
+ m_free_list (NULL)
+{
+}
+
+X11ICManager::~X11ICManager ()
+{
+ X11IC *it;
+
+ it = m_ic_list;
+ while (it != NULL) {
+ m_ic_list = it->next;
+ delete it;
+ it = m_ic_list;
+ }
+
+ it = m_free_list;
+ while (it != NULL) {
+ m_free_list = it->next;
+ delete it;
+ it = m_free_list;
+ }
+}
+
+X11IC *
+X11ICManager::new_ic ()
+{
+ static CARD16 base_icid = 1;
+ X11IC *rec;
+
+ if (m_free_list != NULL) {
+ rec = m_free_list;
+ m_free_list = m_free_list->next;
+ } else {
+ rec = new X11IC;
+ }
+
+ if (base_icid == 0) base_icid = 1;
+
+ rec->icid = base_icid ++;
+
+ rec->next = m_ic_list;
+ m_ic_list = rec;
+ return rec;
+}
+
+void
+X11ICManager::delete_ic (CARD16 icid)
+{
+ X11IC *rec, *last = NULL;
+
+ for (rec = m_ic_list; rec != NULL; last = rec, rec = rec->next) {
+ if (rec->icid == icid) {
+ if (last != NULL)
+ last->next = rec->next;
+ else
+ m_ic_list = rec->next;
+
+ rec->next = m_free_list;
+ m_free_list = rec;
+
+ rec->siid = -1;
+ rec->icid = 0;
+ rec->connect_id = 0;
+ rec->client_win = 0;
+ rec->focus_win = 0;
+ rec->shared_siid = false;
+ rec->xims_on = false;
+ rec->encoding = String ();
+ rec->locale = String ();
+
+ return;
+ }
+ }
+ return;
+}
+
+String
+X11ICManager::get_connection_locale (CARD16 connect_id)
+{
+ ConnectionLocaleMap::iterator it =
+ m_connect_locales.find ((int)connect_id);
+
+ if (it != m_connect_locales.end ())
+ return it->second;
+
+ return String ();
+}
+
+void
+X11ICManager::new_connection (IMOpenStruct *call_data)
+{
+ if (call_data == NULL) return;
+
+ String locale = scim_validate_locale (String (call_data->lang.name));
+
+ if (!locale.length ()) {
+ locale = String ("C");
+ }
+
+ m_connect_locales [(int)call_data->connect_id] = locale;
+}
+
+void
+X11ICManager::delete_connection (IMCloseStruct *call_data)
+{
+ if (call_data == NULL) return;
+
+ m_connect_locales.erase ((int)call_data->connect_id);
+}
+
+uint32
+X11ICManager::create_ic (IMChangeICStruct *call_data, int siid)
+{
+ X11IC * rec;
+
+ rec = new_ic ();
+ if (rec == NULL) return 0;
+
+ call_data->icid = rec->icid;
+ rec->connect_id = call_data->connect_id;
+ rec->siid = siid;
+ rec->shared_siid = false;
+ rec->xims_on = true;
+ rec->onspot_preedit_started = false;
+ rec->onspot_preedit_length = 0;
+ rec->onspot_caret = 0;
+ rec->focus_win = (Window) 0;
+ rec->client_win = (Window) 0;
+ rec->input_style = 0;
+ rec->pre_attr.spot_location.x = -1;
+ rec->pre_attr.spot_location.y = -1;
+
+ return store_ic_values (rec, call_data);
+}
+
+X11IC *
+X11ICManager::find_ic (CARD16 icid)
+{
+ X11IC *rec = m_ic_list;
+ while (rec != NULL) {
+ if (rec->icid == icid)
+ return rec;
+ rec = rec->next;
+ }
+ return NULL;
+}
+
+X11IC *
+X11ICManager::find_ic_by_siid (int siid)
+{
+ X11IC *rec = m_ic_list;
+ while (rec != NULL) {
+ if (rec->siid == siid)
+ return rec;
+ rec = rec->next;
+ }
+ return NULL;
+}
+
+void
+X11ICManager::destroy_ic (IMDestroyICStruct *call_data)
+{
+ if (call_data == NULL) return;
+
+ delete_ic (call_data->icid);
+}
+
+uint32
+X11ICManager::store_ic_values (X11IC *rec, IMChangeICStruct *call_data)
+{
+ XICAttribute *ic_attr = call_data->ic_attr;
+ XICAttribute *pre_attr = call_data->preedit_attr;
+ XICAttribute *sts_attr = call_data->status_attr;
+
+ int i;
+ uint32 attrs = 0;
+
+ // Set main attributes
+ for (i=0; i< (int) call_data->ic_attr_num; ++i, ++ic_attr) {
+ if (_is_attr (XNInputStyle, ic_attr)) {
+ rec->input_style = * (INT32 *) ic_attr->value;
+ attrs |= SCIM_X11_IC_INPUT_STYLE;
+ } else if (_is_attr (XNClientWindow, ic_attr)) {
+ rec->client_win = *(Window *) ic_attr->value;
+ attrs |= SCIM_X11_IC_CLIENT_WINDOW;
+ } else if (_is_attr (XNFocusWindow, ic_attr)) {
+ rec->focus_win = *(Window *) ic_attr->value;
+ attrs |= SCIM_X11_IC_FOCUS_WINDOW;
+ } else {
+ std::cerr << __FILE__ << "(" << __LINE__ << "):"
+ <<"Unknown attr: " << ic_attr->name << std::endl;
+ }
+ }
+
+ // Set preedit attributes
+ for (i = 0; i < (int) call_data->preedit_attr_num; ++i, ++pre_attr) {
+ if (_is_attr (XNArea, pre_attr)) {
+ rec->pre_attr.area = *(XRectangle *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_AREA;
+ } else if (_is_attr (XNAreaNeeded, pre_attr)) {
+ rec->pre_attr.area_needed = *(XRectangle *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_AREA_NEEDED;
+ } else if (_is_attr (XNSpotLocation, pre_attr)) {
+ rec->pre_attr.spot_location = *(XPoint *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_SPOT_LOCATION;
+ } else if (_is_attr (XNColormap, pre_attr)) {
+ rec->pre_attr.cmap = *(Colormap *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_COLORMAP;
+ } else if (_is_attr (XNStdColormap, pre_attr)) {
+ rec->pre_attr.cmap = *(Colormap *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_COLORMAP;
+ } else if (_is_attr (XNForeground, pre_attr)) {
+ rec->pre_attr.foreground = *(CARD32 *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_FOREGROUND;
+ } else if (_is_attr (XNBackground, pre_attr)) {
+ rec->pre_attr.background = *(CARD32 *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_BACKGROUND;
+ } else if (_is_attr (XNBackgroundPixmap, pre_attr)) {
+ rec->pre_attr.bg_pixmap = *(Pixmap *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_BG_PIXMAP;
+ } else if (_is_attr (XNFontSet, pre_attr)) {
+ rec->pre_attr.base_font = (char*) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_FONTSET;
+ } else if (_is_attr (XNLineSpace, pre_attr)) {
+ rec->pre_attr.line_space = *(CARD32 *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_LINE_SPACE;
+ } else if (_is_attr (XNCursor, pre_attr)) {
+ rec->pre_attr.cursor = *(Cursor *) pre_attr->value;
+ attrs |= SCIM_X11_IC_PRE_CURSOR;
+ } else {
+ std::cerr << __FILE__ << "(" << __LINE__ << "):"
+ <<"Unknown attr: " << pre_attr->name << std::endl;
+ }
+ }
+
+ // Set status attributes
+ for (i = 0; i < (int) call_data->status_attr_num; ++i, ++sts_attr) {
+ if (_is_attr (XNArea, sts_attr)) {
+ rec->sts_attr.area = *(XRectangle *) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_AREA;
+ } else if (_is_attr (XNAreaNeeded, sts_attr)) {
+ rec->sts_attr.area_needed = *(XRectangle *) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_AREA_NEEDED;
+ } else if (_is_attr (XNColormap, sts_attr)) {
+ rec->sts_attr.cmap = *(Colormap *) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_COLORMAP;
+ } else if (_is_attr (XNStdColormap, sts_attr)) {
+ rec->sts_attr.cmap = *(Colormap *) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_COLORMAP;
+ } else if (_is_attr (XNForeground, sts_attr)) {
+ rec->sts_attr.foreground = *(CARD32 *) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_FOREGROUND;
+ } else if (_is_attr (XNBackground, sts_attr)) {
+ rec->sts_attr.background = *(CARD32 *) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_BACKGROUND;
+ } else if (_is_attr (XNBackgroundPixmap, sts_attr)) {
+ rec->sts_attr.bg_pixmap = *(Pixmap *) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_BG_PIXMAP;
+ } else if (_is_attr (XNFontSet, sts_attr)) {
+ rec->sts_attr.base_font = (char*) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_FONTSET;
+ } else if (_is_attr (XNLineSpace, sts_attr)) {
+ rec->sts_attr.line_space = *(CARD32 *) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_LINE_SPACE;
+ } else if (_is_attr (XNCursor, sts_attr)) {
+ rec->sts_attr.cursor = *(Cursor *) sts_attr->value;
+ attrs |= SCIM_X11_IC_STS_CURSOR;
+ } else {
+ std::cerr << __FILE__ << "(" << __LINE__ << "):"
+ <<"Unknown attr: " << sts_attr->name << std::endl;
+ }
+ }
+
+ String connect_locale =
+ get_connection_locale ((int)call_data->connect_id);
+
+ if (connect_locale != rec->locale) {
+ rec->locale = connect_locale;
+ rec->encoding = scim_get_locale_encoding (connect_locale);
+ attrs |= SCIM_X11_IC_ENCODING;
+ }
+
+ return attrs;
+}
+
+uint32
+X11ICManager::set_ic_values (IMChangeICStruct *call_data)
+{
+ if (call_data == NULL) return 0;
+
+ X11IC *rec = find_ic (call_data->icid);
+
+ if (rec == NULL) return 0;
+
+ return store_ic_values (rec, call_data);
+}
+
+uint32
+X11ICManager::get_ic_values (IMChangeICStruct *call_data)
+{
+ if (call_data == NULL) return 0;
+
+ XICAttribute *ic_attr = call_data->ic_attr;
+ XICAttribute *pre_attr = call_data->preedit_attr;
+ XICAttribute *sts_attr = call_data->status_attr;
+
+ X11IC *rec = find_ic (call_data->icid);
+
+ if (rec == NULL) return 0;
+
+ int i;
+ uint32 attrs = 0;
+
+ for (i = 0; i < (int) call_data->ic_attr_num; ++i, ++ic_attr) {
+ if (_is_attr (XNFilterEvents, ic_attr)) {
+ ic_attr->value = (void *) malloc (sizeof (CARD32));
+ *(CARD32 *) ic_attr->value = KeyPressMask | KeyReleaseMask;
+ ic_attr->value_length = sizeof (CARD32);
+ attrs |= SCIM_X11_IC_FILTER_EVENTS;
+ } else {
+ std::cerr << __FILE__ << "(" << __LINE__ << "):"
+ <<"Unknown attr: " << ic_attr->name << std::endl;
+ }
+ }
+
+ // preedit attributes
+ for (i = 0; i < (int) call_data->preedit_attr_num; ++i, ++pre_attr) {
+ if (_is_attr (XNArea, pre_attr)) {
+ pre_attr->value = (void *) malloc (sizeof (XRectangle));
+ *(XRectangle *) pre_attr->value = rec->pre_attr.area;
+ pre_attr->value_length = sizeof (XRectangle);
+ attrs |= SCIM_X11_IC_PRE_AREA;
+ } else if (_is_attr (XNAreaNeeded, pre_attr)) {
+ pre_attr->value = (void *) malloc (sizeof (XRectangle));
+ *(XRectangle *) pre_attr->value = rec->pre_attr.area_needed;
+ pre_attr->value_length = sizeof (XRectangle);
+ attrs |= SCIM_X11_IC_PRE_AREA_NEEDED;
+ } else if (_is_attr (XNSpotLocation, pre_attr)) {
+ pre_attr->value = (void *) malloc (sizeof (XPoint));
+ *(XPoint *) pre_attr->value = rec->pre_attr.spot_location;
+ pre_attr->value_length = sizeof (XPoint);
+ attrs |= SCIM_X11_IC_PRE_SPOT_LOCATION;
+ } else if (_is_attr (XNFontSet, pre_attr)) {
+ CARD16 base_len = (CARD16) rec->pre_attr.base_font.size ();
+ int total_len = sizeof (CARD16) + (CARD16) base_len;
+ char *p;
+ pre_attr->value = (void *) malloc (total_len);
+ p = (char *) pre_attr->value;
+ memmove (p, &base_len, sizeof (CARD16));
+ p += sizeof (CARD16);
+ strncpy (p, rec->pre_attr.base_font.c_str (), base_len);
+ pre_attr->value_length = total_len;
+ attrs |= SCIM_X11_IC_PRE_FONTSET;
+ } else if (_is_attr (XNForeground, pre_attr)) {
+ pre_attr->value = (void *) malloc (sizeof (CARD32));
+ *(CARD32 *) pre_attr->value = rec->pre_attr.foreground;
+ pre_attr->value_length = sizeof (CARD32);
+ attrs |= SCIM_X11_IC_PRE_FOREGROUND;
+ } else if (_is_attr (XNBackground, pre_attr)) {
+ pre_attr->value = (void *) malloc (sizeof (CARD32));
+ *(CARD32 *) pre_attr->value = rec->pre_attr.background;
+ pre_attr->value_length = sizeof (CARD32);
+ attrs |= SCIM_X11_IC_PRE_BACKGROUND;
+ } else if (_is_attr (XNLineSpace, pre_attr)) {
+ pre_attr->value = (void *) malloc (sizeof (CARD32));
+ *(CARD32 *) pre_attr->value = rec->pre_attr.line_space;
+ pre_attr->value_length = sizeof (CARD32);
+ attrs |= SCIM_X11_IC_PRE_LINE_SPACE;
+ } else {
+ std::cerr << __FILE__ << "(" << __LINE__ << "):"
+ <<"Unknown attr: " << pre_attr->name << std::endl;
+ }
+ }
+
+ // status attributes
+ for (i = 0; i < (int) call_data->status_attr_num; ++i, ++sts_attr) {
+ if (_is_attr (XNArea, sts_attr)) {
+ sts_attr->value = (void *) malloc (sizeof (XRectangle));
+ *(XRectangle *) sts_attr->value = rec->sts_attr.area;
+ sts_attr->value_length = sizeof (XRectangle);
+ attrs |= SCIM_X11_IC_STS_AREA;
+ } else if (_is_attr (XNAreaNeeded, sts_attr)) {
+ sts_attr->value = (void *) malloc (sizeof (XRectangle));
+ *(XRectangle *) sts_attr->value = rec->sts_attr.area_needed;
+ sts_attr->value_length = sizeof (XRectangle);
+ attrs |= SCIM_X11_IC_STS_AREA_NEEDED;
+ } else if (_is_attr (XNFontSet, sts_attr)) {
+ CARD16 base_len = (CARD16) rec->sts_attr.base_font.size ();
+ int total_len = sizeof (CARD16) + (CARD16) base_len;
+ char *p;
+ sts_attr->value = (void *) malloc (total_len);
+ p = (char *) sts_attr->value;
+ memmove (p, &base_len, sizeof (CARD16));
+ p += sizeof (CARD16);
+ strncpy (p, rec->sts_attr.base_font.c_str (), base_len);
+ sts_attr->value_length = total_len;
+ attrs |= SCIM_X11_IC_STS_FONTSET;
+ } else if (_is_attr (XNForeground, sts_attr)) {
+ sts_attr->value = (void *) malloc (sizeof (CARD32));
+ *(CARD32 *) sts_attr->value = rec->sts_attr.foreground;
+ sts_attr->value_length = sizeof (CARD32);
+ attrs |= SCIM_X11_IC_STS_FOREGROUND;
+ } else if (_is_attr (XNBackground, sts_attr)) {
+ sts_attr->value = (void *) malloc (sizeof (CARD32));
+ *(CARD32 *) sts_attr->value = rec->sts_attr.background;
+ sts_attr->value_length = sizeof (CARD32);
+ attrs |= SCIM_X11_IC_STS_BACKGROUND;
+ } else if (_is_attr (XNLineSpace, sts_attr)) {
+ sts_attr->value = (void *) malloc (sizeof (CARD32));
+ *(CARD32 *) sts_attr->value = rec->sts_attr.line_space;
+ sts_attr->value_length = sizeof (CARD32);
+ attrs |= SCIM_X11_IC_STS_LINE_SPACE;
+ } else {
+ std::cerr << __FILE__ << "(" << __LINE__ << "):"
+ <<"Unknown attr: " << sts_attr->name << std::endl;
+ }
+ }
+
+ return attrs;
+}
+
+/*
+vi:ts=4:nowrap:expandtab
+*/
--- /dev/null
+/** @file scim_x11_ic.h
+ * definition of X11IC related classes.
+ */
+
+/*
+ * Smart Common Input Method
+ *
+ * Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
+ *
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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 Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+ * Boston, MA 02111-1307 USA
+ *
+ * $Id: scim_x11_ic.h,v 1.10 2005/06/26 16:35:12 suzhe Exp $
+ */
+
+#if !defined (__SCIM_X11_IC_H)
+#define __SCIM_X11_IC_H
+
+#include "scim_stl_map.h"
+
+using namespace scim;
+
+struct X11PreeditAttributes
+{
+ XRectangle area; /* area */
+ XRectangle area_needed; /* area needed */
+ XPoint spot_location; /* spot location */
+ Colormap cmap; /* colormap */
+ CARD32 foreground; /* foreground */
+ CARD32 background; /* background */
+ Pixmap bg_pixmap; /* background pixmap */
+ String base_font; /* base font of fontset */
+ CARD32 line_space; /* line spacing */
+ Cursor cursor; /* cursor */
+};
+
+struct X11StatusAttributes
+{
+ XRectangle area; /* area */
+ XRectangle area_needed; /* area needed */
+ Colormap cmap; /* colormap */
+ CARD32 foreground; /* foreground */
+ CARD32 background; /* background */
+ Pixmap bg_pixmap; /* background pixmap */
+ String base_font; /* base font of fontset */
+ CARD32 line_space; /* line spacing */
+ Cursor cursor; /* cursor */
+};
+
+struct X11IC
+{
+ int siid; /* server instance id */
+ CARD16 icid; /* ic id */
+ CARD16 connect_id; /* connect id */
+ INT32 input_style; /* input style */
+ Window client_win; /* client window */
+ Window focus_win; /* focus window */
+ String encoding; /* connection encoding */
+ String locale; /* connection locale */
+ X11PreeditAttributes pre_attr; /* preedit attributes */
+ X11StatusAttributes sts_attr; /* status attributes */
+
+ bool shared_siid;
+ bool xims_on;
+ bool onspot_preedit_started;
+ int onspot_preedit_length; /* preedit length of onspot mode */
+ int onspot_caret; /* caret position of onspot mode */
+
+ X11IC *next;
+};
+
+#define SCIM_X11_IC_INPUT_STYLE (1<<0)
+#define SCIM_X11_IC_CLIENT_WINDOW (1<<1)
+#define SCIM_X11_IC_FOCUS_WINDOW (1<<2)
+#define SCIM_X11_IC_ENCODING (1<<3)
+#define SCIM_X11_IC_PRE_AREA (1<<4)
+#define SCIM_X11_IC_PRE_AREA_NEEDED (1<<5)
+#define SCIM_X11_IC_PRE_SPOT_LOCATION (1<<6)
+#define SCIM_X11_IC_PRE_COLORMAP (1<<7)
+#define SCIM_X11_IC_PRE_FOREGROUND (1<<8)
+#define SCIM_X11_IC_PRE_BACKGROUND (1<<9)
+#define SCIM_X11_IC_PRE_BG_PIXMAP (1<<10)
+#define SCIM_X11_IC_PRE_FONTSET (1<<11)
+#define SCIM_X11_IC_PRE_LINE_SPACE (1<<12)
+#define SCIM_X11_IC_PRE_CURSOR (1<<13)
+#define SCIM_X11_IC_STS_AREA (1<<14)
+#define SCIM_X11_IC_STS_AREA_NEEDED (1<<15)
+#define SCIM_X11_IC_STS_COLORMAP (1<<16)
+#define SCIM_X11_IC_STS_FOREGROUND (1<<17)
+#define SCIM_X11_IC_STS_BACKGROUND (1<<18)
+#define SCIM_X11_IC_STS_BG_PIXMAP (1<<19)
+#define SCIM_X11_IC_STS_FONTSET (1<<20)
+#define SCIM_X11_IC_STS_LINE_SPACE (1<<21)
+#define SCIM_X11_IC_STS_CURSOR (1<<22)
+#define SCIM_X11_IC_FILTER_EVENTS (1<<23)
+
+class X11ICManager
+{
+#if SCIM_USE_STL_EXT_HASH_MAP
+ typedef __gnu_cxx::hash_map <int, String, __gnu_cxx::hash <int> > ConnectionLocaleMap;
+#elif SCIM_USE_STL_HASH_MAP
+ typedef std::hash_map <int, String, std::hash <int> > ConnectionLocaleMap;
+#else
+ typedef std::map <int, String> ConnectionLocaleMap;
+#endif
+
+ X11IC *m_ic_list;
+ X11IC *m_free_list;
+
+ ConnectionLocaleMap m_connect_locales;
+
+public:
+ X11ICManager ();
+ ~X11ICManager ();
+
+private:
+ /**
+ * create an empty scimX11IC struct.
+ */
+ X11IC * new_ic ();
+
+ /**
+ * store the attributes in call_data to rec.
+ * @return a bitsets indicates which attributes are set.
+ */
+ uint32 store_ic_values (X11IC *rec, IMChangeICStruct *call_data);
+
+ /**
+ * delete a X11IC struct according to its icid.
+ */
+ void delete_ic (CARD16 icid);
+
+public:
+ void new_connection (IMOpenStruct *call_data);
+ void delete_connection (IMCloseStruct *call_data);
+
+ String get_connection_locale (CARD16 connect_id);
+
+ /**
+ * Create a new X11IC struct and set its attributes.
+ * @return a bitsets indicates which attributes are set.
+ */
+ uint32 create_ic (IMChangeICStruct *call_data, int siid);
+
+ X11IC * find_ic (CARD16 icid);
+ X11IC * find_ic_by_siid (int siid);
+
+ void destroy_ic (IMDestroyICStruct *call_data);
+
+ /**
+ * load the attributes of ic into call_data
+ * @return a bitsets indicates which attributes are loaded.
+ */
+ uint32 get_ic_values (IMChangeICStruct *call_data);
+
+ /**
+ * store the attributes in call_data to rec.
+ * @return a bitsets indicates which attributes are set.
+ */
+ uint32 set_ic_values (IMChangeICStruct *call_data);
+};
+
+#endif // _SCIM_X11_IC_H
+
+/*
+vi:ts=4:nowrap:ai:expandtab
+*/
/*
* Smart Common Input Method
- *
+ *
* Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
*
*
}
void
+SocketInstance::set_prediction_allow (bool allow)
+{
+ Transaction trans;
+
+ global->init_transaction (trans);
+
+ SCIM_DEBUG_IMENGINE(1) << __func__<< " (" << m_peer_id << ")\n";
+
+ trans.put_command (ISM_TRANS_CMD_SET_PREDICTION_ALLOW);
+ trans.put_data (m_peer_id);
+ trans.put_data ((uint32) allow);
+
+ commit_transaction (trans);
+}
+
+void
+SocketInstance::set_layout (unsigned int layout)
+{
+ Transaction trans;
+
+ global->init_transaction (trans);
+
+ SCIM_DEBUG_IMENGINE(1) << __func__<< " (" << m_peer_id << ")\n";
+
+ trans.put_command (ISM_TRANS_CMD_SET_LAYOUT);
+ trans.put_data (m_peer_id);
+ trans.put_data (layout);
+
+ commit_transaction (trans);
+}
+
+void
SocketInstance::reset_option ()
{
Transaction trans;
SCIM_DEBUG_IMENGINE(3) << " start_helper (" << helper_uuid << ")\n";
start_helper (helper_uuid);
}
- break;
+ break;
}
case SCIM_TRANS_CMD_STOP_HELPER:
{
SCIM_DEBUG_IMENGINE(3) << " stop_helper (" << helper_uuid << ")\n";
stop_helper (helper_uuid);
}
- break;
+ break;
}
case SCIM_TRANS_CMD_SEND_HELPER_EVENT:
{
SCIM_DEBUG_IMENGINE(3) << " send_helper_event (" << helper_uuid << ")\n";
send_helper_event (helper_uuid, temp_trans);
}
- break;
+ break;
}
case SCIM_TRANS_CMD_OK:
{
/* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable. */
-/*
+/*
* Smart Common Input Method
- *
+ *
* Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
*
*
virtual void update_lookup_table_page_size (unsigned int page_size);
virtual void lookup_table_page_up ();
virtual void lookup_table_page_down ();
+ virtual void set_prediction_allow (bool allow);
+ virtual void set_layout (unsigned int layout);
virtual void reset_option ();
virtual void reset ();
virtual void focus_in ();
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Jihoon Kim <jihoon48.kim@samsung.com>, Haifeng Deng <haifeng.deng@samsung.com>
*
void create_entry(struct appdata *ad)
{
ad->eb = elm_entry_add(ad->eb_layout);
- elm_layout_content_set (ad->eb_layout, "btn_text", ad->eb);
+ elm_object_part_content_set(ad->eb_layout, "btn_text", ad->eb);
// Set the layout of soft keyboard when entry has a focus or is clicked.
elm_entry_input_panel_layout_set(ad->eb, ELM_INPUT_PANEL_LAYOUT_URL);
</tr>
</table>
@code
-static void entry_application(appdata * ad)
+static void entry_application(struct appdata *ad)
{
Evas_Object *en;
Ecore_IMF_Context *imf_context = NULL;
</tr>
</table>
@code
-static void entry_application(appdata * ad)
+static void entry_application(struct appdata * ad)
{
Evas_Object *bt;
bt = elm_button_add(ad->win_main);
Evas_Object *en;
Ecore_IMF_Context *imf_context = NULL;
en = elm_entry_add(ad->layout_main);
- elm_layout_content_set(ad->layout_main, "entry", en);
+ elm_object_part_content_set(ad->layout_main, "entry", en);
imf_context = elm_entry_imf_context_get(en);
</tr>
</table>
@code
-static void entry_application(appdata * ad)
+static void entry_application(struct appdata * ad)
{
Evas_Object *en;
- Ecore_IMF_Context *imf_context;
en = elm_entry_add(ad->win_main);
-
elm_entry_input_panel_layout_set(en, ELM_INPUT_PANEL_LAYOUT_URL);
}
@endcode
<h3 class="pg">Get ISE Layout of current active ISE</h3>
@code
-void get_layout(struct appdata)
+void get_layout(struct appdata *ad)
{
+ Evas_Object *en;
Elm_Input_Panel_Layout layout ;
- Ecore_IMF_Context *imf_context = NULL;
+ en = elm_entry_add(ad->win_main);
+ elm_entry_input_panel_layout_set(en, ELM_INPUT_PANEL_LAYOUT_URL);
layout = elm_entry_input_panel_layout_get(en);
//here you can see what the current layout is
printf("the current layout is %d", layout);
}
@endcode
@}
-@defgroup ISF_Use_Cases1_93 How to register a callback for any change in ISE values
+@defgroup ISF_Use_Cases1_93 How to set the return key type of soft keyboard
+@ingroup ISF_Use_Cases1
+@{
+
+<h3 class="pg">How to set the return key type of soft keyboard</h3>
+The return key types that are currently supported by ISEs are<br>
+ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT<br>
+ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DONE<br>
+ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_GO<br>
+ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_JOIN<br>
+ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_LOGIN<br>
+ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_NEXT<br>
+ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEARCH<br>
+ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEND<p>
+<b>Sample code</b>: Refer to the example of ecore_imf_context_input_panel_return_key_type_set () API
+
+<table>
+<tr>
+ <th>DEFAULT type</th>
+ <th>DONE type</th>
+ <th>GO type</th>
+ <th>JOIN type</th>
+</tr>
+<tr>
+ <td>@image html TIZEN_ISF_PG_return_default.png</td>
+ <td>@image html TIZEN_ISF_PG_return_done.png</td>
+ <td>@image html TIZEN_ISF_PG_return_go.png</td>
+ <td>@image html TIZEN_ISF_PG_return_join.png</td>
+</tr>
+</table>
+
+<table>
+<tr>
+ <th>LOGIN type</th>
+ <th>NEXT type</th>
+ <th>SEARCH type</th>
+ <th>SEND type</th>
+</tr>
+<tr>
+ <td>@image html TIZEN_ISF_PG_return_login.png</td>
+ <td>@image html TIZEN_ISF_PG_return_next.png</td>
+ <td>@image html TIZEN_ISF_PG_return_search.png</td>
+ <td>@image html TIZEN_ISF_PG_return_send.png</td>
+</tr>
+</table>
+@code
+static void entry_application(struct appdata * ad)
+{
+ Evas_Object *en;
+ en = elm_entry_add(ad->win_main);
+
+ elm_entry_input_panel_return_key_type_set(en, ELM_INPUT_PANEL_RETURN_KEY_TYPE_DONE);
+}
+@endcode
+@}
+
+@defgroup ISF_Use_Cases1_94 How to register a callback for any change in ISE values
@ingroup ISF_Use_Cases1
@{
@code
void _input_panel_event_callback(void *data, Ecore_IMF_Context *ctx, int value)
{
- if(value == ECORE_IMF_INPUT_PANEL_STATE_SHOW) {
+ if (value == ECORE_IMF_INPUT_PANEL_STATE_SHOW) {
// ISE state has changed to ECORE_IMF_INPUT_PANEL_STATE_SHOW status
- } else if(value == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
+ } else if (value == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
// ISE state has changed to ECORE_IMF_INPUT_PANEL_STATE_HIDE status
}
printf("value: %d\n", value);
{
Evas_Object *en;
en = elm_entry_add(ad->layout_main);
- elm_layout_content_set(ad->layout_main, "entry", en);
+ elm_object_part_content_set(ad->layout_main, "entry", en);
Ecore_IMF_Context *imf_context = elm_entry_imf_context_get(en); // Get the input context in the entry
}
@endcode
@}
-@defgroup ISF_Use_Cases1_94 Unregister a callback for any change in ISE values
+@defgroup ISF_Use_Cases1_95 Unregister a callback for any change in ISE values
@ingroup ISF_Use_Cases1
@{
Evas_Object *en;
en = elm_entry_add(ad->win_main);
- elm_layout_content_set(ad->layout_main, "entry", en);
+ elm_object_part_content_set(ad->layout_main, "entry", en);
elm_entry_input_panel_layout_set(en, ELM_INPUT_PANEL_LAYOUT_NUMBER);
}
@endcode
@}
-@defgroup ISF_Use_Cases1_95 How Application gets ISE Input String
+@defgroup ISF_Use_Cases1_96 How Application gets ISE Input String
@ingroup ISF_Use_Cases1
@{
{
Ecore_IMF_Context *imf_context = NULL;
imf_context = imf_context_create(NULL);
-
- ecore_imf_context_reset(imf_context);
- ecore_imf_context_focus_in(imf_context);
-
if (imf_context)
+ {
+ ecore_imf_context_reset(imf_context);
+ ecore_imf_context_focus_in(imf_context);
ecore_imf_context_input_panel_show(imf_context);
+ }
ecore_event_handler_add(ECORE_IMF_EVENT_COMMIT, _imf_event_commit_cb, NULL);
//please use ECORE_IMF_EVENT_PREEDIT_CHANGED if want preedit string
}
@endcode
@}
-@defgroup ISF_Use_Cases1_96 How Application gets ISE-Specific Key Event
+@defgroup ISF_Use_Cases1_97 How Application gets ISE-Specific Key Event
@ingroup ISF_Use_Cases1
@{
imf_context = imf_context_create(NULL);
if (imf_context)
+ {
+ ecore_imf_context_reset(imf_context);
+ ecore_imf_context_focus_in(imf_context);
ecore_imf_context_input_panel_show(imf_context);
-
- ecore_imf_context_reset(imf_context);
- ecore_imf_context_focus_in(imf_context);
-
+ }
ecore_event_handler_add(ECORE_IMF_EVENT_COMMIT, _imf_event_commit_cb, NULL);
//please use ECORE_IMF_EVENT_PREEDIT_CHANGED if want preedit string
//ecore_event_handler_add(ECORE_IMF_EVENT_PREEDIT_CHANGED, _imf_event_changed_cb, NULL);
}
@endcode
@}
-@defgroup ISF_Use_Cases1_97 How Application can set layout
+@defgroup ISF_Use_Cases1_98 How to get key event
@ingroup ISF_Use_Cases1
@{
else
sprintf (str, "");
- elm_object_label_set(_key_event_label, str);
+ elm_object_text_set(_key_event_label, str);
}
@endcode
free(preedit_string);
- elm_object_label_set(_preedit_event_label,str);
+ elm_object_text_set(_preedit_event_label,str);
return ECORE_CALLBACK_PASS_ON;
}
else
sprintf (str, "");
- elm_object_label_set(_commit_event_label,str);
+ elm_object_text_set(_commit_event_label,str);
return ECORE_CALLBACK_PASS_ON;
}
ecore_imf_context_preedit_string_get(imf_context, &preedit_string, &len);
sprint(str, "preedit string : %s\n", preedit_string);
- elm_object_label_set(label, str);
+ elm_object_text_set(label, str);
free(preedit_string);
return ECORE_CALLBACK_PASS_ON;
Ecore_IMF_Event_Commit *ev = (Ecore_IMF_Event_Commit *) event;
sprint(str, "commit string : %s\n", ev->str);
- elm_object_label_set(label, ev->str);
+ elm_object_text_set(label, ev->str);
return ECORE_CALLBACK_PASS_ON;
}
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Jihoon Kim <jihoon48.kim@samsung.com>, Haifeng Deng <haifeng.deng@samsung.com>
*
#define __ISE_CONTEXT_H
#include <Ecore_IMF.h>
+#include <Ecore_X.h>
typedef struct {
Ecore_IMF_Input_Panel_Lang language;
Eina_Bool prediction_allow;
Eina_Bool password_mode;
Eina_Bool caps_mode;
- int reserved[15];
+ Ecore_X_Window client_window;
+ int reserved[14];
} Ise_Context;
#endif /* __ISE_CONTEXT_H */
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
SocketClient m_socket_client;
m_socket_address.set_address (address);
- printf ("%s:%d...\n", __FUNCTION__, __LINE__);
- if (!m_socket_address.valid ())
+ if (!m_socket_address.valid ()) {
+ printf ("m_socket_address is not valid!!!\n");
return;
- printf ("%s:%d...\n", __FUNCTION__, __LINE__);
+ }
+
PanelClient panel_client;
if (panel_client.open_connection (config_name, display_name) >= 0) {
panel_client.prepare (id);
gtk_init (&argc, &argv);
#endif
- printf ("after gtk_init...\n");
try {
_enable_panel_agent_log (_enable_debug);
_enable_frontend_log (_enable_debug);
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
* ISF(Input Service Framework)
*
* ISF is based on SCIM 1.4.7 and extended for supporting more mobile fitable.
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact: Haifeng Deng <haifeng.deng@samsung.com>, Hengliang Luo <hl.luo@samsung.com>
*
/*
* Smart Common Input Method
- *
+ *
* Copyright (c) 2002-2005 James Su <suzhe@tsinghua.org.cn>
*
*
using std::cerr;
using std::endl;
+static bool check_socket_frontend (void)
+{
+ SocketAddress address;
+ SocketClient client;
+
+ uint32 magic;
+
+ address.set_address (scim_get_default_socket_frontend_address ());
+
+ if (!client.connect (address))
+ return false;
+
+ if (!scim_socket_open_connection (magic,
+ String ("ConnectionTester"),
+ String ("SocketFrontEnd"),
+ client,
+ 1000)) {
+ return false;
+ }
+
+ return true;
+}
+
int main (int argc, char *argv [])
{
struct tms tiks_buf;
int i;
bool daemon = false;
- bool socket = false;
+ bool socket = true;
bool manual = false;
int new_argc = 0;
char *new_argv [80];
+ /* Display version info */
cout << "Input Service Manager " << ISF_VERSION << "\n\n";
/* Get modules list */
- frontend_list.push_back ("socket");
+ scim_get_frontend_module_list (frontend_list);
config_list.push_back ("simple");
config_list.push_back ("socket");
load_engine_list.push_back (*it);
}
+ /* Use x11 FrontEnd as default if available. */
+ if (frontend_list.size ()) {
+ def_frontend = String ("x11");
+ if (std::find (frontend_list.begin (),
+ frontend_list.end (),
+ def_frontend) == frontend_list.end ())
+ def_frontend = frontend_list [0];
+ }
+
+ /* Use simple Config module as default if available. */
+ def_config = scim_global_config_read (SCIM_GLOBAL_CONFIG_DEFAULT_CONFIG_MODULE, String ("simple"));
+ if (std::find (config_list.begin (),
+ config_list.end (),
+ def_config) == config_list.end ())
+ def_config = config_list [0];
+
+ /* If no Socket Config/IMEngine/FrontEnd modules */
+ /* then do not try to start a SocketFrontEnd. */
+ if (std::find (frontend_list.begin (), frontend_list.end (), "socket") == frontend_list.end () ||
+ std::find (config_list.begin (), config_list.end (), "socket") == config_list.end () ||
+ std::find (engine_list.begin (), engine_list.end (), "socket") == engine_list.end ())
+ socket = false;
+
/* parse command options */
i = 0;
while (i < argc) {
cout << endl;
cout << "Available Config module:\n";
- for (it = config_list.begin (); it != config_list.end (); it++)
- {
+ for (it = config_list.begin (); it != config_list.end (); it++) {
if (*it != "dummy")
cout << " " << *it << endl;
}
}
}
+ if (!def_frontend.length ()) {
+ cerr << "No FrontEnd module is available!\n";
+ return -1;
+ }
+
+ if (!def_config.length ()) {
+ cerr << "No Config module is available!\n";
+ return -1;
+ }
+
+ /* If you try to use the socket feature manually,
+ then let you do it by yourself. */
+ if (def_frontend == "socket" || def_config == "socket" ||
+ std::find (load_engine_list.begin (), load_engine_list.end (), "socket") != load_engine_list.end ())
+ socket = false;
+
+ /* If the socket address of SocketFrontEnd and SocketIMEngine/SocketConfig are different,
+ then do not try to start the SocketFrontEnd instance automatically. */
+ if (scim_get_default_socket_frontend_address () != scim_get_default_socket_imengine_address () ||
+ scim_get_default_socket_frontend_address () != scim_get_default_socket_config_address ())
+ socket = false;
+
+ /* Try to start a SocketFrontEnd daemon first. */
+ if (socket) {
+ /* If no Socket FrontEnd is running, then launch one.
+ And set manual to false. */
+ if (!check_socket_frontend ()) {
+ cerr << "Launching a daemon with Socket FrontEnd...\n";
+ char *argv [] = { const_cast<char *> ("--stay"), 0 };
+ scim_launch (true,
+ def_config,
+ (load_engine_list.size () ? scim_combine_string_list (load_engine_list, ',') : "none"),
+ "socket",
+ argv);
+ manual = false;
+ }
+
+ /* If there is one Socket FrontEnd running and it's not manual mode,
+ then just use this Socket Frontend. */
+ if (!manual) {
+ for (int i = 0; i < 100; ++i) {
+ if (check_socket_frontend ()) {
+ def_config = "socket";
+ load_engine_list.clear ();
+ load_engine_list.push_back ("socket");
+ break;
+ }
+ scim_usleep (100000);
+ }
+ }
+ }
+
cerr << "Launching a process with " << def_frontend << " FrontEnd...\n";
/* Launch the scim process. */
}
void
-BackEndBase::add_specific_factory (const String &uuid,
+BackEndBase::add_specific_factory (const String &uuid,
const IMEngineFactoryPointer &factory)
{
m_impl->add_specific_factory (uuid, factory);
return;
}
+ factory = new ComposeKeyFactory ();
+
+ if (all_factories_count == 0 ||
+ std::find (m_impl->m_disabled_factories.begin (),
+ m_impl->m_disabled_factories.end (),
+ factory->get_uuid ()) == m_impl->m_disabled_factories.end ()) {
+ factory = m_impl->m_filter_manager->attach_filters_to_factory (factory);
+ add_factory (factory);
+ }
+
if (is_load_info) {
/*for (size_t i = 0; i < new_modules.size (); ++i)
add_module_info (config, new_modules [i]);*/
module_factories_count = add_module (config, new_modules [i], is_load_resource);
all_factories_count += module_factories_count;
}
-
- factory = new ComposeKeyFactory ();
-
- if (all_factories_count == 0 ||
- std::find (m_impl->m_disabled_factories.begin (),
- m_impl->m_disabled_factories.end (),
- factory->get_uuid ()) == m_impl->m_disabled_factories.end ()) {
- factory = m_impl->m_filter_manager->attach_filters_to_factory (factory);
- add_factory (factory);
- }
}
int
factory.reset ();
}
} else {
- SCIM_DEBUG_BACKEND (1) << " Loading IMEngine Factory " << j << " : " << "Failed\n";
+ std::cerr << " Loading IMEngine Factory " << module << "(" << j << ") is Failed!!!\n";
}
}
if (module_factories_count) {
SCIM_DEBUG_BACKEND (1) << module << " IMEngine module is successfully loaded.\n";
} else {
- SCIM_DEBUG_BACKEND (1) << "No Factory loaded from " << module << " IMEngine module!\n";
+ std::cerr << "No Factory loaded from " << module << " IMEngine module!!!\n";
if (first_load)
engine_module->unload ();
}
} else {
- SCIM_DEBUG_BACKEND (1) << "Failed to load " << module << " IMEngine module.\n";
+ std::cerr << __func__ << ": Failed to load " << module << " IMEngine module!!!\n";
+ engine_module->unload ();
}
}
factory.reset ();
}
}
-
- ime_module.unload ();
+ } else {
+ std::cerr << __func__ << ": Failed to load " << module_name << " IMEngine module!!!\n";
}
+
+ ime_module.unload ();
}
void
std::vector<IMEngineModule *>::iterator it4 = m_impl->m_engine_modules.begin ();
for (; it4 != m_impl->m_engine_modules.end (); it4++) {
if ((*it4)->get_module_name () == module) {
+ SCIM_DEBUG_BACKEND (1) << __FUNCTION__ << " : " << module << "\n";
(*it4)->unload ();
delete (*it4);
m_impl->m_engine_modules.erase (it4);
factory.reset ();
}
}
- ime_module.unload ();
+ } else {
+ std::cerr << __func__ << ": Failed to load " << module_name << " IMEngine module!!!\n";
}
+ ime_module.unload ();
fclose (engine_list_file);
}
int
FrontEndBase::new_instance (const ConfigPointer &config, const String &sf_uuid, const String& encoding)
{
- std::cout << "enter new_instance" << std::endl;
+ SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
IMEngineFactoryPointer factory = m_impl->m_backend->get_factory (sf_uuid);
- if (factory.null ())
- {
- m_impl->m_backend->add_factory_by_uuid(config, sf_uuid);
+ if (factory.null ()) {
+ m_impl->m_backend->add_factory_by_uuid (config, sf_uuid);
factory = m_impl->m_backend->get_factory (sf_uuid);
+ if (factory.null ()) {
+ std::cerr << "get_factory (" << sf_uuid << ") failed, and use ComposeKeyFactory\n";
+ factory = m_impl->m_backend->get_factory (SCIM_COMPOSE_KEY_FACTORY_UUID);
+ }
}
if (factory.null () || !factory->validate_encoding (encoding)) {
- SCIM_DEBUG_FRONTEND (1) << "IMEngineFactory " << sf_uuid
- << " does not support encoding " << encoding << "\n";
+ std::cerr << "IMEngineFactory " << sf_uuid << " does not support encoding " << encoding << "\n";
return -1;
}
- IMEngineInstancePointer si =
- factory->create_instance (encoding, m_impl->m_instance_count);
+ IMEngineInstancePointer si = factory->create_instance (encoding, m_impl->m_instance_count);
if (si.null ()) {
- SCIM_DEBUG_BACKEND(1) << "IMEngineFactory " << sf_uuid
- << " failed to create new instance!\n";
+ std::cerr << "IMEngineFactory " << sf_uuid << " failed to create new instance!\n";
return -1;
}
- ++ m_impl->m_instance_count;
+ ++m_impl->m_instance_count;
if (m_impl->m_instance_count < 0)
m_impl->m_instance_count = 0;
bool
FrontEndBase::replace_instance (int si_id, const String &sf_uuid)
{
+ SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
+
IMEngineFactoryPointer sf = m_impl->m_backend->get_factory (sf_uuid);
if (sf.null ()) return false;
}
}
- SCIM_DEBUG_BACKEND(1) << "Cannot find IMEngine Instance " << si_id << " to replace.\n";
+ std::cerr << "Cannot find IMEngine Instance " << si_id << " to replace.\n";
return false;
}
bool
FrontEndBase::delete_instance (int id)
{
+ SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << " id:" << id << "\n";
+
String del_uuid;
bool ret = false;
IMEngineInstanceRepository::iterator it = m_impl->m_instance_repository.find (id);
if (it != m_impl->m_instance_repository.end ()) {
- std::cout << "delete_instance:" << it->second->get_factory_uuid() << "\n";
- del_uuid = it->second->get_factory_uuid();
+ SCIM_DEBUG_FRONTEND(1) << "delete_instance:" << it->second->get_factory_uuid () << "\n";
+ del_uuid = it->second->get_factory_uuid ();
m_impl->m_instance_repository.erase (it);
ret = true;
}
- if (ret)
- {
+ if (ret) {
std::vector<String> use_uuids;
use_uuids.clear ();
- for (it = m_impl->m_instance_repository.begin(); it != m_impl->m_instance_repository.end(); it++)
- {
- std::vector<String>::iterator it2 = use_uuids.begin();
+ for (it = m_impl->m_instance_repository.begin (); it != m_impl->m_instance_repository.end (); it++) {
+ std::vector<String>::iterator it2 = use_uuids.begin ();
- for (; it2 != use_uuids.end(); it2++)
- {
- if (*it2 == it->second->get_factory_uuid())
+ for (; it2 != use_uuids.end (); it2++) {
+ if (*it2 == it->second->get_factory_uuid ())
break;
}
- if (it2 == use_uuids.end())
- use_uuids.push_back(it->second->get_factory_uuid());
+ if (it2 == use_uuids.end ())
+ use_uuids.push_back (it->second->get_factory_uuid ());
}
m_impl->m_backend->release_module (use_uuids, del_uuid);
}
}
void
+FrontEndBase::set_prediction_allow (int id, bool allow) const
+{
+ IMEngineInstancePointer si = m_impl->find_instance (id);
+
+ if (!si.null ()) si->set_prediction_allow (allow);
+}
+
+void
+FrontEndBase::set_layout (int id, unsigned int layout) const
+{
+ IMEngineInstancePointer si = m_impl->find_instance (id);
+
+ if (!si.null ()) si->set_layout (layout);
+}
+
+void
FrontEndBase::reset_option (int id) const
{
IMEngineInstancePointer si = m_impl->find_instance (id);
return false;
}
void
-FrontEndBase::dump_instances ()
+FrontEndBase::dump_instances (void)
{
- std::cout << "Instances in FrontEnd:" << std::endl;
+ SCIM_DEBUG_FRONTEND(1) << __FUNCTION__ << "...\n";
IMEngineInstanceRepository::iterator it = m_impl->m_instance_repository.begin ();
- for (; it != m_impl->m_instance_repository.end (); it++)
- {
+ for (; it != m_impl->m_instance_repository.end (); it++) {
String name = get_instance_uuid (it->first);
- std::cout << "\t" << name << "-----" << it->first << std::endl;
+ SCIM_DEBUG_FRONTEND(1) << "\t" << name << "-----" << it->first << "\n";
}
return;
void lookup_table_page_down (int id) const;
/**
+ * @brief Set prediction allow.
+ * @param id the IMEngine instance id.
+ * @param allow - the flag of prediction allow.
+ */
+ void set_prediction_allow (int id, bool allow) const;
+
+ /**
+ * @brief Set layout.
+ * @param id the IMEngine instance id.
+ * @param layout - the layout.
+ */
+ void set_layout (int id, unsigned int layout) const;
+
+ /**
* @brief reset a specific IMEngine option.
* @param id the id of the IMEngine instance to be reset.
*/
HelperAgentSignalInt signal_update_associate_table_page_size;
HelperAgentSignalVoid signal_reset_ise_context;
HelperAgentSignalUintVoid signal_turn_on_log;
+ HelperAgentSignalInt signal_update_displayed_candidate_number;
public:
HelperAgentImpl () : magic (0), magic_active (0), timeout (-1) { }
m_impl->signal_turn_on_log (this, isOn);
break;
}
+ case ISM_TRANS_CMD_UPDATE_DISPLAYED_CANDIDATE:
+ {
+ uint32 size;
+ if (m_impl->recv.get_data (size))
+ m_impl->signal_update_displayed_candidate_number (this, ic, ic_uuid, size);
+ break;
+ }
default:
break;
}
}
/**
+ * @brief Update the preedit caret position in the preedit string.
+ *
+ * @param caret - the new position of the preedit caret.
+ */
+void
+HelperAgent::update_preedit_caret (int caret) const
+{
+ if (m_impl->socket_active.is_connected ()) {
+ m_impl->send.clear ();
+ m_impl->send.put_command (SCIM_TRANS_CMD_REQUEST);
+ m_impl->send.put_data (m_impl->magic_active);
+ m_impl->send.put_command (SCIM_TRANS_CMD_UPDATE_PREEDIT_CARET);
+ m_impl->send.put_data ((uint32)caret);
+ m_impl->send.write_to_socket (m_impl->socket_active, m_impl->magic_active);
+ }
+}
+
+/**
* @brief Update a new string for aux.
*
* @param str The string to be updated.
}
/**
- * @ brief Request to get surrounding text.
+ * @brief Request to get surrounding text.
*
* @param uuid The helper ISE UUID.
* @param maxlen_before The max length of before.
}
/**
- * @ brief Request to delete surrounding text.
+ * @brief Request to delete surrounding text.
*
* @param offset The offset for cursor position.
* @param len The length for delete text.
}
/**
+ * @brief Update ISE window geometry.
+ *
+ * @param x The x position in screen.
+ * @param y The y position in screen.
+ * @param width The ISE window width.
+ * @param height The ISE window height.
+ */
+void
+HelperAgent::update_geometry (int x, int y, int width, int height) const
+{
+ if (m_impl->socket_active.is_connected ()) {
+ m_impl->send.clear ();
+ m_impl->send.put_command (SCIM_TRANS_CMD_REQUEST);
+ m_impl->send.put_data (m_impl->magic_active);
+ m_impl->send.put_command (ISM_TRANS_CMD_UPDATE_ISE_GEOMETRY);
+ m_impl->send.put_data (x);
+ m_impl->send.put_data (y);
+ m_impl->send.put_data (width);
+ m_impl->send.put_data (height);
+ m_impl->send.write_to_socket (m_impl->socket_active, m_impl->magic_active);
+ }
+}
+
+/**
+ * @brief Request to expand candidate window.
+ */
+void
+HelperAgent::expand_candidate (void) const
+{
+ if (m_impl->socket_active.is_connected ()) {
+ m_impl->send.clear ();
+ m_impl->send.put_command (SCIM_TRANS_CMD_REQUEST);
+ m_impl->send.put_data (m_impl->magic_active);
+ m_impl->send.put_command (ISM_TRANS_CMD_EXPAND_CANDIDATE);
+ m_impl->send.write_to_socket (m_impl->socket_active, m_impl->magic_active);
+ }
+}
+
+/**
+ * @brief Request to contract candidate window.
+ */
+void
+HelperAgent::contract_candidate (void) const
+{
+ if (m_impl->socket_active.is_connected ()) {
+ m_impl->send.clear ();
+ m_impl->send.put_command (SCIM_TRANS_CMD_REQUEST);
+ m_impl->send.put_data (m_impl->magic_active);
+ m_impl->send.put_command (ISM_TRANS_CMD_CONTRACT_CANDIDATE);
+ m_impl->send.write_to_socket (m_impl->socket_active, m_impl->magic_active);
+ }
+}
+
+/**
* @brief Connect a slot to Helper exit signal.
*
* This signal is used to let the Helper exit.
return m_impl->signal_turn_on_log.connect (slot);
}
+/**
+ * @brief Connect a slot to Helper update displayed candidate number signal.
+ *
+ * This signal is used to inform helper ISE displayed candidate number.
+ *
+ * The prototype of the slot is:
+ * void update_displayed_candidate_number (const HelperAgent *, int ic, const String &uuid, int number);
+ */
+Connection
+HelperAgent::signal_connect_update_displayed_candidate_number (HelperAgentSlotInt *slot)
+{
+ return m_impl->signal_update_displayed_candidate_number.connect (slot);
+}
+
} /* namespace scim */
/*
void update_associate_string (const LookupTable &table) const;
/**
- * @ brief When the input context of ISE is changed,
+ * @brief When the input context of ISE is changed,
* ISE can call this function to notify application
*
* @param type type of event.
uint32 value) const;
/**
- * @ brief Request to get surrounding text.
+ * @brief Request to get surrounding text.
*
* @param uuid The helper ISE UUID.
* @param maxlen_before The max length of before.
int maxlen_after) const;
/**
- * @ brief Request to delete surrounding text.
+ * @brief Request to delete surrounding text.
*
* @param offset The offset for cursor position.
* @param len The length for delete text.
int len) const;
/**
- * @ brief Set candidate position in screen.
+ * @brief Set candidate position in screen.
*
* @param left The x position in screen.
* @param top The y position in screen.
int top) const;
/**
- * @ brief Request to hide candidate window.
+ * @brief Request to hide candidate window.
*/
void candidate_hide (void) const;
/**
- * @ brief Request to get candidate window size and position.
+ * @brief Request to get candidate window size and position.
*
* @param uuid The helper ISE UUID.
*/
void get_candidate_window_geometry (const String &uuid) const;
/**
- * @ brief Set current keyboard ISE.
+ * @brief Set current keyboard ISE.
*
* @param uuid The keyboard ISE UUID.
*/
void set_keyboard_ise_by_uuid (const String &uuid) const;
/**
- * @ brief Request to get current keyboard ISE information.
+ * @brief Request to get current keyboard ISE information.
*
* @param uuid The helper ISE UUID.
*/
void get_keyboard_ise (const String &uuid) const;
/**
- * @ brief Request to get uuid list of all keyboard ISEs.
+ * @brief Request to get uuid list of all keyboard ISEs.
*
* @param uuid The helper ISE UUID.
*/
void get_keyboard_ise_list (const String &uuid) const;
+ /**
+ * @brief Update ISE window geometry.
+ *
+ * @param x The x position in screen.
+ * @param y The y position in screen.
+ * @param width The ISE window width.
+ * @param height The ISE window height.
+ */
+ void update_geometry (int x,
+ int y,
+ int width,
+ int height) const;
+
+ /**
+ * @brief Request to expand candidate window.
+ */
+ void expand_candidate (void) const;
+
+ /**
+ * @brief Request to contract candidate window.
+ */
+ void contract_candidate (void) const;
+
+ /**
+ * @brief Update the preedit caret position in the preedit string.
+ *
+ * @param caret - the new position of the preedit caret.
+ */
+ void update_preedit_caret (int caret) const;
+
public:
/**
* @brief Connect a slot to Helper exit signal.
* The prototype of the slot is:
* void turn_on_log (const HelperAgent *agent, uint32 &on);
*/
- Connection signal_connect_turn_on_log (HelperAgentSlotUintVoid *slot);
+ Connection signal_connect_turn_on_log (HelperAgentSlotUintVoid *slot);
+
+ /**
+ * @brief Connect a slot to Helper update displayed candidate number signal.
+ *
+ * This signal is used to inform helper ISE displayed candidate number.
+ *
+ * The prototype of the slot is:
+ * void update_displayed_candidate_number (const HelperAgent *, int ic, const String &uuid, int number);
+ */
+ Connection signal_connect_update_displayed_candidate_number (HelperAgentSlotInt *slot);
};
/** @} */
*
*/
+#define Uses_SCIM_IMENGINE_MODULE
+#define Uses_SCIM_HELPER_MODULE
#define Uses_SCIM_HELPER_MANAGER
#define Uses_SCIM_SOCKET
#define Uses_SCIM_TRANSACTION
std::vector <HelperInfo> m_helpers;
uint32 m_socket_key;
+
+public:
SocketClient m_socket_client;
int m_socket_timeout;
: m_socket_key (0),
m_socket_timeout (scim_get_default_socket_timeout ())
{
- if (open_connection ()) {
- get_helper_list ();
- }
+ open_connection ();
}
~HelperManagerImpl ()
void run_helper (const String &uuid, const String &config_name, const String &display)
{
- if (!m_socket_client.is_connected () || !uuid.length () || !m_helpers.size ())
+ SCIM_DEBUG_MAIN(1) << __FUNCTION__ << "...\n";
+ if (!uuid.length () || !m_helpers.size ())
+ return;
+ if (!m_socket_client.is_connected () && !open_connection ())
return;
Transaction trans;
-
for (int i = 0; i < 3; ++i) {
trans.clear ();
trans.put_command (SCIM_TRANS_CMD_REQUEST);
return;
m_socket_client.close ();
-
- if (open_connection ())
- get_helper_list ();
+ if (!open_connection ())
+ break;
}
}
- void stop_helper (const String &name) const
+ void stop_helper (const String &name)
{
- if (!m_socket_client.is_connected () || !name.length ())
+ SCIM_DEBUG_MAIN(1) << __FUNCTION__ << "...\n";
+ if (!name.length ())
+ return;
+ if (!m_socket_client.is_connected () && !open_connection ())
return;
Transaction trans;
+ for (int i = 0; i < 3; ++i) {
+ trans.clear ();
+ trans.put_command (SCIM_TRANS_CMD_REQUEST);
+ trans.put_data (m_socket_key);
+ trans.put_command (SCIM_TRANS_CMD_HELPER_MANAGER_STOP_HELPER);
+ trans.put_data (name);
+
+ int cmd;
+ if (trans.write_to_socket (m_socket_client) &&
+ trans.read_from_socket (m_socket_client) &&
+ trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY &&
+ trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_OK)
+ return;
- trans.clear ();
- trans.put_command (SCIM_TRANS_CMD_REQUEST);
- trans.put_data (m_socket_key);
- trans.put_command (SCIM_TRANS_CMD_HELPER_MANAGER_STOP_HELPER);
- trans.put_data (name);
-
- int cmd;
- if (trans.write_to_socket (m_socket_client)
- && trans.read_from_socket (m_socket_client)
- && trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY
- && trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_OK)
- return;
+ m_socket_client.close ();
+ if (!open_connection ())
+ break;
+ }
}
- int get_active_ise_list (std::vector<String> &strlist) const
+ int get_active_ise_list (std::vector<String> &strlist)
{
- if (!m_socket_client.is_connected ())
+ SCIM_DEBUG_MAIN(1) << __FUNCTION__ << "...\n";
+ if (!m_socket_client.is_connected () && !open_connection ())
return -1;
strlist.clear ();
Transaction trans;
+ for (int i = 0; i < 3; ++i) {
+ trans.clear ();
+ trans.put_command (SCIM_TRANS_CMD_REQUEST);
+ trans.put_data (m_socket_key);
+ trans.put_command (ISM_TRANS_CMD_GET_ACTIVE_ISE_LIST);
- trans.clear ();
- trans.put_command (SCIM_TRANS_CMD_REQUEST);
- trans.put_data (m_socket_key);
- trans.put_command (ISM_TRANS_CMD_GET_ACTIVE_ISE_LIST);
-
- int cmd;
- if (trans.write_to_socket (m_socket_client) &&
- trans.read_from_socket (m_socket_client) )
- {
- if (trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY &&
- trans.get_data (strlist)) {
+ int cmd;
+ if (trans.write_to_socket (m_socket_client) &&
+ trans.read_from_socket (m_socket_client) &&
+ trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY &&
+ trans.get_data (strlist))
return (int)(strlist.size ());
- }
+
+ m_socket_client.close ();
+ if (!open_connection ())
+ break;
}
return -1;
}
- int send_display_name (String &name) const
+ int send_display_name (String &name)
{
- if (!m_socket_client.is_connected ())
+ SCIM_DEBUG_MAIN(1) << __FUNCTION__ << "...\n";
+ if (!m_socket_client.is_connected () && !open_connection ())
return -1;
Transaction trans;
+ for (int i = 0; i < 3; ++i) {
+ trans.clear ();
+ trans.put_command (SCIM_TRANS_CMD_REQUEST);
+ trans.put_data (m_socket_key);
+ trans.put_command (SCIM_TRANS_CMD_HELPER_MANAGER_SEND_DISPLAY);
+ trans.put_data (name);
- trans.clear ();
- trans.put_command (SCIM_TRANS_CMD_REQUEST);
- trans.put_data (m_socket_key);
-
- trans.put_command (SCIM_TRANS_CMD_HELPER_MANAGER_SEND_DISPLAY);
- trans.put_data (name);
+ int cmd;
+ if (trans.write_to_socket (m_socket_client) &&
+ trans.read_from_socket (m_socket_client) &&
+ trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY &&
+ trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_OK)
+ return 0;
- int cmd;
- if (trans.write_to_socket (m_socket_client)
- && trans.read_from_socket (m_socket_client)
- && trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY
- && trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_OK)
- return 0;
+ m_socket_client.close ();
+ if (!open_connection ())
+ break;
+ }
return -1;
}
- int send_ise_list (String &ise_list) const
+ int send_ise_list (String &ise_list)
{
- if (!m_socket_client.is_connected ())
+ SCIM_DEBUG_MAIN(1) << __FUNCTION__ << "...\n";
+ if (!m_socket_client.is_connected () && !open_connection ())
return -1;
Transaction trans;
+ for (int i = 0; i < 3; ++i) {
+ trans.clear ();
+ trans.put_command (SCIM_TRANS_CMD_REQUEST);
+ trans.put_data (m_socket_key);
+ trans.put_command (SCIM_TRANS_CMD_HELPER_MANAGER_SEND_ISE_LIST);
+ trans.put_data (ise_list);
- trans.clear ();
- trans.put_command (SCIM_TRANS_CMD_REQUEST);
- trans.put_data (m_socket_key);
-
- trans.put_command (SCIM_TRANS_CMD_HELPER_MANAGER_SEND_ISE_LIST);
- trans.put_data (ise_list);
-
- if (trans.write_to_socket (m_socket_client))
- return 0;
+ if (trans.write_to_socket (m_socket_client))
+ return 0;
+ m_socket_client.close ();
+ if (!open_connection ())
+ break;
+ }
return -1;
}
- int turn_on_log (uint32 isOn) const
+ int turn_on_log (uint32 isOn)
{
- if (!m_socket_client.is_connected ())
+ SCIM_DEBUG_MAIN(1) << __FUNCTION__ << "...\n";
+ if (!m_socket_client.is_connected () && !open_connection ())
return -1;
Transaction trans;
+ for (int i = 0; i < 3; ++i) {
+ trans.clear ();
+ trans.put_command (SCIM_TRANS_CMD_REQUEST);
+ trans.put_data (m_socket_key);
+ trans.put_command (ISM_TRANS_CMD_TURN_ON_LOG);
+ trans.put_data (isOn);
- trans.clear ();
- trans.put_command (SCIM_TRANS_CMD_REQUEST);
- trans.put_data (m_socket_key);
- trans.put_command (ISM_TRANS_CMD_TURN_ON_LOG);
- trans.put_data (isOn);
+ int cmd;
+ if (trans.write_to_socket (m_socket_client) &&
+ trans.read_from_socket (m_socket_client) &&
+ trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY &&
+ trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_OK)
+ return 0;
- int cmd;
- if (trans.write_to_socket (m_socket_client)
- && trans.read_from_socket (m_socket_client)
- && trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY
- && trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_OK)
- return 0;
+ m_socket_client.close ();
+ if (!open_connection ())
+ break;
+ }
return -1;
}
bool open_connection (void)
{
+ SCIM_DEBUG_MAIN(1) << __FUNCTION__ << "...\n";
if (m_socket_client.is_connected ())
return true;
if (address.valid ()) {
if (!m_socket_client.connect (address)) {
- int i = 0;
- {
- std::cerr << " Re-connecting to ISF(scim) server.";
- for (i = 0; i < 200; ++i) {
+ int i = 0;
+ bool bConnected = false;
+
+ std::cerr << " Connecting to ISF(scim) server.";
+ for (i = 0; i < 50; ++i) {
+ if (m_socket_client.connect (address)) {
+ bConnected = true;
+ break;
+ }
+ scim_usleep (100000);
+ std::cerr << ".";
+ }
+ std::cerr << " Connected :" << i << "\n";
+
+ if (!bConnected) {
+ /* Get modules list */
+ std::vector<String> engine_list;
+ std::vector<String> helper_list;
+ std::vector<String> load_engine_list;
+ scim_get_imengine_module_list (engine_list);
+ scim_get_helper_module_list (helper_list);
+
+ std::vector<String>::iterator it;
+ for (it = engine_list.begin (); it != engine_list.end (); it++) {
+ if (*it != "socket")
+ load_engine_list.push_back (*it);
+ }
+ for (it = helper_list.begin (); it != helper_list.end (); it++)
+ load_engine_list.push_back (*it);
+
+ std::cerr << "Launching a ISF daemon with Socket FrontEnd...\n";
+ const char *new_argv [] = { "--stay", 0 };
+ scim_launch (true,
+ "simple",
+ (load_engine_list.size () ? scim_combine_string_list (load_engine_list, ',') : "none"),
+ "socket",
+ (char **)new_argv);
+
+ std::cerr << " Reconnecting to ISF(scim) server.";
+ for (i = 0; i < 50; ++i) {
if (m_socket_client.connect (address))
break;
scim_usleep (100000);
std::cerr << ".";
}
- std::cerr << " Connected :" << i << "\n";
+ std::cerr << " Reconnected :" << i << "\n";
}
}
}
"HelperLauncher",
m_socket_client,
m_socket_timeout)) {
+ get_helper_list ();
return true;
}
void get_helper_list (void)
{
- Transaction trans;
- uint32 num;
- int cmd;
- HelperInfo info;
+ SCIM_DEBUG_MAIN(1) << __FUNCTION__ << "...\n";
+ if (!m_socket_client.is_connected () && !open_connection ())
+ return;
m_helpers.clear ();
- trans.clear ();
- trans.put_command (SCIM_TRANS_CMD_REQUEST);
- trans.put_data (m_socket_key);
- trans.put_command (SCIM_TRANS_CMD_HELPER_MANAGER_GET_HELPER_LIST);
-
- if (trans.write_to_socket (m_socket_client) &&
- trans.read_from_socket (m_socket_client, m_socket_timeout)) {
+ Transaction trans;
+ for (int i = 0; i < 3; ++i) {
+ trans.clear ();
+ trans.put_command (SCIM_TRANS_CMD_REQUEST);
+ trans.put_data (m_socket_key);
+ trans.put_command (SCIM_TRANS_CMD_HELPER_MANAGER_GET_HELPER_LIST);
- if (trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY &&
+ int cmd;
+ uint32 num;
+ if (trans.write_to_socket (m_socket_client) &&
+ trans.read_from_socket (m_socket_client, m_socket_timeout) &&
+ trans.get_command (cmd) && cmd == SCIM_TRANS_CMD_REPLY &&
trans.get_data (num) && num > 0) {
-
for (uint32 j = 0; j < num; j++) {
+ HelperInfo info;
if (trans.get_data (info.uuid) &&
trans.get_data (info.name) &&
trans.get_data (info.icon) &&
m_helpers.push_back (info);
}
}
+ return;
}
+
+ m_socket_client.close ();
+ if (!open_connection ())
+ break;
}
}
};
return m_impl->get_helper_info (idx, info);
}
+int
+HelperManager::get_connection_number (void) const
+{
+ if (m_impl->m_socket_client.is_connected ())
+ return m_impl->m_socket_client.get_id ();
+ return -1;
+}
+
+bool
+HelperManager::has_pending_event (void) const
+{
+ if (m_impl->m_socket_client.is_connected () && m_impl->m_socket_client.wait_for_data (0) > 0)
+ return true;
+
+ return false;
+}
+
+bool
+HelperManager::filter_event (void)
+{
+ Transaction recv;
+ if (!m_impl->m_socket_client.is_connected () || !recv.read_from_socket (m_impl->m_socket_client, m_impl->m_socket_timeout))
+ return false;
+
+ return true;
+}
+
void
HelperManager::run_helper (const String &uuid, const String &config_name, const String &display) const
{
bool get_helper_info (unsigned int idx, HelperInfo &info) const;
/**
+ * @brief Get the connection id.
+ *
+ * @return the connection id
+ */
+ int get_connection_number (void) const;
+
+ /**
+ * @brief Check if there are any events available to be processed.
+ *
+ * If it returns true then HelperManager object should call
+ * HelperManager::filter_event () to process them.
+ *
+ * @return true if there are any events available.
+ */
+ bool has_pending_event (void) const;
+
+ /**
+ * @brief Process the pending events.
+ *
+ * This function will emit the corresponding signals according
+ * to the events.
+ *
+ * @return false if the connection is broken, otherwise return true.
+ */
+ bool filter_event (void);
+
+ /**
* @brief Run a specific helper.
*
* The helper will run in a newly forked process, so this function will return as soon
}
void
+IMEngineInstanceBase::set_prediction_allow (bool allow)
+{
+}
+
+void
+IMEngineInstanceBase::set_layout (unsigned int layout)
+{
+}
+
+void
IMEngineInstanceBase::reset_option ()
{
}
virtual void update_client_capabilities (unsigned int cap);
/** @} */
+ /**
+ * @brief Set prediction allow.
+ *
+ * @param allow - the flag of prediction allow.
+ */
+ virtual void set_prediction_allow (bool allow);
+
+ /**
+ * @brief Set layout.
+ *
+ * @param layout - the layout.
+ */
+ virtual void set_layout (unsigned int layout);
+
protected:
/**
* @name Signal activation functions
std::cerr << "Starting ...\n";
}
- backend->initialize (config, engine_list, true, true);
+ bool is_load_info = true;
+ if (engine_list.size () == 1 && engine_list[0] == "socket")
+ is_load_info = false;
+ backend->initialize (config, engine_list, true, is_load_info);
gettime (clock_start, "backend->initialize");
/* reset backend pointer, in order to destroy backend automatically. */
return AttributeList ();
}
+bool
+CommonLookupTable::add_attributes (int index,
+ const AttributeList &attrs)
+{
+ if (index < 0 || (uint32)index >= number_of_candidates ())
+ return false;
+
+ if (attrs.size () > 0) {
+ AttributeList::iterator start;
+ if ((uint32)index < number_of_candidates () - 1)
+ start = m_impl->m_attributes.begin () + m_impl->m_attrs_index [index+1];
+ else
+ start = m_impl->m_attributes.end ();
+ m_impl->m_attributes.insert (start, attrs.begin (), attrs.end ());
+
+ if ((uint32)index < number_of_candidates () - 1) {
+ for (uint32 i = index + 1; i < number_of_candidates (); i++)
+ m_impl->m_attrs_index[i] += attrs.size ();
+ }
+ }
+
+ return true;
+}
+
+bool
+CommonLookupTable::remove_attributes (int index)
+{
+ if (index < 0 || (uint32)index >= number_of_candidates ())
+ return false;
+
+ AttributeList::iterator start, end;
+
+ start = m_impl->m_attributes.begin () + m_impl->m_attrs_index [index];
+
+ if ((uint32)index < number_of_candidates () - 1)
+ end = m_impl->m_attributes.begin () + m_impl->m_attrs_index [index+1];
+ else
+ end = m_impl->m_attributes.end ();
+
+ if (start < end)
+ m_impl->m_attributes.erase (start, end);
+
+ if ((uint32)index < number_of_candidates () - 1) {
+ uint32 size = m_impl->m_attrs_index [index+1] - m_impl->m_attrs_index [index];
+ for (uint32 i = index + 1; i < number_of_candidates (); i++)
+ m_impl->m_attrs_index[i] -= size;
+ }
+
+ return true;
+}
+
void
CommonLookupTable::clear ()
{
*/
bool append_candidate (ucs4_t cand,
const AttributeList &attrs = AttributeList ());
+
+ /**
+ * @brief Add attributes for specified candidate.
+ *
+ * @param index - the candidate index in the lookup table.
+ * @param attrs - the attributes to control the display effect of this entry.
+ *
+ * @return true if success.
+ */
+ bool add_attributes (int index,
+ const AttributeList &attrs);
+
+ /**
+ * @brief Remove attributes for specified candidate.
+ *
+ * @param index - the candidate index in the lookup table.
+ *
+ * @return true if success.
+ */
+ bool remove_attributes (int index);
};
/** @} */
paths.clear ();
+ module_paths.push_back (String (SCIM_MODULE_PATH));
+
module_path_env = getenv ("SCIM_MODULE_PATH");
- if (module_path_env)
- {
+ if (module_path_env) {
struct stat buf;
- if (stat("/opt/etc/.hib_capturing", &buf) != 0)
+ if (stat ("/opt/etc/.hib_capturing", &buf) != 0)
module_paths.push_back (String (module_path_env));
}
- module_paths.push_back (String (SCIM_MODULE_PATH));
-
// append version to the end of the paths
for (it = module_paths.begin (); it != module_paths.end (); ++it) {
String tmp_dir;
typedef Signal3<void, int, int, int>
PanelAgentSignalIntIntInt;
+typedef Signal4<void, int, int, int, int>
+ PanelAgentSignalIntIntIntInt;
+
typedef Signal2<void, int, const Property &>
PanelAgentSignalIntProperty;
PanelAgentSignalIntIntInt m_signal_update_spot_location;
PanelAgentSignalFactoryInfo m_signal_update_factory_info;
PanelAgentSignalVoid m_signal_start_default_ise;
+ PanelAgentSignalIntInt m_signal_update_input_context;
PanelAgentSignalIntInt m_signal_set_candidate_ui;
PanelAgentSignalIntInt2 m_signal_get_candidate_ui;
PanelAgentSignalIntInt m_signal_set_candidate_position;
PanelAgentSignalRect m_signal_get_candidate_geometry;
+ PanelAgentSignalRect m_signal_get_input_panel_geometry;
PanelAgentSignalIntString m_signal_set_keyboard_ise;
PanelAgentSignalString2 m_signal_get_keyboard_ise;
PanelAgentSignalString m_signal_show_help;
PanelAgentSignalString m_signal_set_active_ise_by_name;
PanelAgentSignalVoid m_signal_focus_in;
PanelAgentSignalVoid m_signal_focus_out;
+ PanelAgentSignalVoid m_signal_expand_candidate;
+ PanelAgentSignalVoid m_signal_contract_candidate;
PanelAgentSignalBoolStringVector m_signal_get_ise_list;
PanelAgentSignalBoolStringVector m_signal_get_keyboard_ise_list;
- PanelAgentSignalInt m_signal_launch_helper_ise_list_selection;
+ PanelAgentSignalIntIntIntInt m_signal_update_ise_geometry;
PanelAgentSignalStringVector m_signal_get_language_list;
PanelAgentSignalStringVector m_signal_get_all_language;
PanelAgentSignalStrStringVector m_signal_get_ise_language;
if (client.connect (SocketAddress (m_socket_address))) {
client.close ();
}
+
+ if (TOOLBAR_HELPER_MODE == m_current_toolbar_mode) {
+ String helper_uuid = get_current_helper_uuid ();
+ hide_helper (helper_uuid);
+ stop_helper (helper_uuid, -2, 0);
+ }
}
int get_helper_list (std::vector <HelperInfo> & helpers) const
}
}
- void update_candidate_panel_event (uint32 nType, uint32 nValue)
+ void update_panel_event (int cmd, uint32 nType, uint32 nValue)
{
SCIM_DEBUG_MAIN(1) << __func__ << " (" << nType << ", " << nValue << ")\n";
ClientRepository::iterator iter = m_client_repository.begin ();
trans.clear ();
trans.put_command (SCIM_TRANS_CMD_REQUEST);
- trans.put_command (ISM_TRANS_CMD_UPDATE_ISF_CANDIDATE_PANEL);
+ trans.put_command (cmd);
trans.put_data (nType);
trans.put_data (nValue);
return client >= 0;
}
+ bool update_displayed_candidate_number (uint32 size)
+ {
+ SCIM_DEBUG_MAIN(1) << __func__ << " (" << size << ")\n";
+
+ int client;
+ uint32 context;
+
+ lock ();
+ get_focused_context (client, context);
+ unlock ();
+
+ helper_update_displayed_candidate_number (size);
+
+ return client >= 0;
+ }
+
bool trigger_property (const String &property)
{
SCIM_DEBUG_MAIN(1) << "PanelAgent::trigger_property (" << property << ")\n";
return false;
}
- void get_ise_geometry (int client_id)
+ void get_input_panel_geometry (int client_id)
{
- SCIM_DEBUG_MAIN(4) << "PanelAgent::get_ise_size ()\n";
- struct rectinfo info;
- bool ret = false;
+ SCIM_DEBUG_MAIN(4) << __func__ << "\n";
- TOOLBAR_MODE_T mode;
-
- mode = m_current_toolbar_mode;
-
- if (TOOLBAR_HELPER_MODE == mode)
- ret = get_helper_geometry (m_current_helper_uuid, info);
+ struct rectinfo info = {0, 0, 0, 0};
+ m_signal_get_input_panel_geometry (info);
Transaction trans;
Socket client_socket (client_id);
trans.clear ();
trans.put_command (SCIM_TRANS_CMD_REPLY);
-
- if (ret)
- {
- trans.put_command (SCIM_TRANS_CMD_OK);
- trans.put_data (info.pos_x);
- trans.put_data (info.pos_y);
- trans.put_data (info.width);
- trans.put_data (info.height);
- }
- else
- {
- std::cerr << "get_ise_size failed\n";
- trans.put_command (SCIM_TRANS_CMD_FAIL);
- }
-
+ trans.put_command (SCIM_TRANS_CMD_OK);
+ trans.put_data (info.pos_x);
+ trans.put_data (info.pos_y);
+ trans.put_data (info.width);
+ trans.put_data (info.height);
trans.write_to_socket (client_socket);
}
{
SCIM_DEBUG_MAIN(4) << __func__ << "\n";
- struct rectinfo info;
- info.pos_x = 0;
- info.pos_y = 0;
- info.width = 0;
- info.height = 0;
+ struct rectinfo info = {0, 0, 0, 0};
m_signal_get_candidate_geometry (info);
Transaction trans;
return (int)(strlist.size ());
}
+ int get_helper_manager_id (void)
+ {
+ return m_helper_manager.get_connection_number ();
+ }
+
+ bool has_helper_manager_pending_event (void)
+ {
+ return m_helper_manager.has_pending_event ();
+ }
+
+ bool filter_helper_manager_event (void)
+ {
+ return m_helper_manager.filter_event ();
+ }
+
void reset_helper_context (const String &uuid)
{
HelperClientIndex::iterator it = m_helper_client_index.find (m_current_helper_uuid);
return m_signal_set_candidate_position.connect (slot);
}
- Connection signal_connect_get_candidate_geometry (PanelAgentSlotRect *slot)
+ Connection signal_connect_get_candidate_geometry (PanelAgentSlotRect *slot)
{
return m_signal_get_candidate_geometry.connect (slot);
}
+ Connection signal_connect_get_input_panel_geometry (PanelAgentSlotRect *slot)
+ {
+ return m_signal_get_input_panel_geometry.connect (slot);
+ }
+
Connection signal_connect_set_keyboard_ise (PanelAgentSlotIntString *slot)
{
return m_signal_set_keyboard_ise.connect (slot);
return m_signal_focus_out.connect (slot);
}
+ Connection signal_connect_expand_candidate (PanelAgentSlotVoid *slot)
+ {
+ return m_signal_expand_candidate.connect (slot);
+ }
+
+ Connection signal_connect_contract_candidate (PanelAgentSlotVoid *slot)
+ {
+ return m_signal_contract_candidate.connect (slot);
+ }
+
Connection signal_connect_get_ise_list (PanelAgentSlotBoolStringVector *slot)
{
return m_signal_get_ise_list.connect (slot);
{
return m_signal_get_keyboard_ise_list.connect (slot);
}
- Connection signal_connect_launch_helper_ise_list_selection (PanelAgentSlotInt *slot)
+
+ Connection signal_connect_update_ise_geometry (PanelAgentSlotIntIntIntInt *slot)
{
- return m_signal_launch_helper_ise_list_selection.connect (slot);
+ return m_signal_update_ise_geometry.connect (slot);
}
Connection signal_connect_get_language_list (PanelAgentSlotStringVector *slot)
return m_signal_unlock.connect (slot);
}
+ Connection signal_connect_update_input_context (PanelAgentSlotIntInt *slot)
+ {
+ return m_signal_update_input_context.connect (slot);
+ }
+
private:
bool socket_check_client_connection (const Socket &client)
{
socket_hide_associate_table ();
} else if (cmd == SCIM_TRANS_CMD_UPDATE_PREEDIT_STRING) {
socket_helper_update_preedit_string (client_id);
+ } else if (cmd == SCIM_TRANS_CMD_UPDATE_PREEDIT_CARET) {
+ socket_helper_update_preedit_caret (client_id);
} else if (cmd == SCIM_TRANS_CMD_UPDATE_AUX_STRING) {
socket_update_aux_string ();
} else if (cmd == SCIM_TRANS_CMD_UPDATE_LOOKUP_TABLE) {
socket_set_keyboard_ise (ISM_TRANS_CMD_SET_KEYBOARD_ISE_BY_UUID);
} else if (cmd == ISM_TRANS_CMD_GET_KEYBOARD_ISE) {
socket_get_keyboard_ise ();
- } else if (cmd == ISM_TRANS_CMD_LAUNCH_HELPER_ISE_LIST_SELECTION) {
- socket_helper_launch_helper_ise_list_selection ();
+ } else if (cmd == ISM_TRANS_CMD_UPDATE_ISE_GEOMETRY) {
+ socket_helper_update_ise_geometry (client_id);
+ } else if (cmd == ISM_TRANS_CMD_EXPAND_CANDIDATE) {
+ socket_helper_expand_candidate (client_id);
+ } else if (cmd == ISM_TRANS_CMD_CONTRACT_CANDIDATE) {
+ socket_helper_contract_candidate (client_id);
} else if (cmd == SCIM_TRANS_CMD_GET_SURROUNDING_TEXT) {
socket_helper_get_surrounding_text (client_id);
} else if (cmd == SCIM_TRANS_CMD_DELETE_SURROUNDING_TEXT) {
else if (cmd == ISM_TRANS_CMD_HIDE_ISE_PANEL)
hide_ise_panel (client_id);
else if (cmd == ISM_TRANS_CMD_GET_ACTIVE_ISE_GEOMETRY)
- get_ise_geometry (client_id);
+ get_input_panel_geometry (client_id);
else if (cmd == ISM_TRANS_CMD_GET_CANDIDATE_GEOMETRY)
get_candidate_window_geometry (client_id);
else if (cmd == ISM_TRANS_CMD_GET_ISE_LANGUAGE_LOCALE)
lock ();
m_client_repository [client.get_id ()] = info;
- if (info.type == IMCONTROL_ACT_CLIENT)
- {
+ if (info.type == IMCONTROL_ACT_CLIENT) {
m_pending_active_imcontrol_id = client.get_id ();
- }
- else if (info.type == IMCONTROL_CLIENT)
- {
- m_imcontrol_map [m_pending_active_imcontrol_id] = client.get_id();
+ } else if (info.type == IMCONTROL_CLIENT) {
+ m_imcontrol_map [m_pending_active_imcontrol_id] = client.get_id ();
m_pending_active_imcontrol_id = -1;
}
m_helper_client_index.erase (uuid);
m_helper_info_repository.erase (hiit);
- if (restart && !m_ise_exiting)
+ if (restart && !m_ise_exiting) {
m_helper_manager.run_helper (uuid, m_config_name, m_display_name);
+ std::cerr << "Auto restart soft ISE:" << uuid << "\n";
+ }
}
m_ise_exiting = false;
void socket_turn_on_log (void)
{
- SCIM_DEBUG_MAIN(4) << "PanelAgent::socket_turn_on_log ()\n";
-
uint32 isOn;
if (m_recv_trans.get_data (isOn)) {
if (isOn) {
DebugOutput::enable_debug (SCIM_DEBUG_AllMask);
DebugOutput::set_verbose_level (7);
+ SCIM_DEBUG_MAIN(4) << __func__ << " on\n";
} else {
+ SCIM_DEBUG_MAIN(4) << __func__ << " off\n";
DebugOutput::disable_debug (SCIM_DEBUG_AllMask);
DebugOutput::set_verbose_level (0);
}
get_focused_context (focused_client, focused_context);
- if (focused_client == -1 || focused_context == 0)
+ if (focused_client == -1) {
+ std::cerr << __func__ << " get_focused_context is failed!!!\n";
return;
+ }
if (TOOLBAR_HELPER_MODE == m_current_toolbar_mode)
{
{
SCIM_DEBUG_MAIN(4) << __func__ << " \n";
- struct rectinfo info;
- info.pos_x = 0;
- info.pos_y = 0;
- info.width = 0;
- info.height = 0;
- m_signal_get_candidate_geometry (info);
-
String uuid;
- if (m_recv_trans.get_data (uuid))
- {
+ if (m_recv_trans.get_data (uuid)) {
HelperClientIndex::iterator it = m_helper_client_index.find (uuid);
- if (it != m_helper_client_index.end ())
- {
+ if (it != m_helper_client_index.end ()) {
+ struct rectinfo info = {0, 0, 0, 0};
+ m_signal_get_candidate_geometry (info);
+
int client;
uint32 context;
get_focused_context (client, context);
m_signal_set_keyboard_ise (type, ise);
}
- void socket_helper_launch_helper_ise_list_selection (void)
+ void socket_helper_update_ise_geometry (int client)
+ {
+ SCIM_DEBUG_MAIN(4) << __func__ << "\n";
+
+ uint32 x, y, width, height;
+ if (m_recv_trans.get_data (x) && m_recv_trans.get_data (y) &&
+ m_recv_trans.get_data (width) && m_recv_trans.get_data (height)) {
+ HelperInfoRepository::iterator it = m_helper_active_info_repository.find (client);
+ if (it != m_helper_active_info_repository.end ()) {
+ if (it->second.uuid == m_current_helper_uuid)
+ m_signal_update_ise_geometry (x, y, width, height);
+ }
+ }
+ }
+
+ void socket_helper_expand_candidate (int client)
+ {
+ SCIM_DEBUG_MAIN(4) << __func__ << "\n";
+
+ HelperInfoRepository::iterator it = m_helper_active_info_repository.find (client);
+ if (it != m_helper_active_info_repository.end ()) {
+ if (it->second.uuid == m_current_helper_uuid)
+ m_signal_expand_candidate ();
+ }
+ }
+
+ void socket_helper_contract_candidate (int client)
{
- uint32 withUI;
- if (m_recv_trans.get_data (withUI))
- m_signal_launch_helper_ise_list_selection (withUI);
+ SCIM_DEBUG_MAIN(4) << __func__ << "\n";
+
+ HelperInfoRepository::iterator it = m_helper_active_info_repository.find (client);
+ if (it != m_helper_active_info_repository.end ()) {
+ if (it->second.uuid == m_current_helper_uuid)
+ m_signal_contract_candidate ();
+ }
}
void socket_get_keyboard_ise (void)
}
}
+ void socket_helper_update_preedit_caret (int client)
+ {
+ SCIM_DEBUG_MAIN(4) << __func__ << " (" << client << ")\n";
+
+ uint32 caret;
+
+ if (m_recv_trans.get_data (caret)) {
+ int focused_client;
+ uint32 focused_context;
+ String focused_uuid;
+ focused_uuid = get_focused_context (focused_client, focused_context);
+
+ ClientInfo client_info = socket_get_client_info (focused_client);
+ if (client_info.type == FRONTEND_CLIENT) {
+ Socket socket_client (focused_client);
+ lock ();
+ m_send_trans.clear ();
+ m_send_trans.put_command (SCIM_TRANS_CMD_REPLY);
+ m_send_trans.put_data (focused_context);
+ m_send_trans.put_command (SCIM_TRANS_CMD_UPDATE_PREEDIT_CARET);
+ m_send_trans.put_data (caret);
+ m_send_trans.write_to_socket (socket_client);
+ unlock ();
+ }
+ }
+ }
void socket_helper_register_helper (int client)
{
if (m_recv_trans.get_data (type) && m_recv_trans.get_data (value))
{
+ m_signal_update_input_context ((int)type, (int)value);
ClientRepository::iterator iter = m_client_repository.begin ();
for (; iter != m_client_repository.end (); iter++)
return false;
}
+ bool helper_update_displayed_candidate_number (uint32 size)
+ {
+ SCIM_DEBUG_MAIN(4) << __func__ << "\n";
+
+ if (TOOLBAR_HELPER_MODE == m_current_toolbar_mode) {
+ HelperClientIndex::iterator it = m_helper_client_index.find (m_current_helper_uuid);
+
+ if (it != m_helper_client_index.end ()) {
+ int client;
+ uint32 context;
+ Socket client_socket (it->second.id);
+ uint32 ctx;
+
+ get_focused_context (client, context);
+ ctx = get_helper_ic (client, context);
+
+ m_send_trans.clear ();
+ m_send_trans.put_command (SCIM_TRANS_CMD_REPLY);
+ m_send_trans.put_data (ctx);
+ m_send_trans.put_data (m_current_helper_uuid);
+ m_send_trans.put_command (ISM_TRANS_CMD_UPDATE_DISPLAYED_CANDIDATE);
+ m_send_trans.put_data (size);
+ m_send_trans.write_to_socket (client_socket);
+
+ return true;
+ }
+ }
+
+ return false;
+ }
+
void helper_all_update_spot_location (int x, int y)
{
SCIM_DEBUG_MAIN (5) << "PanelAgent::helper_all_update_spot_location (" << x << "," << y << ")\n";
void
PanelAgent::update_candidate_panel_event (uint32 nType, uint32 nValue)
{
- m_impl->update_candidate_panel_event (nType, nValue);
+ m_impl->update_panel_event (ISM_TRANS_CMD_UPDATE_ISF_CANDIDATE_PANEL, nType, nValue);
+}
+
+void
+PanelAgent::update_input_panel_event (uint32 nType, uint32 nValue)
+{
+ m_impl->update_panel_event (ISM_TRANS_CMD_UPDATE_ISE_INPUT_CONTEXT, nType, nValue);
}
void
}
bool
+PanelAgent::update_displayed_candidate_number (uint32 size)
+{
+ return m_impl->update_displayed_candidate_number (size);
+}
+
+bool
PanelAgent::trigger_property (const String &property)
{
return m_impl->trigger_property (property);
return m_impl->get_active_ise_list (strlist);
}
+int
+PanelAgent::get_helper_manager_id (void)
+{
+ return m_impl->get_helper_manager_id ();
+}
+
+bool
+PanelAgent::has_helper_manager_pending_event (void)
+{
+ return m_impl->has_helper_manager_pending_event ();
+}
+
+bool
+PanelAgent::filter_helper_manager_event (void)
+{
+ return m_impl->filter_helper_manager_event ();
+}
+
void
PanelAgent::update_isf_control_status (const bool showed)
{
}
Connection
+PanelAgent::signal_connect_get_input_panel_geometry (PanelAgentSlotRect *slot)
+{
+ return m_impl->signal_connect_get_input_panel_geometry (slot);
+}
+
+Connection
PanelAgent::signal_connect_set_keyboard_ise (PanelAgentSlotIntString *slot)
{
return m_impl->signal_connect_set_keyboard_ise (slot);
}
Connection
+PanelAgent::signal_connect_expand_candidate (PanelAgentSlotVoid *slot)
+{
+ return m_impl->signal_connect_expand_candidate (slot);
+}
+
+Connection
+PanelAgent::signal_connect_contract_candidate (PanelAgentSlotVoid *slot)
+{
+ return m_impl->signal_connect_contract_candidate (slot);
+}
+
+Connection
PanelAgent::signal_connect_get_ise_list (PanelAgentSlotBoolStringVector *slot)
{
return m_impl->signal_connect_get_ise_list (slot);
}
Connection
-PanelAgent::signal_connect_launch_helper_ise_list_selection(PanelAgentSlotInt * slot)
+PanelAgent::signal_connect_update_ise_geometry (PanelAgentSlotIntIntIntInt *slot)
{
- return m_impl->signal_connect_launch_helper_ise_list_selection (slot);
+ return m_impl->signal_connect_update_ise_geometry (slot);
}
Connection
return m_impl->signal_connect_unlock (slot);
}
+Connection
+PanelAgent::signal_connect_update_input_context (PanelAgentSlotIntInt *slot)
+{
+ return m_impl->signal_connect_update_input_context (slot);
+}
+
} /* namespace scim */
/*
typedef Slot3<void, int, int, int>
PanelAgentSlotIntIntInt;
+typedef Slot4<void, int, int, int, int>
+ PanelAgentSlotIntIntIntInt;
+
typedef Slot2<void, int, const Property &>
PanelAgentSlotIntProperty;
int get_active_ise_list (std::vector<String> &strlist);
/**
+ * @brief Get the helper manager connection id.
+ *
+ * @return the connection id
+ */
+ int get_helper_manager_id (void);
+
+ /**
+ * @brief Check if there are any events available to be processed.
+ *
+ * If it returns true then HelperManager object should call
+ * HelperManager::filter_event () to process them.
+ *
+ * @return true if there are any events available.
+ */
+ bool has_helper_manager_pending_event (void);
+
+ /**
+ * @brief Filter the events received from helper manager.
+ *
+ * Corresponding signal will be emitted in this method.
+ *
+ * @return true if the command was sent correctly, otherwise return false.
+ */
+ bool filter_helper_manager_event (void);
+
+ /**
* @brief Send display name to FrontEnd.
*
* @param name The display name.
void update_candidate_panel_event (uint32 nType, uint32 nValue);
/**
+ * @brief Send input panel event to IM Control.
+ *
+ * @param nType The input panel event type.
+ * @param nValue The input panel event value.
+ */
+ void update_input_panel_event (uint32 nType, uint32 nValue);
+
+ /**
* @brief Update ISE control panel status to IM Control.
*
* @param showed The control panel status.
bool update_associate_table_page_size (uint32 size);
/**
+ * @brief Inform helper ISE to update displayed candidate number.
+ *
+ * @param size The displayed candidate number.
+ * @return true if the command was sent correctly.
+ */
+ bool update_displayed_candidate_number (uint32 size);
+
+ /**
* @brief Trigger a property of the focused IMEngineInstance object.
*
* @param property The property key to be triggered.
Connection signal_connect_get_keyboard_ise_list (PanelAgentSlotBoolStringVector *slot);
/**
- * @brief Signal: set candidate ui.
+ * @brief Signal: Set candidate ui.
*
* slot prototype: void set_candidate_ui (int style, int mode);
*/
Connection signal_connect_set_candidate_ui (PanelAgentSlotIntInt *slot);
/**
- * @brief Signal: get candidate ui.
+ * @brief Signal: Get candidate ui.
*
* slot prototype: void get_candidate_ui (int &style, int &mode);
*/
Connection signal_connect_get_candidate_ui (PanelAgentSlotIntInt2 *slot);
/**
- * @brief Signal: get candidate window geometry information.
+ * @brief Signal: Get candidate window geometry information.
*
* slot prototype: void get_candidate_geometry (rectinfo &info);
*/
Connection signal_connect_get_candidate_geometry (PanelAgentSlotRect *slot);
/**
- * @brief Signal: set candidate position.
+ * @brief Signal: Get input panel geometry information.
+ *
+ * slot prototype: void get_input_panel_geometry (rectinfo &info);
+ */
+ Connection signal_connect_get_input_panel_geometry (PanelAgentSlotRect *slot);
+
+ /**
+ * @brief Signal: Set candidate position.
*
* slot prototype: void set_candidate_position (int left, int top);
*/
Connection signal_connect_set_candidate_position (PanelAgentSlotIntInt *slot);
/**
- * @brief Signal: set keyboard ise.
+ * @brief Signal: Set keyboard ise.
*
* slot prototype: void set_keyboard_ise (int type, const String &ise);
*/
Connection signal_connect_set_keyboard_ise (PanelAgentSlotIntString *slot);
/**
- * @brief Signal: get keyboard ise.
+ * @brief Signal: Get keyboard ise.
*
* slot prototype: void get_keyboard_ise (String &ise_name);
*/
Connection signal_connect_get_keyboard_ise (PanelAgentSlotString2 *slot);
/**
- * @brief Signal: launch helper ise list selection.
+ * @brief Signal: Update ise geometry.
*
- * slot prototype: void launch_helper_ise_list_selecton (int withUI);
+ * slot prototype: void update_ise_geometry (int x, int y, int width, int height);
*/
- Connection signal_connect_launch_helper_ise_list_selection (PanelAgentSlotInt *slot);
+ Connection signal_connect_update_ise_geometry (PanelAgentSlotIntIntIntInt *slot);
/**
* @brief Signal: Show help.
Connection signal_connect_focus_out (PanelAgentSlotVoid *slot);
/**
+ * @brief Signal: Expand candidate panel.
+ *
+ * slot prototype: void expand_candidate (void);
+ */
+ Connection signal_connect_expand_candidate (PanelAgentSlotVoid *slot);
+
+ /**
+ * @brief Signal: Contract candidate panel.
+ *
+ * slot prototype: void contract_candidate (void);
+ */
+ Connection signal_connect_contract_candidate (PanelAgentSlotVoid *slot);
+
+ /**
* @brief Signal: Get the list of ise name.
*
* slot prototype: bool get_ise_list (std::vector<String> &);
* slot prototype: void unlock (void);
*/
Connection signal_connect_unlock (PanelAgentSlotVoid *slot);
+
+ /**
+ * @brief Signal: The input context of ISE is changed.
+ *
+ * slot prototype: void update_input_context (int type, int value);
+ */
+ Connection signal_connect_update_input_context (PanelAgentSlotIntInt *slot);
};
/** @} */
PanelClientSignalString m_signal_trigger_property;
PanelClientSignalStringStringTransaction m_signal_process_helper_event;
PanelClientSignalInt m_signal_move_preedit_caret;
+ PanelClientSignalInt m_signal_update_preedit_caret;
PanelClientSignalInt m_signal_select_aux;
PanelClientSignalInt m_signal_select_candidate;
PanelClientSignalKeyEvent m_signal_process_key_event;
m_signal_update_preedit_string ((int) context, wstr, attrs);
}
break;
+ case SCIM_TRANS_CMD_UPDATE_PREEDIT_CARET:
+ {
+ uint32 caret;
+ if (recv.get_data (caret))
+ m_signal_update_preedit_caret ((int) context, (int) caret);
+ }
+ break;
case ISM_TRANS_CMD_TURN_ON_LOG:
{
printf ("<%s:%d>receive ISM_TRANS_CMD_TURN_ON_LOG\n", __FUNCTION__, __LINE__);
m_signal_trigger_property.reset();
m_signal_process_helper_event.reset();
m_signal_move_preedit_caret.reset();
+ m_signal_update_preedit_caret.reset ();
m_signal_select_aux.reset();
m_signal_select_candidate.reset();
m_signal_process_key_event.reset();
{
return m_signal_move_preedit_caret.connect (slot);
}
+ Connection signal_connect_update_preedit_caret (PanelClientSlotInt *slot)
+ {
+ return m_signal_update_preedit_caret.connect (slot);
+ }
Connection signal_connect_select_aux (PanelClientSlotInt *slot)
{
return m_signal_select_aux.connect (slot);
return m_impl->signal_connect_move_preedit_caret (slot);
}
Connection
+PanelClient::signal_connect_update_preedit_caret (PanelClientSlotInt *slot)
+{
+ return m_impl->signal_connect_update_preedit_caret (slot);
+}
+Connection
PanelClient::signal_connect_select_aux (PanelClientSlotInt *slot)
{
return m_impl->signal_connect_select_aux (slot);
Connection signal_connect_move_preedit_caret (PanelClientSlotInt *slot);
/**
+ * @brief Signal: update preedit caret
+ *
+ * slot prototype: void update_preedit_caret (int context, int caret_pos);
+ */
+ Connection signal_connect_update_preedit_caret (PanelClientSlotInt *slot);
+
+ /**
* @brief Signal: select aux
*
* slot prototype: void select_aux (int context, int aux_index);
const int ISM_TRANS_CMD_ASSOCIATE_TABLE_PAGE_UP = 116;
const int ISM_TRANS_CMD_ASSOCIATE_TABLE_PAGE_DOWN = 117;
const int ISM_TRANS_CMD_SELECT_AUX = 118;
+const int ISM_TRANS_CMD_SET_PREDICTION_ALLOW = 119;
// Socket FrontEnd to Socket IMEngine
// FrontEnds to Panel
const int ISM_TRANS_CMD_HIDE_CANDIDATE = 1211;
const int ISM_TRANS_CMD_GET_CANDIDATE_GEOMETRY = 1212;
const int ISM_TRANS_CMD_UPDATE_CANDIDATE_GEOMETRY = 1213;
-const int ISM_TRANS_CMD_LAUNCH_HELPER_ISE_LIST_SELECTION = 1214;
+const int ISM_TRANS_CMD_UPDATE_ISE_GEOMETRY = 1214;
+const int ISM_TRANS_CMD_EXPAND_CANDIDATE = 1215;
+const int ISM_TRANS_CMD_CONTRACT_CANDIDATE = 1216;
+
// Candidate to Helper ISE
const int ISM_TRANS_CMD_CANDIDATE_MORE_WINDOW_SHOW = 1251;
const int ISM_TRANS_CMD_CANDIDATE_MORE_WINDOW_HIDE = 1252;
+const int ISM_TRANS_CMD_UPDATE_DISPLAYED_CANDIDATE = 1253;
const int ISM_TRANS_CMD_TURN_ON_LOG = 1301;
{ "zh_SG", "zh_CN", N_("Chinese (Simplified)"), "中文 (简体)", ".GBK" },
{ "zh_TW", NULL, N_("Chinese (Traditional)"), "中文 (繁體)", ".eucTW" },
- { "nl_NL", NULL, N_("Dutch (Standard)"), "Dutch (Standard)", NULL },
+ { "nl_NL", NULL, N_("Dutch"), "Dutch", NULL },
{ "nl_BE", NULL, N_("Dutch (Belgian)"), "Dutch (Belgian)", NULL },
{ "en_US", NULL, N_("English (United States)"), "English (United States)", NULL },
{ "en_GB", NULL, N_("English (United Kingdom)"), "English (United Kingdom)", NULL },
{ "en_TT", NULL, N_("English (Trinidad)"), "English (Trinidad)", NULL },
{ "en_ZW", NULL, N_("English (Zimbabwe)"), "English (Zimbabwe)", NULL },
{ "en_PH", NULL, N_("English (Philippines)"), "English (Philippines)", NULL },
- { "fr_FR", NULL, N_("French (Standard)"), "French (Standard)", NULL },
+ { "fr_FR", NULL, N_("French"), "French", NULL },
{ "fr_BE", NULL, N_("French (Belgian)"), "French (Belgian)", NULL },
{ "fr_CA", NULL, N_("French (Canadian)"), "French (Canadian)", NULL },
{ "fr_CH", NULL, N_("French (Swiss)"), "French (Swiss)", NULL },
{ "fr_LU", NULL, N_("French (Luxembourg)"), "French (Luxembourg)", NULL },
{ "fr_MC", NULL, N_("French (Monaco)"), "French (Monaco)", NULL },
- { "de_DE", NULL, N_("German (Standard)"), "German (Standard)", NULL },
+ { "de_DE", NULL, N_("German"), "German", NULL },
{ "de_CH", NULL, N_("German (Swiss)"), "German (Swiss)", NULL },
{ "de_AT", NULL, N_("German (Austrian)"), "German (Austrian)", NULL },
{ "de_LU", NULL, N_("German (Luxembourg)"), "German (Luxembourg)", NULL },
{ "de_LI", NULL, N_("German (Liechtenstein)"), "German (Liechtenstein)", NULL },
- { "it_IT", NULL, N_("Italian (Standard)"), "Italian (Standard)", NULL },
+ { "it_IT", NULL, N_("Italian"), "Italian", NULL },
{ "it_CH", NULL, N_("Italian (Swiss)"), "Italian (Swiss)", NULL },
{ "pt_BR", NULL, N_("Portuguese (Brazilian)"), "Portuguese (Brazilian)", NULL },
- { "pt_PT", NULL, N_("Portuguese (Standard)"), "Portuguese (Standard)", NULL },
+ { "pt_PT", NULL, N_("Portuguese"), "Portuguese", NULL },
{ "es_ES", NULL, N_("Spanish (Traditional Sort)"), "Spanish (Traditional Sort)", NULL },
{ "es_MX", NULL, N_("Spanish (Mexican)"), "Spanish (Mexican)", NULL },
{ "es_GT", NULL, N_("Spanish (Guatemala)"), "Spanish (Guatemala)", NULL },
#define PROP_X_EXT_KEYBOARD_EXIST "X External Keyboard Exist"
+#define VCONFKEY_AUTOCAPITAL_ALLOW_BOOL "file/private/isf/autocapital_allow"
+#define VCONFKEY_AUTOPERIOD_ALLOW_BOOL "file/private/isf/autoperiod_allow"
+
#define mzsc(m_code) "\x1b[" # m_code
#define mzc_normal mzsc(0m)
#define mzc_red mzsc(1;31m)
TRAY_ICON_SOURCE=scimtrayicon.c
endif
+if SCIM_BUILD_X11_UTILS
+libscimx11utilsincludedir = $(includedir)/scim@SCIM_EPOCH@/x11
+libscimx11utilsinclude_HEADERS = scim_x11_utils.h
+X11_UTILS = libscim-x11utils@SCIM_EPOCH@.la
+endif
+
if SCIM_BUILD_GTK_UTILS
libscimgtkutilsincludedir = $(includedir)/scim@SCIM_EPOCH@/gtk
libscimgtkutilsinclude_HEADERS = scimstringview.h $(TRAY_ICON_HEADER)
GTK_UTILS = libscim-gtkutils@SCIM_EPOCH@.la
endif
-lib_LTLIBRARIES = $(GTK_UTILS)
+lib_LTLIBRARIES = $(X11_UTILS) $(GTK_UTILS)
libscim_gtkutils@SCIM_EPOCH@_la_SOURCES = scimstringview.c \
$(TRAY_ICON_SOURCE)
@LTLIBINTL@ \
-lgtk-x11-2.0 -lgdk-x11-2.0 -lpango-1.0 -lglib-2.0 -lgobject-2.0
-libscim_gtkutils@SCIM_EPOCH@_la_LIBADD= $(top_builddir)/ism/src/libscim@SCIM_EPOCH@.la
+libscim_gtkutils@SCIM_EPOCH@_la_LIBADD = $(top_builddir)/ism/src/libscim@SCIM_EPOCH@.la $(X11_UTILS)
+
+
+libscim_x11utils@SCIM_EPOCH@_la_SOURCES = scim_x11_utils.cpp
+
+libscim_x11utils@SCIM_EPOCH@_la_CFLAGS = @X_CFLAGS@
+libscim_x11utils@SCIM_EPOCH@_la_CXXFLAGS= @X_CFLAGS@
+
+libscim_x11utils@SCIM_EPOCH@_la_LDFLAGS = -version-info $(SCIM_CURRENT):$(SCIM_REVISION):$(SCIM_AGE) \
+ -export-dynamic \
+ -rpath $(libdir) \
+ @LIBTOOL_EXPORT_OPTIONS@ \
+ @LTLIBINTL@ \
+ @X_LIBS@
+libscim_x11utils@SCIM_EPOCH@_la_LIBAD = $(top_builddir)/ism/src/libscim@SCIM_EPOCH@.la
--- /dev/null
+#define Uses_SCIM_EVENT
+
+#include <X11/Xlib.h>
+#include <X11/keysym.h>
+#include <X11/Xutil.h>
+#include <sys/time.h>
+#include "scim_private.h"
+#include "scim.h"
+#include "scim_x11_utils.h"
+
+using namespace scim;
+
+static Time get_time (void);
+static void initialize_modifier_bits (Display *display);
+
+static Display *__current_display = 0;
+static int __current_alt_mask = Mod1Mask;
+static int __current_meta_mask = 0;
+static int __current_super_mask = 0;
+static int __current_hyper_mask = 0;
+static int __current_numlock_mask = Mod2Mask;
+
+static Time
+get_time (void)
+{
+ int tint;
+ struct timeval tv;
+ struct timezone tz; /* is not used since ages */
+ gettimeofday (&tv, &tz);
+ tint = (int) tv.tv_sec * 1000;
+ tint = tint / 1000 * 1000;
+ tint = tint + tv.tv_usec / 1000;
+ return ((Time) tint);
+}
+
+static void
+initialize_modifier_bits (Display *display)
+{
+ if (__current_display == display)
+ return;
+
+ __current_display = display;
+
+ if (display == 0) {
+ __current_alt_mask = Mod1Mask;
+ __current_meta_mask = ShiftMask | Mod1Mask;
+ __current_super_mask = 0;
+ __current_hyper_mask = 0;
+ __current_numlock_mask = Mod2Mask;
+ return;
+ }
+
+ XModifierKeymap *mods;
+
+ ::KeyCode ctrl_l = XKeysymToKeycode (display, XK_Control_L);
+ ::KeyCode ctrl_r = XKeysymToKeycode (display, XK_Control_R);
+ ::KeyCode meta_l = XKeysymToKeycode (display, XK_Meta_L);
+ ::KeyCode meta_r = XKeysymToKeycode (display, XK_Meta_R);
+ ::KeyCode alt_l = XKeysymToKeycode (display, XK_Alt_L);
+ ::KeyCode alt_r = XKeysymToKeycode (display, XK_Alt_R);
+ ::KeyCode super_l = XKeysymToKeycode (display, XK_Super_L);
+ ::KeyCode super_r = XKeysymToKeycode (display, XK_Super_R);
+ ::KeyCode hyper_l = XKeysymToKeycode (display, XK_Hyper_L);
+ ::KeyCode hyper_r = XKeysymToKeycode (display, XK_Hyper_R);
+ ::KeyCode numlock = XKeysymToKeycode (display, XK_Num_Lock);
+
+ int i, j;
+
+ mods = XGetModifierMapping (display);
+
+ __current_alt_mask = 0;
+ __current_meta_mask = 0;
+ __current_super_mask = 0;
+ __current_hyper_mask = 0;
+ __current_numlock_mask = 0;
+
+ /* We skip the first three sets for Shift, Lock, and Control. The
+ remaining sets are for Mod1, Mod2, Mod3, Mod4, and Mod5. */
+ for (i = 3; i < 8; i++) {
+ for (j = 0; j < mods->max_keypermod; j++) {
+ ::KeyCode code = mods->modifiermap [i * mods->max_keypermod + j];
+ if (! code) continue;
+ if (code == alt_l || code == alt_r)
+ __current_alt_mask |= (1 << i);
+ else if (code == meta_l || code == meta_r)
+ __current_meta_mask |= (1 << i);
+ else if (code == super_l || code == super_r)
+ __current_super_mask |= (1 << i);
+ else if (code == hyper_l || code == hyper_r)
+ __current_hyper_mask |= (1 << i);
+ else if (code == numlock)
+ __current_numlock_mask |= (1 << i);
+ }
+ }
+
+ /* Check whether there is a combine keys mapped to Meta */
+ if (__current_meta_mask == 0) {
+ char buf [32];
+ XKeyEvent xkey;
+ KeySym keysym_l, keysym_r;
+
+ xkey.type = KeyPress;
+ xkey.display = display;
+ xkey.serial = 0L;
+ xkey.send_event = False;
+ xkey.x = xkey.y = xkey.x_root = xkey.y_root = 0;
+ xkey.time = 0;
+ xkey.same_screen = False;
+ xkey.subwindow = None;
+ xkey.window = None;
+ xkey.root = DefaultRootWindow (display);
+ xkey.state = ShiftMask;
+
+ xkey.keycode = meta_l;
+ XLookupString (&xkey, buf, 32, &keysym_l, 0);
+ xkey.keycode = meta_r;
+ XLookupString (&xkey, buf, 32, &keysym_r, 0);
+
+ if ((meta_l == alt_l && keysym_l == XK_Meta_L) || (meta_r == alt_r && keysym_r == XK_Meta_R))
+ __current_meta_mask = ShiftMask + __current_alt_mask;
+ else if ((meta_l == ctrl_l && keysym_l == XK_Meta_L) || (meta_r == ctrl_r && keysym_r == XK_Meta_R))
+ __current_meta_mask = ShiftMask + ControlMask;
+ }
+
+ XFreeModifiermap (mods);
+}
+
+KeyEvent
+scim_x11_keyevent_x11_to_scim (Display *display, const XKeyEvent &xkey)
+{
+ KeyEvent scimkey;
+ KeySym keysym;
+ XKeyEvent key = xkey;
+ char buf [32];
+
+ initialize_modifier_bits (display);
+
+ XLookupString (&key, buf, 32, &keysym, 0);
+
+ scimkey.code = keysym;
+
+ scimkey.mask = scim_x11_keymask_x11_to_scim (display, xkey.state);
+
+ if (key.type == KeyRelease) scimkey.mask |= SCIM_KEY_ReleaseMask;
+
+ if (scimkey.code == SCIM_KEY_backslash) {
+ int keysym_size = 0;
+ KeySym *keysyms = XGetKeyboardMapping (display, xkey.keycode, 1, &keysym_size);
+ if (keysyms != NULL) {
+ if (keysyms[0] == XK_backslash &&
+ (keysym_size > 1 && keysyms[1] == XK_underscore))
+ scimkey.mask |= SCIM_KEY_QuirkKanaRoMask;
+ XFree (keysyms);
+ }
+ }
+
+ return scimkey;
+}
+
+XKeyEvent
+scim_x11_keyevent_scim_to_x11 (Display *display, const KeyEvent &scimkey)
+{
+ XKeyEvent xkey;
+
+ initialize_modifier_bits (display);
+
+ xkey.type = (scimkey.mask & SCIM_KEY_ReleaseMask) ? KeyRelease : KeyPress;
+ xkey.display = display;
+ xkey.serial = 0L;
+ xkey.send_event = False;
+ xkey.x = xkey.y = xkey.x_root = xkey.y_root = 0;
+ xkey.time = get_time ();
+ xkey.same_screen = False;
+ xkey.subwindow = None;
+ xkey.window = None;
+
+ if (display) {
+ xkey.root = DefaultRootWindow (display);
+ xkey.keycode = XKeysymToKeycode (display, (KeySym) scimkey.code);
+ } else {
+ xkey.root = None;
+ xkey.keycode = 0;
+ }
+
+ xkey.state = scim_x11_keymask_scim_to_x11 (display, scimkey.mask);
+
+ return xkey;
+}
+
+uint16
+scim_x11_keymask_x11_to_scim (Display *display, unsigned int xkeystate)
+{
+ uint16 mask = 0;
+
+ initialize_modifier_bits (display);
+
+ // Check Meta mask first, because it's maybe a mask combination.
+ if (__current_meta_mask && (xkeystate & __current_meta_mask) == __current_meta_mask) {
+ mask |= SCIM_KEY_MetaMask;
+ xkeystate &= ~__current_meta_mask;
+ }
+
+ if (xkeystate & ShiftMask) {
+ mask |= SCIM_KEY_ShiftMask;
+ xkeystate &= ~ShiftMask;
+ }
+
+ if (xkeystate & LockMask) {
+ mask |= SCIM_KEY_CapsLockMask;
+ xkeystate &= ~LockMask;
+ }
+
+ if (xkeystate & ControlMask) {
+ mask |= SCIM_KEY_ControlMask;
+ xkeystate &= ~ControlMask;
+ }
+
+ if (__current_alt_mask && (xkeystate & __current_alt_mask) == __current_alt_mask) {
+ mask |= SCIM_KEY_AltMask;
+ xkeystate &= ~__current_alt_mask;
+ }
+
+ if (__current_super_mask && (xkeystate & __current_super_mask) == __current_super_mask) {
+ mask |= SCIM_KEY_SuperMask;
+ xkeystate &= ~__current_super_mask;
+ }
+
+ if (__current_hyper_mask && (xkeystate & __current_hyper_mask) == __current_hyper_mask) {
+ mask |= SCIM_KEY_HyperMask;
+ xkeystate &= ~__current_hyper_mask;
+ }
+
+ if (__current_numlock_mask && (xkeystate & __current_numlock_mask) == __current_numlock_mask) {
+ mask |= SCIM_KEY_NumLockMask;
+ }
+
+ return mask;
+}
+
+unsigned int scim_x11_keymask_scim_to_x11 (Display *display, uint16 scimkeymask)
+{
+ unsigned int state = 0;
+
+ initialize_modifier_bits (display);
+
+ if (scimkeymask & SCIM_KEY_ShiftMask) state |= ShiftMask;
+ if (scimkeymask & SCIM_KEY_CapsLockMask) state |= LockMask;
+ if (scimkeymask & SCIM_KEY_ControlMask) state |= ControlMask;
+ if (scimkeymask & SCIM_KEY_AltMask) state |= __current_alt_mask;
+ if (scimkeymask & SCIM_KEY_MetaMask) state |= __current_meta_mask;
+ if (scimkeymask & SCIM_KEY_SuperMask) state |= __current_super_mask;
+ if (scimkeymask & SCIM_KEY_HyperMask) state |= __current_hyper_mask;
+ if (scimkeymask & SCIM_KEY_NumLockMask) state |= __current_numlock_mask;
+
+ return state;
+}
--- /dev/null
+/*
+ * Smart Common Input Method
+ *
+ * Copyright (c) 2005 James Su <suzhe@tsinghua.org.cn>
+ *
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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 Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+ * Boston, MA 02111-1307 USA
+ *
+ * $Id: scim_x11_utils.h,v 1.1 2005/05/11 09:52:11 suzhe Exp $
+ */
+
+#ifndef __SCIM_X11_UTILS_H__
+#define __SCIM_X11_UTILS_H__
+
+#define Uses_SCIM_EVENT
+#include <scim.h>
+#include <X11/Xlib.h>
+
+/**
+ * @brief Translate a X11 KeyEvent to a scim KeyEvent according to the given Display
+ */
+scim::KeyEvent scim_x11_keyevent_x11_to_scim (Display *display, const XKeyEvent &xkey);
+
+/**
+ * @brief Translate a scim KeyEvent to a X11 KeyEvent according to the given Display
+ */
+XKeyEvent scim_x11_keyevent_scim_to_x11 (Display *display, const scim::KeyEvent &scimkey);
+
+/**
+ * @brief Translate X11 key state to scim key mask.
+ */
+scim::uint16 scim_x11_keymask_x11_to_scim (Display *display, unsigned int xkeystate);
+
+/**
+ * @brief Translate scim key mask to X11 key state.
+ */
+unsigned int scim_x11_keymask_scim_to_x11 (Display *display, scim::uint16 scimkeymask);
+
+#endif
-%define _optdir /opt
-%define _ugdir %{_optdir}/ug
+#sbs-git:framework/uifw/isf isf 2.3.5617 07f2b65224e6cef5cd6799065bb01fa656bc115e
+%define _usrdir /usr
+%define _ugdir %{_usrdir}/ug
Name: isf
Summary: Input Service Framework
-Version: 2.3.5205
+Version: 2.3.5617
Release: 1
Group: TO_BE/FILLED_IN
License: LGPL
BuildRequires: pkgconfig(elementary)
BuildRequires: pkgconfig(utilX)
BuildRequires: pkgconfig(vconf)
-BuildRequires: pkgconfig(ui-gadget)
+BuildRequires: pkgconfig(ui-gadget-1)
BuildRequires: pkgconfig(heynoti)
BuildRequires: pkgconfig(ecore)
BuildRequires: pkgconfig(edje)
%post
/sbin/ldconfig
-/usr/bin/vconftool set -t string db/isf/input_lang "Automatic" -g 6514
-/usr/bin/vconftool set -t string db/setting/autocapital_allow 0 -g 6514
+/usr/bin/vconftool set -t string file/private/isf/autocapital_allow 0 -g 6514
+/usr/bin/vconftool set -t string file/private/isf/autoperiod_allow 0 -g 6514
ln -sf /etc/init.d/isf-panel-efl /etc/rc.d/rc3.d/S42isf-panel-efl
ln -sf /etc/init.d/isf-panel-efl /etc/rc.d/rc4.d/S81isf-panel-efl
%attr(755,root,root) %{_sysconfdir}/profile.d/isf.sh
%{_sysconfdir}/scim/global
%{_sysconfdir}/scim/config
-%{_datadir}/scim/isfsetting.edj
-%{_datadir}/scim/isf_candidate_theme2.edj
-%{_datadir}/scim/isf_candidate_theme1.edj
+%{_datadir}/scim/*.edj
%{_datadir}/scim/icons/*
%{_datadir}/locale/*
%{_bindir}/isf-demo-efl
%{_bindir}/isf-log
%{_bindir}/isf-panel-efl
%{_bindir}/isf-query-engines
-%{_libdir}/ecore/immodules/libisf-imf-module.so
+%{_libdir}/*/immodules/*.so
%{_libdir}/scim-1.0/1.4.0/IMEngine/socket.so
%{_libdir}/scim-1.0/1.4.0/Config/simple.so
%{_libdir}/scim-1.0/1.4.0/Config/socket.so
-%{_libdir}/scim-1.0/1.4.0/FrontEnd/socket.so
+%{_libdir}/scim-1.0/1.4.0/FrontEnd/*.so
%{_libdir}/scim-1.0/scim-launcher
%{_libdir}/scim-1.0/scim-helper-launcher
-%{_libdir}/libscim-1.0.so.*
+%{_libdir}/libscim-*.so*
%{_ugdir}/res/locale/*
%{_ugdir}/lib/libug-keyboard-setting-wizard-efl.so
%{_ugdir}/lib/libug-isfsetting-efl.so
%files devel
%defattr(-,root,root,-)
%{_includedir}/scim-1.0/*
-%{_libdir}/libscim-1.0.so
+%{_libdir}/libscim-*.so
%{_libdir}/pkgconfig/isf.pc
%{_libdir}/pkgconfig/scim.pc
prefix = @prefix@
exec_prefix = @exec_prefix@
-datadir = /opt/ug/res
+datadir = /usr/ug/res
libdir = @libdir@
localedir = $(libdir)/locale
gnulocaledir = $(datadir)/locale
+++ /dev/null
-# translation of cs.po to Czech
-# translation of cs.po to cs_CZ
-# translation of scim.po to cs_CZ
-# This file is distributed under the same license as the PACKAGE package.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
-# Klara Cihlarova <koty@seznam.cz>, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: cs\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2005-12-11 19:55+0100\n"
-"Last-Translator: Klara Cihlarova <koty@seznam.cz>\n"
-"Language-Team: Czech <suse@suse.cz>\n"
-"Language: cs\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.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"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-#, fuzzy
-msgid "Selection"
-msgstr "Výběr kláves"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-#, fuzzy
-msgid "No option"
-msgstr "Volby"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-#, fuzzy
-msgid "Options"
-msgstr "Volby"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-#, fuzzy
-msgid "Software keyboard"
-msgstr "Angličtina/klávesnice"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-#, fuzzy
-msgid "Keyboard selection"
-msgstr "Výběr kláves"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-#, fuzzy
-msgid "Keyboard option"
-msgstr "Výběr kláves"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-#, fuzzy
-msgid "Hardware keyboard"
-msgstr "Angličtina/klávesnice"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-#, fuzzy
-msgid "Keyboard"
-msgstr "Angličtina/klávesnice"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Němčina"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Angličtina/klávesnice"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Angličtina (americká)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amharština"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabština"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabština (egyptská)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabština (libanonská)"
-
-#~ msgid "Assamese"
-#~ msgstr "Ásámština"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbajdžánština"
-
-#~ msgid "Belarusian"
-#~ msgstr "Běloruština"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulharština"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengálština"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengálština (indická)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetština"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosenština"
-
-#~ msgid "Catalan"
-#~ msgstr "Katalánština"
-
-#~ msgid "Czech"
-#~ msgstr "Čeština"
-
-#~ msgid "Welsh"
-#~ msgstr "Welština"
-
-#~ msgid "Danish"
-#~ msgstr "Dánština"
-
-#~ msgid "German"
-#~ msgstr "Němčina"
-
-#~ msgid "Greek"
-#~ msgstr "Řečtina"
-
-#~ msgid "English"
-#~ msgstr "Angličtina"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Angličtina (australská)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Angličtina (kanadská)"
-
-#~ msgid "English (British)"
-#~ msgstr "Angličtina (britská)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Angličtina (irská)"
-
-#~ msgid "English (American)"
-#~ msgstr "Angličtina (americká)"
-
-#~ msgid "Spanish"
-#~ msgstr "Španělština"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Španělština (mexická)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estonština"
-
-#~ msgid "Basque"
-#~ msgstr "Baskičtina"
-
-#~ msgid "Persian"
-#~ msgstr "Perština"
-
-#~ msgid "Finnish"
-#~ msgstr "Finština"
-
-#~ msgid "French"
-#~ msgstr "Francouzština"
-
-#~ msgid "Irish"
-#~ msgstr "Irština"
-
-#~ msgid "Galician"
-#~ msgstr "Galština"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gudžarádština"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hebrejština"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindština"
-
-#~ msgid "Croatian"
-#~ msgstr "Chorvatština"
-
-#~ msgid "Hungarian"
-#~ msgstr "Maďarština"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "Rumunština"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonézština"
-
-#~ msgid "Icelandic"
-#~ msgstr "Islandština"
-
-#~ msgid "Italian"
-#~ msgstr "Italština"
-
-#~ msgid "Japanese"
-#~ msgstr "Japonština"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "Němčina"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazaština"
-
-#~ msgid "Cambodian"
-#~ msgstr "Khmerština"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannadština"
-
-#~ msgid "Korean"
-#~ msgstr "Korejština"
-
-#~ msgid "Laothian"
-#~ msgstr "Laoština"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Litevština"
-
-#~ msgid "Latvian"
-#~ msgstr "Lotyšština"
-
-#~ msgid "Macedonian"
-#~ msgstr "Makedonština"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malajámština"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongolština"
-
-#~ msgid "Marathi"
-#~ msgstr "Maráthština"
-
-#~ msgid "Malay"
-#~ msgstr "Malajština"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepálština"
-
-#~ msgid "Dutch"
-#~ msgstr "Nizozemské"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norština (nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norština (bokmal)"
-
-#~ msgid "Oriya"
-#~ msgstr "Orijština"
-
-#~ msgid "Punjabi"
-#~ msgstr "Pandžábština"
-
-#~ msgid "Polish"
-#~ msgstr "Polština"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugalština"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugalština (brazilská)"
-
-#~ msgid "Romanian"
-#~ msgstr "Rumunština"
-
-#~ msgid "Russian"
-#~ msgstr "Ruština"
-
-#~ msgid "Slovak"
-#~ msgstr "Slovenština"
-
-#~ msgid "Slovenian"
-#~ msgstr "Slovinština"
-
-#~ msgid "Albanian"
-#~ msgstr "Albánština"
-
-#~ msgid "Serbian"
-#~ msgstr "Srbština"
-
-#~ msgid "Swedish"
-#~ msgstr "Švédština"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Švédština (finská)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamilština"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugština"
-
-#~ msgid "Thai"
-#~ msgstr "Thajština"
-
-#~ msgid "Turkish"
-#~ msgstr "Turečtina"
-
-#~ msgid "Uighur"
-#~ msgstr "Ujgurština"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ukrajinština"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdština"
-
-#~ msgid "Uzbek"
-#~ msgstr "Uzbečtina"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamština"
-
-#~ msgid "Walloon"
-#~ msgstr "Walloon"
-
-#~ msgid "Yiddish"
-#~ msgstr "Jidiš"
-
-#~ msgid "Chinese"
-#~ msgstr "Čínština"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Čínština (zjednodušená)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Čínština (tradiční)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belgičtina"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Angličtina (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Angličtina (kanadská)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Angličtina (irská)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Angličtina (britská)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Angličtina (americká)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Angličtina (kanadská)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Angličtina (britská)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Angličtina (britská)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Angličtina (kanadská)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Angličtina (britská)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Francouzština (kanadská)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Francouzština (kanadská)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Francouzština (kanadská)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Němčina (švýcarská)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Francouzština (kanadská)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Němčina (s mrtvými klávesami)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Němčina (švýcarská)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Angličtina (australská)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Němčina (švýcarská)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Němčina (švýcarská)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugalština (brazilská)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugalština (brazilská)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Španělština (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malajámština"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norština"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Srbština"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Čínština (tradiční)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Čínština (tradiční)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Čínština (tradiční)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Čínština"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Čínština (zjednodušená)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabština (egyptská)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabština (egyptská)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabština (egyptská)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabština (egyptská)"
-
-#~ msgid "Other"
-#~ msgstr "Ostatní"
-
-#~ msgid "Unknown"
-#~ msgstr "Neznámé"
-
-#~ msgid "English (US)"
-#~ msgstr "Angličtina (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belgičtina"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Čeština (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Francouzština (švýcarská)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Němčina (s mrtvými klávesami)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugalština (brazilská)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovenština (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Španělština (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Angličtina (UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Převod zjednodušená - tradiční čínština"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Převod mezi zjednodušenou čínštinou a tradiční čínštinou"
-
-#~ msgid "SC-TC"
-#~ msgstr "SC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Převod zjednodušená - tradiční čínština"
-
-#~ msgid "No Conversion"
-#~ msgstr "Bez převodu"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Ze zjednodušené do tradiční"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Převést zjednodušenou čínštinu do tradiční čínštiny"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Z tradiční do zjednodušené"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Převést tradiční čínštinu do zjednodušené čínštiny"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "SC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->SC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "SCIM platforma"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Stav"
-
-#~ msgid "Name"
-#~ msgstr "Název"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Pozice kurzoru"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Aktuální pozice vkládacího kurzoru mezi znaky."
-
-#~ msgid "Maximum length"
-#~ msgstr "Maximální délka"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Maximální počet znaků při zobrazení řetězce. Nula, pokud není nic "
-#~ "nastaveno."
-
-#~ msgid "Maximum width"
-#~ msgstr "Maximální šířka"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Maximální šířka pohledu na řetězec."
-
-#~ msgid "Has Frame"
-#~ msgstr "S rámem"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FALSE odstraní zkosení."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Vykreslit kurzor"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "TRUE vykreslí blikající kurzor."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Automatické přesunutí kurzoru"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "TRUE automaticky přemístí kurzor při kliknutí myší."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Předání událost stisknutí tlačítka"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "TRUE předá událost stisknutí tlačítka programu."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Automatická změna velikosti widgetu podle řetězce"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "TRUE povolí automatickou změnu velikosti."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "TRUE automaticky přemístí kurzor při kliknutí myší."
-
-#~ msgid "Width in chars"
-#~ msgstr "Šířka znaků"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Počet znaků, pro které se v řetězci vynechá místo."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Scroll offset"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "Počet pixelů v zobrazeném řetězci při přesunu vlevo"
-
-#~ msgid "Text"
-#~ msgstr "Text"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Obsahy zobrazeného řetězce"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Zvolené _klávesy:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Kód klávesy:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Modifikátor:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Uvolnit"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Zadejte prosím nejdřív kód klávesy."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Stiskněte klávesu (nebo kombinaci kláves).\n"
-#~ "Dialog se zavře po uvolnění kláves."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Zachycení klávesy."
-
-#~ msgid "Key Selection"
-#~ msgstr "Výběr kláves"
-
-#~ msgid "Orientation"
-#~ msgstr "Orientace"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Orientace panelu."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Text"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amharština"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Vždy"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Volby"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Angličtina/klávesnice"
-
-#~ msgid "English/European"
-#~ msgstr "Angličtina/Evropa"
-
-#~ msgid "RAW CODE"
-#~ msgstr "RAW KÓD"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Klávesové zkratky:\n"
-#~ "\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " přepnutí mezi Multibyte a Unicode kódováním.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " zrušení vstupní metody.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Stav aktuální vstupní metody. Změnu provedete kliknutím."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Obecná nastavení"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Nastavení klávesový zkratek používaných moduly včetně X11, GTK, IMModule, "
-#~ "GTK IMModule, QT IMModule atd."
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Spouštění:"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Zvolte spouštěcí klávesy"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Klávesové události zapínající/vypínající SCIM vstupní metodu. Úpravu "
-#~ "provedete kliknutím na tlačítko vpravo."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Zapnout:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Zvolte spouštěcí klávesy"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Klávesové události zapínající SCIM vstupní metodu. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "_Vypnout:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Zvolte vypínací klávesy"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Klávesové události vypínající SCIM vstupní metodu. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Další vstupní metoda:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Zvolte klávesy další vstupní metody"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Klávesové události přepínající na další vstupní metodu. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Předchozí vstupní metoda:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Zvolte klávesy předchozí vstupní metody"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Klávesové události přepnutí do předcházející vstupní metody. Úpravu "
-#~ "provedete kliknutím na tlačítko vpravo."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "_Zobrazit nabídku vstupní metody:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Zvolte klávesy zobrazení nabídky vstupní metody"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Klávesové události k zobrazení nabídky vstupní metody. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Rozložení klávesnice:"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Zde můžete nastavit své rozložení klávesnice tak, aby zvolené vstupní "
-#~ "metody fungovaly korektně."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "_Vložit předpřipravený řetězec do klientského okna"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, zobrazí se předpřipravený řetězec přímo v "
-#~ "klientském vstupním okně než v nezávislém plovoucím okně."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "_Zdílet vstupní metody u všech aplikací"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Pokud tuto volbu zaškrtnete, bude se u všech aplikací používat pouze "
-#~ "jeden typ vstupní metody. V opačném případě se u každé aplikace může "
-#~ "použije jiná."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Klávesové zkratky"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Zde můžete povolit/zakázat vstupní metody a nastavit jejich klávesové "
-#~ "zkratky."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Služby nainstalované vstupní metody:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Upravit _klávesové zkratky"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Úprava klávesových zkratek spojených se zvolenou vstupní metodou."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Zvolit _filtry"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Zvolte filtry spojené s touto vstupní metodou."
-
-#~ msgid "_Expand"
-#~ msgstr "_Rozbalit"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Zobrazení všech jazykových kategorií."
-
-#~ msgid "_Collapse"
-#~ msgstr "_Zabalit"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Skrytí všech jazykových kategorií."
-
-#~ msgid "E_nable All"
-#~ msgstr "_Povolit vše"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Povolit všechny vstupní metody."
-
-#~ msgid "_Disable All"
-#~ msgstr "_Zakázat vše"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Zakázat všechny vstupní metody."
-
-#~ msgid "Filters"
-#~ msgstr "Filtry"
-
-#~ msgid "Languages"
-#~ msgstr "Jazyky"
-
-#~ msgid "Description"
-#~ msgstr "Popis"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Upravit klávesové zkratky %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Zvolte filtry pro %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Posunout na_horu"
-
-#~ msgid "Move _Down"
-#~ msgstr "Posunout _dolů"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Démon zapuštěný do panelu založený na knihovně GTK+-2.x."
-
-#~ msgid "On demand"
-#~ msgstr "Na požádání"
-
-#~ msgid "Never"
-#~ msgstr "Nikdy"
-
-#~ msgid "ToolBar"
-#~ msgstr "Nástrojová lišta"
-
-#~ msgid "_Show:"
-#~ msgstr "_Zobrazit:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Automatické přicvaknutí"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Zobrazit ikonu _vstupní metody"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Zobrazit _název vstupní metody"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Délka _zobrazení::"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Zobrazit ikonu _přilepení"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Zobrazit ikonu _nabídky"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Zobrazit ikonu _nápovědy"
-
-#~ msgid "Show _property label"
-#~ msgstr "Zobrazit _vlastnosti"
-
-#~ msgid "Input window"
-#~ msgstr "Vstupní okno"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "_Vložená vyhledávací tabulka"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "V_ertikální vyhledávací tabulka"
-
-#~ msgid "Misc"
-#~ msgstr "Různé"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Pohltit ikonu do panelu"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Přišpendlit _okno"
-
-#~ msgid "_Font:"
-#~ msgstr "_Písmo:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Pokud jste zvolili \"Vždy\", bude lišta vždy zobrazena. V případě \"Na "
-#~ "požádání\" bude vždy po deaktivaci SCIM skryta. U volby \"Nikdy\" se "
-#~ "nezobrazí nikdy."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, bude nástrojová lišta přichycena k okraji "
-#~ "pracovní plochy."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Lišta se skryje po uplynutí zadaného času. Tato volba je platná pouze "
-#~ "pokud jste současně zvolili \"Vždy zobrazit'\". Funkci vypnete nastavením "
-#~ "na hodnotu 0."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona metody."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, objeví se na liště název vstupní metody."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona přišpendlení."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona nabídky."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona nápovědy."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, objeví se na liště ikona vlastností vstupní "
-#~ "metody."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, připojí se vstupního okna vyhledávací tabulka."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, zobrazí se vyhledávací tabulka vertikálně."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr "Pokud zvolíte tuto možnost, zapustí se ikona programu do panelu."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, lišta nástrojů, vstupní okno a vyhledávací "
-#~ "tabulka se přišpendlí do původní pozice."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr "Nastavení písma v okně vstupu a ve vyhledávací tabulce."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Zvolte písmo rozhraní"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Rozhraní"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Panel"
-
-#~ msgid "Extra"
-#~ msgstr "Rozšíření"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Nastavení vstupní metody SCIM"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ "<span size=\"20000\">Smart Common Input Method platforma</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Grafické rozhraní</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Nastavení %s modulů.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Chcete skutečně ukončit nastavení SCIM?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Ne všechna nastavení lze zavést za běhu. Nezapomeňte SCIM restartovat."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Nastavit SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "Grafické rozhraní založené na knihovně GTK Widget."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Nástroj pro nastavení Smart Common Input Method platformy"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Nápověda SCIM"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Přišpendlit/odšpendlit vstupní okno a nástrojovou lištu."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Zobrazí krátkou nápovědu o aktuální vstupní metodě."
-
-#~ msgid "Show command menu."
-#~ msgstr "Zobrazí nabídku příkazů."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Obnovit konfiguraci"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Přišpendlit okno"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Skrýt lištu"
-
-#~ msgid "Help ..."
-#~ msgstr "Nápověda..."
-
-#~ msgid "Exit"
-#~ msgstr "Ukončit"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
+++ /dev/null
-# translation of de.po to German
-# This file is distributed under the same license as the scim package.
-# Copyright (C) 2004 THE scim'S COPYRIGHT HOLDER.
-#
-#
-# Jan Hefti <j.hefti@hamburg.de>, 2004.
-# Jan Hefti <j.hefti@chinaboard.de>, 2005.
-msgid ""
-msgstr ""
-"Project-Id-Version: de\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2005-12-16 14:10+0100\n"
-"Last-Translator: Jan Hefti <j.hefti@chinaboard.de>\n"
-"Language-Team: German <scim-devel@lists.sourceforge.net>\n"
-"Language: de\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: KBabel 1.11\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-#, fuzzy
-msgid "Selection"
-msgstr "Tastenauswahl"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-#, fuzzy
-msgid "No option"
-msgstr "Optionen"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-#, fuzzy
-msgid "Options"
-msgstr "Optionen"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-#, fuzzy
-msgid "Software keyboard"
-msgstr "Deutsch/Tastatur"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-#, fuzzy
-msgid "Keyboard selection"
-msgstr "Tastenauswahl"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-#, fuzzy
-msgid "Keyboard option"
-msgstr "Tastenauswahl"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-#, fuzzy
-msgid "Hardware keyboard"
-msgstr "Deutsch/Tastatur"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-#, fuzzy
-msgid "Keyboard"
-msgstr "Deutsch/Tastatur"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Deutsch"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Deutsch/Tastatur"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Englisch (USA)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amharisch"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabisch"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabisch (Libanon)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamesisch"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Aserbaidschanisch"
-
-#~ msgid "Belarusian"
-#~ msgstr "Weißrussisch"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgarisch"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengalisch"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengalisch (Indien)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetisch"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosnisch"
-
-#~ msgid "Catalan"
-#~ msgstr "Katalanisch"
-
-#~ msgid "Czech"
-#~ msgstr "Tschechisch"
-
-#~ msgid "Welsh"
-#~ msgstr "Walisisch"
-
-#~ msgid "Danish"
-#~ msgstr "Dänisch"
-
-#~ msgid "German"
-#~ msgstr "Deutsch"
-
-#~ msgid "Greek"
-#~ msgstr "Griechisch"
-
-#~ msgid "English"
-#~ msgstr "Englisch"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Englisch (Australien)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Englisch (Kanada)"
-
-#~ msgid "English (British)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Englisch (Irland)"
-
-#~ msgid "English (American)"
-#~ msgstr "Englisch (USA)"
-
-#~ msgid "Spanish"
-#~ msgstr "Spanisch"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estnisch"
-
-#~ msgid "Basque"
-#~ msgstr "Baskisch"
-
-#~ msgid "Persian"
-#~ msgstr "Persisch"
-
-#~ msgid "Finnish"
-#~ msgstr "Finnisch"
-
-#~ msgid "French"
-#~ msgstr "Französisch"
-
-#~ msgid "Irish"
-#~ msgstr "Irisch"
-
-#~ msgid "Galician"
-#~ msgstr "Galizisch"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hebräisch"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "Kroatisch"
-
-#~ msgid "Hungarian"
-#~ msgstr "Ungarisch"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "Rumänisch"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonesisch"
-
-#~ msgid "Icelandic"
-#~ msgstr "Isländisch"
-
-#~ msgid "Italian"
-#~ msgstr "Italienisch"
-
-#~ msgid "Japanese"
-#~ msgstr "Japanisch"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "Deutsch"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kasachisch"
-
-#~ msgid "Cambodian"
-#~ msgstr "Kambodschanisch"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannada"
-
-#~ msgid "Korean"
-#~ msgstr "Koreanisch"
-
-#~ msgid "Laothian"
-#~ msgstr "Laotisch"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Litauisch"
-
-#~ msgid "Latvian"
-#~ msgstr "Lettisch"
-
-#~ msgid "Macedonian"
-#~ msgstr "Mazedonisch"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malajalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongolisch"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Malaysisch"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepalesisch"
-
-#~ msgid "Dutch"
-#~ msgstr "Niederländisch"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norwegisch (Nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norwegisch (Bokmal)"
-
-#~ msgid "Oriya"
-#~ msgstr "Orija"
-
-#~ msgid "Punjabi"
-#~ msgstr "Pandschabi"
-
-#~ msgid "Polish"
-#~ msgstr "Polnisch"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugiesisch"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugiesisch (Brasilien)"
-
-#~ msgid "Romanian"
-#~ msgstr "Rumänisch"
-
-#~ msgid "Russian"
-#~ msgstr "Russisch"
-
-#~ msgid "Slovak"
-#~ msgstr "Slowakisch"
-
-#~ msgid "Slovenian"
-#~ msgstr "Slowenisch"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanisch"
-
-#~ msgid "Serbian"
-#~ msgstr "Serbisch"
-
-#~ msgid "Swedish"
-#~ msgstr "Schwedisch"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Schwedisch (Finnland)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamilisch"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugu"
-
-#~ msgid "Thai"
-#~ msgstr "Thai"
-
-#~ msgid "Turkish"
-#~ msgstr "Türkisch"
-
-#~ msgid "Uighur"
-#~ msgstr "Uigurisch"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ukrainisch"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "Usbekisch"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamesisch"
-
-#~ msgid "Walloon"
-#~ msgstr "Wallonisch"
-
-#~ msgid "Yiddish"
-#~ msgstr "Jiddisch"
-
-#~ msgid "Chinese"
-#~ msgstr "Chinesisch"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Chinesisch (vereinfacht)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Chinesisch (traditionell)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belgisch"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Englisch (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Englisch (Kanada)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Englisch (Irland)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Englisch (USA)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Englisch (Kanada)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Englisch (Kanada)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Französisch (Kanada)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Französisch (Kanada)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Französisch (Kanada)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Deutsch (Schweiz)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Französisch (Kanada)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Deutsch (mit deadkeys)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Deutsch (Schweiz)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Englisch (Australien)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Deutsch (Schweiz)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Deutsch (Schweiz)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugiesisch (Brasilien)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugiesisch (Brasilien)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Spanisch (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malajalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norwegisch"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Serbisch"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Chinesisch (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Chinesisch (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Chinesisch (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Chinesisch"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Chinesisch (vereinfacht)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#~ msgid "Other"
-#~ msgstr "Sonstige"
-
-#~ msgid "Unknown"
-#~ msgstr "Unbekannt"
-
-#~ msgid "English (US)"
-#~ msgstr "Englisch (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belgisch"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Tschechisch (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Französisch (Schweiz) "
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Deutsch (mit deadkeys)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugiesisch (Brasilien, US, Akzente)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovakisch (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Spanisch (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Englisch (UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Umwandlung vereinfachtes/traditionelles Chinesisch"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Vereinfachtes in traditionelles Chinesisch umwandeln und umgekehrt"
-
-#~ msgid "SC-TC"
-#~ msgstr "VC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Umwandlung vereinfachtes->traditionelles Chinesisch"
-
-#~ msgid "No Conversion"
-#~ msgstr "Keine Umwandlung"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Vereinfacht zu traditionell"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Vereinfachtes Chinesisch in traditionelles Chinesisch umwandeln"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Traditionell zu vereinfacht"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Traditionelles Chinesisch in vereinfachtes Chinesisch umwandeln"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "VC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->VC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Smart Common Input Method Plattform "
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(c) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Aktivieren"
-
-#~ msgid "Name"
-#~ msgstr "Name"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Zeigerposition"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Die aktuelle Zeigerposition (in Zeichen gerechnet)."
-
-#~ msgid "Maximum length"
-#~ msgstr "Maximale Länge"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr "Maximale Anzahl angezeigter Zeichen. »0« bedeutet unbegrenzt."
-
-#~ msgid "Maximum width"
-#~ msgstr "Maximale Breite"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Maximale Breite der angezeigten Zeichenkette."
-
-#~ msgid "Has Frame"
-#~ msgstr "Mit Rahmen"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr ""
-#~ "»Nein« entfernt den umgebenden Rahmen von der angezeigten Zeichenkette."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Zeiger anzeigen"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "Wenn »ja«, wird ein blinkender Zeiger angezeigt."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Zeiger automatisch verschieben"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr ""
-#~ "Wenn »ja«, wird der Zeiger bei einem Mausklick automatisch verschoben."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Knopfdruck zum Übertragen"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr ""
-#~ "Wenn »ja«, wird der gewählte Ausdruck beim jeweiligen Knopfdruck zum "
-#~ "Programm übertragen."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Anzeigefläche automatisch an Zeichenkette anpassen"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "Bei »ja« ist die automatische Größenanpassung aktiviert."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr ""
-#~ "Wenn »ja«, wird der Zeiger bei einem Mausklick automatisch verschoben."
-
-#~ msgid "Width in chars"
-#~ msgstr "Breite in Zeichen"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr ""
-#~ "Anzahl der Zeichen, für die in der Anzeige Platz gelassen werden soll."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Verschiebeversatz"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr ""
-#~ "Anzahl der Pixel, um die die Anzeige außerhalb des Bildschirms nach links "
-#~ "verschoben wird"
-
-#~ msgid "Text"
-#~ msgstr "Text"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Inhalt der Zeichenkettenanzeige"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Gewählte _Tasten:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Tastencode:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Sondertasten:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Strg"
-
-#~ msgid "A_lt"
-#~ msgstr "_Alt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Umschalt"
-
-#~ msgid "_Release"
-#~ msgstr "_Loslassen"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "Su_per"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Bitte geben Sie zuerst einen Tastencode ein."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Drücken Sie eine Taste (oder eine Tastenkombination).\n"
-#~ "Dieser Dialog wird geschlossen, wenn die Tasten gelöst werden."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Erfassen der Tasten."
-
-#~ msgid "Key Selection"
-#~ msgstr "Tastenauswahl"
-
-#~ msgid "Orientation"
-#~ msgstr "Ausrichtung"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Die Ausrichtung des Systemabschnitts der Kontrollleiste."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Text"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amharisch"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Immer"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Optionen"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Deutsch/Tastatur"
-
-#~ msgid "English/European"
-#~ msgstr "Deutsch/Europäisch"
-
-#~ msgid "RAW CODE"
-#~ msgstr "Unicode Rohdaten"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(c) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Tastenkürzel:\n"
-#~ "\n"
-#~ " Steuerung+u:\n"
-#~ " Umschalten zwischen Multibyte-Codierung und Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " Eingabemethode zurücksetzen.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr ""
-#~ "Der Status der aktuell verwendeten Eingabemethode. Klicken Sie diesen an, "
-#~ "um ihn zu ändern."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Globale Einstellungen"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Stellen Sie die globalen Optionen ein, die von allen FrontEnd-Modulen "
-#~ "beachtet werden, einschließlich dem X11 FrontEnd, GKT IMModule, QT "
-#~ "IMModule, usw."
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Auslöser:"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Tasten zum Auslösen auswählen"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen die Eingabemethode SCIM an- und "
-#~ "ausgeschaltet wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Einschalten:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Tasten zum Einschalten auswählen"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen die Eingabemethode SCIM eingeschaltet "
-#~ "wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "A_usschalten"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Tasten zum Ausschalten auswählen"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen die Eingabemethode SCIM ausgeschaltet "
-#~ "wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Nächste Eingabemethode:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr ""
-#~ "Wählen Sie die Tastenkombinationen, um zur nächsten Eingabemethode zu "
-#~ "wechseln"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen zur nächsten Eingabemethode gewechselt "
-#~ "wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Vorherige Eingabemethode:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr ""
-#~ "Wählen Sie die Tastenkombinationen, um zur vorherigen Eingabemethode zu "
-#~ "wechseln"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen zur vorherigen Eingabemethode gewechselt "
-#~ "wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Zeige _Auswahlmenü für Eingabemethoden:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr ""
-#~ "Wählen Sie die Tastenkürzel, um das Auswahlmenü für Eingabemethoden "
-#~ "anzuzeigen"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen das Auswahlmenü für Eingabemethoden "
-#~ "angezeigt wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Tastaturlayout"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Sie sollten hier Ihr derzeit verwendetes Tastaturlayout einstellen, so "
-#~ "dass Eingabemethoden, die vom Tastaturlayout abhängig sind, korrekt "
-#~ "funktionieren."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Roheingabe ins Client-Fenster einbetten"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird die Roheingabe - die bisher "
-#~ "eingegebenen Zeichen vor einer endgültigen Auswahl - ins Client-"
-#~ "Eingabefenster eingebettet und nicht in einem Extrafenster angezeigt."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "Dieselbe Eingabemethode unter _allen Anwendungen verwenden."
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Wenn diese Option aktiviert ist, wird ein und dieselbe Eingabemethode von "
-#~ "allen Anwendungen gleichzeitig verwendet. Andernfalls kann jede Anwendung "
-#~ "eine andere Eingabemethode verwenden."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Tastenkombinationen"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Hier können Sie die installierten Eingabemethoden aktivieren/deaktivieren "
-#~ "und ihnen Tastenkürzel zuordnen."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Installierte Eingabemethoden:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "_Tastenkürzel ändern"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr ""
-#~ "Stellen Sie die mit der gewählten Eingabemethode assoziierten "
-#~ "Tastenkürzel ein."
-
-#~ msgid "Select _Filters"
-#~ msgstr "_Filter auswählen"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr ""
-#~ "Wählen Sie die Filter, die dieser Eingabemethode zugeordnet werden sollen."
-
-#~ msgid "_Expand"
-#~ msgstr "Er_weitern"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Erweitern Sie alle Sprachgruppen."
-
-#~ msgid "_Collapse"
-#~ msgstr "Ein_klappen"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Klappen Sie alle Sprachgruppen ein."
-
-#~ msgid "E_nable All"
-#~ msgstr "Alle _aktivieren"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Alle Eingabemethoden aktivieren."
-
-#~ msgid "_Disable All"
-#~ msgstr "Alle _deaktivieren"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Alle Eingabemethoden deaktivieren."
-
-#~ msgid "Filters"
-#~ msgstr "Filter"
-
-#~ msgid "Languages"
-#~ msgstr "Sprachen"
-
-#~ msgid "Description"
-#~ msgstr "Beschreibung"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Tastenkürzel für %s ändern"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Filter für %s wählen"
-
-#~ msgid "Move _Up"
-#~ msgstr "Nach _oben"
-
-#~ msgid "Move _Down"
-#~ msgstr "Nach _unten"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr ""
-#~ "Ein Kontrollleisten-Hilfsprogramm, das auf der GTK+-2.x-Bibliothek beruht."
-
-#~ msgid "On demand"
-#~ msgstr "Auf Anforderung"
-
-#~ msgid "Never"
-#~ msgstr "Nie"
-
-#~ msgid "ToolBar"
-#~ msgstr "Symbolleiste"
-
-#~ msgid "_Show:"
-#~ msgstr "_Zeige:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Automatisch ein_rasten"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Symbol für die Eingabe_methode anzeigen"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "_Name der Eingabemethode anzeigen"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "_Ausblenden nach (sek):"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Symbol »Immer im _Vordergrund« anzeigen"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Symbol »_Menü« anzeigen"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Symbol »_Hilfe« anzeigen"
-
-#~ msgid "Show _property label"
-#~ msgstr "_Bezeichnung der Eigenschaften anzeigen"
-
-#~ msgid "Input window"
-#~ msgstr "Eingabefenster"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Ein_gebettete Auswahlliste"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Vertikale Auswahlliste"
-
-#~ msgid "Misc"
-#~ msgstr "Verschiedenes"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Symbol im _Benachrichtigungsfeld anzeigen"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Fenster behält _Position"
-
-#~ msgid "_Font:"
-#~ msgstr "_Schriftart:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Wenn »Immer« gewählt ist, wird die Symbolleiste immer auf dem Bildschirm "
-#~ "angezeigt. Bei »Auf Anforderung« wird sie nur angezeigt, wenn SCIM "
-#~ "aktiviert ist. Bei »Nie« wird sie niemals angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird die Symbolleiste am Bildschirmrand "
-#~ "eingerastet."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Die Symbolleiste wird versteckt, nachdem die angegebene Zeit vergangen "
-#~ "ist. Diese Option ist nur verfügbar, wenn »Immer anzeigen« gewählt ist. "
-#~ "Geben Sie »0« ein, um dieses Verhalten zu unterdrücken. "
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird das Symbol der aktuellen "
-#~ "Eingabemethode auf der Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird der Name der aktuellen Eingabemethode "
-#~ "auf der Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird das Symbol »Immer im Vordergrund "
-#~ "halten« auf der Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird das Symbol »Menü« auf der "
-#~ "Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird das Symbol »Hilfe« auf der "
-#~ "Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, werden die Bezeichnungen der einzelnen "
-#~ "Eigenschaften der Eingabemethode auf der Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird die Auswahlliste ins Eingabefenster "
-#~ "eingebettet."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird die Auswahlliste senkrecht angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird ein Symbol in der Kontrollleiste "
-#~ "angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, werden Symbolleiste, Eingabefenster und "
-#~ "Auswahlliste immer an ihren jeweiligen Ausgangspositionen gehalten."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Die eingestellte Schriftart wird in Eingabefenster und Auswahlliste "
-#~ "verwendet."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Schriftart für die Benutzeroberfläche wählen"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Benutzeroberfläche"
-
-#~ msgid "IMEngine"
-#~ msgstr "Eingabemethoden"
-
-#~ msgid "Panel"
-#~ msgstr "Kontrollleiste"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Einstellungen der SCIM-Eingabemethoden"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Smart Common Input Method-Plattform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Grafisches Einrichtungswerkzeug</"
-#~ "span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Einstellungen der %s-Module.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Möchten Sie die Einstellung von SCIM wirklich verlassen?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Nicht alle Einstellungen können bei laufendem Programm neu geladen "
-#~ "werden. Starten Sie bitte SCIM neu, damit alle Änderungen übernommen "
-#~ "werden."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Einrichtung von SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr ""
-#~ "Integriertes Einrichtungswerkzeug, das auf der GTK Widget-Bibliothek "
-#~ "beruht."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Einrichtungswerkzeug für die Smart Common Input Method-Plattform"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Hilfe zu SCIM"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Eingabefenster und Symbolleiste festsetzen/verschiebbar machen."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Zeige eine kurze Hilfe zu SCIM und zur gewählten Eingabemethode."
-
-#~ msgid "Show command menu."
-#~ msgstr "Befehlsmenü anzeigen."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(c) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Einstellungen neu laden"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Werkzeugleiste festsetzen"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Symbolleiste verstecken"
-
-#~ msgid "Help ..."
-#~ msgstr "Hilfe ..."
-
-#~ msgid "Exit"
-#~ msgstr "Beenden"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "De"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "Auswahl"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "Keine Optionen"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "Tastatur-Einstellungen"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "Autom. Großschreibung"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "Automatischer Punkt"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "Softwaretastatur"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "Tastatur auswählen"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "Hardwaretastatur"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "Tastatur"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "Επιλογή"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "Καμία επιλογή"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "Ρυθμίσεις πληκτρολογίου"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "Αυτόματη κεφαλαιοποίηση"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "Αυτόματη εισαγωγή τελείας"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "Πληκτρολόγιο οθόνης"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "Επιλογή πληκτρολογίου"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "Πληκτρολόγιο υλικού"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "Πληκτρολόγιο"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "Keyboard selection"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "Keyboard selection"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr ""
+++ /dev/null
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\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"
-"Language: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-msgid "Selection"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-msgid "No option"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-msgid "Options"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-msgid "Software keyboard"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-msgid "Keyboard selection"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-msgid "Keyboard option"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-msgid "Hardware keyboard"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-msgid "Keyboard"
-msgstr ""
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "Selección"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "No hay opciones"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "Configuración del teclado"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "Uso de mayúsculas automático"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "Detención completa automática"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "Teclado de software"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "Seleccionar teclado"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "Teclado de hardware"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "Teclado"
+++ /dev/null
-# Finnish translation for scim
-# Copyright (c) (c) 2006 Canonical Ltd, and Rosetta Contributors 2006
-# This file is distributed under the same license as the scim package.
-# Timo Jyrinki <timo.jyrinki@iki.fi>, 2006.
-# note: GFTT is at http://www.gnome.fi/
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: scim\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2006-05-24 16:51+0000\n"
-"Last-Translator: Timo Jyrinki <timo.jyrinki@iki.fi>\n"
-"Language-Team: Finnish <gnome-fi-laatu@lists.sourceforge.net>\n"
-"Language: fi\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-#, fuzzy
-msgid "Selection"
-msgstr "Näppäimen valinta"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-#, fuzzy
-msgid "No option"
-msgstr "Valinnat"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-#, fuzzy
-msgid "Options"
-msgstr "Valinnat"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-#, fuzzy
-msgid "Software keyboard"
-msgstr "englanti/näppäimistö"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-#, fuzzy
-msgid "Keyboard selection"
-msgstr "Näppäimen valinta"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-#, fuzzy
-msgid "Keyboard option"
-msgstr "Näppäimen valinta"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-#, fuzzy
-msgid "Hardware keyboard"
-msgstr "englanti/näppäimistö"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-#, fuzzy
-msgid "Keyboard"
-msgstr "englanti/näppäimistö"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "saksa"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "englanti/näppäimistö"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "englanti (amerikanenglanti)"
-
-#~ msgid "Amharic"
-#~ msgstr "amhara"
-
-#~ msgid "Arabic"
-#~ msgstr "arabia"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "arabia (Egypti)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "arabia (Libanon)"
-
-#~ msgid "Assamese"
-#~ msgstr "assami"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "azeri"
-
-#~ msgid "Belarusian"
-#~ msgstr "valkovenäjä"
-
-#~ msgid "Bulgarian"
-#~ msgstr "bulgaria"
-
-#~ msgid "Bengali"
-#~ msgstr "bengali"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "bengali (Intia)"
-
-#~ msgid "Tibetan"
-#~ msgstr "tiibetti"
-
-#~ msgid "Bosnian"
-#~ msgstr "bosnia"
-
-#~ msgid "Catalan"
-#~ msgstr "katalaani"
-
-#~ msgid "Czech"
-#~ msgstr "tšekki"
-
-#~ msgid "Welsh"
-#~ msgstr "wales"
-
-#~ msgid "Danish"
-#~ msgstr "tanska"
-
-#~ msgid "German"
-#~ msgstr "saksa"
-
-#~ msgid "Greek"
-#~ msgstr "kreikka"
-
-#~ msgid "English"
-#~ msgstr "englanti"
-
-#~ msgid "English (Australian)"
-#~ msgstr "englanti (Australia)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "englanti (Kanada)"
-
-#~ msgid "English (British)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "englanti (Irlanti)"
-
-#~ msgid "English (American)"
-#~ msgstr "englanti (amerikanenglanti)"
-
-#~ msgid "Spanish"
-#~ msgstr "espanja"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "espanja (Mexico)"
-
-#~ msgid "Estonian"
-#~ msgstr "viro"
-
-#~ msgid "Basque"
-#~ msgstr "baski"
-
-#~ msgid "Persian"
-#~ msgstr "persia"
-
-#~ msgid "Finnish"
-#~ msgstr "suomi"
-
-#~ msgid "French"
-#~ msgstr "ranska"
-
-#~ msgid "Irish"
-#~ msgstr "irlanti"
-
-#~ msgid "Galician"
-#~ msgstr "galicia"
-
-#~ msgid "Gujarati"
-#~ msgstr "gudžarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "heprea"
-
-#~ msgid "Hindi"
-#~ msgstr "hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "kroatia"
-
-#~ msgid "Hungarian"
-#~ msgstr "unkari"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "romania"
-
-#~ msgid "Interlingua"
-#~ msgstr "interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "indonesia"
-
-#~ msgid "Icelandic"
-#~ msgstr "islanti"
-
-#~ msgid "Italian"
-#~ msgstr "italia"
-
-#~ msgid "Japanese"
-#~ msgstr "japani"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "saksa"
-
-#~ msgid "Kazakh"
-#~ msgstr "kazak"
-
-#~ msgid "Cambodian"
-#~ msgstr "kampodia/khmer"
-
-#~ msgid "Kannada"
-#~ msgstr "kannada"
-
-#~ msgid "Korean"
-#~ msgstr "korea"
-
-#~ msgid "Laothian"
-#~ msgstr "laos"
-
-#~ msgid "Lithuanian"
-#~ msgstr "liettua"
-
-#~ msgid "Latvian"
-#~ msgstr "latvia"
-
-#~ msgid "Macedonian"
-#~ msgstr "makedonia"
-
-#~ msgid "Malayalam"
-#~ msgstr "malajalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "mongolia"
-
-#~ msgid "Marathi"
-#~ msgstr "marathi"
-
-#~ msgid "Malay"
-#~ msgstr "malaiji"
-
-#~ msgid "Nepali"
-#~ msgstr "nepali"
-
-#~ msgid "Dutch"
-#~ msgstr "hollanti"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "norja (nykynorja)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "norja (kirjanorja)"
-
-#~ msgid "Oriya"
-#~ msgstr "oriya"
-
-#, fuzzy
-#~ msgid "Punjabi"
-#~ msgstr "panjabi"
-
-#~ msgid "Polish"
-#~ msgstr "puola"
-
-#~ msgid "Portuguese"
-#~ msgstr "portugali"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "portugali (Brasilia)"
-
-#~ msgid "Romanian"
-#~ msgstr "romania"
-
-#~ msgid "Russian"
-#~ msgstr "venäjä"
-
-#~ msgid "Slovak"
-#~ msgstr "slovakki"
-
-#~ msgid "Slovenian"
-#~ msgstr "sloveeni"
-
-#~ msgid "Albanian"
-#~ msgstr "albania"
-
-#~ msgid "Serbian"
-#~ msgstr "serbia"
-
-#~ msgid "Swedish"
-#~ msgstr "ruotsi"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "ruotsi (Suomi)"
-
-#~ msgid "Tamil"
-#~ msgstr "tamili"
-
-#~ msgid "Telugu"
-#~ msgstr "telugu"
-
-#~ msgid "Thai"
-#~ msgstr "thai"
-
-#~ msgid "Turkish"
-#~ msgstr "turkki"
-
-#~ msgid "Uighur"
-#~ msgstr "uiguuri"
-
-#~ msgid "Ukrainian"
-#~ msgstr "ukraina"
-
-#~ msgid "Urdu"
-#~ msgstr "urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "uzbekki"
-
-#~ msgid "Vietnamese"
-#~ msgstr "vietnam"
-
-#~ msgid "Walloon"
-#~ msgstr "valloni"
-
-#~ msgid "Yiddish"
-#~ msgstr "jiddiš"
-
-#~ msgid "Chinese"
-#~ msgstr "kiina"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "kiina (yksinkertaistettu)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "kiina (perinteinen)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "belgia"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "englanti (USA)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "englanti (Kanada)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "englanti (Irlanti)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "englanti (amerikanenglanti)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "englanti (Kanada)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "englanti (Kanada)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Ranska (Kanada)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Ranska (Kanada)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Ranska (Kanada)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Saksa (sveitsiläinen)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Ranska (Kanada)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Saksa (kuolleilla näppäimillä)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Saksa (sveitsiläinen)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "englanti (Australia)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Saksa (sveitsiläinen)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Saksa (sveitsiläinen)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "portugali (Brasilia)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "portugali (Brasilia)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "espanja (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "malajalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "norja"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "serbia"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "kiina (perinteinen)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "kiina (perinteinen)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "kiina (perinteinen)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "kiina"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "kiina (yksinkertaistettu)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "arabia (Egypti)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "arabia (Egypti)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "arabia (Egypti)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "arabia (Egypti)"
-
-#~ msgid "Other"
-#~ msgstr "Muu"
-
-#~ msgid "Unknown"
-#~ msgstr "Tuntematon"
-
-#~ msgid "English (US)"
-#~ msgstr "englanti (USA)"
-
-#~ msgid "Belgian"
-#~ msgstr "belgia"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "tšekki (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Ranska (Sveitsi)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Saksa (kuolleilla näppäimillä)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "portugali (Brasilia/US-aksenttimerkit)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "slovakia (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "espanja (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#~ msgid "English (UK)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Yksinkertaistetun/perinteisen kiinan muunnos"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Muunna yksinkertaistetun ja perinteisen kiinan välillä"
-
-#~ msgid "SC-TC"
-#~ msgstr "yk-pk"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Yksinkertaistetun/perinteisen kiinan muunnos"
-
-#~ msgid "No Conversion"
-#~ msgstr "Ei muunnosta"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Yksinkertaistetusta perinteiseksi"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Muunna yksinkertaistettu kiina perinteiseksi kiinaksi"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Perinteisestä yksinkertaistetuksi"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Muunna perinteisestä kiinasta yksinkertaistetuksi kiinaksi"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "yk->pk"
-
-#~ msgid "TC->SC"
-#~ msgstr "pk->yk"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Smart Common Input Method -alusta "
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Ota käyttöön"
-
-#~ msgid "Name"
-#~ msgstr "Nimi"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Kohdistimen paikka"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Syöttökohdistimen nykyinen paikka merkeissä."
-
-#~ msgid "Maximum length"
-#~ msgstr "Suurin pituus"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Suurin määrä merkkejä tälle merkkijononäytölle. Nolla, jos ei aseteta."
-
-#~ msgid "Maximum width"
-#~ msgstr "Suurin leveys"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Suurin leveys tälle merkkijononäytölle."
-
-#~ msgid "Has Frame"
-#~ msgstr "Reunus"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FALSE poistaa ulkopuolisen reunan merkkijononäytöstä."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Piirrä kohdistin"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "TRUE piirtää vilkkuvan kohdistimen."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Kohdistimen siirto"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "TRUE siirtää kohdistinta automaattisesti hiiren napsautukseta."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Edelleenlähetä painikkeen painallus"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "TRUE lähettää painikkeen painalluksen edelleen käyttäjäohjelmalle."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Muuta elementin kokoa merkkijonon mukaan"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "TRUE Automaattinen koon muuttaminen käytössä."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "TRUE siirtää kohdistinta automaattisesti hiiren napsautukseta."
-
-#~ msgid "Width in chars"
-#~ msgstr "Leveys merkeissä"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Merkkijononäyttöön jätettävän tyhjän tilan määrä merkeissä."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Vieritysmäärä"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "Merkkijonon vierityksen määrä pikseleissä"
-
-#~ msgid "Text"
-#~ msgstr "Teksti"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Merkkijononäytön sisältö"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Valitus _näppäimet:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Näppäinkoodi:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Pohjassa olevat näppäimet:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Release"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Syötä näppäinkoodi ensin."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Paina näppäintä (tai näppäinyhdistelmää).\n"
-#~ "Tämä ikkuna sulkeutuu kun näppäin vapautetaan."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Odotetaan näppäintä."
-
-#~ msgid "Key Selection"
-#~ msgstr "Näppäimen valinta"
-
-#~ msgid "Orientation"
-#~ msgstr "Suunta"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Ilmoitusalueen suunta."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Teksti"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "amhara"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Aina"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Valinnat"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "englanti/näppäimistö"
-
-#~ msgid "English/European"
-#~ msgstr "englanti/eurooppalainen"
-
-#~ msgid "RAW CODE"
-#~ msgstr "RAW CODE"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Pikanäppäimet:\n"
-#~ "\n"
-#~ " Ctrl+u:\n"
-#~ " vaihda monitavukoodauksen ja Unicoden välillä.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " palauta syöttötavan oletusarvot.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Nykyisen syöttötavan tila. Napsauta vaihtaaksesi."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Globaalit asetukset"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Aseta yleiset kaikkien edustaohjelmien käyttämät asetukset, mukaanlukien "
-#~ "X11-, GTK-, IMModule-, QT IMModule-ohjelmat"
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Liipaisin"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Valitse liipaisinnäppäimet"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat jotka ottavat käyttöön / poistavat käytöstä SCIM-"
-#~ "syöttötavan. Napsauta oikealla olevaa painiketta muokataksesi sitä."
-
-#~ msgid "Turn _On:"
-#~ msgstr "Ota _käyttöön"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Valitse \"ota käyttöön\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat jotka ottavat SCIM-syöttötavan käyttöön. Napsauta "
-#~ "oikealla olevaa painiketta muokataksesi sitä."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "_Poista käytöstä:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Valitse \"poista käytöstä\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat jotka poistavat SCIM-syöttötavan käyttöstä. Napsauta "
-#~ "oikealla olevaa painiketta muokataksesi sitä."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Seuraava syöttötapa:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Valitse \"seuraava syöttötapa\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat joilla vaihdetaan seuraavaan syöttötapaan. Napsauta "
-#~ "painiketta oikealla muokataksesi."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Edellinen syöttötapa:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Valitse \"edellinen syöttötapa\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat joilla vaihdetaan edelliseen syöttötapaan. Napsauta "
-#~ "painiketta oikealla muokataksesi."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Näytä syöttötapa_valikko"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Valitse näppäimet joilla syöttötapavalikko näytetään"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat joilla syöttötapavalikko näytetään. Napsauta painiketta "
-#~ "oikealla muokataksesi."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Näppäimistöasettelu"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Valitse nykyinen näppäimistöasettelu tässä, jotta näppäimistöasettelusta "
-#~ "välittävät syöttötavat toimisivat oikein."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "_Sisällytä \"preedit\"-merkkijono asiakasikkunaan"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Jos tämä on valittu, \"preedit\"-merkkijono näytetään suoraan "
-#~ "asiakasikkunassa erillisen kelluvan ikkunan sijaan."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "_Jaa sama syöttötapa kaikkien ohjelmien kanssa"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Jos tämä on valittu, yhtä syöttötapaa käytetään kaikissa ohjelmissa. "
-#~ "Muutoin eri syöttötapa voidaan valita eri ohjelmille."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Pikanäppäimet"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Voit ottaa käyttöön / pois käytöstä syöttötapoja ja asettaa pikanäppäimiä "
-#~ "syöttötavoille."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Asennetut syöttötapapalvelut:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Muokkaa _pikanäppäimiä"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Muokkaa valittuun syöttötapaan liittyviä pikanäppäimiä."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Valitse _suotimet"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Valitse suotimet jotka liitetään tähän syöttötapaan."
-
-#~ msgid "_Expand"
-#~ msgstr "_Laajenna"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Laajenna kaikki kieliluokat"
-
-#~ msgid "_Collapse"
-#~ msgstr "_Supista"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Supista kaikki kieliluokat"
-
-#~ msgid "E_nable All"
-#~ msgstr "Ota _käyttöön kaikki"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Ottaa kaikki syöttötavat käyttöön."
-
-#~ msgid "_Disable All"
-#~ msgstr "_Poista käytöstä kaikki"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Poistaa kaikki syöttötavat käytöstä."
-
-#~ msgid "Filters"
-#~ msgstr "Suotimet"
-
-#~ msgid "Languages"
-#~ msgstr "Kielet"
-
-#~ msgid "Description"
-#~ msgstr "Kuvaus"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Muokkaa pikanäppäimiä: %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Valitse suotimet: %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Siirrä _ylös"
-
-#~ msgid "Move _Down"
-#~ msgstr "Siirrä _alas"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "GTK+-2.x-kirjastoon perustuva paneelisovellus"
-
-#~ msgid "On demand"
-#~ msgstr "Tarvittaessa"
-
-#~ msgid "Never"
-#~ msgstr "Ei koskaan"
-
-#~ msgid "ToolBar"
-#~ msgstr "Työkalupalkki"
-
-#~ msgid "_Show:"
-#~ msgstr "_Näytä:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Automaattinen k_ohdistus"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Näytä _syöttötapakuvake"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Näytä syöttätavan _nimi"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Piilota aika_katkaisu"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Näytä _tikkukuvake"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Näytä _valikkokuvake"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Näytä o_hjekuvake"
-
-#~ msgid "Show _property label"
-#~ msgstr "Näytä ominaisuusnimi_ö"
-
-#~ msgid "Input window"
-#~ msgstr "Syöttöikkuna"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "S_ulautettu etsintätaulukko"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Pystysuuntainen etsintätaulukko"
-
-#~ msgid "Misc"
-#~ msgstr "Muut"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Näytä _ilmoitusalueen kuvake"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Koh_dista ikkunat"
-
-#~ msgid "_Font:"
-#~ msgstr "_Kirjasin:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Jos valinta \"aina\" on valittu, työkalupalkki näytetään aina ruudulla. "
-#~ "Jos \"tarvittaessa\" on valittu, se näytetään vain SCIMin ollessa "
-#~ "aktiivisena. Valinnalla \"Never\" palkkia ei näytetä koskaan."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr "Jos tämä on valittu, työkalupalkki kohdistetaan ruudun reunaan."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Työkalupalkki piilotetaan kun määritelty aika on kulunut. Tämä valinta on "
-#~ "kelvollinen vain jos \"Näytä aina\" on valittu. Aseta nollaksi "
-#~ "poistaaksesi piilotuksen käytöstä."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr "Jos tämä on valittu, syöttötapakuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr "Jos tämä on valittu, syöttötavan nimi näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr "Jos tämä on valittu, kohdistuskuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr "Jos tämä on valittu, valikkokuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr "Jos tämä on valittu, ohjekuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Jos tämä on valittu, syöttötapa-asetusten teksti näytetään "
-#~ "työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr "Jos tämä on valittu, etsintätaulukko sisällytetään syöttöikkunaan."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr "Jos tämä on valittu, etsintätaulukko näytetään pystysuuntaisesti."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Jos tämä on valittu, ilmoitusalueen kuvake näytetään työpöydän "
-#~ "työkalupalkissa"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Jos tämä on valittu, työkalupalkki, syöttö- ja etsintätaulukkoikkunat "
-#~ "kohdistetaan alkuperäisiin sijainteihinsa."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Kirjasinasetusta käytetään syöttötapa- ja etsintätaulukkoikkunoihin."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Valitse käyttöliittymän kirjasin"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Edustaohjelma"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Paneeli"
-
-#~ msgid "Extra"
-#~ msgstr "Ekstra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "SCIM syöttötapojen valinta"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Smart Common Input Method -alusta</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Graafinen asetusohjelma</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Asetukset moduulille \"%s\".</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Haluatko poistua SCIMin asetuksista?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Kaikkia asetuksia ei voida vaihtaa lennossa. Käynnistä SCIM uudelleen "
-#~ "ottaaksesi kaikki uudet asetukset käyttöön."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "SCIM-asetukset"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "GTK-elementtikirjastoon perustuva asetusohjelma."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Asetusohjelma Smart Common Input Method -alustalle"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIM-ohje"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Kohdista tai poista syöttöikkunan ja työkalurivun kohdistus."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Näytä lyhyt ohje SCIMistä sekä nykyinen syöttötapa."
-
-#~ msgid "Show command menu."
-#~ msgstr "Näytä komentovalikko."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Lataa asetukset uudelleen"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Kohdista ikkunat"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Piilota työkalupalkki"
-
-#~ msgid "Help ..."
-#~ msgstr "Ohje ..."
-
-#~ msgid "Exit"
-#~ msgstr "Poistu"
+++ /dev/null
-# translation of fr.po to French
-# This file is distributed under the same license as the scim package.
-# Copyright (C) 2004 James Su <suzhe@tsinghua.org.cn>.
-#
-# Damien Menanteau <MengDaming@nerdshack.com>, 2005.
-msgid ""
-msgstr ""
-"Project-Id-Version: fr\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2005-12-11 13:54+0800\n"
-"Last-Translator: Damien Menanteau <MengDaming@nerdshack.com>\n"
-"Language-Team: French\n"
-"Language: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-#, fuzzy
-msgid "Selection"
-msgstr "Sélection de Touche"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-#, fuzzy
-msgid "No option"
-msgstr "Options"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-#, fuzzy
-msgid "Options"
-msgstr "Options"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-#, fuzzy
-msgid "Software keyboard"
-msgstr "Français/Clavier"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-#, fuzzy
-msgid "Keyboard selection"
-msgstr "Sélection de Touche"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-#, fuzzy
-msgid "Keyboard option"
-msgstr "Sélection de Touche"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-#, fuzzy
-msgid "Hardware keyboard"
-msgstr "Français/Clavier"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-#, fuzzy
-msgid "Keyboard"
-msgstr "Français/Clavier"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Allemand"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Français/Clavier"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Anglais (Etats-Unis)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amharique"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabe"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabe (Egypte)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabe (Liban)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamais"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbaïdjanais"
-
-#~ msgid "Belarusian"
-#~ msgstr "Biélorusse"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgare"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengali"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengali (Inde)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibétain"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosniaque"
-
-#~ msgid "Catalan"
-#~ msgstr "Catalan"
-
-#~ msgid "Czech"
-#~ msgstr "Tchèque"
-
-#~ msgid "Welsh"
-#~ msgstr "Gallois"
-
-#~ msgid "Danish"
-#~ msgstr "Danois"
-
-#~ msgid "German"
-#~ msgstr "Allemand"
-
-#~ msgid "Divehi"
-#~ msgstr "Maldivien"
-
-#~ msgid "Greek"
-#~ msgstr "Grec"
-
-#~ msgid "English"
-#~ msgstr "Anglais"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Anglais (Australie)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Anglais (Canada)"
-
-#~ msgid "English (British)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Anglais (Irlande)"
-
-#~ msgid "English (American)"
-#~ msgstr "Anglais (Etats-Unis)"
-
-#~ msgid "Spanish"
-#~ msgstr "Espagnol"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Espagnol (Mexique)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estonien"
-
-#~ msgid "Basque"
-#~ msgstr "Basque"
-
-#~ msgid "Persian"
-#~ msgstr "Perse"
-
-#~ msgid "Finnish"
-#~ msgstr "Finnois"
-
-#~ msgid "French"
-#~ msgstr "Français"
-
-#~ msgid "Irish"
-#~ msgstr "Irlandais"
-
-#~ msgid "Galician"
-#~ msgstr "Galicien"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hébreu"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindou"
-
-#~ msgid "Croatian"
-#~ msgstr "Croate"
-
-#~ msgid "Hungarian"
-#~ msgstr "Hongrois"
-
-#~ msgid "Armenian"
-#~ msgstr "Arménien"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonésien"
-
-#~ msgid "Icelandic"
-#~ msgstr "Islandais"
-
-#~ msgid "Italian"
-#~ msgstr "Italien"
-
-#~ msgid "Japanese"
-#~ msgstr "Japonais"
-
-#~ msgid "Georgian"
-#~ msgstr "Géorgien"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazakh"
-
-#~ msgid "Cambodian"
-#~ msgstr "Khmer"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannara"
-
-#~ msgid "Korean"
-#~ msgstr "Coréen"
-
-#~ msgid "Laothian"
-#~ msgstr "Laotien"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Lituanien"
-
-#~ msgid "Latvian"
-#~ msgstr "Letton"
-
-#~ msgid "Macedonian"
-#~ msgstr "Macédonien"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malayalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongol"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Malais"
-
-#~ msgid "Burmese"
-#~ msgstr "Birman"
-
-#~ msgid "Nepali"
-#~ msgstr "Népalais"
-
-#~ msgid "Dutch"
-#~ msgstr "Néerlandais"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norvégien (Nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norvégien (Bokmal)"
-
-#~ msgid "Oriya"
-#~ msgstr "Oriya"
-
-#~ msgid "Punjabi"
-#~ msgstr "Punjabi"
-
-#~ msgid "Polish"
-#~ msgstr "Polonais"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugais"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugais (Brésil)"
-
-#~ msgid "Romanian"
-#~ msgstr "Roumain"
-
-#~ msgid "Russian"
-#~ msgstr "Russe"
-
-#~ msgid "Sinhala"
-#~ msgstr "Singhalais"
-
-#~ msgid "Slovak"
-#~ msgstr "Slovaque"
-
-#~ msgid "Slovenian"
-#~ msgstr "Slovène"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanais"
-
-#~ msgid "Serbian"
-#~ msgstr "Serbe"
-
-#~ msgid "Swedish"
-#~ msgstr "Suédois"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Suédois (Finlande)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamoul"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugu"
-
-#~ msgid "Thai"
-#~ msgstr "Thaï"
-
-#~ msgid "Turkish"
-#~ msgstr "Turc"
-
-#~ msgid "Uighur"
-#~ msgstr "Uighur"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ukrainien"
-
-#~ msgid "Urdu"
-#~ msgstr "Ourdou"
-
-#~ msgid "Uzbek"
-#~ msgstr "Ouzbèque"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamien"
-
-#~ msgid "Walloon"
-#~ msgstr "Wallon"
-
-#~ msgid "Yiddish"
-#~ msgstr "Yiddish"
-
-#~ msgid "Chinese"
-#~ msgstr "Chinois"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Chinois (simplifié)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Chinois (traditionnel)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belge"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Anglais (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Anglais (Canada)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Anglais (Irlande)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Anglais (Etats-Unis)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Anglais (Canada)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Anglais (Canada)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Français (Canada)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Français (Canada)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Français (Canada)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Allemand (Suisse)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Français (Canada)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Allemand (avec touches mortes)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Allemand (Suisse)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Anglais (Australie)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Allemand (Suisse)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Allemand (Suisse)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugais (Brésil)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugais (Brésil)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Espagnol (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malayalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norvégien"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Serbe"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Chinois (traditionnel)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Chinois (traditionnel)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Chinois (traditionnel)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Chinois"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Chinois (simplifié)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabe (Egypte)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabe (Egypte)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabe (Egypte)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabe (Egypte)"
-
-#~ msgid "Other"
-#~ msgstr "Autre"
-
-#~ msgid "Unknown"
-#~ msgstr "Inconnu"
-
-#~ msgid "English (US)"
-#~ msgstr "Anglais (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belge"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Tchèque (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Français (Suisse)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Allemand (avec touches mortes)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugais (Brésil accents US)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovaque (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Espagnol (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Anglais (GB)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Conversion Chinois Simplifié-Traditionnel"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Conversion entre chinois simplifié et chinois traditionnel"
-
-#~ msgid "SC-TC"
-#~ msgstr "CS-CT"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Conversion Chinois Simplifié-Traditionnel"
-
-#~ msgid "No Conversion"
-#~ msgstr "Pas de conversion"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Simplifié vers Traditionnel"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Conversion du chinois simplifié en chinois traditionnel"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Traditionnel vers Simplifié"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Conversion du chinois traditionnel en chinois simplifié"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "CS->CT"
-
-#~ msgid "TC->SC"
-#~ msgstr "CT->CS"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Plateforme Smart Common Input Method"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ " :\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Activer"
-
-#~ msgid "Name"
-#~ msgstr "Nom"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Position du Curseur"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Position courante du curseur d'insertion dans les caractères."
-
-#~ msgid "Maximum length"
-#~ msgstr "Longueur maximale"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Nombre maximum de caractères pour cette vue de chaîne de caractères. Zero "
-#~ "si pas de maximum."
-
-#~ msgid "Maximum width"
-#~ msgstr "Largeur maximale"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Largeur maximale de cette vue de chaîne de caractères."
-
-#~ msgid "Has Frame"
-#~ msgstr "Avec Cadre"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FAUX supprime le cadre extérieur de la vue de chaîne de caractères."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Affichage du curseur"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "VRAI Affichage d'un curseur clignotant."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Déplacement automatique du curseur"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr ""
-#~ "VRAI Déplacement automatique de la position du curseur sur clic de souris."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Transmission événement d'appui de bouton"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr ""
-#~ "VRAI Fait suivre les événements d'appui de bouton vers le programme "
-#~ "client."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Redimensionnement automatique à la taille de la chaîne"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "VRAI Redimensionnement automatique activé."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr ""
-#~ "VRAI Déplacement automatique de la position du curseur sur clic de souris."
-
-#~ msgid "Width in chars"
-#~ msgstr "Largeur en caractères"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr ""
-#~ "Nombre de caractères à laisser vides dans la vue de chaîne de caractères."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Décalage"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr ""
-#~ "Nombre de pixels de la vue de chaîne de caractères décalés à gauche en "
-#~ "dehors de l'écran"
-
-#~ msgid "Text"
-#~ msgstr "Texte"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Le contenu de la vue de chaîne de caractères"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "_Touches Sélectionnées :"
-
-#~ msgid "Key Code:"
-#~ msgstr "Code Touche:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Modificateurs:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "_Alt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Maj"
-
-#~ msgid "_Release"
-#~ msgstr "_Relâche"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Veuillez d'abord entrer un code de touche."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Appuyer sur une touche (ou une combinaison de touches).\n"
-#~ "Cette fenêtre se fermera dès que la touche sera relâchée."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Capture de touche."
-
-#~ msgid "Key Selection"
-#~ msgstr "Sélection de Touche"
-
-#~ msgid "Orientation"
-#~ msgstr "Orientation"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Orientation du tiroir."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Texte"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amharique"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Toujours"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Options"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Français/Clavier"
-
-#~ msgid "English/European"
-#~ msgstr "Français/Européen"
-
-#~ msgid "RAW CODE"
-#~ msgstr "CODE BRUT"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Racourcis :\n"
-#~ "\n"
-#~ " Ctrl+u :\n"
-#~ " bascule entre encodage Multi-octets et Unicode.\n"
-#~ "\n"
-#~ " Echap :\n"
-#~ " réinitialise la méthode de saisie.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Etat de la méthode de saisie courante. Cliquer pour la modifier."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Configuration globale"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Configurer des options globales utilisées par tous les modules frontaux, "
-#~ "incluant le frontal X11, GTK IMModule, QT IMModule etc."
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Déclencheur :"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Sélectionner les touches d'activation"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Touches pour activer/désactiver SCIM. Cliquer sur le bouton de droite "
-#~ "pour les modifier."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Activer:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Sélectionner les touches d'activation"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Touches pour activer SCIM. Cliquer sur le bouton de droite pour les "
-#~ "modifier."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "Désac_tiver:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Sélectionner les touches de désactivation"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Touches pour désactiver SCIM. Cliquer sur le bouton de droite pour les "
-#~ "modifier."
-
-#~ msgid "_Next input method:"
-#~ msgstr "Méthode de saisie _Suivante :"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Sélectionner les touches pour la méthode de saisie suivante"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Touches pour aller à la méthode de saisie suivante. Cliquer sur le bouton "
-#~ "de droite pour les modifier."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "Méthode de saisie _Précédente :"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Sélectionner les touches pour la méthode de saisie précédente"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Touches pour revenir à la méthode de saisie précédente. Cliquer sur le "
-#~ "bouton de droite pour les modifier."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Accès au _Menu des méthodes de saisie :"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr ""
-#~ "Sélectionner les touches pour accéder au menu des méthodes de saisie"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Touches pour accéder au menu des méthodes de saisie. Cliquer sur le "
-#~ "bouton de droite pour les modifier."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Type de Clavier:"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Indiquez ici le type de clavier que vous utilisez afin que les méthodes "
-#~ "de saisie qui dépendent du type de clavier puissent fonctionner "
-#~ "correctement."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Insérer les chaîne en préédition dans la fenêtre cliente"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la table de préédition est affichée "
-#~ "directement dans la fenêtre de saisie, et non pas dans une fenêtre "
-#~ "indépendante."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "_Partage de la même méthode de saisie entre toutes les applications"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la même méthode de saisie peut être "
-#~ "utilisée par toutes les applications en même temps. Dans le cas "
-#~ "contraire, chaque application utilise sa propre méthode de saisie."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Raccourcis"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Ici, vous pouvez activer/désactiver les méthodes de saisie et les jeux de "
-#~ "raccourcis pour les méthodes de saisie."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Services de méthode de saisie installés :"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Editer les _Raccourcis"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Editer les raccourcis associés à la méthode de saisie sélectionnée."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Sélectionner les _Filtres"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Sélectionner les Filtres à associer à cette méthode de saisie."
-
-#~ msgid "_Expand"
-#~ msgstr "_Ouvrir"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Ouvrir toutes les catégories de langage."
-
-#~ msgid "_Collapse"
-#~ msgstr "_Refermer"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Fermer toutes les catégories de langage."
-
-#~ msgid "E_nable All"
-#~ msgstr "Tout Activer"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Activer toutes les méthodes de saisie."
-
-#~ msgid "_Disable All"
-#~ msgstr "Tout Désactiver"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Désactiver toutes les méthodes de saisie."
-
-#~ msgid "Filters"
-#~ msgstr "Filtres"
-
-#~ msgid "Languages"
-#~ msgstr "Langues"
-
-#~ msgid "Description"
-#~ msgstr "Description"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Editer les raccourcis pour %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Sélectionner les filtres pour %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "_Monter"
-
-#~ msgid "Move _Down"
-#~ msgstr "_Descendre"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Un panneau serveur basé sur la librairie GTK+-2.x."
-
-#~ msgid "On demand"
-#~ msgstr "A la demande"
-
-#~ msgid "Never"
-#~ msgstr "Jamais"
-
-#~ msgid "ToolBar"
-#~ msgstr "Barre d'Outils"
-
-#~ msgid "_Show:"
-#~ msgstr "_Afficher"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Aligne_ment automatique"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Affichage icône méthode de _saisie"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Affichage _nom méthode de saisie"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "_Délai avant masquage :"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Affichage icône d'épin_glage fenêtre"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Afficher l'icône de m_enu"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Affichage icône d'_aide"
-
-#~ msgid "Show _property label"
-#~ msgstr "Affichage label de p_ropriété"
-
-#~ msgid "Input window"
-#~ msgstr "Fenêtre de saisie"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Table de recherche _embarquée"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "Table de recherche _verticale"
-
-#~ msgid "Misc"
-#~ msgstr "Divers"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Affichage icône barre de _tâches"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Epinglage _fenêtres"
-
-#~ msgid "_Font:"
-#~ msgstr "P_olice :"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Quand l'option \"Toujours\" est sélectionnée, la barre d'outils est "
-#~ "affichée en permanence à l'écran. Quand l'option \"A la demande\" est "
-#~ "sélectionnée, la barre d'outils est affichée uniquement lorsque SCIM est "
-#~ "activé. Quand l'option \"Jamais\" estsélectionnée, la barre d'outils "
-#~ "n'est jamais affichée."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la barre d'outil s'aligne "
-#~ "automatiquement sur le bord de l'écran."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "La barre d'outils sera masquée automatiquement après l'expiration de ce "
-#~ "délai. Cette option n'est valide que si l'option \"Afficher Toujours\" "
-#~ "est sélectionnée. Une valeur de délai de 0 supprime ce comportement."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône de la méthode de saisie est "
-#~ "inséré dans la barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, le nom de la méthode de saisie est "
-#~ "inséré dans la barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône d'épinglage de fenêtre est "
-#~ "inséré dans la barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône de menu est inséré dans la "
-#~ "barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône d'aide est inséré dans la "
-#~ "barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, le label des propriétés de la "
-#~ "méthode de saisie est inséré dans la barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la table de recherche est embarquée "
-#~ "dans la fenêtre de saisie."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la table de recherche est affichée "
-#~ "verticalement."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône est inséré dans la barre de "
-#~ "tâches du bureau."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, les fenêtres de saisie et de "
-#~ "recherche sont maintenues à leur position originale."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "La police de caractères configurée est utilisée dans les fenêtres de "
-#~ "saisie et de recherche."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Police de Caractères"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Interface"
-
-#~ msgid "IMEngine"
-#~ msgstr "Moteur de Saisie"
-
-#~ msgid "Panel"
-#~ msgstr "Panneau"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Configuration de la Méthode de Saisie SCIM"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Plateforme Smart Common Input Method</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Utilitaire de Configuration</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Configuration des modules %s.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Etes vous sûr de vouloir quitter SCIM Config. ?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Certains des paramètres de configuration ne peuvent pas être pris en "
-#~ "compte automatiquement. N'oubliez pas de redémarrer SCIM afin que toutes "
-#~ "les nouvelles valeurs de configuration soient prises en compte."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Configuration de SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr ""
-#~ "Utilitaire de configuration intégré basé sur la librairie GTK Widget."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr ""
-#~ "Utilitaire de configuration de la plateforme \"Smart Common Input Method\""
-
-#~ msgid "SCIM Help"
-#~ msgstr "Aide SCIM"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Epingle la fenêtre de saisie et la barre d'outils."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr ""
-#~ "Affiche une aide succincte sur SCIM et la méthode de saisie courante."
-
-#~ msgid "Show command menu."
-#~ msgstr "Afficher le menu des commandes."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Recharger la Configuration"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Epingler les Fenêtres"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Masquer la Barre d'Outils"
-
-#~ msgid "Help ..."
-#~ msgstr "Aide ..."
-
-#~ msgid "Exit"
-#~ msgstr "Quitter"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "Fr"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "Sélection"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "Aucune option"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "Paramètres du clavier"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "Majuscules auto."
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "Point automatique"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "Clavier logiciel"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "Sélectionner un clavier"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "Clavier phyisique"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "Clavier"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
"Content-Transfer-Encoding: 8bit\n"
#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
msgid "Selection"
msgstr ""
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-msgid "No option"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
msgstr ""
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-msgid "Options"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
msgstr ""
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
msgstr ""
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-msgid "Software keyboard"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
msgstr ""
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-msgid "Keyboard selection"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
msgstr ""
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-msgid "Keyboard option"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
msgstr ""
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
msgid "Hardware keyboard"
msgstr ""
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
msgid "Keyboard"
msgstr ""
+++ /dev/null
-# translation of it.po to Italian
-# translation of scim.po to Italian
-# translation of scim_1_0-it.po to Italian
-# This file is distributed under the same license as the PACKAGE package.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
-# Federico Zenith <zenith@chemeng.ntnu.no>, 2004, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: it\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2005-12-13 00:36+0100\n"
-"Last-Translator: Federico Zenith <zenith@chemeng.ntnu.no>\n"
-"Language-Team: Italian <kde-i18n-it@kde.org>\n"
-"Language: it\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-#, fuzzy
-msgid "Selection"
-msgstr "Selezione dei tasti"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-#, fuzzy
-msgid "No option"
-msgstr "Opzioni"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-#, fuzzy
-msgid "Options"
-msgstr "Opzioni"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-#, fuzzy
-msgid "Auto capitalization"
-msgstr "Divisione automatica:"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-#, fuzzy
-msgid "Software keyboard"
-msgstr "Inglese/Tastiera"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-#, fuzzy
-msgid "Keyboard selection"
-msgstr "Selezione dei tasti"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-#, fuzzy
-msgid "Keyboard option"
-msgstr "Selezione dei tasti"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-#, fuzzy
-msgid "Hardware keyboard"
-msgstr "Inglese/Tastiera"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-#, fuzzy
-msgid "Keyboard"
-msgstr "Inglese/Tastiera"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Generico"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Inglese/Tastiera"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Inglese (americano)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amarico"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabo"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabo (Egitto)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabo (Libano)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamese"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbaigiano"
-
-#~ msgid "Belarusian"
-#~ msgstr "Bielorusso"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgaro"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengalese"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengalese (India)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetano"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosniaco"
-
-#~ msgid "Catalan"
-#~ msgstr "Catalano"
-
-#~ msgid "Czech"
-#~ msgstr "Ceco"
-
-#~ msgid "Welsh"
-#~ msgstr "Gallese"
-
-#~ msgid "Danish"
-#~ msgstr "Danese"
-
-#~ msgid "German"
-#~ msgstr "Tedesco"
-
-#~ msgid "Greek"
-#~ msgstr "Greco"
-
-#~ msgid "English"
-#~ msgstr "Inglese"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Inglese (australiano)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Inglese (canadese)"
-
-#~ msgid "English (British)"
-#~ msgstr "Inglese (britannico)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Inglese (Irlanda)"
-
-#~ msgid "English (American)"
-#~ msgstr "Inglese (americano)"
-
-#~ msgid "Spanish"
-#~ msgstr "Spagnolo"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Spagnolo (Messico)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estone"
-
-#~ msgid "Basque"
-#~ msgstr "Basco"
-
-#~ msgid "Persian"
-#~ msgstr "Persiano"
-
-#~ msgid "Finnish"
-#~ msgstr "Finlandese"
-
-#~ msgid "French"
-#~ msgstr "Francese"
-
-#~ msgid "Irish"
-#~ msgstr "Irlandese"
-
-#~ msgid "Galician"
-#~ msgstr "Galiziano"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Ebraico"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "Croato"
-
-#~ msgid "Hungarian"
-#~ msgstr "Ungherese"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "Romeno"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonesiano"
-
-#~ msgid "Icelandic"
-#~ msgstr "Islandese"
-
-#~ msgid "Italian"
-#~ msgstr "Italiano"
-
-#~ msgid "Japanese"
-#~ msgstr "Giapponese"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "Tedesco"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazako"
-
-#~ msgid "Cambodian"
-#~ msgstr "Cambogiano"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannada"
-
-#~ msgid "Korean"
-#~ msgstr "Coreano"
-
-#~ msgid "Laothian"
-#~ msgstr "Laotiano"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Lituano"
-
-#~ msgid "Latvian"
-#~ msgstr "Lettone"
-
-#~ msgid "Macedonian"
-#~ msgstr "Macedone"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malayalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongolo"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Malese"
-
-#, fuzzy
-#~ msgid "Burmese"
-#~ msgstr "Sfoglia"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepalese"
-
-#~ msgid "Dutch"
-#~ msgstr "Olandese"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norvegese (nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norvegese (bokmål)"
-
-#~ msgid "Oriya"
-#~ msgstr "Oriya"
-
-#~ msgid "Punjabi"
-#~ msgstr "Punjabi"
-
-#~ msgid "Polish"
-#~ msgstr "Polacco"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portoghese"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portoghese (Brasile)"
-
-#~ msgid "Romanian"
-#~ msgstr "Romeno"
-
-#~ msgid "Russian"
-#~ msgstr "Russo"
-
-#~ msgid "Slovak"
-#~ msgstr "Slovacco"
-
-#~ msgid "Slovenian"
-#~ msgstr "Sloveno"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanese"
-
-#~ msgid "Serbian"
-#~ msgstr "Serbo"
-
-#~ msgid "Swedish"
-#~ msgstr "Svedese"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Svedese (Finlandia)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamil"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugu"
-
-#~ msgid "Thai"
-#~ msgstr "Tailandese"
-
-#~ msgid "Turkish"
-#~ msgstr "Turco"
-
-#~ msgid "Uighur"
-#~ msgstr "Uighur"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ucraino"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "Uzbeko"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamita"
-
-#~ msgid "Walloon"
-#~ msgstr "Vallone"
-
-#~ msgid "Yiddish"
-#~ msgstr "Yiddish"
-
-#~ msgid "Chinese"
-#~ msgstr "Cinese"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Cinese (semplificato)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Cinese (tradizionale)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belga"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Inglese (USA)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Inglese (canadese)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Inglese (Irlanda)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Inglese (britannico)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Inglese (americano)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Inglese (canadese)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Inglese (britannico)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Inglese (britannico)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Inglese (canadese)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Inglese (britannico)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Francese (canadese)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Francese (canadese)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Francese (canadese)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Tedesco (svizzero)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Francese (canadese)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Tedesco (con tasti morti)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Tedesco (svizzero)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Inglese (australiano)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Tedesco (svizzero)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Tedesco (svizzero)"
-
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portoghese (brasiliano)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portoghese (Brasile)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Spagnolo (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malayalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norvegese"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Serbo"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Cinese (tradizionale)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Cinese (tradizionale)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Cinese (tradizionale)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Cinese"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Cinese (semplificato)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabo (Egitto)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabo (Egitto)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabo (Egitto)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabo (Egitto)"
-
-#~ msgid "Other"
-#~ msgstr "Altro"
-
-#~ msgid "Unknown"
-#~ msgstr "Sconosciuto"
-
-#~ msgid "English (US)"
-#~ msgstr "Inglese (USA)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belga"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Ceco (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Francese (Svizzera)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Tedesco (con tasti morti)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portoghese (Brasile con accenti US)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovacco (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Spagnolo (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Spagnolo (America latina)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Inglese (GB)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Conversione tra cinese semplificato e tradizionale"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Converti tra cinese semplificato e cinese tradizionale"
-
-#~ msgid "SC-TC"
-#~ msgstr "CS-CT"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Conversione tra cinese semplificato e tradizionale"
-
-#~ msgid "No Conversion"
-#~ msgstr "Senza conversione"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Da semplificato a tradizionale"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Converti cinese semplificato in cinese tradizionale"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Da tradizionale a semplificato"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Converti cinese tradizionale in cinese semplificato"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "CS->CT"
-
-#~ msgid "TC->SC"
-#~ msgstr "CT->CS"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Piattaforma del metodo intelligente di inserimento comune"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Abilita"
-
-#~ msgid "Name"
-#~ msgstr "Nome"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Posizione del cursore"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "La posizione attuale del cursore di inserimento in caratteri."
-
-#~ msgid "Maximum length"
-#~ msgstr "Lunghezza massima"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Il numero massimo di caratteri per questa vista stringhe. Zero se non ce "
-#~ "n'è."
-
-#~ msgid "Maximum width"
-#~ msgstr "Larghezza massima"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Larghezza massima di questa vista stringhe."
-
-#~ msgid "Has Frame"
-#~ msgstr "Ha cornice"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "Se falso, rimuove la cornice esterna dalla vista stringhe."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Disegna cursore"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "Se vero, disegna un cursore lampeggiante."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Spostamento automatico del cursore"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr ""
-#~ "Se vero, sposta automaticamente la posizione del cursore quando si fa "
-#~ "clic con il mouse."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Inoltra evento di pressione di pulsante"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr ""
-#~ "Se vero, inoltra evento di pressione di pulsante al programma utente."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Ridimensiona automaticamente l'oggetto per adattarsi alla stringa"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "Se vero, attiva il ridimensionamento automatico."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr ""
-#~ "Se vero, sposta automaticamente la posizione del cursore quando si fa "
-#~ "clic con il mouse."
-
-#~ msgid "Width in chars"
-#~ msgstr "Larghezza in caratteri"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Numero di caratteri per cui lasciare spazio nella vista stringhe."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Scostamento dello scorrimento"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr ""
-#~ "Numero di pixel nella vista stringhe scorsi a sinistra dello schermo"
-
-#~ msgid "Text"
-#~ msgstr "Testo"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Il contenuti della vista stringhe"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Tasti sele_zionati:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Codice del tasto:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Modificatori:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Rilascio"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Inserisci prima un codice del tasto."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Premi un tasto (o una combinazione di tasti).\n"
-#~ "Questa finestra sarà chiusa quando il tasto sarà rilasciato."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Cattura di un tasto."
-
-#~ msgid "Key Selection"
-#~ msgstr "Selezione dei tasti"
-
-#~ msgid "Orientation"
-#~ msgstr "Orientazione"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "L'orientazione del vassoio."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Testo"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amarico"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Sempre"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Opzioni"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Inglese/Tastiera"
-
-#~ msgid "English/European"
-#~ msgstr "Inglese/Europeo"
-
-#~ msgid "RAW CODE"
-#~ msgstr "CODICE GREZZO"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Tasti rapidi:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " passa tra la codifica multibyte e Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reimposta il metodo di inserimento.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Lo stato del metodo di inserimento attuale. Fai clic per cambiarlo."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Configurazione globale"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Configura le opzioni globali usate da tutti i moduli di interfaccia, "
-#~ "inclusi l'interfaccia X11, i moduli di inserimento di GTK e QT, ecc."
-
-#~ msgid "_Trigger:"
-#~ msgstr "A_ttivatore:"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Seleziona i tasti di attivazione"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per accendere o spegnere il metodo di "
-#~ "inserimento. Fai clic sul pulsante a destra per modificarle."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Accendi:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Seleziona i tasti di accensione"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per far partire il metodo di inserimento. Fai "
-#~ "clic sul pulsante a destra per modificarle."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "_Spegni:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Seleziona i tasti di spegnimento"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per far fermare il metodo di inserimento. Fai "
-#~ "clic sul pulsante a destra per modificarle."
-
-#~ msgid "_Next input method:"
-#~ msgstr "Metodo di i_nserimento successivo:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Seleziona i tasti del metodo di inserimento successivo"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per passare al metodo di inserimento successivo. "
-#~ "Fai clic sul pulsante a destra per modificarle."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "Metodo di inserimento _precedente:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Seleziona i tasti del metodo di inserimento precedente"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per passare al metodo di inserimento precedente. "
-#~ "Fai clic sul pulsante a destra per modificarle."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "_Mostra il menu del metodo di inserimento:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Seleziona i tasti del menu del metodo di inserimento"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per mostrare il menu del metodo di inserimento. "
-#~ "Fai clic sul pulsante sulla destra per modificarle."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "Schema della _tastiera:"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Dovresti scegliere qui la tastiera che usi adesso, in modo che i metodi "
-#~ "di inserimento, che ne dipendono, funzionino correttamente."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Incorpora la pr_emodifica delle stringhe nella finestra del client"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la stringa di premodifica sarà visualizzata "
-#~ "direttamente nella finestra di inserimento del client, piuttosto che in "
-#~ "una finestra libera."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "Condividi lo _stesso metodo di inserimento in tutte le applicazioni"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, si potrà usare un solo metodo di inserimento "
-#~ "in tutte le applicazioni allo stesso tempo. Altrimenti, ogni applicazione "
-#~ "potrà usare un metodo di inserimento diverso."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Tasti rapidi"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Qui puoi abilitare o disabilitare i metodi di inserimento e impostare i "
-#~ "loro tasti rapidi."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "I servizi di metodo di inserimento installati:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Modi_fica tasti rapidi"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr ""
-#~ "Modifica i tasti rapidi associati con il metodo di inserimento "
-#~ "selezionato."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Seleziona _filtri"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr ""
-#~ "Seleziona i filtri che saranno allegati a questo metodo di inserimento."
-
-#~ msgid "_Expand"
-#~ msgstr "_Espandi"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Espandi tutte le categorie delle lingue."
-
-#~ msgid "_Collapse"
-#~ msgstr "_Contrai"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Contrai tutte le categorie delle lingue."
-
-#~ msgid "E_nable All"
-#~ msgstr "A_bilita tutti"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Abilita tutti i metodi di inserimento."
-
-#~ msgid "_Disable All"
-#~ msgstr "_Disabilita tutti"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Disabilita tutti i metodi di inserimento."
-
-#~ msgid "Filters"
-#~ msgstr "Filtri"
-
-#~ msgid "Languages"
-#~ msgstr "Lingue"
-
-#~ msgid "Description"
-#~ msgstr "Descrizione"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Modifica i tasti rapidi per: %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Seleziona i filtri per: %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Sposta in s_u"
-
-#~ msgid "Move _Down"
-#~ msgstr "Sposta in _giù"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Un demone di pannello basato sulle librerie GTK+-2.x."
-
-#~ msgid "On demand"
-#~ msgstr "A richiesta"
-
-#~ msgid "Never"
-#~ msgstr "Mai"
-
-#~ msgid "ToolBar"
-#~ msgstr "Barra degli strumenti"
-
-#~ msgid "_Show:"
-#~ msgstr "Mo_stra:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Agga_ncia automaticamente"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Mostra icona del metodo di _inserimento"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Mostra nome del metodo di ins_erimento"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Nasc_ondi scadenza:"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Mostra icona dell'agganciamen_to"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Mostra icona del m_enu"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Mostra icona dell'ai_uto"
-
-#~ msgid "Show _property label"
-#~ msgstr "Mostra etichetta delle _proprietà"
-
-#~ msgid "Input window"
-#~ msgstr "Finestra di inserimento"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Tabella di riferi_mento incorporata"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "Tabella di riferimento _verticale"
-
-#~ msgid "Misc"
-#~ msgstr "Varie"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Mostra icona del vasso_io"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Aggancia _finestre"
-
-#~ msgid "_Font:"
-#~ msgstr "_Carattere:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Se l'opzione \"Sempre\" è segnata, la barra degli strumenti sarà sempre "
-#~ "visualizzata sullo schermo. Se è segnata l'opzione \"A richiesta\", sarà "
-#~ "mostrata solo quando viene attivato SCIM. Se è segnata l'opzione \"Mai\", "
-#~ "non sarà mai mostrata."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la barra degli strumenti sarà agganciata al "
-#~ "bordo dello schermo."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "La barra degli strumenti sarà nascosta dopo che sarà passato questo "
-#~ "tempo. Questa opzione è valida solo quando \"Visualizza sempre\" è "
-#~ "segnato. Imposta a zero per disabilitare questo comportamento."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona del metodo di inserimento sarà "
-#~ "mostrata nella barra degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, il nome del metodo di inserimento sarà "
-#~ "mostrato nella barra degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona dell'agganciamento sarà mostrata "
-#~ "sulla barra degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona del menu sarà mostrata nella barra "
-#~ "degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona dell'aiuto sarà mostrata nella barra "
-#~ "degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'etichetta di testo del metodo di "
-#~ "inserimento sarà mostrata nella barra degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la tabella di riferimento sarà incorporata "
-#~ "nella finestra di inserimento."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la tabella di riferimento sarà mostrata "
-#~ "verticalmente."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona del vassoio sarà mostrata nel "
-#~ "pannello del desktop."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la barra degli strumenti, le finestre di "
-#~ "inserimento e della tabella di riferimento saranno agganciate alla loro "
-#~ "posizione originale."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "L'impostazione del carattere sarà usata nelle finestre di inserimento e "
-#~ "della tabella di riferimento."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Seleziona il carattere dell'interfaccia"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Interfaccia"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Pannello"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Configurazione del metodo di inserimento SCIM"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ "<span size=\"20000\">Piattaforma del metodo di inserimento comune "
-#~ "intelligente</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Programma di configurazione GUI</"
-#~ "span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">La configurazione per %s moduli.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Sei sicuro di uscire dalla configurazione di SCIM?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Non tutte le configurazioni possono essere ricaricate al volo. Non "
-#~ "dimenticarti di riavviare SCIM per permettere a tutte le nuove "
-#~ "configurazioni di avere effetto."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Configurazione di SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr ""
-#~ "Strumento di configurazione integrato basato sulla libreria di oggetti "
-#~ "GTK."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr ""
-#~ "Programma di configurazione per il metodo inserimento comune intelligente"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Aiuto di SCIM"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Metodo inserimento comune intelligente"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr ""
-#~ "Aggancia o sgancia la finestra di inserimento e la barra degli strumenti."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr ""
-#~ "Visualizza un breve aiuto su SCIM e il metodo di inserimento attuale."
-
-#~ msgid "Show command menu."
-#~ msgstr "Mostra menu dei comandi."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Ricarica configurazione"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Aggancia finestre"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Nascondi la barra degli strumenti"
-
-#~ msgid "Help ..."
-#~ msgstr "Aiuto..."
-
-#~ msgid "Exit"
-#~ msgstr "Esci"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
-
-#, fuzzy
-#~ msgid "_Switch input method globally"
-#~ msgstr "Mostra icona del metodo di _inserimento"
-
-#~ msgid "Preedit String mode"
-#~ msgstr "Modalità di premodifica delle stringhe"
-
-#~ msgid "X Window"
-#~ msgstr "X Window"
-
-#~ msgid "A FrontEnd module for X11R6 Window System, using XIM Protocol."
-#~ msgstr ""
-#~ "Un modulo di interfaccia per il sistema X11R6 X Window, usando il "
-#~ "protocollo XIM."
-
-#~ msgid "XIM Settings"
-#~ msgstr "Impostazioni XIM"
-
-#~ msgid "_On The Spot"
-#~ msgstr "Al v_olo"
-
-#~ msgid ""
-#~ "If this option is checked, the OnTheSpot input style will be used when "
-#~ "the client supports it."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, sarà usato lo stile di inserimento al volo "
-#~ "quando il client lo supporterà."
-
-#, fuzzy
-#~ msgid "Slovene"
-#~ msgstr "Sloveno"
-
-#~ msgid "Full/Half Letter"
-#~ msgstr "Lettera piena/mezza"
-
-#~ msgid "Full/Half Punct"
-#~ msgstr "Punteggiatura piena/mezza"
-
-#~ msgid ""
-#~ "The input mode of the letters. Click to toggle between half and full."
-#~ msgstr ""
-#~ "La modalità di inserimento delle lettere. Fai clic per passare tra mezza "
-#~ "a piena."
-
-#~ msgid ""
-#~ "The input mode of the puncutations. Click to toggle between half and full."
-#~ msgstr ""
-#~ "La modalità di inserimento della punteggiatura. Fai clic per passare tra "
-#~ "mezza a piena."
-
-#~ msgid ""
-#~ " Switch between full/half width letter mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " Passa tra le modalità delle lettere a larghezza piena/mezza.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Switch between full/half width punctuation mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " Passa tra le modalità della punteggiatura a larghezza piena/mezza\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Switch between Forward/Input mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " Passa tra le modalità di inoltro/inserimento.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Add a new phrase.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " Aggiungi una nuova frase.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Delete the selected phrase.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Elimina la frase selezionata.\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Control+Down:\n"
-#~ " Move lookup cursor to next shorter phrase\n"
-#~ " Only available when LongPhraseFirst option is set.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Control+giù:\n"
-#~ " Sposta il cursore di ricerca alla frase più corta successiva\n"
-#~ " Disponibile solo quanto l'opzione FraseLungaPrima è impostata.\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Control+Up:\n"
-#~ " Move lookup cursor to previous longer phrase\n"
-#~ " Only available when LongPhraseFirst option is set.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Control+su:\n"
-#~ " Sposta il cursore di ricerca alla frase più lunga precedente\n"
-#~ " Disponibile solo quanto l'opzione FraseLungaPrima è impostata.\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Esc:\n"
-#~ " reimposta il metodo di inserimento.\n"
-#~ "\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "How to add a phrase:\n"
-#~ " Input the new phrase as normal, then press the\n"
-#~ " hot key. A hint will be shown to let you input a key\n"
-#~ " for this phrase.\n"
-#~ " Input a key then press the space bar.\n"
-#~ " A hint will be shown to indicate whether\n"
-#~ " the phrase was added sucessfully.\n"
-#~ msgstr ""
-#~ "Come aggiungere una frase:\n"
-#~ " Inserisci la frase come normale, quindi premi il\n"
-#~ " tasto rapido. Sarà mostrato un suggerimento per\n"
-#~ " permetterti di inserire un tasto per questa frase.\n"
-#~ " Inserisci un tasto e premi la barra spaziatrice.\n"
-#~ " Sarà mostrato un suggerimento per indicare se\n"
-#~ " la frase è stata aggiunta correttamente.\n"
-
-#~ msgid "Input a key string for phrase: "
-#~ msgstr "Inserisci una stringa di tasti per la frase: "
-
-#~ msgid "Success."
-#~ msgstr "Riuscito."
-
-#~ msgid "Failed."
-#~ msgstr "Non riuscito."
-
-#~ msgid ""
-#~ "Too few argument!\n"
-#~ "Usage:\n"
-#~ " scim-make-table <table_file> [options]\n"
-#~ "\n"
-#~ " table_file\tthe table file for table module\n"
-#~ " -b\t\tconvert to binary format, otherwise to text format\n"
-#~ " -o output\tsave new table to file output\n"
-#~ " -no\t\tdo not save new phrase table\n"
-#~ " -if ifreq\tload phrase frequencies from this file\n"
-#~ " -of ofreq\tsave phrase frequencies to this file\n"
-#~ " -s file\tspecifiy the source file to count phrase ages.\n"
-#~ msgstr ""
-#~ "Troppi pochi argomenti!\n"
-#~ "Uso:\n"
-#~ " scim-make-table <file_tabella> [opzioni]\n"
-#~ "\n"
-#~ " file_tabella\til file tabella per il modulo tabella\n"
-#~ " -b\t\tconverti a formato binario, altrimenti in formato testuale\n"
-#~ " -o output\tsalva la nuova tabella al file di output\n"
-#~ " -no\t\tnon salvare la nuova tabella delle frasi\n"
-#~ " -if ifreq\tcarica le frequenze delle frasi da questo file\n"
-#~ " -of ofreq\tsalva le frequenze delle frasi in questo file\n"
-#~ " -s file\tspecifica il file sorgente per contare l'età delle frasi.\n"
-
-#~ msgid "option -no cannot be used with -o\n"
-#~ msgstr "l'opzione -no non può essere usata con -o\n"
-
-#~ msgid "option -o cannot be used with -no\n"
-#~ msgstr "l'opzione -o non può essere usata con -no\n"
-
-#~ msgid "No argument for option "
-#~ msgstr "Nessun argomento per l'opzione "
-
-#~ msgid "Invalid option: "
-#~ msgstr "Opzione non valida: "
-
-#~ msgid "Loading table file "
-#~ msgstr "Caricamento del file tabella "
-
-#~ msgid " ...\n"
-#~ msgstr " ...\n"
-
-#~ msgid "table file load failed!"
-#~ msgstr "caricamento del file tabella non riuscito!"
-
-#~ msgid "Saving frequency table file "
-#~ msgstr "Salvataggio della tabella di frequenza "
-
-#~ msgid "frequency table file load failed!"
-#~ msgstr "caricamento del file tabella di frequenza non riuscito!"
-
-#~ msgid "Saving table file "
-#~ msgstr "Salvataggio del file tabella "
-
-#~ msgid "Table file save failed!"
-#~ msgstr "Salvataggio del file tabella non riuscito!"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ "Hot keys:\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ "Tasti rapidi:\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " open/close the input method.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ ":\n"
-#~ " apri/chiudi il metodo di inserimento.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " switch to the next input method.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ ":\n"
-#~ " passa al metodo di inserimento successivo.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " switch to the previous input method.\n"
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ " passa al metodo di inserimento precedente.\n"
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Generic Table"
-#~ msgstr "Tabella generica"
-
-#~ msgid "An IMEngine Module which uses generic table input method file."
-#~ msgstr ""
-#~ "Un modulo IMEngine che usa un file di metodo di inserimento con tabella "
-#~ "generica."
-
-#~ msgid "Full width _punctuation:"
-#~ msgstr "_Punteggiatura a larghezza piena:"
-
-#~ msgid "Select full width puncutation keys"
-#~ msgstr "Seleziona i tasti della punteggiatura a larghezza piena"
-
-#~ msgid ""
-#~ "The key events to switch full/half width punctuation input mode. Click on "
-#~ "the button on the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per passare tra le modalità di inserimento con "
-#~ "punteggiatura a larghezza piena/mezza. Fai clic sul pulsante a destra per "
-#~ "modificarle."
-
-#~ msgid "Full width _letter:"
-#~ msgstr "_Lettera a larghezza piena:"
-
-#~ msgid "Select full width letter keys"
-#~ msgstr "Seleziona i tasti delle lettere a larghezza piena"
-
-#~ msgid ""
-#~ "The key events to switch full/half width letter input mode. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per passare tra le modalità di inserimento con "
-#~ "lettere a larghezza piena/mezza. Fai clic sul pulsante a destra per "
-#~ "modificarle."
-
-#~ msgid "_Mode switch:"
-#~ msgstr "Cambio di _modalità:"
-
-#~ msgid "Select mode switch keys"
-#~ msgstr "Seleziona i tasti per il cambio di modalità"
-
-#~ msgid ""
-#~ "The key events to change current input mode. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per cambiare la modalità di inserimento attuale. "
-#~ "Fai clic sul pulsante a destra per cambiarle."
-
-#~ msgid "_Add phrase:"
-#~ msgstr "_Aggiungi frase:"
-
-#~ msgid "Select add phrase keys."
-#~ msgstr "Seleziona i tasti per aggiungere frasi."
-
-#~ msgid ""
-#~ "The key events to add a new user defined phrase. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per aggiungere una nuova frase definita "
-#~ "dall'utente. Fai clic sul pulsante a destra per cambiarle."
-
-#~ msgid "_Delete phrase:"
-#~ msgstr "_Elimina frase:"
-
-#~ msgid "Select delete phrase keys."
-#~ msgstr "Seleziona i tasti per eliminare frasi."
-
-#~ msgid ""
-#~ "The key events to delete a selected phrase. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per eliminare una frase selezionata. Fai clic "
-#~ "sul pulsante a destra per cambiarle."
-
-#~ msgid "Show _prompt"
-#~ msgstr "Mostra _prompt"
-
-#~ msgid "Show key _hint"
-#~ msgstr "Mostra su_ggerimento del tasto"
-
-#~ msgid "Save _user table in binary format"
-#~ msgstr "Salva la tabella dell'_utente in formato binario"
-
-#~ msgid "Show the u_ser defined phrases first"
-#~ msgstr "Mo_stra prima le frasi definite dall'utente"
-
-#~ msgid "Show the _longer phrases first"
-#~ msgstr "Mostra prima le frasi più _lunghe"
-
-#~ msgid ""
-#~ "If this option is checked, the key prompt of the currently selected "
-#~ "phrase will be shown."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, sarà mostrato il prompt del tasto della "
-#~ "frase attualmente selezionata."
-
-#~ msgid ""
-#~ "If this option is checked, the remaining keystrokes of the phraseswill be "
-#~ "shown on the lookup table."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, i tasti rimanenti della frase saranno "
-#~ "mostrati nella tabella di riferimento."
-
-#~ msgid ""
-#~ "If this option is checked, the user table will be stored with binary "
-#~ "format, this will increase the loading speed."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la tabella dell'utente sarà salvata in "
-#~ "formato binario; ciò aumenterà la velocità di caricamento."
-
-#~ msgid ""
-#~ "If this option is checked, the user defined phrases will be shown in "
-#~ "front of others. "
-#~ msgstr ""
-#~ "Se questa opzione è segnata, le frasi definite dall'utente saranno "
-#~ "mostrate prima delle altre. "
-
-#~ msgid ""
-#~ "If this option is checked, the longer phrase will be shown in front of "
-#~ "others. "
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la frasi più lunghe saranno mostrate prima "
-#~ "delle altre. "
-
-#~ msgid "The installed tables:"
-#~ msgstr "La tabelle installate:"
-
-#~ msgid "_Install"
-#~ msgstr "_Installa"
-
-#~ msgid "Install a new table."
-#~ msgstr "Installa una nuova tabella."
-
-#~ msgid "_Delete"
-#~ msgstr "_Elimina"
-
-#~ msgid "Delete the selected table."
-#~ msgstr "Elimina la tabella selezionata."
-
-#~ msgid "_Properties"
-#~ msgstr "_Proprietà"
-
-#~ msgid "Edit the properties of the selected table."
-#~ msgstr "Modifica le proprietà della tabella selezionata."
-
-#~ msgid "Table Management"
-#~ msgstr "Gestione delle tabelle"
-
-#~ msgid "Select an icon file"
-#~ msgstr "Seleziona un file icone"
-
-#~ msgid "User"
-#~ msgstr "Utente"
-
-#~ msgid "System"
-#~ msgstr "Sistema"
-
-#~ msgid "Please select the table file to be installed."
-#~ msgstr "Per piacere seleziona il file tabella da installare."
-
-#~ msgid "Failed to install the table! It's already in table file directory."
-#~ msgstr ""
-#~ "Installazione della tabella non riuscita. È già nella cartella dei file "
-#~ "tabella."
-
-#~ msgid "Failed to load the table file!"
-#~ msgstr "Caricamento del file tabella non riuscito."
-
-#~ msgid ""
-#~ "Failed to install the table! Another version of this table was already "
-#~ "installed."
-#~ msgstr ""
-#~ "Installazione della tabella non riuscita. Un'altra versione di questa "
-#~ "tabella era già installata."
-
-#~ msgid ""
-#~ "Another version of this table was already installed. Do you want to "
-#~ "replace it with the new one?"
-#~ msgstr ""
-#~ "Un'altra versione di questa tabella era già installata. Vuoi sostituirla "
-#~ "con la nuova?"
-
-#~ msgid ""
-#~ "Failed to install the table! A table with the same file name was already "
-#~ "installed."
-#~ msgstr ""
-#~ "Installazione della tabella non riuscita. Una tabella con lo stesso nome "
-#~ "del file era già installata."
-
-#~ msgid ""
-#~ "A table with the same file name was already installed. Do you want to "
-#~ "overwrite it?"
-#~ msgstr ""
-#~ "Una tabella con lo stesso nome del file era già installata. Vuoi "
-#~ "sovrascriverla?"
-
-#~ msgid "Failed to install the table to %s!"
-#~ msgstr "Installazione della tabella in %s non riuscita."
-
-#~ msgid "Can not delete the file %s!"
-#~ msgstr "Impossibile eliminare il file %s."
-
-#~ msgid "Are you sure to delete this table file?"
-#~ msgstr "Sei sicuro di voler eliminare questo file tabella?"
-
-#~ msgid "Failed to delete the table file!"
-#~ msgstr "Eliminazione del file tabella non riuscita."
-
-#~ msgid "True"
-#~ msgstr "Vero"
-
-#~ msgid "False"
-#~ msgstr "Falso"
-
-#~ msgid "Split Keys:"
-#~ msgstr "Tasti di divisione:"
-
-#~ msgid "The key strokes to split inputed string."
-#~ msgstr "I tasti per dividere la stringa inserita."
-
-#~ msgid "Commit Keys:"
-#~ msgstr "Tasti di consegna:"
-
-#~ msgid "The key strokes to commit converted result to client."
-#~ msgstr "I tasti per consegnare il risultato convertito al client."
-
-#~ msgid "Forward Keys:"
-#~ msgstr "Tasti di inoltro:"
-
-#~ msgid "The key strokes to forward inputed string to client."
-#~ msgstr "I tasti per inoltrare la stringa inserita al client."
-
-#~ msgid "The key strokes to select candidate phrases in lookup table."
-#~ msgstr ""
-#~ "I tasti per selezionare delle frasi candidate nella tabella di "
-#~ "riferimento."
-
-#~ msgid "Page Up Keys:"
-#~ msgstr "Tasti pagina su:"
-
-#~ msgid "The lookup table page up keys"
-#~ msgstr "I tasti pagina su della tabella di riferimento"
-
-#~ msgid "Page Down Keys:"
-#~ msgstr "Tasti pagina giù:"
-
-#~ msgid "The lookup table page down keys"
-#~ msgstr "I tasti pagina giù della tabella di riferimento"
-
-#~ msgid "Table Properties"
-#~ msgstr "Proprietà della tabella"
-
-#~ msgid "Name:"
-#~ msgstr "Nome:"
-
-#~ msgid "The name of this table."
-#~ msgstr "Il nome di questa tabella."
-
-#~ msgid "Author:"
-#~ msgstr "Autore:"
-
-#~ msgid "The author of this table."
-#~ msgstr "L'autore di questa tabella."
-
-#~ msgid "UUID:"
-#~ msgstr "UUID:"
-
-#~ msgid "The unique ID of this table."
-#~ msgstr "L'ID univoca di questa tabella."
-
-#~ msgid "Serial Number:"
-#~ msgstr "Numero seriale:"
-
-#~ msgid "The serial number of this table."
-#~ msgstr "Il numero seriale di questa tabella."
-
-#~ msgid "Icon File:"
-#~ msgstr "File icone:"
-
-#~ msgid "The icon file of this table."
-#~ msgstr "Il file icone di questa tabella."
-
-#~ msgid "Supported Languages:"
-#~ msgstr "Lingue supportate:"
-
-#~ msgid "The languages supported by this table."
-#~ msgstr "Le lingue supportate da questa tabella."
-
-#~ msgid "Status Prompt:"
-#~ msgstr "Prompt di stato:"
-
-#~ msgid "A prompt string to be shown in status area."
-#~ msgstr "Una stringa di prompt da visualizzare nell'area di stato."
-
-#~ msgid "Valid Input Chars:"
-#~ msgstr "Caratteri di inserimento validi:"
-
-#~ msgid "The valid input chars of this table."
-#~ msgstr "I caratteri di inserimento validi di questa tabella."
-
-#~ msgid "Multi Wildcard Char:"
-#~ msgstr "Carattere jolly multiplo:"
-
-#~ msgid ""
-#~ "The multi wildcard chars of this table. These chars can be used to match "
-#~ "one or more arbitrary chars."
-#~ msgstr ""
-#~ "I caratteri jolly multipli di questa tabella. Questi caratteri possono "
-#~ "essere usati per corrispondere a uno o più caratteri arbitrari."
-
-#~ msgid "Single Wildcard Char:"
-#~ msgstr "Carattere jolly singolo:"
-
-#~ msgid ""
-#~ "The single wildcard chars of this table.These chars can be used to match "
-#~ "one arbitrary char."
-#~ msgstr ""
-#~ "I caratteri jolly singoli di questa tabella. Questi caratteri possono "
-#~ "essere usati per corrispondere a un carattere arbitrario."
-
-#~ msgid "Max Key Length:"
-#~ msgstr "Lunghezza massima dei tasti:"
-
-#~ msgid "The maxmium length of key strings."
-#~ msgstr "La lunghezza massima delle stringhe di tasti."
-
-#~ msgid "Show Key Prompt:"
-#~ msgstr "Mostra prompt del tasto:"
-
-#~ msgid "If true then the key prompts will be shown instead of the raw keys."
-#~ msgstr ""
-#~ "Se vero, saranno mostrati i prompt dei tasti invece dei tasti grezzi."
-
-#~ msgid "Auto Select:"
-#~ msgstr "Selezione automatica:"
-
-#~ msgid ""
-#~ "If true then the first candidate phrase will be selected automatically "
-#~ "when inputing the next key."
-#~ msgstr ""
-#~ "Se vero, la prima frase candidata sarà selezionata automaticamente quando "
-#~ "si inserisce il prossimo tasto."
-
-#~ msgid "Auto Wildcard:"
-#~ msgstr "Jolly automatico:"
-
-#~ msgid ""
-#~ "If true then a multi wildcard char will be append to the end of inputed "
-#~ "key string when searching phrases."
-#~ msgstr ""
-#~ "Se vero, un carattere jolly multiplo sarà aggiunto alla fine della "
-#~ "stringa di tasti inseriti quando si cercano le frasi."
-
-#~ msgid "Auto Commit:"
-#~ msgstr "Consegna automatica:"
-
-#~ msgid ""
-#~ "If true then the converted result string will be committed to client "
-#~ "automatically."
-#~ msgstr ""
-#~ "Se vero, la stringa risultante convertita sarà automaticamente consegnata "
-#~ "al client."
-
-#~ msgid ""
-#~ "If true then the inputed key string will be splitted automatically when "
-#~ "necessary."
-#~ msgstr ""
-#~ "Se vero, la stringa di tasti inserita sarà divisa automaticamente quando "
-#~ "necessario."
-
-#~ msgid "Discard Invalid Key:"
-#~ msgstr "Scarta tasto non valido:"
-
-#~ msgid ""
-#~ "If true then the invalid key will be discarded automatically.This option "
-#~ "is only valid when Auto Select and Auto Commit is true."
-#~ msgstr ""
-#~ "Se vero, il tasto non valido sarà scartato automaticamente. Questa "
-#~ "opzione è valida solo quando sono vere la selezione e la consegna "
-#~ "automatiche."
-
-#~ msgid "Dynamic Adjust:"
-#~ msgstr "Regolazione dinamica:"
-
-#~ msgid "If true then the phrases' frequencies will be adjusted dynamically."
-#~ msgstr "Se vero, le frequenze delle frasi saranno regolate dinamicamente."
-
-#~ msgid "Auto Fill Preedit Area:"
-#~ msgstr "Riempimento automatico dell'area di premodifica:"
-
-#~ msgid ""
-#~ "If true then the preedit string will be filled up with the current "
-#~ "candiate phrase automatically.This option is only valid when Auto Select "
-#~ "is TRUE."
-#~ msgstr ""
-#~ "Se vero, la stringa di premodifica sarà riempita automaticamente con la "
-#~ "frase candidata attuale. Questa opzione è valida solo quando la selezione "
-#~ "automatica è vera."
-
-#~ msgid "Always Show Lookup Table:"
-#~ msgstr "Mostra sempre la tabella di riferimento:"
-
-#~ msgid ""
-#~ "If true then the lookup table will always be shown when any candidate "
-#~ "phrase is available. Otherwise the lookup table will only be shown when "
-#~ "necessary.\n"
-#~ "If Auto Fill is false, then this option will be no effect, and always be "
-#~ "true."
-#~ msgstr ""
-#~ "Se vero, la tabella di riferimento sarà sempre visualizzata quando "
-#~ "qualsiasi frase candidata sarà disponibile. Altrimenti la tabella di "
-#~ "riferimento sarà visualizzata solo quando necessario.\n"
-#~ "Se il riempimento automatico è falso, questa opzione non avrà effetto, e "
-#~ "sarà sempre vera."
-
-#~ msgid "Default Full Width Punct:"
-#~ msgstr "Punteggiatura predefinita a larghezza piena:"
-
-#~ msgid "If true then full width punctuations will be inputed by default."
-#~ msgstr ""
-#~ "Se vero, saranno inseriti segni di punteggiatura a larghezza piena come "
-#~ "impostazione predefinita."
-
-#~ msgid "Default Full Width Letter:"
-#~ msgstr "Lettere predefinite a larghezza piena:"
-
-#~ msgid "If true then full width letters will be inputed by default."
-#~ msgstr ""
-#~ "Se vero, saranno inserite lettere a larghezza piena come impostazione "
-#~ "predefinita."
-
-#~ msgid "Invalid icon file."
-#~ msgstr "File icone non valido."
-
-#~ msgid "Invalid languages."
-#~ msgstr "Lingue non valide."
-
-#~ msgid "Invalid status prompt."
-#~ msgstr "Prompt di stato non valido."
-
-#~ msgid "Invalid multi wildcard chars."
-#~ msgstr "Caratteri jolly multipli non validi."
-
-#~ msgid "Invalid single wildcard chars."
-#~ msgstr "Caratteri jolly singoli non validi."
-
-#~ msgid "Invalid commit keys."
-#~ msgstr "Tasti di consegna non validi."
-
-#~ msgid "Invalid select keys."
-#~ msgstr "Tasti di selezione non validi."
-
-#~ msgid "Invalid page up keys."
-#~ msgstr "Tasti pagina su non validi."
-
-#~ msgid "Invalid page down keys."
-#~ msgstr "Tasti pagina giù non validi."
-
-#~ msgid "Invalid max key length."
-#~ msgstr "Lunghezza massima dei tasti non valida."
-
-#~ msgid "Failed to save table %s!"
-#~ msgstr "Salvataggio della tabella %s non riuscito!"
-
-#~ msgid "Failed to load any Config Modules!"
-#~ msgstr "Caricamento di qualsiasi modulo di configurazione non riuscito."
-
-#~ msgid "_Current Config Module:"
-#~ msgstr "Modulo di _configurazione attuale:"
-
-#~ msgid "<Not found>"
-#~ msgstr "<Non trovato>"
-
-#~ msgid "Current Config Module has been changed to %s."
-#~ msgstr "Il modulo di configurazione attuale è stato cambiato in %s."
-
-#~ msgid "Start the SCIM Setup Utility."
-#~ msgstr "Avvia il programma di configurazione di SCIM."
-
-#~ msgid "Setup ..."
-#~ msgstr "Configurazione..."
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "Selezione"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "Nessuna opzione"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "Impostazioni tastiera"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "Maiuscole auto"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "Punto automatico"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "Tastiera su schermo"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "Seleziona tastiera"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "Tastiera hardware"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "Tastiera"
+++ /dev/null
-# Japanese translation for SCIM
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# James Su <suzhe@tsinghua.org.cn>, 2004.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: ja\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2005-12-11 11:00+0900\n"
-"Last-Translator: Yukiko Bando <ybando@k6.dion.ne.jp>\n"
-"Language-Team: Japanese <ja@li.org>\n"
-"Language: ja\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-#, fuzzy
-msgid "Selection"
-msgstr "キー選択"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-#, fuzzy
-msgid "No option"
-msgstr "オプション"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-#, fuzzy
-msgid "Options"
-msgstr "オプション"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-#, fuzzy
-msgid "Auto capitalization"
-msgstr "自動スプリット:"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-#, fuzzy
-msgid "Software keyboard"
-msgstr "英語/キーボード"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-#, fuzzy
-msgid "Keyboard selection"
-msgstr "キー選択"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-#, fuzzy
-msgid "Keyboard option"
-msgstr "キー選択"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-#, fuzzy
-msgid "Hardware keyboard"
-msgstr "英語/キーボード"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-#, fuzzy
-msgid "Keyboard"
-msgstr "英語/キーボード"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "全般"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "英語/キーボード"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "英語(アメリカ)"
-
-#~ msgid "Amharic"
-#~ msgstr "アムハラ語"
-
-#~ msgid "Arabic"
-#~ msgstr "アラビア語"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "アラビア語(エジプト)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "アラビア語(レバノン)"
-
-#~ msgid "Assamese"
-#~ msgstr "アッサム語"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "アゼルバイジャン語"
-
-#~ msgid "Belarusian"
-#~ msgstr "白ロシア語"
-
-#~ msgid "Bulgarian"
-#~ msgstr "ブルガリア語"
-
-#~ msgid "Bengali"
-#~ msgstr "ベンガル語"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "ベンガル語(インド)"
-
-#~ msgid "Tibetan"
-#~ msgstr "チベット語"
-
-#~ msgid "Bosnian"
-#~ msgstr "ボスニア語"
-
-#~ msgid "Catalan"
-#~ msgstr "カタロニア語"
-
-#~ msgid "Czech"
-#~ msgstr "チェコ語"
-
-#~ msgid "Welsh"
-#~ msgstr "ウェールズ語"
-
-#~ msgid "Danish"
-#~ msgstr "デンマーク語"
-
-#~ msgid "German"
-#~ msgstr "ドイツ語"
-
-#~ msgid "Greek"
-#~ msgstr "ギリシャ語"
-
-#~ msgid "English"
-#~ msgstr "英語"
-
-#~ msgid "English (Australian)"
-#~ msgstr "英語(オーストラリア)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "英語(カナダ)"
-
-#~ msgid "English (British)"
-#~ msgstr "英語(イギリス)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "英語(アイルランド)"
-
-#~ msgid "English (American)"
-#~ msgstr "英語(アメリカ)"
-
-#~ msgid "Spanish"
-#~ msgstr "スペイン語"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#~ msgid "Estonian"
-#~ msgstr "エストニア語"
-
-#~ msgid "Basque"
-#~ msgstr "バスク語"
-
-#~ msgid "Persian"
-#~ msgstr "ペルシア語"
-
-#~ msgid "Finnish"
-#~ msgstr "フィンランド語"
-
-#~ msgid "French"
-#~ msgstr "フランス語"
-
-#~ msgid "Irish"
-#~ msgstr "アイルランド語"
-
-#~ msgid "Galician"
-#~ msgstr "ガリシア語"
-
-#~ msgid "Gujarati"
-#~ msgstr "グジャラート語"
-
-#~ msgid "Hebrew"
-#~ msgstr "ヘブライ語"
-
-#~ msgid "Hindi"
-#~ msgstr "ヒンディー語"
-
-#~ msgid "Croatian"
-#~ msgstr "クロアチア語"
-
-#~ msgid "Hungarian"
-#~ msgstr "ハンガリー語"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "ルーマニア語"
-
-#~ msgid "Interlingua"
-#~ msgstr "インターリングア"
-
-#~ msgid "Indonesian"
-#~ msgstr "インドネシア語"
-
-#~ msgid "Icelandic"
-#~ msgstr "アイスランド語"
-
-#~ msgid "Italian"
-#~ msgstr "イタリア語"
-
-#~ msgid "Japanese"
-#~ msgstr "日本語"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "ドイツ語"
-
-#~ msgid "Kazakh"
-#~ msgstr "カザフスタン語"
-
-#~ msgid "Cambodian"
-#~ msgstr "クメール語"
-
-#~ msgid "Kannada"
-#~ msgstr "カンナダ語"
-
-#~ msgid "Korean"
-#~ msgstr "ハングル"
-
-#~ msgid "Laothian"
-#~ msgstr "ラオス語"
-
-#~ msgid "Lithuanian"
-#~ msgstr "リトアニア語"
-
-#~ msgid "Latvian"
-#~ msgstr "ラトヴィア語"
-
-#~ msgid "Macedonian"
-#~ msgstr "マケドニア語"
-
-#~ msgid "Malayalam"
-#~ msgstr "マラヤーラム語"
-
-#~ msgid "Mongolian"
-#~ msgstr "モンゴル語"
-
-#~ msgid "Marathi"
-#~ msgstr "マラーティー語"
-
-#~ msgid "Malay"
-#~ msgstr "マレー語"
-
-#, fuzzy
-#~ msgid "Burmese"
-#~ msgstr "ブラウズ"
-
-#~ msgid "Nepali"
-#~ msgstr "ネパール語"
-
-#~ msgid "Dutch"
-#~ msgstr "オランダ語"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "ノルウェー語(ニューノルスク)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "ノルウェー語(ボックモール)"
-
-#~ msgid "Oriya"
-#~ msgstr "オリヤー語"
-
-#~ msgid "Punjabi"
-#~ msgstr "パンジャブ語"
-
-#~ msgid "Polish"
-#~ msgstr "ポーランド語"
-
-#~ msgid "Portuguese"
-#~ msgstr "ポルトガル語"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "ポルトガル語(ブラジル)"
-
-#~ msgid "Romanian"
-#~ msgstr "ルーマニア語"
-
-#~ msgid "Russian"
-#~ msgstr "ロシア語"
-
-#~ msgid "Slovak"
-#~ msgstr "スロバキア語"
-
-#~ msgid "Slovenian"
-#~ msgstr "スロベニア語"
-
-#~ msgid "Albanian"
-#~ msgstr "アルバニア語"
-
-#~ msgid "Serbian"
-#~ msgstr "セルビア語"
-
-#~ msgid "Swedish"
-#~ msgstr "スウェーデン語"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "スウェーデン語(フィンランド)"
-
-#~ msgid "Tamil"
-#~ msgstr "タミル語"
-
-#~ msgid "Telugu"
-#~ msgstr "テルグ語"
-
-#~ msgid "Thai"
-#~ msgstr "タイ語"
-
-#~ msgid "Turkish"
-#~ msgstr "トルコ語"
-
-#~ msgid "Uighur"
-#~ msgstr "ウィグル語"
-
-#~ msgid "Ukrainian"
-#~ msgstr "ウクライナ語"
-
-#~ msgid "Urdu"
-#~ msgstr "ウルドゥー語"
-
-#~ msgid "Uzbek"
-#~ msgstr "ウズベク語"
-
-#~ msgid "Vietnamese"
-#~ msgstr "ベトナム語"
-
-#~ msgid "Walloon"
-#~ msgstr "ワロン語"
-
-#~ msgid "Yiddish"
-#~ msgstr "イディッシュ語"
-
-#~ msgid "Chinese"
-#~ msgstr "中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "簡体中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "繁体中国語"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "ベルギー"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "英語(US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "英語(カナダ)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "英語(アイルランド)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "英語(イギリス)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "英語(アメリカ)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "英語(カナダ)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "英語(イギリス)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "英語(イギリス)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "英語(カナダ)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "英語(イギリス)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "フランス語(カナダ)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "フランス語(カナダ)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "フランス語(カナダ)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "ドイツ語(スイス)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "フランス語(カナダ)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "ドイツ語(deadkeyあり)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "ドイツ語(スイス)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "英語(オーストラリア)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "ドイツ語(スイス)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "ドイツ語(スイス)"
-
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "ポルトガル語(ブラジル)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "ポルトガル語(ブラジル)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "スペイン語(CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "マラヤーラム語"
-
-#~ msgid "Norwegian"
-#~ msgstr "ノルウェー語"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "セルビア語"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "繁体中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "繁体中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "繁体中国語"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "簡体中国語"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "アラビア語(エジプト)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "アラビア語(エジプト)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "アラビア語(エジプト)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "アラビア語(エジプト)"
-
-#~ msgid "Other"
-#~ msgstr "その他"
-
-#~ msgid "Unknown"
-#~ msgstr "不明"
-
-#~ msgid "English (US)"
-#~ msgstr "英語(US)"
-
-#~ msgid "Belgian"
-#~ msgstr "ベルギー"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "チェコ語(qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "フランス語(スイス)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "ドイツ語(deadkeyあり)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "ポルトガル語(ブラジルUSアクセント)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "スロバキア語(qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "スペイン語(CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#~ msgid "English (UK)"
-#~ msgstr "英語(UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "簡体-繁体中国語相互変換"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "簡体中国語と繁体中国語を相互変換する"
-
-#~ msgid "SC-TC"
-#~ msgstr "簡体-繁体"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "簡体-繁体中国語相互変換"
-
-#~ msgid "No Conversion"
-#~ msgstr "変換しない"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "簡体から繁体へ"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "簡体中国語を繁体中国語に変換する"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "繁体から簡体へ"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "繁体中国語を簡体中国語に変換する"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "簡体->繁体"
-
-#~ msgid "TC->SC"
-#~ msgstr "繁体->簡体"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Smart Common Input Method platform"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "有効にする"
-
-#~ msgid "Name"
-#~ msgstr "名称"
-
-#~ msgid "Cursor Position"
-#~ msgstr "カーソル位置"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "現在のカーソル位置"
-
-#~ msgid "Maximum length"
-#~ msgstr "最大の長さ"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "String viewウィジェットの最大表示文字数。無制限の場合は0を指定して下さい。"
-
-#~ msgid "Maximum width"
-#~ msgstr "最大幅"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "String viewウィジェットの最大表示幅"
-
-#~ msgid "Has Frame"
-#~ msgstr "フレーム有りかどうか"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FALSEを指定した場合、文字表示ウィジェットの縁取りを描画しません。"
-
-#~ msgid "Draw cursor"
-#~ msgstr "カーソルを描画する"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "TRUEを指定した場合、カーソルを点滅させます。"
-
-#~ msgid "Auto move cursor"
-#~ msgstr "カーソルの自動移動"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr ""
-#~ "TRUEを指定した場合、マウスクリックされた位置にカーソルが移動します。"
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "マウスボタンのイベントを送る"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "TRUEの場合はマウスボタンのイベントをユーザプログラムに送ります。"
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "文字列に合わせてウィジェットのサイズを自動調整"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "TRUEを指定した、場合はウィジェットサイズを自動的に調整します。"
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr ""
-#~ "TRUEを指定した場合、マウスクリックされた位置にカーソルが移動します。"
-
-#~ msgid "Width in chars"
-#~ msgstr "文字の幅"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "String viewウィジェットに表示する文字数"
-
-#~ msgid "Scroll offset"
-#~ msgstr "スクロールオフセット"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "String viewウィジェットが画面左端に畳み込まれた際の表示ピクセル数"
-
-#~ msgid "Text"
-#~ msgstr "テキスト"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "String viewウィジェットの内容"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "設定済のキー:"
-
-#~ msgid "Key Code:"
-#~ msgstr "キーコード:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "モディファイア:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "リリース(_R)"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "キーコードを先に入力して下さい。"
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "キー(もしくは複数のキーの組合せ)を押して下さい。\n"
-#~ "キーをリリースするとこのダイアログは閉じます。"
-
-#~ msgid "Grabbing a key."
-#~ msgstr "キー選択"
-
-#~ msgid "Key Selection"
-#~ msgstr "キー選択"
-
-#~ msgid "Orientation"
-#~ msgstr "方向"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "トレイの方向"
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "テキスト"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "アムハラ語"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "常に"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "オプション"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "英語/キーボード"
-
-#~ msgid "English/European"
-#~ msgstr "英語/ヨーロッパ言語"
-
-#~ msgid "RAW CODE"
-#~ msgstr "RAW CODE"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "ホットキー:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " マルチバイトエンコード/ユニコードの切替え\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " 入力メソッドをリセット\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "現在の入力モード。変更するにはここをクリックして下さい。"
-
-#~ msgid "Unicode"
-#~ msgstr "ユニコード"
-
-#~ msgid "Global Setup"
-#~ msgstr "全体設定"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "全てのフロントエンドモジュール(X11 FrontEnd/GTK-Immoduele/Qt-Immoduleを含"
-#~ "む)で使用する全体オプションを設定"
-
-#~ msgid "_Trigger:"
-#~ msgstr "開始/終了(_T):"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "開始/終了キーの設定"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "入力メソッドを開始/終了するキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "Turn _On:"
-#~ msgstr "開始(_O):"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "開始キーの設定"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "入力メソッドを開始するキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "終了(_F):"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "終了キーの設定"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "入力メソッドを終了するキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "_Next input method:"
-#~ msgstr "次の入力メソッド(_N):"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "次の入力メソッドキーの設定"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "次の入力メソッドに切替えるキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "_Previous input method:"
-#~ msgstr "前の入力メソッド(_P):"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "前の入力メソッドキーの設定"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "前の入力メソッドに切替えるキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "入力メソッドメニューを表示(_M):"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "入力メソッドメニュー表示キーの設定"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "入力メソッドメニューを表示させるキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "キーボード配列(_K):"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "キーボード配列を認識する入力メソッドが正しく動作するように、現在使用されて"
-#~ "いるキーボード配列を選んでください。"
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "未確定文字列を入力対象クライアントのウィンドウに表示(_E)"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "このオプションを有効にすると、未確定文字列は独立した入力ウィンドウにではな"
-#~ "く入力対象クライアントに直接表示されます。"
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "全てのアプリケーションで同一入力メソッドを使用(_S)"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "このオプションを有効にすると、同一の入力メソッドを全てのアプリケーションで"
-#~ "使用できるようになります。アプリケーションごとに別々の入力メソッドを使用す"
-#~ "る場合はこのオプションを無効にして下さい。"
-
-#~ msgid "Hotkeys"
-#~ msgstr "ホットキー"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr "入力メソッドの有効/無効とホットキーの設定を行います。"
-
-#~ msgid "The installed input method services:"
-#~ msgstr "インストールされている入力メソッド:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "ホットキー(_H)"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "この入力メソッドに切り替えるホットキーを編集"
-
-#~ msgid "Select _Filters"
-#~ msgstr "フィルター(_F)"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "この入力メソッドで使用するフィルターを選択"
-
-#~ msgid "_Expand"
-#~ msgstr "開く(_E)"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "全ての言語グループを展開する"
-
-#~ msgid "_Collapse"
-#~ msgstr "閉じる(_C)"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "全ての言語グループを閉じる"
-
-#~ msgid "E_nable All"
-#~ msgstr "全て有効(_N)"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "全ての入力メソッドを有効にする"
-
-#~ msgid "_Disable All"
-#~ msgstr "全て無効(_D)"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "全ての入力メソッドを無効にする"
-
-#~ msgid "Filters"
-#~ msgstr "フィルター"
-
-#~ msgid "Languages"
-#~ msgstr "言語"
-
-#~ msgid "Description"
-#~ msgstr "説明"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "%s のホットキーを編集"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "%s のフィルターを編集"
-
-#~ msgid "Move _Up"
-#~ msgstr "上に移動(_U)"
-
-#~ msgid "Move _Down"
-#~ msgstr "下に移動(_D)"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "GTK+-2.xライブラリによるパネルデーモン"
-
-#~ msgid "On demand"
-#~ msgstr "開始時に"
-
-#~ msgid "Never"
-#~ msgstr "しない"
-
-#~ msgid "ToolBar"
-#~ msgstr "ツールバー"
-
-#~ msgid "_Show:"
-#~ msgstr "表示(_S):"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "オートスナップ(_N)"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "入力メソッドのアイコンを表示(_I)"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "入力メソッドの名称を表示(_U)"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "オートハイド(_O):"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "スティックアイコンを表示(_T)"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "メニューアイコンを表示(_E)"
-
-#~ msgid "Show _help icon"
-#~ msgstr "ヘルプアイコンを表示(_H)"
-
-#~ msgid "Show _property label"
-#~ msgstr "プロパティーラベルを表示(_P)"
-
-#~ msgid "Input window"
-#~ msgstr "入力ウィンドウ"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "候補ウィンドウを埋め込む(_M)"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "候補ウィンドウを縦に表示(_V)"
-
-#~ msgid "Misc"
-#~ msgstr "その他"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "トレーアイコンを表示(_Y)"
-
-#~ msgid "Stick _windows"
-#~ msgstr "ウィンドウを固定(_W)"
-
-#~ msgid "_Font:"
-#~ msgstr "フォント(_F):"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "\"常に\"を選ぶと、SCIMがアクティブでない時もツールバーが表示されます。\"開"
-#~ "始時に\"を選ぶと、SCIMがアクティブな時だけ表示されます。\"しない\"を選ぶ"
-#~ "と、SCIMがアクティブな時もツールバーは表示されません。"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "このオプションを有効にするとツールバーが\n"
-#~ "自動的にスクリーンの端に移動します。"
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "ここで設定した時間が経過するとツールバーは自動的に消えます。このオプション"
-#~ "は表示に\"常に\"が選択されている場合にのみ有効です。オートハイドを無効にす"
-#~ "るには値をゼロにして下さい。"
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にすると入力メソッドの\n"
-#~ "アイコンがツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にすると入力メソッドの\n"
-#~ "名称がツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にするとスティックアイコンが\n"
-#~ "ツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にするとメニューアイコンが\n"
-#~ "ツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にするとヘルプアイコンが\n"
-#~ "ツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にすると入力メソッドの\n"
-#~ "プロパティーがツールバーにテキスト表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "このオプションを有効にすると候補ウィンドウが\n"
-#~ "入力ウィンドウの中に表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "このオプションを有効にすると候補ウィンドウが\n"
-#~ "縦に表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "このオプションを有効にするとトレーアイコンが\n"
-#~ "タスクバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "このオプションを有効にするとツールバーと入力/候補ウィンドウが\n"
-#~ "本来の表示位置に固定されます。"
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr "このフォント設定は入力/候補ウィンドウに適用されます。"
-
-#~ msgid "Select Interface Font"
-#~ msgstr "インターフェイスのフォントを選択"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "フロントエンド"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMエンジン"
-
-#~ msgid "Panel"
-#~ msgstr "パネル"
-
-#~ msgid "Extra"
-#~ msgstr "その他"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "SCIM入力メソッドの設定"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI セットアップユーティリティ</"
-#~ "span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">%s モジュールの設定</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "SCIMの設定を終了しますか?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "すぐに有効にならない設定項目があります。\n"
-#~ "すべての変更を有効にするにはSCIMを再起動して下さい。"
-
-#~ msgid "SCIM Setup"
-#~ msgstr "SCIMを設定"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "GTK Widget library に基づく統合設定ユーティリティ"
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Smart Common Input Method platform セットアップユーティリティ"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIMヘルプ"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "入力ウィンドウ・ツールバーを固定する/固定しない"
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "SCIMと現在の入力メソッドについて簡単なヘルプを表示します"
-
-#~ msgid "Show command menu."
-#~ msgstr "コマンドメニューを表示"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "設定をリロード"
-
-#~ msgid "Stick Windows"
-#~ msgstr "ウィンドウを固定"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "ツールバーを隠す"
-
-#~ msgid "Help ..."
-#~ msgstr "ヘルプ..."
-
-#~ msgid "Exit"
-#~ msgstr "終了"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
-
-#~ msgid "Preedit String mode"
-#~ msgstr "未確定文字列の表示モード"
-
-#~ msgid "X Window"
-#~ msgstr "Xウィンドウ"
-
-#~ msgid "A FrontEnd module for X11R6 Window System, using XIM Protocol."
-#~ msgstr ""
-#~ "XIMプロトコルによるX11R6ウィンドウシステム用フロントエンドモジュール"
-
-#~ msgid "XIM Settings"
-#~ msgstr "XIMの設定"
-
-#~ msgid "_On The Spot"
-#~ msgstr "_On The Spot"
-
-#~ msgid "_Dynamic Event Flow"
-#~ msgstr "_Dynamic Event Flow"
-
-#~ msgid ""
-#~ "If this option is checked, the OnTheSpot input style will be used when "
-#~ "the client supports it."
-#~ msgstr ""
-#~ "このオプションを有効にするとOn The Spot入力スタイルが適用されます。但し、"
-#~ "クライアント側のサポートが必要です。"
-
-#~ msgid ""
-#~ "If this option is checked, then dynamic event flow will be used.This can "
-#~ "speed up the key event response, especially in remote X11 environment.But "
-#~ "SCIM may become unstable."
-#~ msgstr ""
-#~ "このオプションを有効にすると、特にリモートX11環境においてキーイベントのレ"
-#~ "スポンスを向上させることができます。但し、SCIMが不安定になる場合がありま"
-#~ "す。"
-
-#, fuzzy
-#~ msgid "Slovene"
-#~ msgstr "スロベニア語"
-
-#, fuzzy
-#~ msgid "Global"
-#~ msgstr "全体設定"
-
-#, fuzzy
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>"
-
-#, fuzzy
-#~ msgid "Hot Keys"
-#~ msgstr ""
-#~ "ショートカットキー:\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ "Hot keys:\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ "ショートカットキー:\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " open/close the input method.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ ":\n"
-#~ " 入力メソッドを開始/終了する\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " switch to the next input method.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ ":\n"
-#~ " 次の入力メソッドに切替える\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " switch to the previous input method.\n"
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ " 前の入力メソッドに切替える\n"
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Full/Half Letter"
-#~ msgstr "全角/半角文字"
-
-#~ msgid "Full/Half Punct"
-#~ msgstr "全角/半角句読点"
-
-#~ msgid ""
-#~ "The input mode of the letters. Click to toggle between half and full."
-#~ msgstr ""
-#~ "文字入力モード。全角/半角文字に切替えるにはここをクリックして下さい。"
-
-#~ msgid ""
-#~ "The input mode of the puncutations. Click to toggle between half and full."
-#~ msgstr "句読点入力モード。全角/半角に切替えるにはここをクリックして下さい。"
-
-#~ msgid ""
-#~ " Switch between full/half width letter mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " 全角/半角文字切替\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Switch between full/half width punctuation mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " 全角/半角句読点切替\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Switch between Forward/Input mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr "直接入力/変換入力モードに切替"
-
-#~ msgid ""
-#~ " Add a new phrase.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " 新しいフレーズを追加する\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Delete the selected phrase.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " 選択されたフレーズを削除する\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Control+Down:\n"
-#~ " Move lookup cursor to next shorter phrase\n"
-#~ " Only available when LongPhraseFirst option is set.\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Control+Down:\n"
-#~ " カーソルを次のより短いフレーズに移動する\n"
-#~ " \"長いフレーズを優先的に表示\"が有効な場合のみ使用できます。\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Control+Up:\n"
-#~ " Move lookup cursor to previous longer phrase\n"
-#~ " Only available when LongPhraseFirst option is set.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Control+Up:\n"
-#~ " カーソルを前のより長いフレーズに移動する\n"
-#~ " \"長いフレーズを優先的に表示\"が有効な場合のみ使用できます。\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Esc:\n"
-#~ " 入力メソッドをリセット\n"
-#~ "\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "How to add a phrase:\n"
-#~ " Input the new phrase as normal, then press the\n"
-#~ " hot key. A hint will be shown to let you input a key\n"
-#~ " for this phrase.\n"
-#~ " Input a key then press the space bar.\n"
-#~ " A hint will be shown to indicate whether\n"
-#~ " the phrase was added sucessfully.\n"
-#~ msgstr ""
-#~ "フレーズの追加方法:\n"
-#~ " 新しいフレーズを普通に入力しショートカットキーを押します。\n"
-#~ " ヒントが表示され、そのフレーズを入力する際に使うキーの入力\n"
-#~ " を促します。\n"
-#~ " キーを入力しスペースを押して下さい。\n"
-#~ " ヒントにフレーズが正しく登録されたかどうか表示されますので\n"
-#~ " 確認して下さい。\n"
-
-#~ msgid "Input a key string for phrase: "
-#~ msgstr "このフレーズに使うキーを入力して下さい: "
-
-#~ msgid "Success."
-#~ msgstr "登録完了"
-
-#~ msgid "Failed."
-#~ msgstr "登録に失敗しました"
-
-#~ msgid "option -no cannot be used with -o\n"
-#~ msgstr "-noオプションは-oオプションと同時には使用できません\n"
-
-#~ msgid "option -o cannot be used with -no\n"
-#~ msgstr "-oオプションは-noオプションと同時には使用できません\n"
-
-#~ msgid "No argument for option "
-#~ msgstr "オプション引数がありません"
-
-#~ msgid "Invalid option: "
-#~ msgstr "オプションが無効です:"
-
-#~ msgid "Loading table file "
-#~ msgstr "テーブルを読込中"
-
-#~ msgid " ...\n"
-#~ msgstr " ...\n"
-
-#~ msgid "table file load failed!"
-#~ msgstr "テーブルの読込に失敗!"
-
-#~ msgid "Saving frequency table file "
-#~ msgstr "頻度テーブルを保存中"
-
-#~ msgid "frequency table file load failed!"
-#~ msgstr "頻度テーブルの読込に失敗!"
-
-#~ msgid "Saving table file "
-#~ msgstr "テーブルを保存中"
-
-#~ msgid "Table file save failed!"
-#~ msgstr "テーブルの保存に失敗!"
-
-#~ msgid "Generic Table"
-#~ msgstr "汎用テーブル"
-
-#~ msgid "An IMEngine Module which uses generic table input method file."
-#~ msgstr "汎用テーブル入力メソッドを使用するIMエンジンモジュール"
-
-#~ msgid "Full width _punctuation:"
-#~ msgstr "全角/半角句読点(_P):"
-
-#~ msgid "Select full width puncutation keys"
-#~ msgstr "全角/半角句読点切替キーの設定"
-
-#~ msgid ""
-#~ "The key events to switch full/half width punctuation input mode. Click on "
-#~ "the button on the right to edit it."
-#~ msgstr ""
-#~ "全角/半角句読点を切替えるキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "Full width _letter:"
-#~ msgstr "全角/半角文字(_L):"
-
-#~ msgid "Select full width letter keys"
-#~ msgstr "全角/半角文字切替キーの設定"
-
-#~ msgid ""
-#~ "The key events to switch full/half width letter input mode. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "全角/半角文字を切替えるキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "_Mode switch:"
-#~ msgstr "入力モード切替(_M):"
-
-#~ msgid "Select mode switch keys"
-#~ msgstr "入力モード切替キーの設定"
-
-#~ msgid ""
-#~ "The key events to change current input mode. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "入力モードを切替えるキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "_Add phrase:"
-#~ msgstr "フレーズ追加(_A):"
-
-#~ msgid "Select add phrase keys."
-#~ msgstr "フレーズ追加キーの設定"
-
-#~ msgid ""
-#~ "The key events to add a new user defined phrase. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "新しいフレーズを追加するキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "_Delete phrase:"
-#~ msgstr "フレーズ削除(_D):"
-
-#~ msgid "Select delete phrase keys."
-#~ msgstr "フレーズ削除キーの設定"
-
-#~ msgid ""
-#~ "The key events to delete a selected phrase. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "選択されたフレーズを削除するキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "Show _prompt"
-#~ msgstr "プロンプトを表示(_P)"
-
-#~ msgid "Show key _hint"
-#~ msgstr "ヒントキーを表示(_H)"
-
-#~ msgid "Save _user table in binary format"
-#~ msgstr "ユーザーテーブルをバイナリー形式で保存(_U)"
-
-#~ msgid "Show the u_ser defined phrases first"
-#~ msgstr "ユーザー定義フレーズを優先的に表示(_S)"
-
-#~ msgid "Show the _longer phrases first"
-#~ msgstr "長いフレーズを優先的に表示(_L)"
-
-#~ msgid ""
-#~ "If this option is checked, the key prompt of the currently selected "
-#~ "phrase will be shown."
-#~ msgstr ""
-#~ "このオプションを有効にすると選択された\n"
-#~ "フレーズのキープロンプトが表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the remaining keystrokes of the phraseswill be "
-#~ "shown on the lookup table."
-#~ msgstr ""
-#~ "このオプションを有効にするとフレーズの残りの\n"
-#~ "キーストロークが候補ウィンドウに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the user table will be stored with binary "
-#~ "format, this will increase the loading speed."
-#~ msgstr ""
-#~ "このオプションを有効にするとユーザー定義テーブルがバイナリー\n"
-#~ "形式で保存されます。テーブルの読込が速くなります。"
-
-#~ msgid ""
-#~ "If this option is checked, the user defined phrases will be shown in "
-#~ "front of others. "
-#~ msgstr ""
-#~ "このオプションを有効にするとユーザー定義フレーズ\n"
-#~ "が優先的に表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the longer phrase will be shown in front of "
-#~ "others. "
-#~ msgstr ""
-#~ "このオプションを有効にすると長いフレーズが\n"
-#~ "優先的に表示されます。"
-
-#~ msgid "The installed tables:"
-#~ msgstr "インストール済みのテーブル:"
-
-#~ msgid "_Install"
-#~ msgstr "インストール(_I)"
-
-#~ msgid "Install a new table."
-#~ msgstr "新しいテーブルをインストール"
-
-#~ msgid "_Delete"
-#~ msgstr "削除(_D)"
-
-#~ msgid "Delete the selected table."
-#~ msgstr "選択されたテーブルを削除"
-
-#~ msgid "_Properties"
-#~ msgstr "プロパティー(_P)"
-
-#~ msgid "Edit the properties of the selected table."
-#~ msgstr "選択されたテーブルのプロパティーを編集"
-
-#~ msgid "Table Management"
-#~ msgstr "テーブル管理"
-
-#~ msgid "Select an icon file"
-#~ msgstr "アイコンファイルを選択"
-
-#~ msgid "User"
-#~ msgstr "ユーザー"
-
-#~ msgid "System"
-#~ msgstr "システム"
-
-#~ msgid "Please select the table file to be installed."
-#~ msgstr "インストールするテーブルファイルを選択して下さい。"
-
-#~ msgid "Failed to install the table! It's already in table file directory."
-#~ msgstr "テーブルのインストールに失敗!すでにインストールされています。"
-
-#~ msgid "Failed to load the table file!"
-#~ msgstr "テーブルファイルの読込に失敗!"
-
-#~ msgid ""
-#~ "Failed to install the table! Another version of this table was already "
-#~ "installed."
-#~ msgstr ""
-#~ "テーブルのインストールに失敗!他のバージョンが\n"
-#~ "すでにインストールされています。"
-
-#~ msgid ""
-#~ "Another version of this table was already installed. Do you want to "
-#~ "replace it with the new one?"
-#~ msgstr ""
-#~ "このテーブルの他のバージョンがすでにインストールされています。\n"
-#~ "新しいバージョンに置き換えますか?"
-
-#~ msgid ""
-#~ "Failed to install the table! A table with the same file name was already "
-#~ "installed."
-#~ msgstr ""
-#~ "テーブルのインストールに失敗!同じ名前のテーブルが\n"
-#~ "すでにインストールされています。"
-
-#~ msgid ""
-#~ "A table with the same file name was already installed. Do you want to "
-#~ "overwrite it?"
-#~ msgstr ""
-#~ "同じ名前のテーブルがすでにインストールされています。\n"
-#~ "上書きしますか?"
-
-#~ msgid "Failed to install the table to %s!"
-#~ msgstr "%sにテーブルをインストールできませんでした!"
-
-#~ msgid "Can not delete the file %s!"
-#~ msgstr "ファイル%sを削除できません!"
-
-#~ msgid "Are you sure to delete this table file?"
-#~ msgstr "このテーブルを削除しますか?"
-
-#~ msgid "Failed to delete the table file!"
-#~ msgstr "テーブルの削除に失敗!"
-
-#~ msgid "True"
-#~ msgstr "True"
-
-#~ msgid "False"
-#~ msgstr "False"
-
-#~ msgid "Split Keys:"
-#~ msgstr "スプリットキー:"
-
-#~ msgid "The key strokes to split inputed string."
-#~ msgstr "入力済みの文字列を分割するキー"
-
-#~ msgid "Commit Keys:"
-#~ msgstr "変換確定キー:"
-
-#~ msgid "The key strokes to commit converted result to client."
-#~ msgstr "変換結果をクライアントに送るキー"
-
-#~ msgid "Forward Keys:"
-#~ msgstr "直接入力キー:"
-
-#~ msgid "The key strokes to forward inputed string to client."
-#~ msgstr "入力された文字列を変換せずに直接クライアントに送るキー"
-
-#~ msgid "The key strokes to select candidate phrases in lookup table."
-#~ msgstr "候補ウィンドウからフレーズを選択するキー"
-
-#~ msgid "Page Up Keys:"
-#~ msgstr "前ページキー:"
-
-#~ msgid "The lookup table page up keys"
-#~ msgstr "候補ウィンドウで前のページに戻るキー"
-
-#~ msgid "Page Down Keys:"
-#~ msgstr "次ページキー:"
-
-#~ msgid "The lookup table page down keys"
-#~ msgstr "候補ウィンドウで次のページに進むキー"
-
-#~ msgid "Table Properties"
-#~ msgstr "テーブルのプロパティー"
-
-#~ msgid "Name:"
-#~ msgstr "名称:"
-
-#~ msgid "The name of this table."
-#~ msgstr "このテーブルの名称"
-
-#~ msgid "Author:"
-#~ msgstr "作者:"
-
-#~ msgid "The author of this table."
-#~ msgstr "このテーブルの作者"
-
-#~ msgid "UUID:"
-#~ msgstr "UUID:"
-
-#~ msgid "The unique ID of this table."
-#~ msgstr "このテーブルのID"
-
-#~ msgid "Serial Number:"
-#~ msgstr "バージョン:"
-
-#~ msgid "The serial number of this table."
-#~ msgstr "このテーブルのバージョン"
-
-#~ msgid "Icon File:"
-#~ msgstr "アイコンファイル:"
-
-#~ msgid "The icon file of this table."
-#~ msgstr "このテーブルのアイコンファイル"
-
-#~ msgid "Supported Languages:"
-#~ msgstr "サポート言語:"
-
-#~ msgid "The languages supported by this table."
-#~ msgstr "このテーブルがサポートする言語"
-
-#~ msgid "Status Prompt:"
-#~ msgstr "ステイタスプロンプト:"
-
-#~ msgid "A prompt string to be shown in status area."
-#~ msgstr "ステイタスに表示される文字列"
-
-#~ msgid "Valid Input Chars:"
-#~ msgstr "有効な文字:"
-
-#~ msgid "The valid input chars of this table."
-#~ msgstr "このテーブルで使用できる文字"
-
-#~ msgid "Multi Wildcard Char:"
-#~ msgstr "マルチワイルドカード文字:"
-
-#~ msgid ""
-#~ "The multi wildcard chars of this table. These chars can be used to match "
-#~ "one or more arbitrary chars."
-#~ msgstr ""
-#~ "このテーブルのマルチワイルドカード文字。\n"
-#~ "複数の文字の代わりに使用できます。"
-
-#~ msgid "Single Wildcard Char:"
-#~ msgstr "シングルワイルドカード文字:"
-
-#~ msgid ""
-#~ "The single wildcard chars of this table.These chars can be used to match "
-#~ "one arbitrary char."
-#~ msgstr ""
-#~ "このテーブルのシングルワイルドカード文字。\n"
-#~ "任意の一文字の代わりに使用できます。"
-
-#~ msgid "Max Key Length:"
-#~ msgstr "最大キー数:"
-
-#~ msgid "The maxmium length of key strings."
-#~ msgstr "文字列の最大キー数"
-
-#~ msgid "Show Key Prompt:"
-#~ msgstr "キープロンプトを表示:"
-
-#~ msgid "If true then the key prompts will be shown instead of the raw keys."
-#~ msgstr "Trueの場合は入力された文字の代わりにキープロンプトが表示されます。"
-
-#~ msgid "Auto Select:"
-#~ msgstr "自動選択:"
-
-#~ msgid ""
-#~ "If true then the first candidate phrase will be selected automatically "
-#~ "when inputing the next key."
-#~ msgstr ""
-#~ "Trueの場合は次のフレーズの入力を開始すると同時に入力済みの\n"
-#~ "フレーズに対してその第一変換候補が自動的に選択されます。"
-
-#~ msgid "Auto Wildcard:"
-#~ msgstr "自動ワイルドカード:"
-
-#~ msgid ""
-#~ "If true then a multi wildcard char will be append to the end of inputed "
-#~ "key string when searching phrases."
-#~ msgstr ""
-#~ "Trueの場合は検索時にマルチワイルドカード文字が\n"
-#~ "入力された文字列の最後に自動的に付加されます。"
-
-#~ msgid "Auto Commit:"
-#~ msgstr "自動コミット:"
-
-#~ msgid ""
-#~ "If true then the converted result string will be committed to client "
-#~ "automatically."
-#~ msgstr "Trueの場合は変換結果が自動的にコミットされます。"
-
-#~ msgid ""
-#~ "If true then the inputed key string will be splitted automatically when "
-#~ "necessary."
-#~ msgstr "Trueの場合は、入力された文字列が必要に応じて自動的に分割されます。"
-
-#~ msgid "Discard Invalid Key:"
-#~ msgstr "無効な文字列を排除:"
-
-#~ msgid ""
-#~ "If true then the invalid key will be discarded automatically.This option "
-#~ "is only valid when Auto Select and Auto Commit is true."
-#~ msgstr ""
-#~ "Trueの場合は、入力された無効な文字列を自動的に排除します。このオプションは"
-#~ "自動選択と自動コミットがTrueの場合のみ有効になります。"
-
-#~ msgid "Dynamic Adjust:"
-#~ msgstr "動的アップデート:"
-
-#~ msgid "If true then the phrases' frequencies will be adjusted dynamically."
-#~ msgstr "Trueの場合は、使用頻度情報が動的にアップデートされます。"
-
-#~ msgid "Auto Fill Preedit Area:"
-#~ msgstr "プリエディットの自動補完:"
-
-#~ msgid ""
-#~ "If true then the preedit string will be filled up with the current "
-#~ "candiate phrase automatically.This option is only valid when Auto Select "
-#~ "is TRUE."
-#~ msgstr ""
-#~ "Trueの場合は、自動的にプリエディットが変換候補によって補完されます。\n"
-#~ "このオプションは自動選択がTrueの場合のみ有効になります。"
-
-#~ msgid "Always Show Lookup Table:"
-#~ msgstr "候補リストを常に表示:"
-
-#~ msgid ""
-#~ "If true then the lookup table will always be shown when any candidate "
-#~ "phrase is available. Otherwise the lookup table will only be shown when "
-#~ "necessary.\n"
-#~ "If Auto Fill is false, then this option will be no effect, and always be "
-#~ "true."
-#~ msgstr ""
-#~ "Trueの場合は変換候補があれば常に候補ウィンドウが表示されます。\n"
-#~ "Falseの場合は必要な時のみ表示されます。\n"
-#~ "但し、自動補完が無効の場合は常に表示されます。"
-
-#~ msgid "Default Full Width Punct:"
-#~ msgstr "デフォルト句読点を全角に設定:"
-
-#~ msgid "If true then full width punctuations will be inputed by default."
-#~ msgstr "Trueの場合は、指定のない限り全角句読点が入力されます。"
-
-#~ msgid "Default Full Width Letter:"
-#~ msgstr "デフォルト文字幅を全角に設定:"
-
-#~ msgid "If true then full width letters will be inputed by default."
-#~ msgstr "Trueの場合は、指定のない限り全角文字が入力されます。"
-
-#~ msgid "Invalid icon file."
-#~ msgstr "アイコンファイルが無効です。"
-
-#~ msgid "Invalid languages."
-#~ msgstr "言語が無効です。"
-
-#~ msgid "Invalid status prompt."
-#~ msgstr "ステイタスプロンプトが無効です。"
-
-#~ msgid "Invalid multi wildcard chars."
-#~ msgstr "マルチワイルドカード文字が無効です。"
-
-#~ msgid "Invalid single wildcard chars."
-#~ msgstr "シングルワイルドカード文字が無効です。"
-
-#~ msgid "Invalid commit keys."
-#~ msgstr "コミットキーが無効です。"
-
-#~ msgid "Invalid select keys."
-#~ msgstr "選択キーが無効です。"
-
-#~ msgid "Invalid page up keys."
-#~ msgstr "次ページキーが無効です。"
-
-#~ msgid "Invalid page down keys."
-#~ msgstr "前ページキーが無効です。"
-
-#~ msgid "Invalid max key length."
-#~ msgstr "最大キー数が無効です。"
-
-#~ msgid "Failed to save table %s!"
-#~ msgstr "テーブル%sの保存に失敗!"
-
-#~ msgid "Failed to load any Config Modules!"
-#~ msgstr "設定モジュールの読込に失敗!"
-
-#~ msgid "_Current Config Module:"
-#~ msgstr "現在の設定モジュール(_C):"
-
-#~ msgid "<Not found>"
-#~ msgstr "<見つかりません>"
-
-#~ msgid "Current Config Module has been changed to %s."
-#~ msgstr "現在の設定モジュールを%sに変更しました。"
-
-#~ msgid "Start the SCIM Setup Utility."
-#~ msgstr "SCIMセットアップユーティリティを開く"
-
-#~ msgid "Setup ..."
-#~ msgstr "設定..."
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "選択"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "オプションはありません。"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "キーボード<200b>設定"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "英文の自動大文字化"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "自動<200b>ピリオド"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "ソフトウェアキーボード"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "キーボードを選択"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "ハードウェアキーボード"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "キーボード"
+++ /dev/null
-# translation of ko.
-# Copyright (C) 2004 THE ko'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the ko package.
-#
-# Kitae <bluetux@gmail.com>, 2005.
-# Choe Hwanjin <choe.hwanjin@gmail.com>, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: SCIM\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2005-07-08 18:16+0900\n"
-"Last-Translator: Choe Hwanjin <choe.hwanjin@gmail.com>\n"
-"Language-Team: Korean <en@li.org>\n"
-"Language: ko\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-msgid "Selection"
-msgstr "키보드 선택"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-msgid "No option"
-msgstr "옵션없음"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-msgid "Options"
-msgstr "옵션"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr "자동 대문자"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-msgid "Software keyboard"
-msgstr "소프트웨어 키보드"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-msgid "Keyboard selection"
-msgstr "키보드 선택"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-msgid "Keyboard option"
-msgstr "키보드 옵션"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-msgid "Hardware keyboard"
-msgstr "하드웨어 키보드"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-msgid "Keyboard"
-msgstr "키보드"
-
--- /dev/null
+# translation of ko.
+# Copyright (C) 2004 THE ko'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the ko package.
+#
+# Kitae <bluetux@gmail.com>, 2005.
+# Choe Hwanjin <choe.hwanjin@gmail.com>, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: SCIM\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\n"
+"PO-Revision-Date: 2005-07-08 18:16+0900\n"
+"Last-Translator: Choe Hwanjin <choe.hwanjin@gmail.com>\n"
+"Language-Team: Korean <en@li.org>\n"
+"Language: ko\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "선택"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "옵션 없음"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "키보드 설정"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "자동 대문자 입력"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "자동 마침표"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "소프트웨어 키보드"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "키보드 선택"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "하드웨어 키보드"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "키보드"
+++ /dev/null
-# translation of nl.po to Nederlands
-# This file is distributed under the same license as the scim package.
-# Copyright (C) 2004 THE scim'S COPYRIGHT HOLDER.
-#
-#
-# Ronald Stroethoff <stroet43@zonnet.nl>, 2007.
-msgid ""
-msgstr ""
-"Project-Id-Version: nl\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2007-03-17 18:54+0100\n"
-"Last-Translator: Ronald Stroethoff <stroet43@zonnet.nl>\n"
-"Language-Team: Nederlands\n"
-"Language: \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: KBabel 1.11.4\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-#, fuzzy
-msgid "Selection"
-msgstr "Toetsen selectie"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-#, fuzzy
-msgid "No option"
-msgstr "Opties"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-#, fuzzy
-msgid "Options"
-msgstr "Opties"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-#, fuzzy
-msgid "Software keyboard"
-msgstr "Nederlands/toetsenbord"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-#, fuzzy
-msgid "Keyboard selection"
-msgstr "Toetsen selectie"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-#, fuzzy
-msgid "Keyboard option"
-msgstr "Toetsen selectie"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-#, fuzzy
-msgid "Hardware keyboard"
-msgstr "Nederlands/toetsenbord"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-#, fuzzy
-msgid "Keyboard"
-msgstr "Nederlands/toetsenbord"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Duits"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Nederlands/toetsenbord"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Engels (USA)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amhaars"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabisch"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabisch (Libanees)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamitisch"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbeidzjaans"
-
-#~ msgid "Belarusian"
-#~ msgstr "Witrussisch"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgaars"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengaals"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengaals (India)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetaans"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosnisch"
-
-#~ msgid "Catalan"
-#~ msgstr "Catalaans"
-
-#~ msgid "Czech"
-#~ msgstr "Tschechisch"
-
-#~ msgid "Welsh"
-#~ msgstr "Welsh"
-
-#~ msgid "Danish"
-#~ msgstr "Deens"
-
-#~ msgid "German"
-#~ msgstr "Duits"
-
-#~ msgid "Divehi"
-#~ msgstr "Divehi"
-
-#~ msgid "Greek"
-#~ msgstr "Grieks"
-
-#~ msgid "English"
-#~ msgstr "Engels"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Engels (Australie)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Engels (Canada)"
-
-#~ msgid "English (British)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Engels (Ierland)"
-
-#~ msgid "English (American)"
-#~ msgstr "Engels (USA)"
-
-#~ msgid "Spanish"
-#~ msgstr "Spaans"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Spaans (Mexico)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estlands"
-
-#~ msgid "Basque"
-#~ msgstr "Baskisch"
-
-#~ msgid "Persian"
-#~ msgstr "Perzisch"
-
-#~ msgid "Finnish"
-#~ msgstr "Fins"
-
-#~ msgid "French"
-#~ msgstr "Frans"
-
-#~ msgid "Irish"
-#~ msgstr "Iers"
-
-#~ msgid "Galician"
-#~ msgstr "Galicisch"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hebreeuws"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "Kroatisch"
-
-#~ msgid "Hungarian"
-#~ msgstr "Hongaars"
-
-#~ msgid "Armenian"
-#~ msgstr "Armeens"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonesisch"
-
-#~ msgid "Icelandic"
-#~ msgstr "IJslands"
-
-#~ msgid "Italian"
-#~ msgstr "Italiaans"
-
-#~ msgid "Japanese"
-#~ msgstr "Japans"
-
-#~ msgid "Georgian"
-#~ msgstr "Georgisch"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazachs"
-
-#~ msgid "Cambodian"
-#~ msgstr "Cambojaans"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannada"
-
-#~ msgid "Korean"
-#~ msgstr "Koreaans"
-
-#~ msgid "Laothian"
-#~ msgstr "Laothian"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Litouws"
-
-#~ msgid "Latvian"
-#~ msgstr "Lets"
-
-#~ msgid "Macedonian"
-#~ msgstr "Macedonisch"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malayalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongools"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Maleis"
-
-#~ msgid "Burmese"
-#~ msgstr "Birmaans"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepalees"
-
-#~ msgid "Dutch"
-#~ msgstr "Nederlands"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Noors (Nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Noors (Bokmal)"
-
-#~ msgid "Oriya"
-#~ msgstr "Oriya"
-
-#~ msgid "Punjabi"
-#~ msgstr "Punjabi"
-
-#~ msgid "Polish"
-#~ msgstr "Pools"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugees"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugees (Brazilie)"
-
-#~ msgid "Romanian"
-#~ msgstr "Roemeens"
-
-#~ msgid "Russian"
-#~ msgstr "Russisch"
-
-#~ msgid "Sinhala"
-#~ msgstr "Singalees"
-
-#~ msgid "Slovak"
-#~ msgstr "Slowaaks"
-
-#~ msgid "Slovenian"
-#~ msgstr "Sloveens"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanees"
-
-#~ msgid "Serbian"
-#~ msgstr "Servisch"
-
-#~ msgid "Swedish"
-#~ msgstr "Zweeds"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Zweeds (Finland)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamil"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugu"
-
-#~ msgid "Thai"
-#~ msgstr "Thais"
-
-#~ msgid "Turkish"
-#~ msgstr "Turks"
-
-#~ msgid "Uighur"
-#~ msgstr "Oeigoers"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Oekraïens"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "Oezbeeks"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamees"
-
-#~ msgid "Walloon"
-#~ msgstr "Waals"
-
-#~ msgid "Yiddish"
-#~ msgstr "Jiddisch"
-
-#~ msgid "Chinese"
-#~ msgstr "Chinees"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Chinees (versimpeld)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Chinees (traditioneell)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belgisch"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Engels (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Engels (Canada)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Engels (Ierland)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Engels (USA)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Engels (Canada)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Engels (Canada)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Frans (Canada)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Frans (Canada)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Frans (Canada)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Duits (Schwitsers)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Frans (Canada)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Duits (met deadkeys)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Duits (Schwitsers)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Engels (Australie)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Duits (Schwitsers)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Duits (Schwitsers)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugees (Brazilie)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugees (Brazilie)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Spaans (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malayalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Noors"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Servisch"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Chinees (traditioneell)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Chinees (traditioneell)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Chinees (traditioneell)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Chinees"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Chinees (versimpeld)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#~ msgid "Other"
-#~ msgstr "Overige"
-
-#~ msgid "Unknown"
-#~ msgstr "Onbekend"
-
-#~ msgid "English (US)"
-#~ msgstr "Engels (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belgisch"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Tsjechisch (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Frans (Schwitsers) "
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Duits (met deadkeys)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugees (Brazilie, US, accent)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slowaaks (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Spaans (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Engels (UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Omzetten versimpeld/traditioneel Chinees"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Versimpeld naar traditioneel Chinees omzetten en omgekeert."
-
-#, fuzzy
-#~ msgid "SC-TC"
-#~ msgstr "VC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Omzetting versimpeld naar traditioneel Chinees"
-
-#~ msgid "No Conversion"
-#~ msgstr "Geen omzetting"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Versimpeld naar traditioneel"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Versimpeld Chinees naar triditioneel Chinees omzetten"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Traditioneel naar versimpeld"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Traditioneel Chinees naar versimpeld Chinees omzetten"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "VC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->VC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Smart Common Invoer-methode Plattform "
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(c) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Aanzetten"
-
-#~ msgid "Name"
-#~ msgstr "Naam"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Cursor positie"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "De huidige positie van de cursor (in karakters)."
-
-#~ msgid "Maximum length"
-#~ msgstr "Maximale lengte"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr "Maximale aantal getoonde karakters. »0« betekend onbegrenst."
-
-#~ msgid "Maximum width"
-#~ msgstr "Maximale Breedte"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Maximale Breedte van de getoonde letterreeks."
-
-#~ msgid "Has Frame"
-#~ msgstr "Met kader"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "\"Nee\" verwijdert de buitenste rand van de getoonde letter-reeks."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Cursor tonen"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "Met \"JA\" wordt een knipperende cursor getoond."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Cursor automatisch verplaatsen"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "Bij »ja«, wordt de cursor automatisch verschoven."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Drukknop voor het doorgeven"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr ""
-#~ "Bij »ja«, wordt de gekozen uitdrukking met elke druk op een toets aan het "
-#~ "programma doorgegeven."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Venster-formaat automatisch aan teken-lengte aanpassen"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "Bei »ja« is de automatische grootte-aanpassing ingeschakeld."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "Bij »ja«, wordt de cursor automatisch verschoven."
-
-#~ msgid "Width in chars"
-#~ msgstr "Breedte in tekens"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Aantal tekens waarvoor ruimte gelaten wordt."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Scroll-instelling"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr ""
-#~ "Aantal pixels, waarmee de tekenreeks weergave buiten het scherm naar "
-#~ "links verschoven wordt"
-
-#~ msgid "Text"
-#~ msgstr "Tekst"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Inhoud van de tekenreeks weergave"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Gekozen toetsen:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Toetsen Code:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Wizigings-toetsen:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "_Alt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Vrijgeven"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "Su_per"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Geef eerst een toets-code op."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Druk eerst een toets in (of een toetscombinatie).\n"
-#~ " Dit dialoog sluit zich, wanneer de toets wordt losgelaten."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Een toets pakken."
-
-#~ msgid "Key Selection"
-#~ msgstr "Toetsen selectie"
-
-#~ msgid "Orientation"
-#~ msgstr "Oriëntatie"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "De richting van de werkbalk."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Tekst"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amhaars"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Altijd"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Opties"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Nederlands/toetsenbord"
-
-#~ msgid "English/European"
-#~ msgstr "Nederlands/Europeesch"
-
-#, fuzzy
-#~ msgid "RAW CODE"
-#~ msgstr "Unicode RAW CODE"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(c) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Sneltoetsen:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " Omschakelen tussen Multibyte-Codering en Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " Invoer-methode terug zetten.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr ""
-#~ "De status van de huidige invoer-methode. Klik op deze om het te "
-#~ "veranderen."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Algemene instellingen"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Algemene instellingen die door alle FrontEnd-modules gebruikt worden, "
-#~ "inclusief de X11 FrontEnd, GKT IMModule, QT IMModule, enz."
-
-#, fuzzy
-#~ msgid "_Trigger:"
-#~ msgstr "_Trigger:"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Trigger-toetsen kiezen"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Toets-combinaties, waarmee de SCIM-invoer-methode wordt IN- en UIT-"
-#~ "geschakeld. Om dit te veranderen, klik op de rechterknop."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Inschakelen:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Kies de inschakel toets."
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Toetscombinatie om de invoer-methode SCIM inteschakelen.Klik op de "
-#~ "rechterknop om te veranderen."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "U_itschakelen"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "UIT-schakeltoetsen uitkiezen"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Toetscombinatie waarmee de invoer-methode SCIM uitgeschakeld wordt. Klik "
-#~ "op de rechterknop om te veranderen."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Volgende invoer-methode:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr ""
-#~ "Kies een toetscombinatie om naar de volgende invoer-methode te gaan."
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Met deze toetscombinatie, gaat men naar de volgende invoer-methode. klik "
-#~ "op de rechterknop om te veranderen."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Vorige invoer-methode:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Kies de toetscombinatie om naar de vorige invoer-methode te gaan"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Met deze toetscombinatie gaat men naar de vorige invoer-methode. Klik op "
-#~ "de rechterknop om te veranderen."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Toon het keuze-menu voor invoer-methoden:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Kies de toetsen voor het tonen van het invoer-methode kies-menu"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Toetscombinatie's voor het tonen van het invoer-methode kies-menu. Klik "
-#~ "rechts voor het instellen."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Toetsenbord layout:"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Kies hier de huidige gebruikte toetsenbord-layout, zodat invoer-methoden, "
-#~ "die van het toetsenbord-layout afhankelijk zijn, goed werken."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Invoer direkt in programma-venster tonen."
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Wanneer voor deze optie gekozen is, wordt de invoer direkt in het "
-#~ "programma-venster getoond, in plaats van een extra invoer-venster."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "Dezelfde invoer-methode voor alle programma's gebruiken."
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Wanneer dit gekozen is, wordt een en dezelfde invoer-methode voor alle "
-#~ "programma's gebruikt. Wanneer dit niet gekozen is, kan voor elke "
-#~ "programma een andere invoer-methode gekozen worden."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Sneltoetsen"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Hier kunnen de geïnstalleerde invoer-methoden IN- en UIT-geschakeld "
-#~ "worden en hiervoor sneltoetsen gekozen worden."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Geïnstalleerde invoer-methoden:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "_Sneltoetsen instellen"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Sneltoetsen voor de gekozen invoer-methode instellen."
-
-#~ msgid "Select _Filters"
-#~ msgstr "_Filter selecteren"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Kies de filter, die aan deze invoer-methode verbonden moet worden."
-
-#~ msgid "_Expand"
-#~ msgstr "Uitbreiden"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Alle taalgroepen uitbreiden."
-
-#~ msgid "_Collapse"
-#~ msgstr "Samenvouwen"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Alle taalgroepen samenvouwen."
-
-#~ msgid "E_nable All"
-#~ msgstr "Alles _inschakelen"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Alle invoer-methoden inschakelen."
-
-#~ msgid "_Disable All"
-#~ msgstr "Alles _uitschakelen"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Alle invoer-methoden uitschakelen."
-
-#~ msgid "Filters"
-#~ msgstr "Filter"
-
-#~ msgid "Languages"
-#~ msgstr "Talen"
-
-#~ msgid "Description"
-#~ msgstr "Omschrijving"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Sneltoetsen voor %s instellen"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Filter voor %s selecteren"
-
-#~ msgid "Move _Up"
-#~ msgstr "Naar _boven"
-
-#~ msgid "Move _Down"
-#~ msgstr "Naar _onderen"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr ""
-#~ "Een hulp-programma met panelen, gebaseert op de GTK+-2.x-bibliotheek."
-
-#~ msgid "On demand"
-#~ msgstr "Op verzoek"
-
-#~ msgid "Never"
-#~ msgstr "Nooit"
-
-#~ msgid "ToolBar"
-#~ msgstr "Werkbalk"
-
-#~ msgid "_Show:"
-#~ msgstr "_Toon:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Auto s_nap"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Icoon voor invoer-methode tonen"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "_Namen van de invoer-methoden tonen"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Ontzichtbaar maken na (sec):"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Icoon altijd tonen"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "»_Menü« -icoon tonen"
-
-#~ msgid "Show _help icon"
-#~ msgstr "»_Help«-icoon tonen"
-
-#~ msgid "Show _property label"
-#~ msgstr "Eigenschappen-label tonen"
-
-#~ msgid "Input window"
-#~ msgstr "Invoer-venster"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Interne opzoek-tabel"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Vertikale opzoek-tabel"
-
-#~ msgid "Misc"
-#~ msgstr "Diversen"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Toon tra_y icoon"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Venster op plaats vastzetten"
-
-#~ msgid "_Font:"
-#~ msgstr "_Lettertype:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Wanneer \"Altijd\" is gekozen, wordt de werkbalk altijd op het scherm "
-#~ "getoond. Wanneer \"op verzoek\" is gekozen, wordt de werkbalk alleen "
-#~ "getoond wanneer SCIM aktief is. Wanneer \"Nooit\" is gekozen, wordt de "
-#~ "werkbalk nooit getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt de werkbalk aan de rand van het "
-#~ "beeldscherm vastgeklikt"
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "De werkbalk wordt ontzichtbaar na afloop van de ingestelde tijd. Deze "
-#~ "optie is alleen beschikbaar wanneer \"altijd tonen\" is gekozen.Zet de "
-#~ "tijd op nul (0) om dit gedrag uit te schakelen."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt het icoon van de huidige invoer-"
-#~ "methode in de werkbalk getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt de naam van de huidige invoer-"
-#~ "methode in de werkbalk getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt het sticky-icoon op de werkbalk "
-#~ "getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt het menu in de werkbalk getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt het hulp-icoon in de werkbalk "
-#~ "getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt naam van de invoer-methode getoond "
-#~ "in de werkbalk."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt de opzoek-tabel in het invoer-"
-#~ "venster getoond"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen wordt de opzoek-tabel vertikaal getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, zal het icoon van de werkbalk in het "
-#~ "systeemvak getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, worden de werkbalk, het invoer-venster en "
-#~ "de opzoektabel op deze plaats vastgezet."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Dit gekozen lettertype wordt in het invoer-venster en in het opzoek-tabel "
-#~ "gebruikt."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Interface-lettertype kiezen"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "FrontEnd"
-
-#~ msgid "IMEngine"
-#~ msgstr "Invoer-methode"
-
-#~ msgid "Panel"
-#~ msgstr "Paneel"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Instellingen voor de SCIM-invoer-methode"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Smart Common Input Method-Plattform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI instellingen</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Instellen van de %s-Module.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Wilt U de setup van SCIM werkelijk verlaten?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Niet alle instellingen kunnen geladen worden. SCIM moet opnieuw gestart "
-#~ "worden om alle nieuwe instellingen te laden."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Instellen van SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "Geïntegreerde setup dat op de GTK-widget bibiotheek is gebaseerd."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Setup voor de Smart Common Invoer-methode-Plattform"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIM handboek"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Invoer-methode"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Invoer-venster en de werkbalk vastzetten/verschuifbaar maken."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Toepasselijke help voor SCIM en de huidige invoer-methode tonen."
-
-#~ msgid "Show command menu."
-#~ msgstr "Commandoregel tonen."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(c) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Instellingen opnieuw laden"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Venster vastzetten"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Werkbalk ontzichtbaar maken"
-
-#~ msgid "Help ..."
-#~ msgstr "Help ..."
-
-#~ msgid "Exit"
-#~ msgstr "Afsluiten"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "Selectie"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "Geen opties"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "Toetsenbordinstellingen"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "Automatisch hoofdletters"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "Automatisch punt"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "Softwaretoetsenbord"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "Toetsenbord selecteren"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "Hardwaretoetsenbord"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "Toetsenbord"
+++ /dev/null
-# translation of pa.po to Punjabi
-# translation of scim.NEW.po to Punjabi
-# translation of scim.po to Punjabi
-# This file is distributed under the same license as the PACKAGE package.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
-# Amanpreet Singh Alam <amanpreetalam@yahoo.com>, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: pa\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2005-12-13 08:28+0530\n"
-"Last-Translator: Amanpreet Singh Alam <amanpreetalam@yahoo.com>\n"
-"Language-Team: Punjabi <fedora-trans-pa@redhat.com>\n"
-"Language: pa\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-#, fuzzy
-msgid "Selection"
-msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-#, fuzzy
-msgid "No option"
-msgstr "ਚੋਣ"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-#, fuzzy
-msgid "Options"
-msgstr "ਚੋਣ"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-#, fuzzy
-msgid "Software keyboard"
-msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-#, fuzzy
-msgid "Keyboard selection"
-msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-#, fuzzy
-msgid "Keyboard option"
-msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-#, fuzzy
-msgid "Hardware keyboard"
-msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-#, fuzzy
-msgid "Keyboard"
-msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "ਜਰਮਨ"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#~ msgid "Amharic"
-#~ msgstr "ਅਮਹੀਕਿਨ"
-
-#~ msgid "Arabic"
-#~ msgstr "ਅਰਬੀ"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#~ msgid "Assamese"
-#~ msgstr "ਆਸਾਮੀ"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "ਅਜ਼ਰਬਾਈਜਾਨ"
-
-#~ msgid "Belarusian"
-#~ msgstr "ਬੇਲਾਰੂਸੀ"
-
-#~ msgid "Bulgarian"
-#~ msgstr "ਬੁਲਗਾਰੀਅਨ"
-
-#~ msgid "Bengali"
-#~ msgstr "ਬੰਗਾਲੀ"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "ਬੰਗਾਲੀ (ਭਾਰਤ)"
-
-#~ msgid "Tibetan"
-#~ msgstr "ਤਿੱਬਤੀ"
-
-#~ msgid "Bosnian"
-#~ msgstr "ਬੋਸਨੀਅਨ"
-
-#~ msgid "Catalan"
-#~ msgstr "ਕੇਟੇਲਨ"
-
-#~ msgid "Czech"
-#~ msgstr "ਚੈੱਕ"
-
-#~ msgid "Welsh"
-#~ msgstr "ਵਾਲਿਸ਼"
-
-#~ msgid "Danish"
-#~ msgstr "ਡੈਨਿਸ਼"
-
-#~ msgid "German"
-#~ msgstr "ਜਰਮਨ"
-
-#~ msgid "Greek"
-#~ msgstr "ਗਰੀਕ"
-
-#~ msgid "English"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ"
-
-#~ msgid "English (Australian)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਸਟਰੇਲੀਅਨ)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#~ msgid "English (British)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਆਇਰਲੈਂਡ)"
-
-#~ msgid "English (American)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#~ msgid "Spanish"
-#~ msgstr "ਸਪੇਨੀ"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#~ msgid "Estonian"
-#~ msgstr "ਈਸਟੋਨੀਅਨ"
-
-#~ msgid "Basque"
-#~ msgstr "ਬਸਕਿਉ"
-
-#~ msgid "Persian"
-#~ msgstr "ਪਰਸੀਅਨ"
-
-#~ msgid "Finnish"
-#~ msgstr "ਫੈਨਿਸ਼"
-
-#~ msgid "French"
-#~ msgstr "ਫਰੈਂਚ"
-
-#~ msgid "Irish"
-#~ msgstr "ਆਇਰਸ਼"
-
-#~ msgid "Galician"
-#~ msgstr "ਗਾਲੇਸ਼ੀਅਨ"
-
-#~ msgid "Gujarati"
-#~ msgstr "ਗੁਜਰਾਤੀ"
-
-#~ msgid "Hebrew"
-#~ msgstr "ਹੈਬਰਿਊ"
-
-#~ msgid "Hindi"
-#~ msgstr "ਹਿੰਦੀ"
-
-#~ msgid "Croatian"
-#~ msgstr "ਕਰੋਆਟੀਅਨ"
-
-#~ msgid "Hungarian"
-#~ msgstr "ਹੰਗਰੀਅਨ"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "ਰੋਮਾਨੀਆਈ"
-
-#~ msgid "Interlingua"
-#~ msgstr "ਇੰਟਰਲਿੰਗੂਆ"
-
-#~ msgid "Indonesian"
-#~ msgstr "ਇੰਡੋਨੇਸ਼ੀਆਈ"
-
-#~ msgid "Icelandic"
-#~ msgstr "ਆਈਸਲੈਂਡੀ"
-
-#~ msgid "Italian"
-#~ msgstr "ਇਤਾਲਵੀ"
-
-#~ msgid "Japanese"
-#~ msgstr "ਜਾਪਾਨੀ"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "ਜਰਮਨ"
-
-#~ msgid "Kazakh"
-#~ msgstr "ਕਾਜ਼ਕ"
-
-#~ msgid "Cambodian"
-#~ msgstr "ਕੰਬੋਡੀਅਨ"
-
-#~ msgid "Kannada"
-#~ msgstr "ਕੰਨੜ"
-
-#~ msgid "Korean"
-#~ msgstr "ਕੋਰੀਅਨ"
-
-#~ msgid "Laothian"
-#~ msgstr "ਲਿਊਥੀਅਨ"
-
-#~ msgid "Lithuanian"
-#~ msgstr "ਲੀਥੂਵਨੀਅਨ"
-
-#~ msgid "Latvian"
-#~ msgstr "ਲਾਟਵੀਅਨ"
-
-#~ msgid "Macedonian"
-#~ msgstr "ਮੈਕਡੋਨੀਅਨ"
-
-#~ msgid "Malayalam"
-#~ msgstr "ਮਾਲਿਆਲਮ"
-
-#~ msgid "Mongolian"
-#~ msgstr "ਮੰਗੋਲੀਅਨ"
-
-#~ msgid "Marathi"
-#~ msgstr "ਮਰਾਠੀ"
-
-#~ msgid "Malay"
-#~ msgstr "ਮਲਾਇਆ"
-
-#~ msgid "Nepali"
-#~ msgstr "ਨੇਪਾਲੀ"
-
-#~ msgid "Dutch"
-#~ msgstr "ਡੱਚ"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "ਨਾਰਵੇਗੀਅਨ (ਨਿਉਰਸਕ)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "ਨਾਰਵੇਗੀਅਨ (ਬੋਕਮਾਲ)"
-
-#~ msgid "Oriya"
-#~ msgstr "ਓੜੀਆ"
-
-#~ msgid "Punjabi"
-#~ msgstr "ਪੰਜਾਬੀ"
-
-#~ msgid "Polish"
-#~ msgstr "ਪੋਲਿਸ਼"
-
-#~ msgid "Portuguese"
-#~ msgstr "ਪੁਰਤਗਾਲੀ"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ)"
-
-#~ msgid "Romanian"
-#~ msgstr "ਰੋਮਾਨੀਆਈ"
-
-#~ msgid "Russian"
-#~ msgstr "ਰੂਸੀ"
-
-#~ msgid "Slovak"
-#~ msgstr "ਸਲੋਵਾਕ"
-
-#~ msgid "Slovenian"
-#~ msgstr "ਸਲੋਵੀਅਨ"
-
-#~ msgid "Albanian"
-#~ msgstr "ਅਲਬਾਈਅਨ"
-
-#~ msgid "Serbian"
-#~ msgstr "ਸਰਬੀਅਨ"
-
-#~ msgid "Swedish"
-#~ msgstr "ਸਵੀਡਸ਼"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "ਸਵਡਿਸ਼ (ਫਿਨਲੈਂਡ)"
-
-#~ msgid "Tamil"
-#~ msgstr "ਤਾਮਿਲ"
-
-#~ msgid "Telugu"
-#~ msgstr "ਤੇਲਗੂ"
-
-#~ msgid "Thai"
-#~ msgstr "ਥਾਈ"
-
-#~ msgid "Turkish"
-#~ msgstr "ਤੁਰਕੀ"
-
-#~ msgid "Uighur"
-#~ msgstr "ਊਘਰ"
-
-#~ msgid "Ukrainian"
-#~ msgstr "ਯੂਕਰੇਨੀ"
-
-#~ msgid "Urdu"
-#~ msgstr "ਊਰਦੂ"
-
-#~ msgid "Uzbek"
-#~ msgstr "ਉਜੇਬਕ"
-
-#~ msgid "Vietnamese"
-#~ msgstr "ਵੀਅਤਨਾਮੀ"
-
-#~ msgid "Walloon"
-#~ msgstr "ਵਾਲਿਸ਼"
-
-#~ msgid "Yiddish"
-#~ msgstr "ਯਿਡਿੱਸ਼"
-
-#~ msgid "Chinese"
-#~ msgstr "ਚੀਨੀ"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "ਚੀਨੀ (ਸਧਾਰਨ)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "ਬੈਲਜੀਅਨ"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਆਇਰਲੈਂਡ)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "ਜਰਮਨ (ਡਿੱਡ ਸਵਿੱਚਾਂ ਨਾਲ)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਸਟਰੇਲੀਅਨ)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "ਸਪੇਨੀ (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "ਮਾਲਿਆਲਮ"
-
-#~ msgid "Norwegian"
-#~ msgstr "ਨਾਰਵੇਗੀਅਨ"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "ਸਰਬੀਅਨ"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "ਚੀਨੀ"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "ਚੀਨੀ (ਸਧਾਰਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#~ msgid "Other"
-#~ msgstr "ਹੋਰ"
-
-#~ msgid "Unknown"
-#~ msgstr "ਅਣਜਾਣ"
-
-#~ msgid "English (US)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#~ msgid "Belgian"
-#~ msgstr "ਬੈਲਜੀਅਨ"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "ਚੈੱਕ(ਕਿਉਵਰਟੀ)"
-
-#~ msgid "Dvorak"
-#~ msgstr "ਡਵੋਰਿਕ"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "ਫਰੈਂਚ (ਸਵਟਿਜ਼ਰਲੈਂਡ)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "ਜਰਮਨ (ਡਿੱਡ ਸਵਿੱਚਾਂ ਨਾਲ)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ ਅਮਰੀਕੀ ਢੰਗ)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "ਸਲੋਵਾਕ(ਕਿਉਵਰਟੀ)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "ਸਪੇਨੀ (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#~ msgid "English (UK)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "ਸਧਾਰਨ-ਮੂਲ ਚੀਨੀ ਤਬਦੀਲੀ"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "ਸਧਾਰਨ ਚੀਨੀ ਅਤੇ ਮੂਲ ਚੀਨੀ ਵਿੱਚ ਤਬਦੀਲੀ"
-
-#~ msgid "SC-TC"
-#~ msgstr "SC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "ਸਧਾਰਨ-ਮੂਲ ਚੀਨੀ ਤਬਦੀਲੀ"
-
-#~ msgid "No Conversion"
-#~ msgstr "ਕੋਈ ਤਬਦੀਲੀ ਨਹੀਂ"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "ਸਧਾਰਨ ਤੋਂ ਮੂਲ"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "ਸਧਾਰਨ ਚੀਨੀ ਤੋਂ ਮੂਲ ਚੀਨੀ ਤਬਦੀਲ"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "ਮੂਲ ਤੋਂ ਸਧਾਰਨ"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "ਮੂਲ ਚੀਨੀ ਤੋਂ ਸਧਾਰਨ ਚੀਨੀ ਅਨੁਵਾਦ"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "SC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->SC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਥਡ ਪਲੇਟਫਾਰਮ"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "ਯੋਗ"
-
-#~ msgid "Name"
-#~ msgstr "ਨਾਂ"
-
-#~ msgid "Cursor Position"
-#~ msgstr "ਕਰਸਰ ਸਥਿਤੀ"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "ਕਰਸਰ ਦੀ ਮੌਜੂਦਾ ਸਥਿਤੀ ਅੱਖਰਾਂ ਵਿੱਚ।"
-
-#~ msgid "Maximum length"
-#~ msgstr "ਵੱਧ ਤੋ ਵੱਧ ਲੰਬਾਈ"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "ਇਸ ਸਤਰ ਝਲਕ ਲਈ ਵੱਧ ਤੋਂ ਵੱਧ ਅੱਖਰਾਂ ਦੀ ਗਿਣਤੀ। ਜੇਕਰ ਵੱਧ ਤੋਂ ਵੱਧ ਨਾ ਹੋਇਆ ਤਾਂ ਸਿਫ਼ਰ ਹੋਵੇਗਾ।"
-
-#~ msgid "Maximum width"
-#~ msgstr "ਵੱਧ ਤੋਂ ਵੱਧ ਚੌੜਾਈ"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "ਇਸ ਸਤਰ ਝਲਕ ਦੀ ਵੱਧ ਤੋਂ ਵੱਧ ਚੌੜਾਈ ਹੈ।"
-
-#~ msgid "Has Frame"
-#~ msgstr "ਫਰੇਮ ਹੈ"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FALSE ਨਾਲ ਸਤਰ ਝਲਕ ਤੋਂ ਬਾਹਰੀ bevel ਹਟਾਏ ਜਾਏਗਾ।"
-
-#~ msgid "Draw cursor"
-#~ msgstr "ਕਰਸਰ ਬਣਾਓ"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "TRUE ਝਪਕਦੀ ਕਰਸਰ ਬਣਾਏਗਾ।"
-
-#~ msgid "Auto move cursor"
-#~ msgstr "ਸਵੈ ਏਧਰ ਓਧਰ ਕਰਸਰ"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "TRUE ਮਾਊਸ ਦਬਾਉਣ ਨਾਲ ਕਰਸਰ ਨੂੰ ਸਵੈ-ਚਾਲਤ ਏਧਰ ਓਧਰ ਕੀਤਾ ਜਾਵੇਗਾ।"
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "ਅੱਗੇ ਬਟਨ ਦਬਾਉਣ ਘਟਨਾ"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "TRUE ਉਪਭੋਗੀ ਪਰੋਗਰਾਮ ਲਈ ਅੱਗੇ ਬਟਨ ਦਬਾਉਣ ਘਟਨਾ ਹੈ।"
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "ਸਤਰ ਫਿੱਟ ਕਰਨ ਲਈ ਵਿਦਗਿਟ ਸਵੈ ਮੁੜ-ਅਕਾਰ"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "TRUE ਸਵੈ ਮੁੜ-ਅਕਾਰ ਚਾਲੂ ਹੈ।"
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "TRUE ਮਾਊਸ ਦਬਾਉਣ ਨਾਲ ਕਰਸਰ ਨੂੰ ਸਵੈ-ਚਾਲਤ ਏਧਰ ਓਧਰ ਕੀਤਾ ਜਾਵੇਗਾ।"
-
-#~ msgid "Width in chars"
-#~ msgstr "ਅੱਖਰਾਂ ਵਿੱਚ ਚੌਡ਼ਾਈ"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "ਸਤਰ ਝਲਕ ਵਿੱਚ ਖਾਲੀ ਥਾਂ ਛੱਡਣ ਲਈ ਅੱਖਰਾਂ ਦੀ ਗਿਣਤੀ ਹੈ।"
-
-#~ msgid "Scroll offset"
-#~ msgstr "ਸੰਤੁਲਨ ਸਕਰੋਲ"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "ਖੱਬੇ ਤੋਂ ਸਕਰੀਨ ਨੂੰ ਸਤਰ ਝਲਕ ਸਮੇਟਣ ਲਈ ਪਿਕਸਲਾਂ ਦੀ ਗਿਣਤੀ"
-
-#~ msgid "Text"
-#~ msgstr "ਪਾਠ"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "ਸਤਰ ਝਲਕ ਦਾ ਪਰਸੰਗ"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "ਚੁਣੀਆਂ ਸਵਿੱਚਾਂ(_K):"
-
-#~ msgid "Key Code:"
-#~ msgstr "ਸਵਿੱਚ ਕੋਡ:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "ਸੋਧਕ:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "ਜਾਰੀ(_R)"
-
-#~ msgid "_Meta"
-#~ msgstr "ਮੈਟਾ(_M)"
-
-#~ msgid "S_uper"
-#~ msgstr "ਸੁਪਰ(_u)"
-
-#~ msgid "_Hyper"
-#~ msgstr "ਹਾਈਪਰ(_H)"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "ਪਹਿਲਾਂ ਇੱਕ ਸਵਿੱਚ ਕੋਡ ਦਿਓ।"
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "ਇੱਕ ਸਵਿੱਚ (ਜਾਂ ਇੱਕ ਸਵਿੱਚ ਜੋੜ) ਦਬਾਉ।\n"
-#~ "ਇਹ ਵਾਰਤਾਲਾਪ ਇੱਕ ਸਵਿੱਚ ਦਬਾਉਣ ਨਾਲ ਬੰਦ ਹੋ ਜਾਵੇਗਾ।"
-
-#~ msgid "Grabbing a key."
-#~ msgstr "ਇੱਕ ਸਵਿੱਚ ਫੜੋ।"
-
-#~ msgid "Key Selection"
-#~ msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#~ msgid "Orientation"
-#~ msgstr "ਸਥਿਤੀ"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "ਟਰੇ ਦੀ ਸਥਿਤੀ ਹੈ।"
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "ਪਾਠ"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "ਅਮਹੀਕਿਨ"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "ਹਮੇਸ਼ਾ"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "ਚੋਣ"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#~ msgid "English/European"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਯੂਰਪ"
-
-#~ msgid "RAW CODE"
-#~ msgstr "ਕੱਚਾ ਕੋਡ"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "ਹਾਟ ਸਵਿੱਚਾਂ:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " ਬਹੁ-ਬਾਈਟ ਇੰਕੋਡਿੰਗ ਅਤੇ ਯੂਨੀਕਰੋਡ ਵਿੱਚ ਤਬਦੀਲ ਹੋਣ ਲਈ।\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " ਇੰਪੁੱਟ ਢੰਗ ਮੁੜ-ਸੈਟ ਕਰਨ ਲਈ।\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "ਮੌਜੂਦਾ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਸਥਿਤੀ ਹੈ। ਤਬਦੀਲ ਕਰਨ ਲਈ ਦਬਾਉ।"
-
-#~ msgid "Unicode"
-#~ msgstr "ਯੂਨੀਕੋਡ"
-
-#~ msgid "Global Setup"
-#~ msgstr "ਗਲੋਬਲ ਸੈਟਅੱਪ"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "ਸਭ ਮੁੱਖ ਮੈਡੀਊਲ ਰਾਹੀਂ ਵਰਤੇ ਜਾਦੇ ਗਲੋਬਲ ਚੋਣ ਸੈਟਅੱਪ, ਜਿਸ ਵਿੱਚ X11 ਮੁੱਖ ਭੂਮੀ, GTK IMModule, "
-#~ "QT IMModule ਆਦਿ"
-
-#~ msgid "_Trigger:"
-#~ msgstr "ਤਬਦੀਲ(_T):"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "ਤਬਦੀਲੀ ਸਵਿੱਚ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "SCIM ਇੰਪੁੱਟ ਢੰਗ ਨੂੰ ਚਾਲੂ/ਬੰਦ ਕਰਨ ਲਈ ਕੁੰਜੀ ਘਟਨਾ ਹੈ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "Turn _On:"
-#~ msgstr "ਚਾਲੂ ਕਰੋ(_O):"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "ਚਾਲੂ ਕਰਨ ਵਾਲੀਆਂ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "SCIM ਇੰਪੁੱਟ ਢੰਗ ਚਾਲੂ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "ਬੰਦ ਕਰੋ(_f):"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "ਬੰਦ ਕਰਨ ਵਾਲੀਆਂ ਕੁੰਜੀਆਂ"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "SCIM ਇੰਪੁੱਟ ਢੰਗ ਬੰਦ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "_Next input method:"
-#~ msgstr "ਅੱਗੇ ਇੰਪੁੱਟ ਢੰਗ(_N):"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "ਅੱਗੇ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਚੋਣ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "ਅੱਗੇ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਚੋਣ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "_Previous input method:"
-#~ msgstr "ਪਿੱਛੇ ਇੰਪੁੱਟ ਢੰਗ(_P):"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "ਪਿਛਲਾ ਇੰਪੁੱਟ ਢੰਗ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "ਪਿਛਲਾ ਇੰਪੁੱਟ ਢੰਗ ਚਾਲੂ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਮੇਨੂ ਵੇਖਾਓ(_m):"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਮੇਨੂ ਵੇਖਾਉਣ ਲਈ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਮੇਨੂ ਵੇਖਾਉਣ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "ਕੀ-ਬੋਰਡ ਖਾਕਾ(_K):"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "ਤੁਹਾਨੂੰ ਇੱਥੇ ਆਪਣਾ ਮੌਜੂਦਾ ਕੀ-ਬੋਰਡ ਖਾਕੇ ਦੀ ਚੋਣ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ, ਤਾਂ ਕਿ ਇੰਪੁੱਟ ਢੰਗ, ਜੋ ਕਿ ਕੀ-"
-#~ "ਬੋਰਡ ਖਾਕੇ ਦਾ ਖਿਆਲ ਰੱਖਦਾ ਹੈ, ਠੀਕ ਤਰਾਂ ਕੰਮ ਕਰ ਸਕੇ।"
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "ਕਲਾਂਇਟ ਝਰੋਖੇ 'ਚ ਪਹਿਲਾਂ-ਸੋਧ ਸਤਰ(_E)"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਕਲਾਂਇਟ ਇੰਪੁੱਟ ਝਰੋਖੇ ਵਿੱਚ ਪਹਿਲਾਂ-ਸੋਧ ਸਤਰ ਸਿੱਧੀ ਵਿਖਾਈ ਜਾਵੇਗਾ, ਨਾ "
-#~ "ਕਿ ਇੱਕ ਆਜ਼ਾਦ ਤਰਦੇ ਝਰੋਖਾ।"
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "ਸਭ ਕਾਰਜਾਂ 'ਚ ਇੱਕੋ ਹੀ ਇੰਪੁੱਟ ਢੰਗ ਵਰਤੋਂ(_S)"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸਿਰਫ਼ ਇੱਕ ਹੀ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਵੇਗੀ, ਜੋ ਕਿ ਇੱਕ ਸਮੇਂ ਸਭ "
-#~ "ਕਾਰਜਾਂ ਲਈ ਵਰਤਿਆ ਜਾਵੇਗਾ। ਨਹੀਂ ਤਾਂ ਹਰ ਕਾਰਜ ਲਈ ਵੱਖਰਾ ਢੰਗ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਸੀ।"
-
-#~ msgid "Hotkeys"
-#~ msgstr "ਹਾਟ-ਸਵਿੱਚ"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr "ਤੁਸੀਂ ਇੱਥੇ ਇੰਪੁੱਟ ਢੰਗ ਯੋਗ/ਅਯੋਗ ਕਰ ਅਤੇ ਇੰਪੁੱਟ ਢੰਗ ਲਈ ਹਾਟ-ਸਵਿੱਚਾਂ ਸੈਟ ਕਰ ਸਕਦੇ ਹੋ।"
-
-#~ msgid "The installed input method services:"
-#~ msgstr "ਇੰਸਟਾਲ ਹੋਏ ਇੰਪੁੱਟ ਢੰਗ ਸੇਵਾਵਾਂ:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "ਹਾਟ-ਸਵਿੱਚ ਸੋਧ(_H)"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "ਚੁਣੇ ਇੰਪੁੱਟ ਢੰਗ ਨਾਲ ਸਬੰਧਤ ਹਾਟ-ਕੁੰਜੀਆਂ ਦੀ ਸੋਧ ਕਰੋ।"
-
-#~ msgid "Select _Filters"
-#~ msgstr "ਫਿਲਟਰ ਚੁਣੋ(_F)"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "ਫਿਲਟਰ ਦੀ ਚੋਣ ਕਰੋ, ਜੋ ਕਿ ਇਸ ਇੰਪੁੱਟ ਢੰਗ ਨਾਲ ਜੋੜਿਆ ਜਾਵੇਗਾ।"
-
-#~ msgid "_Expand"
-#~ msgstr "ਫੈਲਾਓ(_E)"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "ਸਭ ਭਾਸ਼ਾ ਵਰਗ ਫੈਲਾਓ।"
-
-#~ msgid "_Collapse"
-#~ msgstr "ਸਮੇਟੋ(_C)"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "ਸਭ ਭਾਸ਼ਾ ਵਰਗ ਸਮੇਟੋ।"
-
-#~ msgid "E_nable All"
-#~ msgstr "ਸਭ ਯੋਗ(_n)"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "ਸਭ ਇੰਪੁੱਟ ਢੰਗ ਯੋਗ ਕਰਦਾ ਹੈ।"
-
-#~ msgid "_Disable All"
-#~ msgstr "ਸਭ ਆਯੋਗ(_D)"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "ਸਭ ਇੰਪੁੱਟ ਢੰਗ ਆਯੋਗ ਹਨ।"
-
-#~ msgid "Filters"
-#~ msgstr "ਫਿਲਟਰ"
-
-#~ msgid "Languages"
-#~ msgstr "ਭਾਸ਼ਾਵਾਂ"
-
-#~ msgid "Description"
-#~ msgstr "ਵੇਰਵਾ"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "%s ਲਈ ਹਾਟ-ਸਵਿੱਚ ਸੋਧ"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "%s ਲਈ ਫਿਲਟਰ ਚੁਣੋ"
-
-#~ msgid "Move _Up"
-#~ msgstr "ਉੱਪਰ ਜਾਓ(_U)"
-
-#~ msgid "Move _Down"
-#~ msgstr "ਹੇਠਾਂ ਜਾਓ(_D)"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "GTK+-2.x ਲਾਇਬਰੇਰੀ 'ਤੇ ਪੈਨਲ ਡਾਈਮੋਨ ਹੈ।"
-
-#~ msgid "On demand"
-#~ msgstr "ਲੋੜ ਸਮੇਂ"
-
-#~ msgid "Never"
-#~ msgstr "ਕਦੇ ਨਹੀਂ"
-
-#~ msgid "ToolBar"
-#~ msgstr "ਸੰਦ-ਪੱਟੀ"
-
-#~ msgid "_Show:"
-#~ msgstr "ਵੇਖਾਓ(_S):"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "ਸਵੈ ਸਨੈਪ(_n)"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "ਇੰਪੁੱਟ ਆਈਕਾਨ ਢੰਗ ਆਈਕਾਨ ਵੇਖਾਓ(_i)"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਨਾਂ ਵੇਖਾਓ(_u)"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "ਸਮਾਂ-ਅੰਤਰਾਲ ਓਹਲੇ(_o):"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "ਟਿੱਕ ਆਈਕਾਨ ਵੇਖਾਓ(_t)"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "ਮੇਨੂ ਆਈਕਾਨ ਵੇਖਾਓ(_e)"
-
-#~ msgid "Show _help icon"
-#~ msgstr "ਸਹਾਇਤਾ ਆਈਕਾਨ ਵੇਖਾਓ(_h)"
-
-#~ msgid "Show _property label"
-#~ msgstr "ਵਿਸ਼ੇਸ਼ਤਾ ਲੇਬਲ ਵੇਖਾਓ(_p)"
-
-#~ msgid "Input window"
-#~ msgstr "ਇੰਪੁੱਟ ਝਰੋਖਾ"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "ਸ਼ਾਮਲ ਖੋਜ ਸਾਰਣੀ(_m)"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "ਲੰਬਕਾਰੀ ਖੋਜ ਸਾਰਣੀ(_V)"
-
-#~ msgid "Misc"
-#~ msgstr "ਫੁਟਕਲ"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "ਟਰੇ ਆਈਕਾਨ ਵੇਖਾਓ(_y)"
-
-#~ msgid "Stick _windows"
-#~ msgstr "ਝਰੋਖੇ ਚੇਪੋ(_w)"
-
-#~ msgid "_Font:"
-#~ msgstr "ਫੋਂਟ(_F):"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "ਜੇਕਰ \"ਹਮੇਸ਼ਾ\" ਚੋਣ ਯੋਗ ਕੀਤੀ ਗਈ ਤਾਂ, ਸੰਦ-ਪੱਟੀ ਨੂੰ ਹਮੇਸ਼ਾ ਪਰਦੇ 'ਤੇ ਵਿਖਾਇਆ ਜਾਵੇਗਾ। ਜੇਕਰ "
-#~ "\"ਲੋੜ ਸਮੇਂ\" ਦੀ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਹੀ ਵੇਖਾਇਆ ਜਾਵੇਗਾ, ਜਦੋਂ SCIM ਦੇ ਸਰਗਰਮ ਹੋਵੇਗਾ। ਜੇਕਰ \"ਕਦੇ "
-#~ "ਨਹੀਂ\" ਦੀ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇਸ ਨੂੰ ਕਦੇ ਨਹੀਂ ਵੇਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸੰਦ-ਪੱਟੀ ਸਕਰੀਨ ਹਾਸ਼ੀਏ 'ਚ ਸਮੇਟੀ ਜਾਵੇਗੀ।"
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "ਇਸ ਅੰਤਰਾਲ ਖਤਮ ਹੋਣ ਦੇ ਬਾਅਦ ਸੰਦ-ਪੱਟੀ ਨੂੰ ਓਹਲੇ ਕੀਤਾ ਜਾਵੇਗਾ। ਇਹ ਚੋਣ ਸਿਰਫ਼ ਤਾਂ ਹੀ ਠੀਕ ਹੈ, "
-#~ "ਜੇਕਰ \"ਹਮੇਸ਼ਾ ਵੇਖਾਓ\" ਦੀ ਚੋਣ ਕੀਤੀ ਹੈ। ਇਸ ਵਿਹਾਰ ਨੂੰ ਅਯੋਗ ਕਰਨ ਲਈ ਜ਼ੀਰੋ (0) ਬਣਾਓ।"
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇੰਪੁੱਟ ਢੰਗ ਆਈਕਾਨ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇੰਪੁੱਟ ਢੰਗ ਨਾਂ ਨੂੰ ਸੰਦ-ਪੱਟੀ 'ਚ ਚੁਣਿਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸਟਿੱਕੀ ਆਈਕਾਨ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਮੇਨੂ ਆਈਕਾਨ ਨੂੰ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਸਹਾਇਤਾ ਆਈਕਾਨ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਦਾ ਹੈ।"
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇੰਪੁੱਟ ਢੰਗ ਵਿਸ਼ੇਸ਼ਤਾ ਦਾ ਪਾਠ ਲੇਬਲ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਖੋਜ ਸਾਰਣੀ ਨੂੰ ਇੰਪੁੱਟ ਝਰੋਖੇ 'ਚ ਹੀ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਖੋਜ ਸਾਰਣੀ ਨੂੰ ਲੰਬਕਾਰੀ ਰੂਪ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਟਰੇ ਆਈਕਾਨ ਨੂੰ ਵੇਹੜੇ ਦੀ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਉ।"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸੰਦ-ਪੱਟੀ, ਇੰਪੁੱਟ ਅਤੇ ਖੋਜ ਸਾਰਣੀ ਝਰੋਖੇ ਨੂੰ ਇਸ ਦੀ ਅਸਲੀ ਸਥਿਤੀ ਨਾਲ "
-#~ "ਹੀ ਜੋੜੀ ਰੱਖਿਆ ਜਾਵੇਗਾ।"
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr "ਇੰਪੁੱਟ ਅਤੇ ਖੋਜ ਸਾਰਣੀ ਝਰੋਖੇ ਵਿੱਚ ਫੋਂਟ ਸੈਟਿੰਗ ਵਰਤੀ ਜਾਵੇਗੀ।"
-
-#~ msgid "Select Interface Font"
-#~ msgstr "ਇੰਟਰਫੇਸ ਫੋਂਟ ਚੁਣੋ"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "ਮੁੱਖ-ਭਾਗ"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "ਪੈਨਲ"
-
-#~ msgid "Extra"
-#~ msgstr "ਹੋਰ"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "SCIM ਇੰਪੁੱਟ ਢੰਗ ਸੈਟਅੱਪ"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਂਥਡ ਪਲੇਟਫਾਰਮ</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI ਸੈਟਅੱਪ ਸਹੂਲਤ</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">ਕਾਪੀਰਾਈਟ 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">%s ਮੈਡੀਊਲ ਲਈ ਸੈਟਅੱਪ ਹੈ।</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "ਕੀ ਤੁਸੀਂ SCIM ਸੈਟਅੱਪ ਨੂੰ ਬੰਦ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "ਸਭ ਸੰਰਚਨਾ ਨੂੰ ਯਕਦਮ ਲੋਡ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਨਵੀਂ ਸੰਰਚਨਾ ਨੂੰ ਪਰਭਾਵੀ ਹੋਣ ਲਈ SCIM ਨੂੰ ਮੁੜ-"
-#~ "ਚਾਲੂ ਕਰਨਾ ਨਾ ਭੁੱਲੋ।"
-
-#~ msgid "SCIM Setup"
-#~ msgstr "SCIM ਸੈਟਅੱਪ"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "GTK ਵਿਦਗਿਟ ਲਾਇਬਰੇਰੀ 'ਤੇ ਅਧਾਰਤ ਸੈਟਅੱਪ ਸਹੂਲਤ ਹੈ।"
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਂਥਸਡ ਪਲੇਟਫਾਰਮ ਲਈ ਸੈਟਅੱਪ ਸਹੂਲਤ"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIM ਸਹਾਇਤਾ"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਂਥਡ"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "ਇੰਪੁੱਟ ਝਰੋਖਾ ਅਤੇ ਸੰਦ-ਪੱਟੀ ਸਟਿੱਕੀ/ਨਾ-ਸਟਿੱਕੀ ਹੈ।"
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "SCIM ਅਤੇ ਮੌਜੂਦਾ ਇੰਪੁੱਟ ਢੰਗ ਬਾਰੇ ਸੰਖੇਪ ਸਹਾਇਤਾ ਵਿਖਾਓ।"
-
-#~ msgid "Show command menu."
-#~ msgstr "ਕਮਾਂਡ ਮੇਨ ਵੇਖਾਓ।"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "ਸੰਰਚਨਾ ਮੁੜ-ਲੋਡ"
-
-#~ msgid "Stick Windows"
-#~ msgstr "ਸਟਿੱਕੀ ਝਰੋਖੇ"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "ਸੰਦ-ਪੱਟੀ ਓਹਲੇ"
-
-#~ msgid "Help ..."
-#~ msgstr "ਸਹਾਇਤਾ ..."
-
-#~ msgid "Exit"
-#~ msgstr "ਬਾਹਰ"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "Selecção"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "Sem opções"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "Definições do teclado"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "Capitalização automática"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "Ponto final automático"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "Teclado virtual"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "Selecionar teclado"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "Teclado físico"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "Teclado"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr ""
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "Клавиатура"
+++ /dev/null
-# Swedish translation for scim
-# Copyright (c) (c) 2006 Canonical Ltd, and Rosetta Contributors 2006
-# This file is distributed under the same license as the scim package.
-# <>, 2006.
-#
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: scim\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
-"PO-Revision-Date: 2006-09-09 21:37+0200\n"
-"Last-Translator: <>\n"
-"Language-Team: Swedish <sv@li.org>\n"
-"Language: sv\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
-#, fuzzy
-msgid "Selection"
-msgstr "Tangentval"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-#, fuzzy
-msgid "No option"
-msgstr "Alternativ"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-#, fuzzy
-msgid "Options"
-msgstr "Alternativ"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr ""
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-#, fuzzy
-msgid "Software keyboard"
-msgstr "Latinsk teckeninmatning"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-#, fuzzy
-msgid "Keyboard selection"
-msgstr "Tangentval"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-#, fuzzy
-msgid "Keyboard option"
-msgstr "Tangentval"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
-#, fuzzy
-msgid "Hardware keyboard"
-msgstr "Latinsk teckeninmatning"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
-#, fuzzy
-msgid "Keyboard"
-msgstr "Latinsk teckeninmatning"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Tyska"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Latinsk teckeninmatning"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Engelska (amerikansk)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amhariska"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabiska"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabiska (Egypten)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabiska (Libanon)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamesiska"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbajdzjanska"
-
-#~ msgid "Belarusian"
-#~ msgstr "Vitryska"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgariska"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengali"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengali (Indien)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetanska"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosniska"
-
-#~ msgid "Catalan"
-#~ msgstr "Katalanska"
-
-#~ msgid "Czech"
-#~ msgstr "Tjeckiska"
-
-#~ msgid "Welsh"
-#~ msgstr "Kymriska"
-
-#~ msgid "Danish"
-#~ msgstr "Danska"
-
-#~ msgid "German"
-#~ msgstr "Tyska"
-
-#~ msgid "Greek"
-#~ msgstr "Grekiska"
-
-#~ msgid "English"
-#~ msgstr "Engelska"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Engelska (australiensisk)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Engelska (kanadensisk)"
-
-#~ msgid "English (British)"
-#~ msgstr "Engelska (brittisk)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Engelska (irländsk)"
-
-#~ msgid "English (American)"
-#~ msgstr "Engelska (amerikansk)"
-
-#~ msgid "Spanish"
-#~ msgstr "Spanska"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Spanska (Mexiko)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estniska"
-
-#~ msgid "Basque"
-#~ msgstr "Baskiska"
-
-#~ msgid "Persian"
-#~ msgstr "Persiska"
-
-#~ msgid "Finnish"
-#~ msgstr "Finska"
-
-#~ msgid "French"
-#~ msgstr "Franska"
-
-#~ msgid "Irish"
-#~ msgstr "Irländska"
-
-#~ msgid "Galician"
-#~ msgstr "Galiciska"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hebreiska"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "Kroatiska"
-
-#~ msgid "Hungarian"
-#~ msgstr "Ungerska"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "Rumänska"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonesiska"
-
-#~ msgid "Icelandic"
-#~ msgstr "Isländska"
-
-#~ msgid "Italian"
-#~ msgstr "Italienska"
-
-#~ msgid "Japanese"
-#~ msgstr "Japanska"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "Tyska"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazakisk"
-
-#~ msgid "Cambodian"
-#~ msgstr "Kambodjanska"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannada"
-
-#~ msgid "Korean"
-#~ msgstr "Koreanska"
-
-#~ msgid "Laothian"
-#~ msgstr "Laotiska"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Litauiska"
-
-#~ msgid "Latvian"
-#~ msgstr "Lettiska"
-
-#~ msgid "Macedonian"
-#~ msgstr "Makedonska"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malayalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongolska"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Malay"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepali (Khaskura)"
-
-#~ msgid "Dutch"
-#~ msgstr "Holländska"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norska (nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norska (bokmål)"
-
-#~ msgid "Oriya"
-#~ msgstr "Oriya"
-
-#~ msgid "Punjabi"
-#~ msgstr "Punjabi"
-
-#~ msgid "Polish"
-#~ msgstr "Polska"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugisiska"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugisiska (Brasilien)"
-
-#~ msgid "Romanian"
-#~ msgstr "Rumänska"
-
-#~ msgid "Russian"
-#~ msgstr "Ryska"
-
-#~ msgid "Slovak"
-#~ msgstr "Slovakiska"
-
-#~ msgid "Slovenian"
-#~ msgstr "Slovenska"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanska"
-
-#~ msgid "Serbian"
-#~ msgstr "Serbiska"
-
-#~ msgid "Swedish"
-#~ msgstr "Svenska"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Svenska (Finland)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamil"
-
-#~ msgid "Telugu"
-#~ msgstr "Telagu"
-
-#~ msgid "Thai"
-#~ msgstr "Thai"
-
-#~ msgid "Turkish"
-#~ msgstr "Turkiska"
-
-#~ msgid "Uighur"
-#~ msgstr "Uiguriska"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ukrainska"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "Uzbekiska"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamesiska"
-
-#~ msgid "Walloon"
-#~ msgstr "Vallonska"
-
-#~ msgid "Yiddish"
-#~ msgstr "Jiddish"
-
-#~ msgid "Chinese"
-#~ msgstr "Kinesiska"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Kinesiska (förenklad)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Kinesiska (traditionell)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belgisk"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Engelsk (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Engelska (kanadensisk)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Engelska (irländsk)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Engelska (brittisk)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Engelska (amerikansk)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Engelska (kanadensisk)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Engelska (brittisk)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Engelska (brittisk)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Engelska (kanadensisk)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Engelska (brittisk)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Fransk (kanadensisk)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Fransk (kanadensisk)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Fransk (kanadensisk)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Tysk (Schweizisk)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Fransk (kanadensisk)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Tysk (med 'Tottaste')"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Tysk (Schweizisk)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Engelska (australiensisk)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Tysk (Schweizisk)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Tysk (Schweizisk)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugisiska (Brasilien)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugisiska (Brasilien)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Spansk (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malayalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norsk"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Serbiska"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Kinesiska (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Kinesiska (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Kinesiska (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Kinesiska"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Kinesiska (förenklad)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabiska (Egypten)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabiska (Egypten)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabiska (Egypten)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabiska (Egypten)"
-
-#~ msgid "Other"
-#~ msgstr "Annat"
-
-#~ msgid "Unknown"
-#~ msgstr "Okänd"
-
-#~ msgid "English (US)"
-#~ msgstr "Engelsk (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belgisk"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Tjeckisk (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Fransk (schweizisk)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Tysk (med 'Tottaste')"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugisisk (Brazilien, am. diakriter)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovakisk (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Spansk (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Engelsk (UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Omvandling förenklad/traditionell kinesiska"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Omvandla förenklad kinesiska till traditionell och vice versa"
-
-#~ msgid "SC-TC"
-#~ msgstr "SC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Omvandling förenklad/traditionell kinesiska"
-
-#~ msgid "No Conversion"
-#~ msgstr "Ingen omvandling"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Förenklad till traditionell"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Omvandla förenklad kinesiska till traditionell"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Traditionell till förenklad"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Omvandla traditionell kinesiska till förenklad"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "SC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->SC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Scim-plattformen (Smart Common Input Method)"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Aktivera"
-
-#~ msgid "Name"
-#~ msgstr "Namn"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Markörens position"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Markörens läge i texten, räknat i tecken."
-
-#~ msgid "Maximum length"
-#~ msgstr "Maxlängd"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Högsta antal tecken att visa i den här teckenraden. Välj 0 för att inte "
-#~ "begränsa längden."
-
-#~ msgid "Maximum width"
-#~ msgstr "Maxbredd"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Maximal bredd för att visa den här teckenraden."
-
-#~ msgid "Has Frame"
-#~ msgstr "Med ram"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "Om FALSK tas ytterkanten bort från strängvyn."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Visa markör"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "Om SANT använd blinkande markör."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Flytta markören automatiskt"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "Flytta markören automatiskt vid musklick."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Direktmata tangenter"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "Skicka tangentnedtryckningar till användarprogrammet."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Anpassa storleken automatiskt till teckenraden."
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "Storleken anpassas automatiskt."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "Flytta markören automatiskt vid musklick."
-
-#~ msgid "Width in chars"
-#~ msgstr "Bredd (antal tecken)"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Antal tecken att göra rum för i teckenraden."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Mjuk rullning"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "Antal pixlar i teckenraden som rullat över vänsterkanten på skärmen"
-
-#~ msgid "Text"
-#~ msgstr "Text"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Innehållet i teckenraden"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Valda _kortkommandon:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Tangentkod:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Specialtangenter:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Release"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Ange tangentkod först."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Tryck på en tangent eller på en tangentkombination.\n"
-#~ "Den här rutan försvinner när du släpper tangenten."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Plockar tangent"
-
-#~ msgid "Key Selection"
-#~ msgstr "Tangentval"
-
-#~ msgid "Orientation"
-#~ msgstr "Riktning"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Panelens riktning."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Text"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amhariska"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Alltid"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Alternativ"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Latinsk teckeninmatning"
-
-#~ msgid "English/European"
-#~ msgstr "Västerländsk"
-
-#~ msgid "RAW CODE"
-#~ msgstr "TANGENTKOD"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Snabbtangenter:\n"
-#~ "\n"
-#~ " Ctrl+u:\n"
-#~ " Växla mellan multibytekodning and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " återställ inmatningsmetod.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Aktuell inmatningsmetod. Klicka för att ändra."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Allmänna inställningar"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Allmänna inställningar som gäller alla användargränssnitt, t.ex. X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-
-#~ msgid "_Trigger:"
-#~ msgstr "Ak_tiveringstangent"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Välj aktiveringstangenter"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som öppnar och stänger SCIM-inmatningen. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "Turn _On:"
-#~ msgstr "Slå på (_o):"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Välj på-kommando"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som öppnar SCIM-inmatningen. Klicka påknappen till "
-#~ "höger för att ändra."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "Stäng av (_f):"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Välj på-kommando"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som stänger SCIM-inmatningen. Klicka påknappen till "
-#~ "höger för att ändra."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Nästa inmatningsmetod:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Välj kommando för att hoppa till nästa"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som växlar till nästa inmatningsmetod. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "Föregående inmatningsmetod (_p):"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Välj kommando för att hoppa till föregående"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som växlar till föregående inmatningsmetod. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Visa _meny med inmatningsmetoder:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Välj kommando för att visa menyn med inmatningsmetoder"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som visar menyn med inmatningsmetoder. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "Tangentbordslayout (_k):"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Här väljer du vilket slags tangentbord du har. Det är nödvändigt föratt "
-#~ "vissa inmatningsmetoder skall fungera."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Visa okonverterad_e latinska tecken i ditt arbetsfönster."
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Med det här alternativet förbockat kommer de latinska bokstäver du "
-#~ "skriveratt visas direkt i fönstret du arbetar i. Annars visas de i ett "
-#~ "popup-fönster."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "Använd _samma inmatningsmetod i alla program"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Med det här alternativet förbockat kommer bara en inmatningsmetod att "
-#~ "användasi taget. Annars kan varje program använda olika metoder."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Kortkommandon"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Slå av och på inmatningsmetoder och ange kortkommandon för olika "
-#~ "inmatningsmetoder här."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Installerade inmatningsmetoder:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Redigera kortkommandon (_h)"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Välj kortkommandon för vald inmatningsmetod."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Välj _filter"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Välj filter att använda till den här inmatningsmetoden."
-
-#~ msgid "_Expand"
-#~ msgstr "Visa allt (_e)"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Visa alla inmatningsmetoder"
-
-#~ msgid "_Collapse"
-#~ msgstr "Göm allt (_c)"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Göm alla inmatningsmetoder."
-
-#~ msgid "E_nable All"
-#~ msgstr "Markera alla (_n)"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Gör alla inmatningsmetoder tillgängliga för användning."
-
-#~ msgid "_Disable All"
-#~ msgstr "Avmarkera alla (_d)"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Gör alla inmatningsmetoder otillgängliga för användning."
-
-#~ msgid "Filters"
-#~ msgstr "Filter"
-
-#~ msgid "Languages"
-#~ msgstr "Språk"
-
-#~ msgid "Description"
-#~ msgstr "Beskrivning"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Välj kortkommando för %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Välj filter för %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Flytta _uppåt"
-
-#~ msgid "Move _Down"
-#~ msgstr "Flytta ne_dåt"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Paneldemon byggd på GTK+-2.x-biblioteket."
-
-#~ msgid "On demand"
-#~ msgstr "På begäran"
-
-#~ msgid "Never"
-#~ msgstr "Aldrig"
-
-#~ msgid "ToolBar"
-#~ msgstr "Verktygsfält"
-
-#~ msgid "_Show:"
-#~ msgstr "Vi_sa"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Fäst vid skärmka_nt"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Visa ikon för aktuell inmatningsmetod"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Visa namn på akt_uell inmatningsmetod"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Time_out för att dölja:"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Vi_sa fixeringsikonen"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Visa m_enyikonen"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Visa _hjälpikonen"
-
-#~ msgid "Show _property label"
-#~ msgstr "Visa inmatningsalternativ"
-
-#~ msgid "Input window"
-#~ msgstr "Inmatningsfönster"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Infälld teckenväljare (_m)"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Vertikal teckenväljare"
-
-#~ msgid "Misc"
-#~ msgstr "Diverse"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Visa ikon i s_ystempanelen"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Fäst fönster (_w)"
-
-#~ msgid "_Font:"
-#~ msgstr "Typsnitt (_f)"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Välj \"Alltid\" för att ständigt visa verktygsfältet på skärmen. Välj\"På "
-#~ "begäran\" för att bara visa verktygsfältet när Scim är aktivt.Välj \"Never"
-#~ "\" för att aldrig visa verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Med det här alternativet förbockat är verktygsfältet alltid fäst mot "
-#~ "skärmkanten."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Verktygsfältet döljs efter så här lång tid. Den här inställningen används "
-#~ "baranär du har valt \"Alltid\" i menyn till vänster. Välj 0 för att "
-#~ "aldrig döljaverktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas alltid ikonen för "
-#~ "aktuellinmatningsmetod i verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas alltid namnet på "
-#~ "aktuellinmatningsmetod i verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas häftstiftsikonen i "
-#~ "verktygsfältet"
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas menyikonen i verktygsfältet"
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas hjälpikonen i verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas en textlapp med "
-#~ "inmatningsalternativi verktygsfältet"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas teckenväljaren infälld "
-#~ "iinmatningsfönstret."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat används en vertikal teckenväljare."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat visas panelikonen i "
-#~ "skrivbordetssystempanel."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat fixeras verktygsfält, "
-#~ "inmatningsfönsteroch teckenväljare på en given plats."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Det typsnitt som kommer att användas i inmatnings- och teckenväljarfönster"
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Välj typsnitt för användargränssnittet"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "FrontEnd"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Panel"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Inställningar för Scim"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Scim-plattformen (Smart Common Input Method)</"
-#~ "span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Grafiskt inställningsverktyg</"
-#~ "span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Inställningar för %s-moduler.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Vill du avsluta inställningsverktyget för Scim?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Många inställningar kräver att du startar om Scim innan du fortsätter,för "
-#~ "att de skall börja verka."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Inställningar för Scim"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "Inställningsverktyg byggt på GTK Widget-biblioteket."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr ""
-#~ "Inställningsverktyg för Scim-plattformen (Smart Common Input Method)"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Om Scim"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Scim (Smart Common Input Method)"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Fixera/lossa inmatningsfönstret och verktygsfältet"
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Kortfattad information om Scim och om aktuell inmatningsmetod."
-
-#~ msgid "Show command menu."
-#~ msgstr "Visa kommandomenyn."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Återhämta inställningar"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Fixera fönster"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Dölj verktygsfältet"
-
-#~ msgid "Help ..."
-#~ msgstr "Hjälp ..."
-
-#~ msgid "Exit"
-#~ msgstr "Avsluta"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
+msgid "Selection"
+msgstr "Seçim"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "Seçenek yok"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "Klavye ayarları"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "Otomatik büyük harf yapma"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "Otomatik tam durdurma"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "Yazılım klavyesi"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "Klavye seçin"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
+msgid "Hardware keyboard"
+msgstr "Donanım klavyesi"
+
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
+msgid "Keyboard"
+msgstr "Klavye"
SRCROOT=../..
POTFILES=POTFILES.in
-#ALL_LINGUAS= am az be ca cs da de el en_CA en_GB es et fi fr hr hu it ja ko lv mk ml ms nb ne nl pa pl pt pt_BR ru rw sk sl sr sr@Latn sv ta tr uk vi zh_CN zh_TW
ALL_LINGUAS="de_DE el_GR en es_ES fr_FR it_IT ja_JP ko_KR nl_NL pt_PT ru_RU tr_TR zh_CN zh_HK zh_TW"
XGETTEXT=/usr/bin/xgettext
msgstr ""
"Project-Id-Version: zh_CN\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\n"
"PO-Revision-Date: 2011-01-01 14:57+0800\n"
"Last-Translator: Haifeng Deng <haifeng.deng@samsung.com>\n"
"Language-Team: Simplified Chinese <zh@li.org>\n"
"X-Generator: KBabel 1.3.1\n"
#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
msgid "Selection"
-msgstr "é\94®ç\9b\98é\80\89æ\8b©"
+msgstr "选择"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-msgid "No option"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
msgstr "无选项"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-msgid "Options"
-msgstr "选项"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "键盘设置"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
-msgstr "首字母大写"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
+msgstr "自动大写"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-msgid "Software keyboard"
-msgstr "软é\94®ç\9b\98"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "è\87ªå\8a¨æ\8f\92å\85¥å\8f¥å\8f·"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-msgid "Keyboard selection"
-msgstr "键盘选择"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "软件键盘"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-msgid "Keyboard option"
-msgstr "键盘选项"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "选择键盘"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
msgid "Hardware keyboard"
-msgstr "硬键盘"
+msgstr "硬件键盘"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
msgid "Keyboard"
msgstr "键盘"
-
-#~ msgid "Set"
-#~ msgstr "设定"
-
-#~ msgid "General"
-#~ msgstr "通用"
-
-#~ msgid "option"
-#~ msgstr "选项"
-
-#~ msgid "Back"
-#~ msgstr "返回"
msgstr ""
"Project-Id-Version: ISF 2.2\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-01-01 20:17+0900\n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\n"
"PO-Revision-Date: 2011-01-01 22:41+0800\n"
"Last-Translator: Haifeng Deng <haifeng.deng@samsung.com>\n"
"Language-Team: scim@freedesktop.org\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:432
-#: ism/extras/efl_setting/isf_setting_efl.cpp:713
-msgid "Set"
-msgstr "設定"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:441
-#: ism/extras/efl_setting/isf_setting_efl.cpp:443
-#: ism/extras/efl_setting/isf_setting_efl.cpp:722
+#. Push the layout along with function buttons and title
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
msgid "Selection"
-msgstr "鍵盤選擇"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:636
-#: ism/extras/efl_setting/isf_setting_efl.cpp:830
-msgid "Options"
-msgstr "選項"
+msgstr "選擇"
-msgid "No option"
-msgstr "無選項"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
+msgstr "無選項"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "鍵盤設定"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-msgid "Auto capitalization"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
msgstr "首字母大寫"
#: ism/extras/efl_setting/isf_setting_efl.cpp:963
-msgid "General"
-msgstr "通用"
+msgid "Automatic full stop"
+msgstr "自動句號"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
msgid "Software keyboard"
-msgstr "軟鍵盤"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1004
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1079
-msgid "Keyboard selection"
-msgstr "鍵盤選擇"
+msgstr "螢幕小鍵盤"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1016
-msgid "Keyboard option"
-msgstr "鍵盤選項"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "選擇鍵盤"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1052
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
msgid "Hardware keyboard"
-msgstr "硬鍵盤"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1065
-msgid "option"
-msgstr "選項"
-
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1110
-msgid "Back"
-msgstr "返回"
+msgstr "硬體鍵盤"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1118
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
msgid "Keyboard"
msgstr "鍵盤"
msgstr ""
"Project-Id-Version: ISF 2.2\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:22+0900\n"
+"POT-Creation-Date: 2012-04-10 15:02+0900\n"
"PO-Revision-Date: 2011-01-01 22:41+0800\n"
"Last-Translator: Haifeng Deng <haifeng.deng@samsung.com>\n"
"Language-Team: scim@freedesktop.org\n"
"Content-Transfer-Encoding: 8bit\n"
#. Push the layout along with function buttons and title
-#: ism/extras/efl_setting/isf_setting_efl.cpp:630
-#: ism/extras/efl_setting/isf_setting_efl.cpp:813
+#: ism/extras/efl_setting/isf_setting_efl.cpp:638
+#: ism/extras/efl_setting/isf_setting_efl.cpp:824
msgid "Selection"
-msgstr "é\8dµç\9b¤é\81¸æ\93\87"
+msgstr "選擇"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:737
-msgid "No option"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:749
+msgid "No options"
msgstr "無選項"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:744
-msgid "Options"
-msgstr "選項"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:756
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1023
+msgid "Keyboard settings"
+msgstr "鍵盤設定"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:936
-msgid "Auto capitalization"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:943
+msgid "Auto capitalisation"
msgstr "首字母大寫"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:953
-msgid "Software keyboard"
-msgstr "è»\9fé\8dµç\9b¤"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:963
+msgid "Automatic full stop"
+msgstr "è\87ªå\8b\95å\8f¥è\99\9f"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:976
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1047
-msgid "Keyboard selection"
-msgstr "鍵盤選擇"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:979
+msgid "Software keyboard"
+msgstr "螢幕小鍵盤"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:998
-msgid "Keyboard option"
-msgstr "鍵盤選項"
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1002
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1066
+msgid "Select keyboard"
+msgstr "選擇鍵盤"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1018
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1043
msgid "Hardware keyboard"
-msgstr "硬鍵盤"
+msgstr "硬é«\94é\8dµç\9b¤"
-#: ism/extras/efl_setting/isf_setting_efl.cpp:1069
+#: ism/extras/efl_setting/isf_setting_efl.cpp:1088
msgid "Keyboard"
msgstr "鍵盤"
-
-#~ msgid "Set"
-#~ msgstr "設定"
-
-#~ msgid "General"
-#~ msgstr "通用"
-
-#~ msgid "option"
-#~ msgstr "選項"
-
-#~ msgid "Back"
-#~ msgstr "返回"
prefix = @prefix@
exec_prefix = @exec_prefix@
-datadir = /opt/ug/res
+datadir = /usr/ug/res
libdir = @libdir@
localedir = $(libdir)/locale
gnulocaledir = $(datadir)/locale
+++ /dev/null
-# translation of cs.po to Czech
-# translation of cs.po to cs_CZ
-# translation of scim.po to cs_CZ
-# This file is distributed under the same license as the PACKAGE package.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
-# Klara Cihlarova <koty@seznam.cz>, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: cs\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2005-12-11 19:55+0100\n"
-"Last-Translator: Klara Cihlarova <koty@seznam.cz>\n"
-"Language-Team: Czech <suse@suse.cz>\n"
-"Language: cs\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.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"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-#, fuzzy
-msgid "Keyboard"
-msgstr "Angličtina/klávesnice"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Výběr kláves"
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Výběr kláves"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Volby"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Němčina"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Angličtina/klávesnice"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Výběr kláves"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Angličtina/klávesnice"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Volby"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Angličtina/klávesnice"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Angličtina (americká)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amharština"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabština"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabština (egyptská)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabština (libanonská)"
-
-#~ msgid "Assamese"
-#~ msgstr "Ásámština"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbajdžánština"
-
-#~ msgid "Belarusian"
-#~ msgstr "Běloruština"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulharština"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengálština"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengálština (indická)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetština"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosenština"
-
-#~ msgid "Catalan"
-#~ msgstr "Katalánština"
-
-#~ msgid "Czech"
-#~ msgstr "Čeština"
-
-#~ msgid "Welsh"
-#~ msgstr "Welština"
-
-#~ msgid "Danish"
-#~ msgstr "Dánština"
-
-#~ msgid "German"
-#~ msgstr "Němčina"
-
-#~ msgid "Greek"
-#~ msgstr "Řečtina"
-
-#~ msgid "English"
-#~ msgstr "Angličtina"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Angličtina (australská)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Angličtina (kanadská)"
-
-#~ msgid "English (British)"
-#~ msgstr "Angličtina (britská)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Angličtina (irská)"
-
-#~ msgid "English (American)"
-#~ msgstr "Angličtina (americká)"
-
-#~ msgid "Spanish"
-#~ msgstr "Španělština"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Španělština (mexická)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estonština"
-
-#~ msgid "Basque"
-#~ msgstr "Baskičtina"
-
-#~ msgid "Persian"
-#~ msgstr "Perština"
-
-#~ msgid "Finnish"
-#~ msgstr "Finština"
-
-#~ msgid "French"
-#~ msgstr "Francouzština"
-
-#~ msgid "Irish"
-#~ msgstr "Irština"
-
-#~ msgid "Galician"
-#~ msgstr "Galština"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gudžarádština"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hebrejština"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindština"
-
-#~ msgid "Croatian"
-#~ msgstr "Chorvatština"
-
-#~ msgid "Hungarian"
-#~ msgstr "Maďarština"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "Rumunština"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonézština"
-
-#~ msgid "Icelandic"
-#~ msgstr "Islandština"
-
-#~ msgid "Italian"
-#~ msgstr "Italština"
-
-#~ msgid "Japanese"
-#~ msgstr "Japonština"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "Němčina"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazaština"
-
-#~ msgid "Cambodian"
-#~ msgstr "Khmerština"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannadština"
-
-#~ msgid "Korean"
-#~ msgstr "Korejština"
-
-#~ msgid "Laothian"
-#~ msgstr "Laoština"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Litevština"
-
-#~ msgid "Latvian"
-#~ msgstr "Lotyšština"
-
-#~ msgid "Macedonian"
-#~ msgstr "Makedonština"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malajámština"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongolština"
-
-#~ msgid "Marathi"
-#~ msgstr "Maráthština"
-
-#~ msgid "Malay"
-#~ msgstr "Malajština"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepálština"
-
-#~ msgid "Dutch"
-#~ msgstr "Nizozemské"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norština (nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norština (bokmal)"
-
-#~ msgid "Oriya"
-#~ msgstr "Orijština"
-
-#~ msgid "Punjabi"
-#~ msgstr "Pandžábština"
-
-#~ msgid "Polish"
-#~ msgstr "Polština"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugalština"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugalština (brazilská)"
-
-#~ msgid "Romanian"
-#~ msgstr "Rumunština"
-
-#~ msgid "Russian"
-#~ msgstr "Ruština"
-
-#~ msgid "Slovak"
-#~ msgstr "Slovenština"
-
-#~ msgid "Slovenian"
-#~ msgstr "Slovinština"
-
-#~ msgid "Albanian"
-#~ msgstr "Albánština"
-
-#~ msgid "Serbian"
-#~ msgstr "Srbština"
-
-#~ msgid "Swedish"
-#~ msgstr "Švédština"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Švédština (finská)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamilština"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugština"
-
-#~ msgid "Thai"
-#~ msgstr "Thajština"
-
-#~ msgid "Turkish"
-#~ msgstr "Turečtina"
-
-#~ msgid "Uighur"
-#~ msgstr "Ujgurština"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ukrajinština"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdština"
-
-#~ msgid "Uzbek"
-#~ msgstr "Uzbečtina"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamština"
-
-#~ msgid "Walloon"
-#~ msgstr "Walloon"
-
-#~ msgid "Yiddish"
-#~ msgstr "Jidiš"
-
-#~ msgid "Chinese"
-#~ msgstr "Čínština"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Čínština (zjednodušená)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Čínština (tradiční)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belgičtina"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Angličtina (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Angličtina (kanadská)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Angličtina (irská)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Angličtina (britská)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Angličtina (americká)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Angličtina (kanadská)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Angličtina (britská)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Angličtina (britská)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Angličtina (kanadská)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Angličtina (britská)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Francouzština (kanadská)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Francouzština (kanadská)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Francouzština (kanadská)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Němčina (švýcarská)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Francouzština (kanadská)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Němčina (s mrtvými klávesami)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Němčina (švýcarská)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Angličtina (australská)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Němčina (švýcarská)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Němčina (švýcarská)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugalština (brazilská)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugalština (brazilská)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Španělština (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Španělština (mexická)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malajámština"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norština"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Srbština"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Čínština (tradiční)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Čínština (tradiční)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Čínština (tradiční)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Čínština"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Čínština (zjednodušená)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabština (egyptská)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabština (egyptská)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabština (egyptská)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabština (libanonská)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabština (egyptská)"
-
-#~ msgid "Other"
-#~ msgstr "Ostatní"
-
-#~ msgid "Unknown"
-#~ msgstr "Neznámé"
-
-#~ msgid "English (US)"
-#~ msgstr "Angličtina (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belgičtina"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Čeština (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Francouzština (švýcarská)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Němčina (s mrtvými klávesami)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugalština (brazilská)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovenština (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Španělština (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Španělština (jihoamerická)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Angličtina (UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Převod zjednodušená - tradiční čínština"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Převod mezi zjednodušenou čínštinou a tradiční čínštinou"
-
-#~ msgid "SC-TC"
-#~ msgstr "SC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Převod zjednodušená - tradiční čínština"
-
-#~ msgid "No Conversion"
-#~ msgstr "Bez převodu"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Ze zjednodušené do tradiční"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Převést zjednodušenou čínštinu do tradiční čínštiny"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Z tradiční do zjednodušené"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Převést tradiční čínštinu do zjednodušené čínštiny"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "SC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->SC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "SCIM platforma"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Stav"
-
-#~ msgid "Name"
-#~ msgstr "Název"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Pozice kurzoru"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Aktuální pozice vkládacího kurzoru mezi znaky."
-
-#~ msgid "Maximum length"
-#~ msgstr "Maximální délka"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Maximální počet znaků při zobrazení řetězce. Nula, pokud není nic "
-#~ "nastaveno."
-
-#~ msgid "Maximum width"
-#~ msgstr "Maximální šířka"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Maximální šířka pohledu na řetězec."
-
-#~ msgid "Has Frame"
-#~ msgstr "S rámem"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FALSE odstraní zkosení."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Vykreslit kurzor"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "TRUE vykreslí blikající kurzor."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Automatické přesunutí kurzoru"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "TRUE automaticky přemístí kurzor při kliknutí myší."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Předání událost stisknutí tlačítka"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "TRUE předá událost stisknutí tlačítka programu."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Automatická změna velikosti widgetu podle řetězce"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "TRUE povolí automatickou změnu velikosti."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "TRUE automaticky přemístí kurzor při kliknutí myší."
-
-#~ msgid "Width in chars"
-#~ msgstr "Šířka znaků"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Počet znaků, pro které se v řetězci vynechá místo."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Scroll offset"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "Počet pixelů v zobrazeném řetězci při přesunu vlevo"
-
-#~ msgid "Text"
-#~ msgstr "Text"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Obsahy zobrazeného řetězce"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Zvolené _klávesy:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Kód klávesy:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Modifikátor:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Uvolnit"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Zadejte prosím nejdřív kód klávesy."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Stiskněte klávesu (nebo kombinaci kláves).\n"
-#~ "Dialog se zavře po uvolnění kláves."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Zachycení klávesy."
-
-#~ msgid "Key Selection"
-#~ msgstr "Výběr kláves"
-
-#~ msgid "Orientation"
-#~ msgstr "Orientace"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Orientace panelu."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Text"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amharština"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Vždy"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Volby"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Angličtina/klávesnice"
-
-#~ msgid "English/European"
-#~ msgstr "Angličtina/Evropa"
-
-#~ msgid "RAW CODE"
-#~ msgstr "RAW KÓD"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Klávesové zkratky:\n"
-#~ "\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " přepnutí mezi Multibyte a Unicode kódováním.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " zrušení vstupní metody.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Stav aktuální vstupní metody. Změnu provedete kliknutím."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Obecná nastavení"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Nastavení klávesový zkratek používaných moduly včetně X11, GTK, IMModule, "
-#~ "GTK IMModule, QT IMModule atd."
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Spouštění:"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Zvolte spouštěcí klávesy"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Klávesové události zapínající/vypínající SCIM vstupní metodu. Úpravu "
-#~ "provedete kliknutím na tlačítko vpravo."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Zapnout:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Zvolte spouštěcí klávesy"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Klávesové události zapínající SCIM vstupní metodu. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "_Vypnout:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Zvolte vypínací klávesy"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Klávesové události vypínající SCIM vstupní metodu. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Další vstupní metoda:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Zvolte klávesy další vstupní metody"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Klávesové události přepínající na další vstupní metodu. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Předchozí vstupní metoda:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Zvolte klávesy předchozí vstupní metody"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Klávesové události přepnutí do předcházející vstupní metody. Úpravu "
-#~ "provedete kliknutím na tlačítko vpravo."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "_Zobrazit nabídku vstupní metody:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Zvolte klávesy zobrazení nabídky vstupní metody"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Klávesové události k zobrazení nabídky vstupní metody. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Rozložení klávesnice:"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Zde můžete nastavit své rozložení klávesnice tak, aby zvolené vstupní "
-#~ "metody fungovaly korektně."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "_Vložit předpřipravený řetězec do klientského okna"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, zobrazí se předpřipravený řetězec přímo v "
-#~ "klientském vstupním okně než v nezávislém plovoucím okně."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "_Zdílet vstupní metody u všech aplikací"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Pokud tuto volbu zaškrtnete, bude se u všech aplikací používat pouze "
-#~ "jeden typ vstupní metody. V opačném případě se u každé aplikace může "
-#~ "použije jiná."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Klávesové zkratky"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Zde můžete povolit/zakázat vstupní metody a nastavit jejich klávesové "
-#~ "zkratky."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Služby nainstalované vstupní metody:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Upravit _klávesové zkratky"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Úprava klávesových zkratek spojených se zvolenou vstupní metodou."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Zvolit _filtry"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Zvolte filtry spojené s touto vstupní metodou."
-
-#~ msgid "_Expand"
-#~ msgstr "_Rozbalit"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Zobrazení všech jazykových kategorií."
-
-#~ msgid "_Collapse"
-#~ msgstr "_Zabalit"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Skrytí všech jazykových kategorií."
-
-#~ msgid "E_nable All"
-#~ msgstr "_Povolit vše"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Povolit všechny vstupní metody."
-
-#~ msgid "_Disable All"
-#~ msgstr "_Zakázat vše"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Zakázat všechny vstupní metody."
-
-#~ msgid "Filters"
-#~ msgstr "Filtry"
-
-#~ msgid "Languages"
-#~ msgstr "Jazyky"
-
-#~ msgid "Description"
-#~ msgstr "Popis"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Upravit klávesové zkratky %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Zvolte filtry pro %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Posunout na_horu"
-
-#~ msgid "Move _Down"
-#~ msgstr "Posunout _dolů"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Démon zapuštěný do panelu založený na knihovně GTK+-2.x."
-
-#~ msgid "On demand"
-#~ msgstr "Na požádání"
-
-#~ msgid "Never"
-#~ msgstr "Nikdy"
-
-#~ msgid "ToolBar"
-#~ msgstr "Nástrojová lišta"
-
-#~ msgid "_Show:"
-#~ msgstr "_Zobrazit:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Automatické přicvaknutí"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Zobrazit ikonu _vstupní metody"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Zobrazit _název vstupní metody"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Délka _zobrazení::"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Zobrazit ikonu _přilepení"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Zobrazit ikonu _nabídky"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Zobrazit ikonu _nápovědy"
-
-#~ msgid "Show _property label"
-#~ msgstr "Zobrazit _vlastnosti"
-
-#~ msgid "Input window"
-#~ msgstr "Vstupní okno"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "_Vložená vyhledávací tabulka"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "V_ertikální vyhledávací tabulka"
-
-#~ msgid "Misc"
-#~ msgstr "Různé"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Pohltit ikonu do panelu"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Přišpendlit _okno"
-
-#~ msgid "_Font:"
-#~ msgstr "_Písmo:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Pokud jste zvolili \"Vždy\", bude lišta vždy zobrazena. V případě \"Na "
-#~ "požádání\" bude vždy po deaktivaci SCIM skryta. U volby \"Nikdy\" se "
-#~ "nezobrazí nikdy."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, bude nástrojová lišta přichycena k okraji "
-#~ "pracovní plochy."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Lišta se skryje po uplynutí zadaného času. Tato volba je platná pouze "
-#~ "pokud jste současně zvolili \"Vždy zobrazit'\". Funkci vypnete nastavením "
-#~ "na hodnotu 0."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona metody."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, objeví se na liště název vstupní metody."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona přišpendlení."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona nabídky."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona nápovědy."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, objeví se na liště ikona vlastností vstupní "
-#~ "metody."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, připojí se vstupního okna vyhledávací tabulka."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, zobrazí se vyhledávací tabulka vertikálně."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr "Pokud zvolíte tuto možnost, zapustí se ikona programu do panelu."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, lišta nástrojů, vstupní okno a vyhledávací "
-#~ "tabulka se přišpendlí do původní pozice."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr "Nastavení písma v okně vstupu a ve vyhledávací tabulce."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Zvolte písmo rozhraní"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Rozhraní"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Panel"
-
-#~ msgid "Extra"
-#~ msgstr "Rozšíření"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Nastavení vstupní metody SCIM"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ "<span size=\"20000\">Smart Common Input Method platforma</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Grafické rozhraní</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Nastavení %s modulů.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Chcete skutečně ukončit nastavení SCIM?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Ne všechna nastavení lze zavést za běhu. Nezapomeňte SCIM restartovat."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Nastavit SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "Grafické rozhraní založené na knihovně GTK Widget."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Nástroj pro nastavení Smart Common Input Method platformy"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Nápověda SCIM"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Přišpendlit/odšpendlit vstupní okno a nástrojovou lištu."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Zobrazí krátkou nápovědu o aktuální vstupní metodě."
-
-#~ msgid "Show command menu."
-#~ msgstr "Zobrazí nabídku příkazů."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Obnovit konfiguraci"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Přišpendlit okno"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Skrýt lištu"
-
-#~ msgid "Help ..."
-#~ msgstr "Nápověda..."
-
-#~ msgid "Exit"
-#~ msgstr "Ukončit"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
+++ /dev/null
-# translation of de.po to German
-# This file is distributed under the same license as the scim package.
-# Copyright (C) 2004 THE scim'S COPYRIGHT HOLDER.
-#
-#
-# Jan Hefti <j.hefti@hamburg.de>, 2004.
-# Jan Hefti <j.hefti@chinaboard.de>, 2005.
-msgid ""
-msgstr ""
-"Project-Id-Version: de\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2005-12-16 14:10+0100\n"
-"Last-Translator: Jan Hefti <j.hefti@chinaboard.de>\n"
-"Language-Team: German <scim-devel@lists.sourceforge.net>\n"
-"Language: de\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: KBabel 1.11\n"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-#, fuzzy
-msgid "Keyboard"
-msgstr "Deutsch/Tastatur"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Tastenauswahl"
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Tastenauswahl"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Optionen"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Deutsch"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Deutsch/Tastatur"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Tastenauswahl"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Deutsch/Tastatur"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Optionen"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Deutsch/Tastatur"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Englisch (USA)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amharisch"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabisch"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabisch (Libanon)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamesisch"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Aserbaidschanisch"
-
-#~ msgid "Belarusian"
-#~ msgstr "Weißrussisch"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgarisch"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengalisch"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengalisch (Indien)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetisch"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosnisch"
-
-#~ msgid "Catalan"
-#~ msgstr "Katalanisch"
-
-#~ msgid "Czech"
-#~ msgstr "Tschechisch"
-
-#~ msgid "Welsh"
-#~ msgstr "Walisisch"
-
-#~ msgid "Danish"
-#~ msgstr "Dänisch"
-
-#~ msgid "German"
-#~ msgstr "Deutsch"
-
-#~ msgid "Greek"
-#~ msgstr "Griechisch"
-
-#~ msgid "English"
-#~ msgstr "Englisch"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Englisch (Australien)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Englisch (Kanada)"
-
-#~ msgid "English (British)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Englisch (Irland)"
-
-#~ msgid "English (American)"
-#~ msgstr "Englisch (USA)"
-
-#~ msgid "Spanish"
-#~ msgstr "Spanisch"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estnisch"
-
-#~ msgid "Basque"
-#~ msgstr "Baskisch"
-
-#~ msgid "Persian"
-#~ msgstr "Persisch"
-
-#~ msgid "Finnish"
-#~ msgstr "Finnisch"
-
-#~ msgid "French"
-#~ msgstr "Französisch"
-
-#~ msgid "Irish"
-#~ msgstr "Irisch"
-
-#~ msgid "Galician"
-#~ msgstr "Galizisch"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hebräisch"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "Kroatisch"
-
-#~ msgid "Hungarian"
-#~ msgstr "Ungarisch"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "Rumänisch"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonesisch"
-
-#~ msgid "Icelandic"
-#~ msgstr "Isländisch"
-
-#~ msgid "Italian"
-#~ msgstr "Italienisch"
-
-#~ msgid "Japanese"
-#~ msgstr "Japanisch"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "Deutsch"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kasachisch"
-
-#~ msgid "Cambodian"
-#~ msgstr "Kambodschanisch"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannada"
-
-#~ msgid "Korean"
-#~ msgstr "Koreanisch"
-
-#~ msgid "Laothian"
-#~ msgstr "Laotisch"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Litauisch"
-
-#~ msgid "Latvian"
-#~ msgstr "Lettisch"
-
-#~ msgid "Macedonian"
-#~ msgstr "Mazedonisch"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malajalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongolisch"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Malaysisch"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepalesisch"
-
-#~ msgid "Dutch"
-#~ msgstr "Niederländisch"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norwegisch (Nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norwegisch (Bokmal)"
-
-#~ msgid "Oriya"
-#~ msgstr "Orija"
-
-#~ msgid "Punjabi"
-#~ msgstr "Pandschabi"
-
-#~ msgid "Polish"
-#~ msgstr "Polnisch"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugiesisch"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugiesisch (Brasilien)"
-
-#~ msgid "Romanian"
-#~ msgstr "Rumänisch"
-
-#~ msgid "Russian"
-#~ msgstr "Russisch"
-
-#~ msgid "Slovak"
-#~ msgstr "Slowakisch"
-
-#~ msgid "Slovenian"
-#~ msgstr "Slowenisch"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanisch"
-
-#~ msgid "Serbian"
-#~ msgstr "Serbisch"
-
-#~ msgid "Swedish"
-#~ msgstr "Schwedisch"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Schwedisch (Finnland)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamilisch"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugu"
-
-#~ msgid "Thai"
-#~ msgstr "Thai"
-
-#~ msgid "Turkish"
-#~ msgstr "Türkisch"
-
-#~ msgid "Uighur"
-#~ msgstr "Uigurisch"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ukrainisch"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "Usbekisch"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamesisch"
-
-#~ msgid "Walloon"
-#~ msgstr "Wallonisch"
-
-#~ msgid "Yiddish"
-#~ msgstr "Jiddisch"
-
-#~ msgid "Chinese"
-#~ msgstr "Chinesisch"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Chinesisch (vereinfacht)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Chinesisch (traditionell)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belgisch"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Englisch (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Englisch (Kanada)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Englisch (Irland)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Englisch (USA)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Englisch (Kanada)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Englisch (Kanada)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Englisch (Großbritannien)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Französisch (Kanada)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Französisch (Kanada)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Französisch (Kanada)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Deutsch (Schweiz)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Französisch (Kanada)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Deutsch (mit deadkeys)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Deutsch (Schweiz)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Englisch (Australien)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Deutsch (Schweiz)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Deutsch (Schweiz)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugiesisch (Brasilien)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugiesisch (Brasilien)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Spanisch (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Spanisch (Mexiko)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malajalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norwegisch"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Serbisch"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Chinesisch (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Chinesisch (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Chinesisch (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Chinesisch"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Chinesisch (vereinfacht)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabisch (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabisch (Ägypten)"
-
-#~ msgid "Other"
-#~ msgstr "Sonstige"
-
-#~ msgid "Unknown"
-#~ msgstr "Unbekannt"
-
-#~ msgid "English (US)"
-#~ msgstr "Englisch (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belgisch"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Tschechisch (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Französisch (Schweiz) "
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Deutsch (mit deadkeys)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugiesisch (Brasilien, US, Akzente)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovakisch (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Spanisch (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Spanisch (Lateinamerika)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Englisch (UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Umwandlung vereinfachtes/traditionelles Chinesisch"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Vereinfachtes in traditionelles Chinesisch umwandeln und umgekehrt"
-
-#~ msgid "SC-TC"
-#~ msgstr "VC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Umwandlung vereinfachtes->traditionelles Chinesisch"
-
-#~ msgid "No Conversion"
-#~ msgstr "Keine Umwandlung"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Vereinfacht zu traditionell"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Vereinfachtes Chinesisch in traditionelles Chinesisch umwandeln"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Traditionell zu vereinfacht"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Traditionelles Chinesisch in vereinfachtes Chinesisch umwandeln"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "VC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->VC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Smart Common Input Method Plattform "
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(c) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Aktivieren"
-
-#~ msgid "Name"
-#~ msgstr "Name"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Zeigerposition"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Die aktuelle Zeigerposition (in Zeichen gerechnet)."
-
-#~ msgid "Maximum length"
-#~ msgstr "Maximale Länge"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr "Maximale Anzahl angezeigter Zeichen. »0« bedeutet unbegrenzt."
-
-#~ msgid "Maximum width"
-#~ msgstr "Maximale Breite"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Maximale Breite der angezeigten Zeichenkette."
-
-#~ msgid "Has Frame"
-#~ msgstr "Mit Rahmen"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr ""
-#~ "»Nein« entfernt den umgebenden Rahmen von der angezeigten Zeichenkette."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Zeiger anzeigen"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "Wenn »ja«, wird ein blinkender Zeiger angezeigt."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Zeiger automatisch verschieben"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr ""
-#~ "Wenn »ja«, wird der Zeiger bei einem Mausklick automatisch verschoben."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Knopfdruck zum Übertragen"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr ""
-#~ "Wenn »ja«, wird der gewählte Ausdruck beim jeweiligen Knopfdruck zum "
-#~ "Programm übertragen."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Anzeigefläche automatisch an Zeichenkette anpassen"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "Bei »ja« ist die automatische Größenanpassung aktiviert."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr ""
-#~ "Wenn »ja«, wird der Zeiger bei einem Mausklick automatisch verschoben."
-
-#~ msgid "Width in chars"
-#~ msgstr "Breite in Zeichen"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr ""
-#~ "Anzahl der Zeichen, für die in der Anzeige Platz gelassen werden soll."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Verschiebeversatz"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr ""
-#~ "Anzahl der Pixel, um die die Anzeige außerhalb des Bildschirms nach links "
-#~ "verschoben wird"
-
-#~ msgid "Text"
-#~ msgstr "Text"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Inhalt der Zeichenkettenanzeige"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Gewählte _Tasten:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Tastencode:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Sondertasten:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Strg"
-
-#~ msgid "A_lt"
-#~ msgstr "_Alt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Umschalt"
-
-#~ msgid "_Release"
-#~ msgstr "_Loslassen"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "Su_per"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Bitte geben Sie zuerst einen Tastencode ein."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Drücken Sie eine Taste (oder eine Tastenkombination).\n"
-#~ "Dieser Dialog wird geschlossen, wenn die Tasten gelöst werden."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Erfassen der Tasten."
-
-#~ msgid "Key Selection"
-#~ msgstr "Tastenauswahl"
-
-#~ msgid "Orientation"
-#~ msgstr "Ausrichtung"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Die Ausrichtung des Systemabschnitts der Kontrollleiste."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Text"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amharisch"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Immer"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Optionen"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Deutsch/Tastatur"
-
-#~ msgid "English/European"
-#~ msgstr "Deutsch/Europäisch"
-
-#~ msgid "RAW CODE"
-#~ msgstr "Unicode Rohdaten"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(c) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Tastenkürzel:\n"
-#~ "\n"
-#~ " Steuerung+u:\n"
-#~ " Umschalten zwischen Multibyte-Codierung und Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " Eingabemethode zurücksetzen.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr ""
-#~ "Der Status der aktuell verwendeten Eingabemethode. Klicken Sie diesen an, "
-#~ "um ihn zu ändern."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Globale Einstellungen"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Stellen Sie die globalen Optionen ein, die von allen FrontEnd-Modulen "
-#~ "beachtet werden, einschließlich dem X11 FrontEnd, GKT IMModule, QT "
-#~ "IMModule, usw."
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Auslöser:"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Tasten zum Auslösen auswählen"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen die Eingabemethode SCIM an- und "
-#~ "ausgeschaltet wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Einschalten:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Tasten zum Einschalten auswählen"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen die Eingabemethode SCIM eingeschaltet "
-#~ "wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "A_usschalten"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Tasten zum Ausschalten auswählen"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen die Eingabemethode SCIM ausgeschaltet "
-#~ "wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Nächste Eingabemethode:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr ""
-#~ "Wählen Sie die Tastenkombinationen, um zur nächsten Eingabemethode zu "
-#~ "wechseln"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen zur nächsten Eingabemethode gewechselt "
-#~ "wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Vorherige Eingabemethode:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr ""
-#~ "Wählen Sie die Tastenkombinationen, um zur vorherigen Eingabemethode zu "
-#~ "wechseln"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen zur vorherigen Eingabemethode gewechselt "
-#~ "wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Zeige _Auswahlmenü für Eingabemethoden:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr ""
-#~ "Wählen Sie die Tastenkürzel, um das Auswahlmenü für Eingabemethoden "
-#~ "anzuzeigen"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tastenkombinationen, mit denen das Auswahlmenü für Eingabemethoden "
-#~ "angezeigt wird. Klicken Sie zum Ändern auf den rechten Knopf."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Tastaturlayout"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Sie sollten hier Ihr derzeit verwendetes Tastaturlayout einstellen, so "
-#~ "dass Eingabemethoden, die vom Tastaturlayout abhängig sind, korrekt "
-#~ "funktionieren."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Roheingabe ins Client-Fenster einbetten"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird die Roheingabe - die bisher "
-#~ "eingegebenen Zeichen vor einer endgültigen Auswahl - ins Client-"
-#~ "Eingabefenster eingebettet und nicht in einem Extrafenster angezeigt."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "Dieselbe Eingabemethode unter _allen Anwendungen verwenden."
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Wenn diese Option aktiviert ist, wird ein und dieselbe Eingabemethode von "
-#~ "allen Anwendungen gleichzeitig verwendet. Andernfalls kann jede Anwendung "
-#~ "eine andere Eingabemethode verwenden."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Tastenkombinationen"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Hier können Sie die installierten Eingabemethoden aktivieren/deaktivieren "
-#~ "und ihnen Tastenkürzel zuordnen."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Installierte Eingabemethoden:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "_Tastenkürzel ändern"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr ""
-#~ "Stellen Sie die mit der gewählten Eingabemethode assoziierten "
-#~ "Tastenkürzel ein."
-
-#~ msgid "Select _Filters"
-#~ msgstr "_Filter auswählen"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr ""
-#~ "Wählen Sie die Filter, die dieser Eingabemethode zugeordnet werden sollen."
-
-#~ msgid "_Expand"
-#~ msgstr "Er_weitern"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Erweitern Sie alle Sprachgruppen."
-
-#~ msgid "_Collapse"
-#~ msgstr "Ein_klappen"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Klappen Sie alle Sprachgruppen ein."
-
-#~ msgid "E_nable All"
-#~ msgstr "Alle _aktivieren"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Alle Eingabemethoden aktivieren."
-
-#~ msgid "_Disable All"
-#~ msgstr "Alle _deaktivieren"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Alle Eingabemethoden deaktivieren."
-
-#~ msgid "Filters"
-#~ msgstr "Filter"
-
-#~ msgid "Languages"
-#~ msgstr "Sprachen"
-
-#~ msgid "Description"
-#~ msgstr "Beschreibung"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Tastenkürzel für %s ändern"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Filter für %s wählen"
-
-#~ msgid "Move _Up"
-#~ msgstr "Nach _oben"
-
-#~ msgid "Move _Down"
-#~ msgstr "Nach _unten"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr ""
-#~ "Ein Kontrollleisten-Hilfsprogramm, das auf der GTK+-2.x-Bibliothek beruht."
-
-#~ msgid "On demand"
-#~ msgstr "Auf Anforderung"
-
-#~ msgid "Never"
-#~ msgstr "Nie"
-
-#~ msgid "ToolBar"
-#~ msgstr "Symbolleiste"
-
-#~ msgid "_Show:"
-#~ msgstr "_Zeige:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Automatisch ein_rasten"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Symbol für die Eingabe_methode anzeigen"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "_Name der Eingabemethode anzeigen"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "_Ausblenden nach (sek):"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Symbol »Immer im _Vordergrund« anzeigen"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Symbol »_Menü« anzeigen"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Symbol »_Hilfe« anzeigen"
-
-#~ msgid "Show _property label"
-#~ msgstr "_Bezeichnung der Eigenschaften anzeigen"
-
-#~ msgid "Input window"
-#~ msgstr "Eingabefenster"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Ein_gebettete Auswahlliste"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Vertikale Auswahlliste"
-
-#~ msgid "Misc"
-#~ msgstr "Verschiedenes"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Symbol im _Benachrichtigungsfeld anzeigen"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Fenster behält _Position"
-
-#~ msgid "_Font:"
-#~ msgstr "_Schriftart:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Wenn »Immer« gewählt ist, wird die Symbolleiste immer auf dem Bildschirm "
-#~ "angezeigt. Bei »Auf Anforderung« wird sie nur angezeigt, wenn SCIM "
-#~ "aktiviert ist. Bei »Nie« wird sie niemals angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird die Symbolleiste am Bildschirmrand "
-#~ "eingerastet."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Die Symbolleiste wird versteckt, nachdem die angegebene Zeit vergangen "
-#~ "ist. Diese Option ist nur verfügbar, wenn »Immer anzeigen« gewählt ist. "
-#~ "Geben Sie »0« ein, um dieses Verhalten zu unterdrücken. "
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird das Symbol der aktuellen "
-#~ "Eingabemethode auf der Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird der Name der aktuellen Eingabemethode "
-#~ "auf der Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird das Symbol »Immer im Vordergrund "
-#~ "halten« auf der Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird das Symbol »Menü« auf der "
-#~ "Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird das Symbol »Hilfe« auf der "
-#~ "Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, werden die Bezeichnungen der einzelnen "
-#~ "Eigenschaften der Eingabemethode auf der Symbolleiste angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird die Auswahlliste ins Eingabefenster "
-#~ "eingebettet."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird die Auswahlliste senkrecht angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, wird ein Symbol in der Kontrollleiste "
-#~ "angezeigt."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Wenn diese Option gewählt ist, werden Symbolleiste, Eingabefenster und "
-#~ "Auswahlliste immer an ihren jeweiligen Ausgangspositionen gehalten."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Die eingestellte Schriftart wird in Eingabefenster und Auswahlliste "
-#~ "verwendet."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Schriftart für die Benutzeroberfläche wählen"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Benutzeroberfläche"
-
-#~ msgid "IMEngine"
-#~ msgstr "Eingabemethoden"
-
-#~ msgid "Panel"
-#~ msgstr "Kontrollleiste"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Einstellungen der SCIM-Eingabemethoden"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Smart Common Input Method-Plattform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Grafisches Einrichtungswerkzeug</"
-#~ "span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Einstellungen der %s-Module.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Möchten Sie die Einstellung von SCIM wirklich verlassen?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Nicht alle Einstellungen können bei laufendem Programm neu geladen "
-#~ "werden. Starten Sie bitte SCIM neu, damit alle Änderungen übernommen "
-#~ "werden."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Einrichtung von SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr ""
-#~ "Integriertes Einrichtungswerkzeug, das auf der GTK Widget-Bibliothek "
-#~ "beruht."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Einrichtungswerkzeug für die Smart Common Input Method-Plattform"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Hilfe zu SCIM"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Eingabefenster und Symbolleiste festsetzen/verschiebbar machen."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Zeige eine kurze Hilfe zu SCIM und zur gewählten Eingabemethode."
-
-#~ msgid "Show command menu."
-#~ msgstr "Befehlsmenü anzeigen."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(c) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Einstellungen neu laden"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Werkzeugleiste festsetzen"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Symbolleiste verstecken"
-
-#~ msgid "Help ..."
-#~ msgstr "Hilfe ..."
-
-#~ msgid "Exit"
-#~ msgstr "Beenden"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "De"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "Tastatur"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "Πληκτρολόγιο"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
"Language: \n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "Teclado"
+++ /dev/null
-# Finnish translation for scim
-# Copyright (c) (c) 2006 Canonical Ltd, and Rosetta Contributors 2006
-# This file is distributed under the same license as the scim package.
-# Timo Jyrinki <timo.jyrinki@iki.fi>, 2006.
-# note: GFTT is at http://www.gnome.fi/
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: scim\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2006-05-24 16:51+0000\n"
-"Last-Translator: Timo Jyrinki <timo.jyrinki@iki.fi>\n"
-"Language-Team: Finnish <gnome-fi-laatu@lists.sourceforge.net>\n"
-"Language: fi\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-#, fuzzy
-msgid "Keyboard"
-msgstr "englanti/näppäimistö"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Näppäimen valinta"
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Näppäimen valinta"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Valinnat"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "saksa"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "englanti/näppäimistö"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Näppäimen valinta"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "englanti/näppäimistö"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Valinnat"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "englanti/näppäimistö"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "englanti (amerikanenglanti)"
-
-#~ msgid "Amharic"
-#~ msgstr "amhara"
-
-#~ msgid "Arabic"
-#~ msgstr "arabia"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "arabia (Egypti)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "arabia (Libanon)"
-
-#~ msgid "Assamese"
-#~ msgstr "assami"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "azeri"
-
-#~ msgid "Belarusian"
-#~ msgstr "valkovenäjä"
-
-#~ msgid "Bulgarian"
-#~ msgstr "bulgaria"
-
-#~ msgid "Bengali"
-#~ msgstr "bengali"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "bengali (Intia)"
-
-#~ msgid "Tibetan"
-#~ msgstr "tiibetti"
-
-#~ msgid "Bosnian"
-#~ msgstr "bosnia"
-
-#~ msgid "Catalan"
-#~ msgstr "katalaani"
-
-#~ msgid "Czech"
-#~ msgstr "tšekki"
-
-#~ msgid "Welsh"
-#~ msgstr "wales"
-
-#~ msgid "Danish"
-#~ msgstr "tanska"
-
-#~ msgid "German"
-#~ msgstr "saksa"
-
-#~ msgid "Greek"
-#~ msgstr "kreikka"
-
-#~ msgid "English"
-#~ msgstr "englanti"
-
-#~ msgid "English (Australian)"
-#~ msgstr "englanti (Australia)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "englanti (Kanada)"
-
-#~ msgid "English (British)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "englanti (Irlanti)"
-
-#~ msgid "English (American)"
-#~ msgstr "englanti (amerikanenglanti)"
-
-#~ msgid "Spanish"
-#~ msgstr "espanja"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "espanja (Mexico)"
-
-#~ msgid "Estonian"
-#~ msgstr "viro"
-
-#~ msgid "Basque"
-#~ msgstr "baski"
-
-#~ msgid "Persian"
-#~ msgstr "persia"
-
-#~ msgid "Finnish"
-#~ msgstr "suomi"
-
-#~ msgid "French"
-#~ msgstr "ranska"
-
-#~ msgid "Irish"
-#~ msgstr "irlanti"
-
-#~ msgid "Galician"
-#~ msgstr "galicia"
-
-#~ msgid "Gujarati"
-#~ msgstr "gudžarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "heprea"
-
-#~ msgid "Hindi"
-#~ msgstr "hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "kroatia"
-
-#~ msgid "Hungarian"
-#~ msgstr "unkari"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "romania"
-
-#~ msgid "Interlingua"
-#~ msgstr "interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "indonesia"
-
-#~ msgid "Icelandic"
-#~ msgstr "islanti"
-
-#~ msgid "Italian"
-#~ msgstr "italia"
-
-#~ msgid "Japanese"
-#~ msgstr "japani"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "saksa"
-
-#~ msgid "Kazakh"
-#~ msgstr "kazak"
-
-#~ msgid "Cambodian"
-#~ msgstr "kampodia/khmer"
-
-#~ msgid "Kannada"
-#~ msgstr "kannada"
-
-#~ msgid "Korean"
-#~ msgstr "korea"
-
-#~ msgid "Laothian"
-#~ msgstr "laos"
-
-#~ msgid "Lithuanian"
-#~ msgstr "liettua"
-
-#~ msgid "Latvian"
-#~ msgstr "latvia"
-
-#~ msgid "Macedonian"
-#~ msgstr "makedonia"
-
-#~ msgid "Malayalam"
-#~ msgstr "malajalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "mongolia"
-
-#~ msgid "Marathi"
-#~ msgstr "marathi"
-
-#~ msgid "Malay"
-#~ msgstr "malaiji"
-
-#~ msgid "Nepali"
-#~ msgstr "nepali"
-
-#~ msgid "Dutch"
-#~ msgstr "hollanti"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "norja (nykynorja)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "norja (kirjanorja)"
-
-#~ msgid "Oriya"
-#~ msgstr "oriya"
-
-#, fuzzy
-#~ msgid "Punjabi"
-#~ msgstr "panjabi"
-
-#~ msgid "Polish"
-#~ msgstr "puola"
-
-#~ msgid "Portuguese"
-#~ msgstr "portugali"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "portugali (Brasilia)"
-
-#~ msgid "Romanian"
-#~ msgstr "romania"
-
-#~ msgid "Russian"
-#~ msgstr "venäjä"
-
-#~ msgid "Slovak"
-#~ msgstr "slovakki"
-
-#~ msgid "Slovenian"
-#~ msgstr "sloveeni"
-
-#~ msgid "Albanian"
-#~ msgstr "albania"
-
-#~ msgid "Serbian"
-#~ msgstr "serbia"
-
-#~ msgid "Swedish"
-#~ msgstr "ruotsi"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "ruotsi (Suomi)"
-
-#~ msgid "Tamil"
-#~ msgstr "tamili"
-
-#~ msgid "Telugu"
-#~ msgstr "telugu"
-
-#~ msgid "Thai"
-#~ msgstr "thai"
-
-#~ msgid "Turkish"
-#~ msgstr "turkki"
-
-#~ msgid "Uighur"
-#~ msgstr "uiguuri"
-
-#~ msgid "Ukrainian"
-#~ msgstr "ukraina"
-
-#~ msgid "Urdu"
-#~ msgstr "urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "uzbekki"
-
-#~ msgid "Vietnamese"
-#~ msgstr "vietnam"
-
-#~ msgid "Walloon"
-#~ msgstr "valloni"
-
-#~ msgid "Yiddish"
-#~ msgstr "jiddiš"
-
-#~ msgid "Chinese"
-#~ msgstr "kiina"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "kiina (yksinkertaistettu)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "kiina (perinteinen)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "belgia"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "englanti (USA)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "englanti (Kanada)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "englanti (Irlanti)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "englanti (amerikanenglanti)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "englanti (Kanada)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "englanti (Kanada)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Ranska (Kanada)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Ranska (Kanada)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Ranska (Kanada)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Saksa (sveitsiläinen)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Ranska (Kanada)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Saksa (kuolleilla näppäimillä)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Saksa (sveitsiläinen)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "englanti (Australia)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Saksa (sveitsiläinen)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Saksa (sveitsiläinen)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "portugali (Brasilia)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "portugali (Brasilia)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "espanja (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "espanja (Mexico)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "malajalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "norja"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "serbia"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "kiina (perinteinen)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "kiina (perinteinen)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "kiina (perinteinen)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "kiina"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "kiina (yksinkertaistettu)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "arabia (Egypti)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "arabia (Egypti)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "arabia (Egypti)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "arabia (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "arabia (Egypti)"
-
-#~ msgid "Other"
-#~ msgstr "Muu"
-
-#~ msgid "Unknown"
-#~ msgstr "Tuntematon"
-
-#~ msgid "English (US)"
-#~ msgstr "englanti (USA)"
-
-#~ msgid "Belgian"
-#~ msgstr "belgia"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "tšekki (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Ranska (Sveitsi)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Saksa (kuolleilla näppäimillä)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "portugali (Brasilia/US-aksenttimerkit)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "slovakia (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "espanja (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "espanja (latinalainen amerikka)"
-
-#~ msgid "English (UK)"
-#~ msgstr "englanti (Iso-Britannia)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Yksinkertaistetun/perinteisen kiinan muunnos"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Muunna yksinkertaistetun ja perinteisen kiinan välillä"
-
-#~ msgid "SC-TC"
-#~ msgstr "yk-pk"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Yksinkertaistetun/perinteisen kiinan muunnos"
-
-#~ msgid "No Conversion"
-#~ msgstr "Ei muunnosta"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Yksinkertaistetusta perinteiseksi"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Muunna yksinkertaistettu kiina perinteiseksi kiinaksi"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Perinteisestä yksinkertaistetuksi"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Muunna perinteisestä kiinasta yksinkertaistetuksi kiinaksi"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "yk->pk"
-
-#~ msgid "TC->SC"
-#~ msgstr "pk->yk"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Smart Common Input Method -alusta "
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Ota käyttöön"
-
-#~ msgid "Name"
-#~ msgstr "Nimi"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Kohdistimen paikka"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Syöttökohdistimen nykyinen paikka merkeissä."
-
-#~ msgid "Maximum length"
-#~ msgstr "Suurin pituus"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Suurin määrä merkkejä tälle merkkijononäytölle. Nolla, jos ei aseteta."
-
-#~ msgid "Maximum width"
-#~ msgstr "Suurin leveys"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Suurin leveys tälle merkkijononäytölle."
-
-#~ msgid "Has Frame"
-#~ msgstr "Reunus"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FALSE poistaa ulkopuolisen reunan merkkijononäytöstä."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Piirrä kohdistin"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "TRUE piirtää vilkkuvan kohdistimen."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Kohdistimen siirto"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "TRUE siirtää kohdistinta automaattisesti hiiren napsautukseta."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Edelleenlähetä painikkeen painallus"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "TRUE lähettää painikkeen painalluksen edelleen käyttäjäohjelmalle."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Muuta elementin kokoa merkkijonon mukaan"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "TRUE Automaattinen koon muuttaminen käytössä."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "TRUE siirtää kohdistinta automaattisesti hiiren napsautukseta."
-
-#~ msgid "Width in chars"
-#~ msgstr "Leveys merkeissä"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Merkkijononäyttöön jätettävän tyhjän tilan määrä merkeissä."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Vieritysmäärä"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "Merkkijonon vierityksen määrä pikseleissä"
-
-#~ msgid "Text"
-#~ msgstr "Teksti"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Merkkijononäytön sisältö"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Valitus _näppäimet:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Näppäinkoodi:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Pohjassa olevat näppäimet:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Release"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Syötä näppäinkoodi ensin."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Paina näppäintä (tai näppäinyhdistelmää).\n"
-#~ "Tämä ikkuna sulkeutuu kun näppäin vapautetaan."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Odotetaan näppäintä."
-
-#~ msgid "Key Selection"
-#~ msgstr "Näppäimen valinta"
-
-#~ msgid "Orientation"
-#~ msgstr "Suunta"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Ilmoitusalueen suunta."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Teksti"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "amhara"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Aina"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Valinnat"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "englanti/näppäimistö"
-
-#~ msgid "English/European"
-#~ msgstr "englanti/eurooppalainen"
-
-#~ msgid "RAW CODE"
-#~ msgstr "RAW CODE"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Pikanäppäimet:\n"
-#~ "\n"
-#~ " Ctrl+u:\n"
-#~ " vaihda monitavukoodauksen ja Unicoden välillä.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " palauta syöttötavan oletusarvot.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Nykyisen syöttötavan tila. Napsauta vaihtaaksesi."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Globaalit asetukset"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Aseta yleiset kaikkien edustaohjelmien käyttämät asetukset, mukaanlukien "
-#~ "X11-, GTK-, IMModule-, QT IMModule-ohjelmat"
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Liipaisin"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Valitse liipaisinnäppäimet"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat jotka ottavat käyttöön / poistavat käytöstä SCIM-"
-#~ "syöttötavan. Napsauta oikealla olevaa painiketta muokataksesi sitä."
-
-#~ msgid "Turn _On:"
-#~ msgstr "Ota _käyttöön"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Valitse \"ota käyttöön\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat jotka ottavat SCIM-syöttötavan käyttöön. Napsauta "
-#~ "oikealla olevaa painiketta muokataksesi sitä."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "_Poista käytöstä:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Valitse \"poista käytöstä\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat jotka poistavat SCIM-syöttötavan käyttöstä. Napsauta "
-#~ "oikealla olevaa painiketta muokataksesi sitä."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Seuraava syöttötapa:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Valitse \"seuraava syöttötapa\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat joilla vaihdetaan seuraavaan syöttötapaan. Napsauta "
-#~ "painiketta oikealla muokataksesi."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Edellinen syöttötapa:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Valitse \"edellinen syöttötapa\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat joilla vaihdetaan edelliseen syöttötapaan. Napsauta "
-#~ "painiketta oikealla muokataksesi."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Näytä syöttötapa_valikko"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Valitse näppäimet joilla syöttötapavalikko näytetään"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat joilla syöttötapavalikko näytetään. Napsauta painiketta "
-#~ "oikealla muokataksesi."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Näppäimistöasettelu"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Valitse nykyinen näppäimistöasettelu tässä, jotta näppäimistöasettelusta "
-#~ "välittävät syöttötavat toimisivat oikein."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "_Sisällytä \"preedit\"-merkkijono asiakasikkunaan"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Jos tämä on valittu, \"preedit\"-merkkijono näytetään suoraan "
-#~ "asiakasikkunassa erillisen kelluvan ikkunan sijaan."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "_Jaa sama syöttötapa kaikkien ohjelmien kanssa"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Jos tämä on valittu, yhtä syöttötapaa käytetään kaikissa ohjelmissa. "
-#~ "Muutoin eri syöttötapa voidaan valita eri ohjelmille."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Pikanäppäimet"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Voit ottaa käyttöön / pois käytöstä syöttötapoja ja asettaa pikanäppäimiä "
-#~ "syöttötavoille."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Asennetut syöttötapapalvelut:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Muokkaa _pikanäppäimiä"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Muokkaa valittuun syöttötapaan liittyviä pikanäppäimiä."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Valitse _suotimet"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Valitse suotimet jotka liitetään tähän syöttötapaan."
-
-#~ msgid "_Expand"
-#~ msgstr "_Laajenna"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Laajenna kaikki kieliluokat"
-
-#~ msgid "_Collapse"
-#~ msgstr "_Supista"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Supista kaikki kieliluokat"
-
-#~ msgid "E_nable All"
-#~ msgstr "Ota _käyttöön kaikki"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Ottaa kaikki syöttötavat käyttöön."
-
-#~ msgid "_Disable All"
-#~ msgstr "_Poista käytöstä kaikki"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Poistaa kaikki syöttötavat käytöstä."
-
-#~ msgid "Filters"
-#~ msgstr "Suotimet"
-
-#~ msgid "Languages"
-#~ msgstr "Kielet"
-
-#~ msgid "Description"
-#~ msgstr "Kuvaus"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Muokkaa pikanäppäimiä: %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Valitse suotimet: %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Siirrä _ylös"
-
-#~ msgid "Move _Down"
-#~ msgstr "Siirrä _alas"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "GTK+-2.x-kirjastoon perustuva paneelisovellus"
-
-#~ msgid "On demand"
-#~ msgstr "Tarvittaessa"
-
-#~ msgid "Never"
-#~ msgstr "Ei koskaan"
-
-#~ msgid "ToolBar"
-#~ msgstr "Työkalupalkki"
-
-#~ msgid "_Show:"
-#~ msgstr "_Näytä:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Automaattinen k_ohdistus"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Näytä _syöttötapakuvake"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Näytä syöttätavan _nimi"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Piilota aika_katkaisu"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Näytä _tikkukuvake"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Näytä _valikkokuvake"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Näytä o_hjekuvake"
-
-#~ msgid "Show _property label"
-#~ msgstr "Näytä ominaisuusnimi_ö"
-
-#~ msgid "Input window"
-#~ msgstr "Syöttöikkuna"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "S_ulautettu etsintätaulukko"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Pystysuuntainen etsintätaulukko"
-
-#~ msgid "Misc"
-#~ msgstr "Muut"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Näytä _ilmoitusalueen kuvake"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Koh_dista ikkunat"
-
-#~ msgid "_Font:"
-#~ msgstr "_Kirjasin:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Jos valinta \"aina\" on valittu, työkalupalkki näytetään aina ruudulla. "
-#~ "Jos \"tarvittaessa\" on valittu, se näytetään vain SCIMin ollessa "
-#~ "aktiivisena. Valinnalla \"Never\" palkkia ei näytetä koskaan."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr "Jos tämä on valittu, työkalupalkki kohdistetaan ruudun reunaan."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Työkalupalkki piilotetaan kun määritelty aika on kulunut. Tämä valinta on "
-#~ "kelvollinen vain jos \"Näytä aina\" on valittu. Aseta nollaksi "
-#~ "poistaaksesi piilotuksen käytöstä."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr "Jos tämä on valittu, syöttötapakuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr "Jos tämä on valittu, syöttötavan nimi näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr "Jos tämä on valittu, kohdistuskuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr "Jos tämä on valittu, valikkokuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr "Jos tämä on valittu, ohjekuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Jos tämä on valittu, syöttötapa-asetusten teksti näytetään "
-#~ "työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr "Jos tämä on valittu, etsintätaulukko sisällytetään syöttöikkunaan."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr "Jos tämä on valittu, etsintätaulukko näytetään pystysuuntaisesti."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Jos tämä on valittu, ilmoitusalueen kuvake näytetään työpöydän "
-#~ "työkalupalkissa"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Jos tämä on valittu, työkalupalkki, syöttö- ja etsintätaulukkoikkunat "
-#~ "kohdistetaan alkuperäisiin sijainteihinsa."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Kirjasinasetusta käytetään syöttötapa- ja etsintätaulukkoikkunoihin."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Valitse käyttöliittymän kirjasin"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Edustaohjelma"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Paneeli"
-
-#~ msgid "Extra"
-#~ msgstr "Ekstra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "SCIM syöttötapojen valinta"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Smart Common Input Method -alusta</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Graafinen asetusohjelma</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Asetukset moduulille \"%s\".</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Haluatko poistua SCIMin asetuksista?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Kaikkia asetuksia ei voida vaihtaa lennossa. Käynnistä SCIM uudelleen "
-#~ "ottaaksesi kaikki uudet asetukset käyttöön."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "SCIM-asetukset"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "GTK-elementtikirjastoon perustuva asetusohjelma."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Asetusohjelma Smart Common Input Method -alustalle"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIM-ohje"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Kohdista tai poista syöttöikkunan ja työkalurivun kohdistus."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Näytä lyhyt ohje SCIMistä sekä nykyinen syöttötapa."
-
-#~ msgid "Show command menu."
-#~ msgstr "Näytä komentovalikko."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Lataa asetukset uudelleen"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Kohdista ikkunat"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Piilota työkalupalkki"
-
-#~ msgid "Help ..."
-#~ msgstr "Ohje ..."
-
-#~ msgid "Exit"
-#~ msgstr "Poistu"
+++ /dev/null
-# translation of fr.po to French
-# This file is distributed under the same license as the scim package.
-# Copyright (C) 2004 James Su <suzhe@tsinghua.org.cn>.
-#
-# Damien Menanteau <MengDaming@nerdshack.com>, 2005.
-msgid ""
-msgstr ""
-"Project-Id-Version: fr\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2005-12-11 13:54+0800\n"
-"Last-Translator: Damien Menanteau <MengDaming@nerdshack.com>\n"
-"Language-Team: French\n"
-"Language: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-#, fuzzy
-msgid "Keyboard"
-msgstr "Français/Clavier"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Sélection de Touche"
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Sélection de Touche"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Options"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Allemand"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Français/Clavier"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Sélection de Touche"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Français/Clavier"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Options"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Français/Clavier"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Anglais (Etats-Unis)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amharique"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabe"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabe (Egypte)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabe (Liban)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamais"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbaïdjanais"
-
-#~ msgid "Belarusian"
-#~ msgstr "Biélorusse"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgare"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengali"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengali (Inde)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibétain"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosniaque"
-
-#~ msgid "Catalan"
-#~ msgstr "Catalan"
-
-#~ msgid "Czech"
-#~ msgstr "Tchèque"
-
-#~ msgid "Welsh"
-#~ msgstr "Gallois"
-
-#~ msgid "Danish"
-#~ msgstr "Danois"
-
-#~ msgid "German"
-#~ msgstr "Allemand"
-
-#~ msgid "Divehi"
-#~ msgstr "Maldivien"
-
-#~ msgid "Greek"
-#~ msgstr "Grec"
-
-#~ msgid "English"
-#~ msgstr "Anglais"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Anglais (Australie)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Anglais (Canada)"
-
-#~ msgid "English (British)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Anglais (Irlande)"
-
-#~ msgid "English (American)"
-#~ msgstr "Anglais (Etats-Unis)"
-
-#~ msgid "Spanish"
-#~ msgstr "Espagnol"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Espagnol (Mexique)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estonien"
-
-#~ msgid "Basque"
-#~ msgstr "Basque"
-
-#~ msgid "Persian"
-#~ msgstr "Perse"
-
-#~ msgid "Finnish"
-#~ msgstr "Finnois"
-
-#~ msgid "French"
-#~ msgstr "Français"
-
-#~ msgid "Irish"
-#~ msgstr "Irlandais"
-
-#~ msgid "Galician"
-#~ msgstr "Galicien"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hébreu"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindou"
-
-#~ msgid "Croatian"
-#~ msgstr "Croate"
-
-#~ msgid "Hungarian"
-#~ msgstr "Hongrois"
-
-#~ msgid "Armenian"
-#~ msgstr "Arménien"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonésien"
-
-#~ msgid "Icelandic"
-#~ msgstr "Islandais"
-
-#~ msgid "Italian"
-#~ msgstr "Italien"
-
-#~ msgid "Japanese"
-#~ msgstr "Japonais"
-
-#~ msgid "Georgian"
-#~ msgstr "Géorgien"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazakh"
-
-#~ msgid "Cambodian"
-#~ msgstr "Khmer"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannara"
-
-#~ msgid "Korean"
-#~ msgstr "Coréen"
-
-#~ msgid "Laothian"
-#~ msgstr "Laotien"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Lituanien"
-
-#~ msgid "Latvian"
-#~ msgstr "Letton"
-
-#~ msgid "Macedonian"
-#~ msgstr "Macédonien"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malayalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongol"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Malais"
-
-#~ msgid "Burmese"
-#~ msgstr "Birman"
-
-#~ msgid "Nepali"
-#~ msgstr "Népalais"
-
-#~ msgid "Dutch"
-#~ msgstr "Néerlandais"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norvégien (Nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norvégien (Bokmal)"
-
-#~ msgid "Oriya"
-#~ msgstr "Oriya"
-
-#~ msgid "Punjabi"
-#~ msgstr "Punjabi"
-
-#~ msgid "Polish"
-#~ msgstr "Polonais"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugais"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugais (Brésil)"
-
-#~ msgid "Romanian"
-#~ msgstr "Roumain"
-
-#~ msgid "Russian"
-#~ msgstr "Russe"
-
-#~ msgid "Sinhala"
-#~ msgstr "Singhalais"
-
-#~ msgid "Slovak"
-#~ msgstr "Slovaque"
-
-#~ msgid "Slovenian"
-#~ msgstr "Slovène"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanais"
-
-#~ msgid "Serbian"
-#~ msgstr "Serbe"
-
-#~ msgid "Swedish"
-#~ msgstr "Suédois"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Suédois (Finlande)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamoul"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugu"
-
-#~ msgid "Thai"
-#~ msgstr "Thaï"
-
-#~ msgid "Turkish"
-#~ msgstr "Turc"
-
-#~ msgid "Uighur"
-#~ msgstr "Uighur"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ukrainien"
-
-#~ msgid "Urdu"
-#~ msgstr "Ourdou"
-
-#~ msgid "Uzbek"
-#~ msgstr "Ouzbèque"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamien"
-
-#~ msgid "Walloon"
-#~ msgstr "Wallon"
-
-#~ msgid "Yiddish"
-#~ msgstr "Yiddish"
-
-#~ msgid "Chinese"
-#~ msgstr "Chinois"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Chinois (simplifié)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Chinois (traditionnel)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belge"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Anglais (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Anglais (Canada)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Anglais (Irlande)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Anglais (Etats-Unis)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Anglais (Canada)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Anglais (Canada)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Anglais (Royaume Uni)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Français (Canada)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Français (Canada)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Français (Canada)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Allemand (Suisse)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Français (Canada)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Allemand (avec touches mortes)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Allemand (Suisse)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Anglais (Australie)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Allemand (Suisse)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Allemand (Suisse)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugais (Brésil)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugais (Brésil)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Espagnol (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Espagnol (Mexique)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malayalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norvégien"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Serbe"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Chinois (traditionnel)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Chinois (traditionnel)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Chinois (traditionnel)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Chinois"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Chinois (simplifié)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabe (Egypte)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabe (Egypte)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabe (Egypte)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabe (Liban)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabe (Egypte)"
-
-#~ msgid "Other"
-#~ msgstr "Autre"
-
-#~ msgid "Unknown"
-#~ msgstr "Inconnu"
-
-#~ msgid "English (US)"
-#~ msgstr "Anglais (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belge"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Tchèque (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Français (Suisse)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Allemand (avec touches mortes)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugais (Brésil accents US)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovaque (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Espagnol (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Espagnol (Amérique latine)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Anglais (GB)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Conversion Chinois Simplifié-Traditionnel"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Conversion entre chinois simplifié et chinois traditionnel"
-
-#~ msgid "SC-TC"
-#~ msgstr "CS-CT"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Conversion Chinois Simplifié-Traditionnel"
-
-#~ msgid "No Conversion"
-#~ msgstr "Pas de conversion"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Simplifié vers Traditionnel"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Conversion du chinois simplifié en chinois traditionnel"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Traditionnel vers Simplifié"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Conversion du chinois traditionnel en chinois simplifié"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "CS->CT"
-
-#~ msgid "TC->SC"
-#~ msgstr "CT->CS"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Plateforme Smart Common Input Method"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ " :\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Activer"
-
-#~ msgid "Name"
-#~ msgstr "Nom"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Position du Curseur"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Position courante du curseur d'insertion dans les caractères."
-
-#~ msgid "Maximum length"
-#~ msgstr "Longueur maximale"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Nombre maximum de caractères pour cette vue de chaîne de caractères. Zero "
-#~ "si pas de maximum."
-
-#~ msgid "Maximum width"
-#~ msgstr "Largeur maximale"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Largeur maximale de cette vue de chaîne de caractères."
-
-#~ msgid "Has Frame"
-#~ msgstr "Avec Cadre"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FAUX supprime le cadre extérieur de la vue de chaîne de caractères."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Affichage du curseur"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "VRAI Affichage d'un curseur clignotant."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Déplacement automatique du curseur"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr ""
-#~ "VRAI Déplacement automatique de la position du curseur sur clic de souris."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Transmission événement d'appui de bouton"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr ""
-#~ "VRAI Fait suivre les événements d'appui de bouton vers le programme "
-#~ "client."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Redimensionnement automatique à la taille de la chaîne"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "VRAI Redimensionnement automatique activé."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr ""
-#~ "VRAI Déplacement automatique de la position du curseur sur clic de souris."
-
-#~ msgid "Width in chars"
-#~ msgstr "Largeur en caractères"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr ""
-#~ "Nombre de caractères à laisser vides dans la vue de chaîne de caractères."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Décalage"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr ""
-#~ "Nombre de pixels de la vue de chaîne de caractères décalés à gauche en "
-#~ "dehors de l'écran"
-
-#~ msgid "Text"
-#~ msgstr "Texte"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Le contenu de la vue de chaîne de caractères"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "_Touches Sélectionnées :"
-
-#~ msgid "Key Code:"
-#~ msgstr "Code Touche:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Modificateurs:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "_Alt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Maj"
-
-#~ msgid "_Release"
-#~ msgstr "_Relâche"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Veuillez d'abord entrer un code de touche."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Appuyer sur une touche (ou une combinaison de touches).\n"
-#~ "Cette fenêtre se fermera dès que la touche sera relâchée."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Capture de touche."
-
-#~ msgid "Key Selection"
-#~ msgstr "Sélection de Touche"
-
-#~ msgid "Orientation"
-#~ msgstr "Orientation"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Orientation du tiroir."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Texte"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amharique"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Toujours"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Options"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Français/Clavier"
-
-#~ msgid "English/European"
-#~ msgstr "Français/Européen"
-
-#~ msgid "RAW CODE"
-#~ msgstr "CODE BRUT"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Racourcis :\n"
-#~ "\n"
-#~ " Ctrl+u :\n"
-#~ " bascule entre encodage Multi-octets et Unicode.\n"
-#~ "\n"
-#~ " Echap :\n"
-#~ " réinitialise la méthode de saisie.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Etat de la méthode de saisie courante. Cliquer pour la modifier."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Configuration globale"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Configurer des options globales utilisées par tous les modules frontaux, "
-#~ "incluant le frontal X11, GTK IMModule, QT IMModule etc."
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Déclencheur :"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Sélectionner les touches d'activation"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Touches pour activer/désactiver SCIM. Cliquer sur le bouton de droite "
-#~ "pour les modifier."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Activer:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Sélectionner les touches d'activation"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Touches pour activer SCIM. Cliquer sur le bouton de droite pour les "
-#~ "modifier."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "Désac_tiver:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Sélectionner les touches de désactivation"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Touches pour désactiver SCIM. Cliquer sur le bouton de droite pour les "
-#~ "modifier."
-
-#~ msgid "_Next input method:"
-#~ msgstr "Méthode de saisie _Suivante :"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Sélectionner les touches pour la méthode de saisie suivante"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Touches pour aller à la méthode de saisie suivante. Cliquer sur le bouton "
-#~ "de droite pour les modifier."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "Méthode de saisie _Précédente :"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Sélectionner les touches pour la méthode de saisie précédente"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Touches pour revenir à la méthode de saisie précédente. Cliquer sur le "
-#~ "bouton de droite pour les modifier."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Accès au _Menu des méthodes de saisie :"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr ""
-#~ "Sélectionner les touches pour accéder au menu des méthodes de saisie"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Touches pour accéder au menu des méthodes de saisie. Cliquer sur le "
-#~ "bouton de droite pour les modifier."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Type de Clavier:"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Indiquez ici le type de clavier que vous utilisez afin que les méthodes "
-#~ "de saisie qui dépendent du type de clavier puissent fonctionner "
-#~ "correctement."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Insérer les chaîne en préédition dans la fenêtre cliente"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la table de préédition est affichée "
-#~ "directement dans la fenêtre de saisie, et non pas dans une fenêtre "
-#~ "indépendante."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "_Partage de la même méthode de saisie entre toutes les applications"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la même méthode de saisie peut être "
-#~ "utilisée par toutes les applications en même temps. Dans le cas "
-#~ "contraire, chaque application utilise sa propre méthode de saisie."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Raccourcis"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Ici, vous pouvez activer/désactiver les méthodes de saisie et les jeux de "
-#~ "raccourcis pour les méthodes de saisie."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Services de méthode de saisie installés :"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Editer les _Raccourcis"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Editer les raccourcis associés à la méthode de saisie sélectionnée."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Sélectionner les _Filtres"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Sélectionner les Filtres à associer à cette méthode de saisie."
-
-#~ msgid "_Expand"
-#~ msgstr "_Ouvrir"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Ouvrir toutes les catégories de langage."
-
-#~ msgid "_Collapse"
-#~ msgstr "_Refermer"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Fermer toutes les catégories de langage."
-
-#~ msgid "E_nable All"
-#~ msgstr "Tout Activer"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Activer toutes les méthodes de saisie."
-
-#~ msgid "_Disable All"
-#~ msgstr "Tout Désactiver"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Désactiver toutes les méthodes de saisie."
-
-#~ msgid "Filters"
-#~ msgstr "Filtres"
-
-#~ msgid "Languages"
-#~ msgstr "Langues"
-
-#~ msgid "Description"
-#~ msgstr "Description"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Editer les raccourcis pour %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Sélectionner les filtres pour %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "_Monter"
-
-#~ msgid "Move _Down"
-#~ msgstr "_Descendre"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Un panneau serveur basé sur la librairie GTK+-2.x."
-
-#~ msgid "On demand"
-#~ msgstr "A la demande"
-
-#~ msgid "Never"
-#~ msgstr "Jamais"
-
-#~ msgid "ToolBar"
-#~ msgstr "Barre d'Outils"
-
-#~ msgid "_Show:"
-#~ msgstr "_Afficher"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Aligne_ment automatique"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Affichage icône méthode de _saisie"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Affichage _nom méthode de saisie"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "_Délai avant masquage :"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Affichage icône d'épin_glage fenêtre"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Afficher l'icône de m_enu"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Affichage icône d'_aide"
-
-#~ msgid "Show _property label"
-#~ msgstr "Affichage label de p_ropriété"
-
-#~ msgid "Input window"
-#~ msgstr "Fenêtre de saisie"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Table de recherche _embarquée"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "Table de recherche _verticale"
-
-#~ msgid "Misc"
-#~ msgstr "Divers"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Affichage icône barre de _tâches"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Epinglage _fenêtres"
-
-#~ msgid "_Font:"
-#~ msgstr "P_olice :"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Quand l'option \"Toujours\" est sélectionnée, la barre d'outils est "
-#~ "affichée en permanence à l'écran. Quand l'option \"A la demande\" est "
-#~ "sélectionnée, la barre d'outils est affichée uniquement lorsque SCIM est "
-#~ "activé. Quand l'option \"Jamais\" estsélectionnée, la barre d'outils "
-#~ "n'est jamais affichée."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la barre d'outil s'aligne "
-#~ "automatiquement sur le bord de l'écran."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "La barre d'outils sera masquée automatiquement après l'expiration de ce "
-#~ "délai. Cette option n'est valide que si l'option \"Afficher Toujours\" "
-#~ "est sélectionnée. Une valeur de délai de 0 supprime ce comportement."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône de la méthode de saisie est "
-#~ "inséré dans la barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, le nom de la méthode de saisie est "
-#~ "inséré dans la barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône d'épinglage de fenêtre est "
-#~ "inséré dans la barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône de menu est inséré dans la "
-#~ "barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône d'aide est inséré dans la "
-#~ "barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, le label des propriétés de la "
-#~ "méthode de saisie est inséré dans la barre d'outils."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la table de recherche est embarquée "
-#~ "dans la fenêtre de saisie."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, la table de recherche est affichée "
-#~ "verticalement."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, l'icône est inséré dans la barre de "
-#~ "tâches du bureau."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Quand cette option est sélectionnée, les fenêtres de saisie et de "
-#~ "recherche sont maintenues à leur position originale."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "La police de caractères configurée est utilisée dans les fenêtres de "
-#~ "saisie et de recherche."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Police de Caractères"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Interface"
-
-#~ msgid "IMEngine"
-#~ msgstr "Moteur de Saisie"
-
-#~ msgid "Panel"
-#~ msgstr "Panneau"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Configuration de la Méthode de Saisie SCIM"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Plateforme Smart Common Input Method</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Utilitaire de Configuration</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Configuration des modules %s.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Etes vous sûr de vouloir quitter SCIM Config. ?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Certains des paramètres de configuration ne peuvent pas être pris en "
-#~ "compte automatiquement. N'oubliez pas de redémarrer SCIM afin que toutes "
-#~ "les nouvelles valeurs de configuration soient prises en compte."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Configuration de SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr ""
-#~ "Utilitaire de configuration intégré basé sur la librairie GTK Widget."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr ""
-#~ "Utilitaire de configuration de la plateforme \"Smart Common Input Method\""
-
-#~ msgid "SCIM Help"
-#~ msgstr "Aide SCIM"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Epingle la fenêtre de saisie et la barre d'outils."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr ""
-#~ "Affiche une aide succincte sur SCIM et la méthode de saisie courante."
-
-#~ msgid "Show command menu."
-#~ msgstr "Afficher le menu des commandes."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Recharger la Configuration"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Epingler les Fenêtres"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Masquer la Barre d'Outils"
-
-#~ msgid "Help ..."
-#~ msgstr "Aide ..."
-
-#~ msgid "Exit"
-#~ msgstr "Quitter"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "Fr"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "Clavier"
+++ /dev/null
-# translation of it.po to Italian
-# translation of scim.po to Italian
-# translation of scim_1_0-it.po to Italian
-# This file is distributed under the same license as the PACKAGE package.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
-# Federico Zenith <zenith@chemeng.ntnu.no>, 2004, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: it\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2005-12-13 00:36+0100\n"
-"Last-Translator: Federico Zenith <zenith@chemeng.ntnu.no>\n"
-"Language-Team: Italian <kde-i18n-it@kde.org>\n"
-"Language: it\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-#, fuzzy
-msgid "Keyboard"
-msgstr "Inglese/Tastiera"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Selezione dei tasti"
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Selezione dei tasti"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Opzioni"
-
-#, fuzzy
-#~ msgid "Auto capitalization"
-#~ msgstr "Divisione automatica:"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Generico"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Inglese/Tastiera"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Selezione dei tasti"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Inglese/Tastiera"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Opzioni"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Inglese/Tastiera"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Inglese (americano)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amarico"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabo"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabo (Egitto)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabo (Libano)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamese"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbaigiano"
-
-#~ msgid "Belarusian"
-#~ msgstr "Bielorusso"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgaro"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengalese"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengalese (India)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetano"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosniaco"
-
-#~ msgid "Catalan"
-#~ msgstr "Catalano"
-
-#~ msgid "Czech"
-#~ msgstr "Ceco"
-
-#~ msgid "Welsh"
-#~ msgstr "Gallese"
-
-#~ msgid "Danish"
-#~ msgstr "Danese"
-
-#~ msgid "German"
-#~ msgstr "Tedesco"
-
-#~ msgid "Greek"
-#~ msgstr "Greco"
-
-#~ msgid "English"
-#~ msgstr "Inglese"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Inglese (australiano)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Inglese (canadese)"
-
-#~ msgid "English (British)"
-#~ msgstr "Inglese (britannico)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Inglese (Irlanda)"
-
-#~ msgid "English (American)"
-#~ msgstr "Inglese (americano)"
-
-#~ msgid "Spanish"
-#~ msgstr "Spagnolo"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Spagnolo (Messico)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estone"
-
-#~ msgid "Basque"
-#~ msgstr "Basco"
-
-#~ msgid "Persian"
-#~ msgstr "Persiano"
-
-#~ msgid "Finnish"
-#~ msgstr "Finlandese"
-
-#~ msgid "French"
-#~ msgstr "Francese"
-
-#~ msgid "Irish"
-#~ msgstr "Irlandese"
-
-#~ msgid "Galician"
-#~ msgstr "Galiziano"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Ebraico"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "Croato"
-
-#~ msgid "Hungarian"
-#~ msgstr "Ungherese"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "Romeno"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonesiano"
-
-#~ msgid "Icelandic"
-#~ msgstr "Islandese"
-
-#~ msgid "Italian"
-#~ msgstr "Italiano"
-
-#~ msgid "Japanese"
-#~ msgstr "Giapponese"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "Tedesco"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazako"
-
-#~ msgid "Cambodian"
-#~ msgstr "Cambogiano"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannada"
-
-#~ msgid "Korean"
-#~ msgstr "Coreano"
-
-#~ msgid "Laothian"
-#~ msgstr "Laotiano"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Lituano"
-
-#~ msgid "Latvian"
-#~ msgstr "Lettone"
-
-#~ msgid "Macedonian"
-#~ msgstr "Macedone"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malayalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongolo"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Malese"
-
-#, fuzzy
-#~ msgid "Burmese"
-#~ msgstr "Sfoglia"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepalese"
-
-#~ msgid "Dutch"
-#~ msgstr "Olandese"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norvegese (nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norvegese (bokmål)"
-
-#~ msgid "Oriya"
-#~ msgstr "Oriya"
-
-#~ msgid "Punjabi"
-#~ msgstr "Punjabi"
-
-#~ msgid "Polish"
-#~ msgstr "Polacco"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portoghese"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portoghese (Brasile)"
-
-#~ msgid "Romanian"
-#~ msgstr "Romeno"
-
-#~ msgid "Russian"
-#~ msgstr "Russo"
-
-#~ msgid "Slovak"
-#~ msgstr "Slovacco"
-
-#~ msgid "Slovenian"
-#~ msgstr "Sloveno"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanese"
-
-#~ msgid "Serbian"
-#~ msgstr "Serbo"
-
-#~ msgid "Swedish"
-#~ msgstr "Svedese"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Svedese (Finlandia)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamil"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugu"
-
-#~ msgid "Thai"
-#~ msgstr "Tailandese"
-
-#~ msgid "Turkish"
-#~ msgstr "Turco"
-
-#~ msgid "Uighur"
-#~ msgstr "Uighur"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ucraino"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "Uzbeko"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamita"
-
-#~ msgid "Walloon"
-#~ msgstr "Vallone"
-
-#~ msgid "Yiddish"
-#~ msgstr "Yiddish"
-
-#~ msgid "Chinese"
-#~ msgstr "Cinese"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Cinese (semplificato)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Cinese (tradizionale)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belga"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Inglese (USA)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Inglese (canadese)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Inglese (Irlanda)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Inglese (britannico)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Inglese (americano)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Inglese (canadese)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Inglese (britannico)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Inglese (britannico)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Inglese (canadese)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Inglese (britannico)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Francese (canadese)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Francese (canadese)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Francese (canadese)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Tedesco (svizzero)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Francese (canadese)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Tedesco (con tasti morti)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Tedesco (svizzero)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Inglese (australiano)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Tedesco (svizzero)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Tedesco (svizzero)"
-
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portoghese (brasiliano)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portoghese (Brasile)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Spagnolo (America latina)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Spagnolo (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Spagnolo (Messico)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malayalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norvegese"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Serbo"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Cinese (tradizionale)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Cinese (tradizionale)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Cinese (tradizionale)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Cinese"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Cinese (semplificato)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabo (Egitto)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabo (Egitto)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabo (Egitto)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabo (Libano)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabo (Egitto)"
-
-#~ msgid "Other"
-#~ msgstr "Altro"
-
-#~ msgid "Unknown"
-#~ msgstr "Sconosciuto"
-
-#~ msgid "English (US)"
-#~ msgstr "Inglese (USA)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belga"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Ceco (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Francese (Svizzera)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Tedesco (con tasti morti)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portoghese (Brasile con accenti US)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovacco (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Spagnolo (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Spagnolo (America latina)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Inglese (GB)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Conversione tra cinese semplificato e tradizionale"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Converti tra cinese semplificato e cinese tradizionale"
-
-#~ msgid "SC-TC"
-#~ msgstr "CS-CT"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Conversione tra cinese semplificato e tradizionale"
-
-#~ msgid "No Conversion"
-#~ msgstr "Senza conversione"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Da semplificato a tradizionale"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Converti cinese semplificato in cinese tradizionale"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Da tradizionale a semplificato"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Converti cinese tradizionale in cinese semplificato"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "CS->CT"
-
-#~ msgid "TC->SC"
-#~ msgstr "CT->CS"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Piattaforma del metodo intelligente di inserimento comune"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Abilita"
-
-#~ msgid "Name"
-#~ msgstr "Nome"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Posizione del cursore"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "La posizione attuale del cursore di inserimento in caratteri."
-
-#~ msgid "Maximum length"
-#~ msgstr "Lunghezza massima"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Il numero massimo di caratteri per questa vista stringhe. Zero se non ce "
-#~ "n'è."
-
-#~ msgid "Maximum width"
-#~ msgstr "Larghezza massima"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Larghezza massima di questa vista stringhe."
-
-#~ msgid "Has Frame"
-#~ msgstr "Ha cornice"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "Se falso, rimuove la cornice esterna dalla vista stringhe."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Disegna cursore"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "Se vero, disegna un cursore lampeggiante."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Spostamento automatico del cursore"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr ""
-#~ "Se vero, sposta automaticamente la posizione del cursore quando si fa "
-#~ "clic con il mouse."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Inoltra evento di pressione di pulsante"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr ""
-#~ "Se vero, inoltra evento di pressione di pulsante al programma utente."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Ridimensiona automaticamente l'oggetto per adattarsi alla stringa"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "Se vero, attiva il ridimensionamento automatico."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr ""
-#~ "Se vero, sposta automaticamente la posizione del cursore quando si fa "
-#~ "clic con il mouse."
-
-#~ msgid "Width in chars"
-#~ msgstr "Larghezza in caratteri"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Numero di caratteri per cui lasciare spazio nella vista stringhe."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Scostamento dello scorrimento"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr ""
-#~ "Numero di pixel nella vista stringhe scorsi a sinistra dello schermo"
-
-#~ msgid "Text"
-#~ msgstr "Testo"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Il contenuti della vista stringhe"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Tasti sele_zionati:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Codice del tasto:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Modificatori:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Rilascio"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Inserisci prima un codice del tasto."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Premi un tasto (o una combinazione di tasti).\n"
-#~ "Questa finestra sarà chiusa quando il tasto sarà rilasciato."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Cattura di un tasto."
-
-#~ msgid "Key Selection"
-#~ msgstr "Selezione dei tasti"
-
-#~ msgid "Orientation"
-#~ msgstr "Orientazione"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "L'orientazione del vassoio."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Testo"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amarico"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Sempre"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Opzioni"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Inglese/Tastiera"
-
-#~ msgid "English/European"
-#~ msgstr "Inglese/Europeo"
-
-#~ msgid "RAW CODE"
-#~ msgstr "CODICE GREZZO"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Tasti rapidi:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " passa tra la codifica multibyte e Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reimposta il metodo di inserimento.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Lo stato del metodo di inserimento attuale. Fai clic per cambiarlo."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Configurazione globale"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Configura le opzioni globali usate da tutti i moduli di interfaccia, "
-#~ "inclusi l'interfaccia X11, i moduli di inserimento di GTK e QT, ecc."
-
-#~ msgid "_Trigger:"
-#~ msgstr "A_ttivatore:"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Seleziona i tasti di attivazione"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per accendere o spegnere il metodo di "
-#~ "inserimento. Fai clic sul pulsante a destra per modificarle."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Accendi:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Seleziona i tasti di accensione"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per far partire il metodo di inserimento. Fai "
-#~ "clic sul pulsante a destra per modificarle."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "_Spegni:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Seleziona i tasti di spegnimento"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per far fermare il metodo di inserimento. Fai "
-#~ "clic sul pulsante a destra per modificarle."
-
-#~ msgid "_Next input method:"
-#~ msgstr "Metodo di i_nserimento successivo:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Seleziona i tasti del metodo di inserimento successivo"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per passare al metodo di inserimento successivo. "
-#~ "Fai clic sul pulsante a destra per modificarle."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "Metodo di inserimento _precedente:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Seleziona i tasti del metodo di inserimento precedente"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per passare al metodo di inserimento precedente. "
-#~ "Fai clic sul pulsante a destra per modificarle."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "_Mostra il menu del metodo di inserimento:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Seleziona i tasti del menu del metodo di inserimento"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per mostrare il menu del metodo di inserimento. "
-#~ "Fai clic sul pulsante sulla destra per modificarle."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "Schema della _tastiera:"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Dovresti scegliere qui la tastiera che usi adesso, in modo che i metodi "
-#~ "di inserimento, che ne dipendono, funzionino correttamente."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Incorpora la pr_emodifica delle stringhe nella finestra del client"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la stringa di premodifica sarà visualizzata "
-#~ "direttamente nella finestra di inserimento del client, piuttosto che in "
-#~ "una finestra libera."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "Condividi lo _stesso metodo di inserimento in tutte le applicazioni"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, si potrà usare un solo metodo di inserimento "
-#~ "in tutte le applicazioni allo stesso tempo. Altrimenti, ogni applicazione "
-#~ "potrà usare un metodo di inserimento diverso."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Tasti rapidi"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Qui puoi abilitare o disabilitare i metodi di inserimento e impostare i "
-#~ "loro tasti rapidi."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "I servizi di metodo di inserimento installati:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Modi_fica tasti rapidi"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr ""
-#~ "Modifica i tasti rapidi associati con il metodo di inserimento "
-#~ "selezionato."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Seleziona _filtri"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr ""
-#~ "Seleziona i filtri che saranno allegati a questo metodo di inserimento."
-
-#~ msgid "_Expand"
-#~ msgstr "_Espandi"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Espandi tutte le categorie delle lingue."
-
-#~ msgid "_Collapse"
-#~ msgstr "_Contrai"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Contrai tutte le categorie delle lingue."
-
-#~ msgid "E_nable All"
-#~ msgstr "A_bilita tutti"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Abilita tutti i metodi di inserimento."
-
-#~ msgid "_Disable All"
-#~ msgstr "_Disabilita tutti"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Disabilita tutti i metodi di inserimento."
-
-#~ msgid "Filters"
-#~ msgstr "Filtri"
-
-#~ msgid "Languages"
-#~ msgstr "Lingue"
-
-#~ msgid "Description"
-#~ msgstr "Descrizione"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Modifica i tasti rapidi per: %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Seleziona i filtri per: %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Sposta in s_u"
-
-#~ msgid "Move _Down"
-#~ msgstr "Sposta in _giù"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Un demone di pannello basato sulle librerie GTK+-2.x."
-
-#~ msgid "On demand"
-#~ msgstr "A richiesta"
-
-#~ msgid "Never"
-#~ msgstr "Mai"
-
-#~ msgid "ToolBar"
-#~ msgstr "Barra degli strumenti"
-
-#~ msgid "_Show:"
-#~ msgstr "Mo_stra:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Agga_ncia automaticamente"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Mostra icona del metodo di _inserimento"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Mostra nome del metodo di ins_erimento"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Nasc_ondi scadenza:"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Mostra icona dell'agganciamen_to"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Mostra icona del m_enu"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Mostra icona dell'ai_uto"
-
-#~ msgid "Show _property label"
-#~ msgstr "Mostra etichetta delle _proprietà"
-
-#~ msgid "Input window"
-#~ msgstr "Finestra di inserimento"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Tabella di riferi_mento incorporata"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "Tabella di riferimento _verticale"
-
-#~ msgid "Misc"
-#~ msgstr "Varie"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Mostra icona del vasso_io"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Aggancia _finestre"
-
-#~ msgid "_Font:"
-#~ msgstr "_Carattere:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Se l'opzione \"Sempre\" è segnata, la barra degli strumenti sarà sempre "
-#~ "visualizzata sullo schermo. Se è segnata l'opzione \"A richiesta\", sarà "
-#~ "mostrata solo quando viene attivato SCIM. Se è segnata l'opzione \"Mai\", "
-#~ "non sarà mai mostrata."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la barra degli strumenti sarà agganciata al "
-#~ "bordo dello schermo."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "La barra degli strumenti sarà nascosta dopo che sarà passato questo "
-#~ "tempo. Questa opzione è valida solo quando \"Visualizza sempre\" è "
-#~ "segnato. Imposta a zero per disabilitare questo comportamento."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona del metodo di inserimento sarà "
-#~ "mostrata nella barra degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, il nome del metodo di inserimento sarà "
-#~ "mostrato nella barra degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona dell'agganciamento sarà mostrata "
-#~ "sulla barra degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona del menu sarà mostrata nella barra "
-#~ "degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona dell'aiuto sarà mostrata nella barra "
-#~ "degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'etichetta di testo del metodo di "
-#~ "inserimento sarà mostrata nella barra degli strumenti."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la tabella di riferimento sarà incorporata "
-#~ "nella finestra di inserimento."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la tabella di riferimento sarà mostrata "
-#~ "verticalmente."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, l'icona del vassoio sarà mostrata nel "
-#~ "pannello del desktop."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la barra degli strumenti, le finestre di "
-#~ "inserimento e della tabella di riferimento saranno agganciate alla loro "
-#~ "posizione originale."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "L'impostazione del carattere sarà usata nelle finestre di inserimento e "
-#~ "della tabella di riferimento."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Seleziona il carattere dell'interfaccia"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Interfaccia"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Pannello"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Configurazione del metodo di inserimento SCIM"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ "<span size=\"20000\">Piattaforma del metodo di inserimento comune "
-#~ "intelligente</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Programma di configurazione GUI</"
-#~ "span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">La configurazione per %s moduli.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Sei sicuro di uscire dalla configurazione di SCIM?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Non tutte le configurazioni possono essere ricaricate al volo. Non "
-#~ "dimenticarti di riavviare SCIM per permettere a tutte le nuove "
-#~ "configurazioni di avere effetto."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Configurazione di SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr ""
-#~ "Strumento di configurazione integrato basato sulla libreria di oggetti "
-#~ "GTK."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr ""
-#~ "Programma di configurazione per il metodo inserimento comune intelligente"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Aiuto di SCIM"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Metodo inserimento comune intelligente"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr ""
-#~ "Aggancia o sgancia la finestra di inserimento e la barra degli strumenti."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr ""
-#~ "Visualizza un breve aiuto su SCIM e il metodo di inserimento attuale."
-
-#~ msgid "Show command menu."
-#~ msgstr "Mostra menu dei comandi."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Ricarica configurazione"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Aggancia finestre"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Nascondi la barra degli strumenti"
-
-#~ msgid "Help ..."
-#~ msgstr "Aiuto..."
-
-#~ msgid "Exit"
-#~ msgstr "Esci"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
-
-#, fuzzy
-#~ msgid "_Switch input method globally"
-#~ msgstr "Mostra icona del metodo di _inserimento"
-
-#~ msgid "Preedit String mode"
-#~ msgstr "Modalità di premodifica delle stringhe"
-
-#~ msgid "X Window"
-#~ msgstr "X Window"
-
-#~ msgid "A FrontEnd module for X11R6 Window System, using XIM Protocol."
-#~ msgstr ""
-#~ "Un modulo di interfaccia per il sistema X11R6 X Window, usando il "
-#~ "protocollo XIM."
-
-#~ msgid "XIM Settings"
-#~ msgstr "Impostazioni XIM"
-
-#~ msgid "_On The Spot"
-#~ msgstr "Al v_olo"
-
-#~ msgid ""
-#~ "If this option is checked, the OnTheSpot input style will be used when "
-#~ "the client supports it."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, sarà usato lo stile di inserimento al volo "
-#~ "quando il client lo supporterà."
-
-#, fuzzy
-#~ msgid "Slovene"
-#~ msgstr "Sloveno"
-
-#~ msgid "Full/Half Letter"
-#~ msgstr "Lettera piena/mezza"
-
-#~ msgid "Full/Half Punct"
-#~ msgstr "Punteggiatura piena/mezza"
-
-#~ msgid ""
-#~ "The input mode of the letters. Click to toggle between half and full."
-#~ msgstr ""
-#~ "La modalità di inserimento delle lettere. Fai clic per passare tra mezza "
-#~ "a piena."
-
-#~ msgid ""
-#~ "The input mode of the puncutations. Click to toggle between half and full."
-#~ msgstr ""
-#~ "La modalità di inserimento della punteggiatura. Fai clic per passare tra "
-#~ "mezza a piena."
-
-#~ msgid ""
-#~ " Switch between full/half width letter mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " Passa tra le modalità delle lettere a larghezza piena/mezza.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Switch between full/half width punctuation mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " Passa tra le modalità della punteggiatura a larghezza piena/mezza\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Switch between Forward/Input mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " Passa tra le modalità di inoltro/inserimento.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Add a new phrase.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " Aggiungi una nuova frase.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Delete the selected phrase.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Elimina la frase selezionata.\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Control+Down:\n"
-#~ " Move lookup cursor to next shorter phrase\n"
-#~ " Only available when LongPhraseFirst option is set.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Control+giù:\n"
-#~ " Sposta il cursore di ricerca alla frase più corta successiva\n"
-#~ " Disponibile solo quanto l'opzione FraseLungaPrima è impostata.\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Control+Up:\n"
-#~ " Move lookup cursor to previous longer phrase\n"
-#~ " Only available when LongPhraseFirst option is set.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Control+su:\n"
-#~ " Sposta il cursore di ricerca alla frase più lunga precedente\n"
-#~ " Disponibile solo quanto l'opzione FraseLungaPrima è impostata.\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Esc:\n"
-#~ " reimposta il metodo di inserimento.\n"
-#~ "\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "How to add a phrase:\n"
-#~ " Input the new phrase as normal, then press the\n"
-#~ " hot key. A hint will be shown to let you input a key\n"
-#~ " for this phrase.\n"
-#~ " Input a key then press the space bar.\n"
-#~ " A hint will be shown to indicate whether\n"
-#~ " the phrase was added sucessfully.\n"
-#~ msgstr ""
-#~ "Come aggiungere una frase:\n"
-#~ " Inserisci la frase come normale, quindi premi il\n"
-#~ " tasto rapido. Sarà mostrato un suggerimento per\n"
-#~ " permetterti di inserire un tasto per questa frase.\n"
-#~ " Inserisci un tasto e premi la barra spaziatrice.\n"
-#~ " Sarà mostrato un suggerimento per indicare se\n"
-#~ " la frase è stata aggiunta correttamente.\n"
-
-#~ msgid "Input a key string for phrase: "
-#~ msgstr "Inserisci una stringa di tasti per la frase: "
-
-#~ msgid "Success."
-#~ msgstr "Riuscito."
-
-#~ msgid "Failed."
-#~ msgstr "Non riuscito."
-
-#~ msgid ""
-#~ "Too few argument!\n"
-#~ "Usage:\n"
-#~ " scim-make-table <table_file> [options]\n"
-#~ "\n"
-#~ " table_file\tthe table file for table module\n"
-#~ " -b\t\tconvert to binary format, otherwise to text format\n"
-#~ " -o output\tsave new table to file output\n"
-#~ " -no\t\tdo not save new phrase table\n"
-#~ " -if ifreq\tload phrase frequencies from this file\n"
-#~ " -of ofreq\tsave phrase frequencies to this file\n"
-#~ " -s file\tspecifiy the source file to count phrase ages.\n"
-#~ msgstr ""
-#~ "Troppi pochi argomenti!\n"
-#~ "Uso:\n"
-#~ " scim-make-table <file_tabella> [opzioni]\n"
-#~ "\n"
-#~ " file_tabella\til file tabella per il modulo tabella\n"
-#~ " -b\t\tconverti a formato binario, altrimenti in formato testuale\n"
-#~ " -o output\tsalva la nuova tabella al file di output\n"
-#~ " -no\t\tnon salvare la nuova tabella delle frasi\n"
-#~ " -if ifreq\tcarica le frequenze delle frasi da questo file\n"
-#~ " -of ofreq\tsalva le frequenze delle frasi in questo file\n"
-#~ " -s file\tspecifica il file sorgente per contare l'età delle frasi.\n"
-
-#~ msgid "option -no cannot be used with -o\n"
-#~ msgstr "l'opzione -no non può essere usata con -o\n"
-
-#~ msgid "option -o cannot be used with -no\n"
-#~ msgstr "l'opzione -o non può essere usata con -no\n"
-
-#~ msgid "No argument for option "
-#~ msgstr "Nessun argomento per l'opzione "
-
-#~ msgid "Invalid option: "
-#~ msgstr "Opzione non valida: "
-
-#~ msgid "Loading table file "
-#~ msgstr "Caricamento del file tabella "
-
-#~ msgid " ...\n"
-#~ msgstr " ...\n"
-
-#~ msgid "table file load failed!"
-#~ msgstr "caricamento del file tabella non riuscito!"
-
-#~ msgid "Saving frequency table file "
-#~ msgstr "Salvataggio della tabella di frequenza "
-
-#~ msgid "frequency table file load failed!"
-#~ msgstr "caricamento del file tabella di frequenza non riuscito!"
-
-#~ msgid "Saving table file "
-#~ msgstr "Salvataggio del file tabella "
-
-#~ msgid "Table file save failed!"
-#~ msgstr "Salvataggio del file tabella non riuscito!"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ "Hot keys:\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ "Tasti rapidi:\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " open/close the input method.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ ":\n"
-#~ " apri/chiudi il metodo di inserimento.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " switch to the next input method.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ ":\n"
-#~ " passa al metodo di inserimento successivo.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " switch to the previous input method.\n"
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ " passa al metodo di inserimento precedente.\n"
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Generic Table"
-#~ msgstr "Tabella generica"
-
-#~ msgid "An IMEngine Module which uses generic table input method file."
-#~ msgstr ""
-#~ "Un modulo IMEngine che usa un file di metodo di inserimento con tabella "
-#~ "generica."
-
-#~ msgid "Full width _punctuation:"
-#~ msgstr "_Punteggiatura a larghezza piena:"
-
-#~ msgid "Select full width puncutation keys"
-#~ msgstr "Seleziona i tasti della punteggiatura a larghezza piena"
-
-#~ msgid ""
-#~ "The key events to switch full/half width punctuation input mode. Click on "
-#~ "the button on the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per passare tra le modalità di inserimento con "
-#~ "punteggiatura a larghezza piena/mezza. Fai clic sul pulsante a destra per "
-#~ "modificarle."
-
-#~ msgid "Full width _letter:"
-#~ msgstr "_Lettera a larghezza piena:"
-
-#~ msgid "Select full width letter keys"
-#~ msgstr "Seleziona i tasti delle lettere a larghezza piena"
-
-#~ msgid ""
-#~ "The key events to switch full/half width letter input mode. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per passare tra le modalità di inserimento con "
-#~ "lettere a larghezza piena/mezza. Fai clic sul pulsante a destra per "
-#~ "modificarle."
-
-#~ msgid "_Mode switch:"
-#~ msgstr "Cambio di _modalità:"
-
-#~ msgid "Select mode switch keys"
-#~ msgstr "Seleziona i tasti per il cambio di modalità"
-
-#~ msgid ""
-#~ "The key events to change current input mode. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per cambiare la modalità di inserimento attuale. "
-#~ "Fai clic sul pulsante a destra per cambiarle."
-
-#~ msgid "_Add phrase:"
-#~ msgstr "_Aggiungi frase:"
-
-#~ msgid "Select add phrase keys."
-#~ msgstr "Seleziona i tasti per aggiungere frasi."
-
-#~ msgid ""
-#~ "The key events to add a new user defined phrase. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per aggiungere una nuova frase definita "
-#~ "dall'utente. Fai clic sul pulsante a destra per cambiarle."
-
-#~ msgid "_Delete phrase:"
-#~ msgstr "_Elimina frase:"
-
-#~ msgid "Select delete phrase keys."
-#~ msgstr "Seleziona i tasti per eliminare frasi."
-
-#~ msgid ""
-#~ "The key events to delete a selected phrase. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Le combinazioni di tasti per eliminare una frase selezionata. Fai clic "
-#~ "sul pulsante a destra per cambiarle."
-
-#~ msgid "Show _prompt"
-#~ msgstr "Mostra _prompt"
-
-#~ msgid "Show key _hint"
-#~ msgstr "Mostra su_ggerimento del tasto"
-
-#~ msgid "Save _user table in binary format"
-#~ msgstr "Salva la tabella dell'_utente in formato binario"
-
-#~ msgid "Show the u_ser defined phrases first"
-#~ msgstr "Mo_stra prima le frasi definite dall'utente"
-
-#~ msgid "Show the _longer phrases first"
-#~ msgstr "Mostra prima le frasi più _lunghe"
-
-#~ msgid ""
-#~ "If this option is checked, the key prompt of the currently selected "
-#~ "phrase will be shown."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, sarà mostrato il prompt del tasto della "
-#~ "frase attualmente selezionata."
-
-#~ msgid ""
-#~ "If this option is checked, the remaining keystrokes of the phraseswill be "
-#~ "shown on the lookup table."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, i tasti rimanenti della frase saranno "
-#~ "mostrati nella tabella di riferimento."
-
-#~ msgid ""
-#~ "If this option is checked, the user table will be stored with binary "
-#~ "format, this will increase the loading speed."
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la tabella dell'utente sarà salvata in "
-#~ "formato binario; ciò aumenterà la velocità di caricamento."
-
-#~ msgid ""
-#~ "If this option is checked, the user defined phrases will be shown in "
-#~ "front of others. "
-#~ msgstr ""
-#~ "Se questa opzione è segnata, le frasi definite dall'utente saranno "
-#~ "mostrate prima delle altre. "
-
-#~ msgid ""
-#~ "If this option is checked, the longer phrase will be shown in front of "
-#~ "others. "
-#~ msgstr ""
-#~ "Se questa opzione è segnata, la frasi più lunghe saranno mostrate prima "
-#~ "delle altre. "
-
-#~ msgid "The installed tables:"
-#~ msgstr "La tabelle installate:"
-
-#~ msgid "_Install"
-#~ msgstr "_Installa"
-
-#~ msgid "Install a new table."
-#~ msgstr "Installa una nuova tabella."
-
-#~ msgid "_Delete"
-#~ msgstr "_Elimina"
-
-#~ msgid "Delete the selected table."
-#~ msgstr "Elimina la tabella selezionata."
-
-#~ msgid "_Properties"
-#~ msgstr "_Proprietà"
-
-#~ msgid "Edit the properties of the selected table."
-#~ msgstr "Modifica le proprietà della tabella selezionata."
-
-#~ msgid "Table Management"
-#~ msgstr "Gestione delle tabelle"
-
-#~ msgid "Select an icon file"
-#~ msgstr "Seleziona un file icone"
-
-#~ msgid "User"
-#~ msgstr "Utente"
-
-#~ msgid "System"
-#~ msgstr "Sistema"
-
-#~ msgid "Please select the table file to be installed."
-#~ msgstr "Per piacere seleziona il file tabella da installare."
-
-#~ msgid "Failed to install the table! It's already in table file directory."
-#~ msgstr ""
-#~ "Installazione della tabella non riuscita. È già nella cartella dei file "
-#~ "tabella."
-
-#~ msgid "Failed to load the table file!"
-#~ msgstr "Caricamento del file tabella non riuscito."
-
-#~ msgid ""
-#~ "Failed to install the table! Another version of this table was already "
-#~ "installed."
-#~ msgstr ""
-#~ "Installazione della tabella non riuscita. Un'altra versione di questa "
-#~ "tabella era già installata."
-
-#~ msgid ""
-#~ "Another version of this table was already installed. Do you want to "
-#~ "replace it with the new one?"
-#~ msgstr ""
-#~ "Un'altra versione di questa tabella era già installata. Vuoi sostituirla "
-#~ "con la nuova?"
-
-#~ msgid ""
-#~ "Failed to install the table! A table with the same file name was already "
-#~ "installed."
-#~ msgstr ""
-#~ "Installazione della tabella non riuscita. Una tabella con lo stesso nome "
-#~ "del file era già installata."
-
-#~ msgid ""
-#~ "A table with the same file name was already installed. Do you want to "
-#~ "overwrite it?"
-#~ msgstr ""
-#~ "Una tabella con lo stesso nome del file era già installata. Vuoi "
-#~ "sovrascriverla?"
-
-#~ msgid "Failed to install the table to %s!"
-#~ msgstr "Installazione della tabella in %s non riuscita."
-
-#~ msgid "Can not delete the file %s!"
-#~ msgstr "Impossibile eliminare il file %s."
-
-#~ msgid "Are you sure to delete this table file?"
-#~ msgstr "Sei sicuro di voler eliminare questo file tabella?"
-
-#~ msgid "Failed to delete the table file!"
-#~ msgstr "Eliminazione del file tabella non riuscita."
-
-#~ msgid "True"
-#~ msgstr "Vero"
-
-#~ msgid "False"
-#~ msgstr "Falso"
-
-#~ msgid "Split Keys:"
-#~ msgstr "Tasti di divisione:"
-
-#~ msgid "The key strokes to split inputed string."
-#~ msgstr "I tasti per dividere la stringa inserita."
-
-#~ msgid "Commit Keys:"
-#~ msgstr "Tasti di consegna:"
-
-#~ msgid "The key strokes to commit converted result to client."
-#~ msgstr "I tasti per consegnare il risultato convertito al client."
-
-#~ msgid "Forward Keys:"
-#~ msgstr "Tasti di inoltro:"
-
-#~ msgid "The key strokes to forward inputed string to client."
-#~ msgstr "I tasti per inoltrare la stringa inserita al client."
-
-#~ msgid "The key strokes to select candidate phrases in lookup table."
-#~ msgstr ""
-#~ "I tasti per selezionare delle frasi candidate nella tabella di "
-#~ "riferimento."
-
-#~ msgid "Page Up Keys:"
-#~ msgstr "Tasti pagina su:"
-
-#~ msgid "The lookup table page up keys"
-#~ msgstr "I tasti pagina su della tabella di riferimento"
-
-#~ msgid "Page Down Keys:"
-#~ msgstr "Tasti pagina giù:"
-
-#~ msgid "The lookup table page down keys"
-#~ msgstr "I tasti pagina giù della tabella di riferimento"
-
-#~ msgid "Table Properties"
-#~ msgstr "Proprietà della tabella"
-
-#~ msgid "Name:"
-#~ msgstr "Nome:"
-
-#~ msgid "The name of this table."
-#~ msgstr "Il nome di questa tabella."
-
-#~ msgid "Author:"
-#~ msgstr "Autore:"
-
-#~ msgid "The author of this table."
-#~ msgstr "L'autore di questa tabella."
-
-#~ msgid "UUID:"
-#~ msgstr "UUID:"
-
-#~ msgid "The unique ID of this table."
-#~ msgstr "L'ID univoca di questa tabella."
-
-#~ msgid "Serial Number:"
-#~ msgstr "Numero seriale:"
-
-#~ msgid "The serial number of this table."
-#~ msgstr "Il numero seriale di questa tabella."
-
-#~ msgid "Icon File:"
-#~ msgstr "File icone:"
-
-#~ msgid "The icon file of this table."
-#~ msgstr "Il file icone di questa tabella."
-
-#~ msgid "Supported Languages:"
-#~ msgstr "Lingue supportate:"
-
-#~ msgid "The languages supported by this table."
-#~ msgstr "Le lingue supportate da questa tabella."
-
-#~ msgid "Status Prompt:"
-#~ msgstr "Prompt di stato:"
-
-#~ msgid "A prompt string to be shown in status area."
-#~ msgstr "Una stringa di prompt da visualizzare nell'area di stato."
-
-#~ msgid "Valid Input Chars:"
-#~ msgstr "Caratteri di inserimento validi:"
-
-#~ msgid "The valid input chars of this table."
-#~ msgstr "I caratteri di inserimento validi di questa tabella."
-
-#~ msgid "Multi Wildcard Char:"
-#~ msgstr "Carattere jolly multiplo:"
-
-#~ msgid ""
-#~ "The multi wildcard chars of this table. These chars can be used to match "
-#~ "one or more arbitrary chars."
-#~ msgstr ""
-#~ "I caratteri jolly multipli di questa tabella. Questi caratteri possono "
-#~ "essere usati per corrispondere a uno o più caratteri arbitrari."
-
-#~ msgid "Single Wildcard Char:"
-#~ msgstr "Carattere jolly singolo:"
-
-#~ msgid ""
-#~ "The single wildcard chars of this table.These chars can be used to match "
-#~ "one arbitrary char."
-#~ msgstr ""
-#~ "I caratteri jolly singoli di questa tabella. Questi caratteri possono "
-#~ "essere usati per corrispondere a un carattere arbitrario."
-
-#~ msgid "Max Key Length:"
-#~ msgstr "Lunghezza massima dei tasti:"
-
-#~ msgid "The maxmium length of key strings."
-#~ msgstr "La lunghezza massima delle stringhe di tasti."
-
-#~ msgid "Show Key Prompt:"
-#~ msgstr "Mostra prompt del tasto:"
-
-#~ msgid "If true then the key prompts will be shown instead of the raw keys."
-#~ msgstr ""
-#~ "Se vero, saranno mostrati i prompt dei tasti invece dei tasti grezzi."
-
-#~ msgid "Auto Select:"
-#~ msgstr "Selezione automatica:"
-
-#~ msgid ""
-#~ "If true then the first candidate phrase will be selected automatically "
-#~ "when inputing the next key."
-#~ msgstr ""
-#~ "Se vero, la prima frase candidata sarà selezionata automaticamente quando "
-#~ "si inserisce il prossimo tasto."
-
-#~ msgid "Auto Wildcard:"
-#~ msgstr "Jolly automatico:"
-
-#~ msgid ""
-#~ "If true then a multi wildcard char will be append to the end of inputed "
-#~ "key string when searching phrases."
-#~ msgstr ""
-#~ "Se vero, un carattere jolly multiplo sarà aggiunto alla fine della "
-#~ "stringa di tasti inseriti quando si cercano le frasi."
-
-#~ msgid "Auto Commit:"
-#~ msgstr "Consegna automatica:"
-
-#~ msgid ""
-#~ "If true then the converted result string will be committed to client "
-#~ "automatically."
-#~ msgstr ""
-#~ "Se vero, la stringa risultante convertita sarà automaticamente consegnata "
-#~ "al client."
-
-#~ msgid ""
-#~ "If true then the inputed key string will be splitted automatically when "
-#~ "necessary."
-#~ msgstr ""
-#~ "Se vero, la stringa di tasti inserita sarà divisa automaticamente quando "
-#~ "necessario."
-
-#~ msgid "Discard Invalid Key:"
-#~ msgstr "Scarta tasto non valido:"
-
-#~ msgid ""
-#~ "If true then the invalid key will be discarded automatically.This option "
-#~ "is only valid when Auto Select and Auto Commit is true."
-#~ msgstr ""
-#~ "Se vero, il tasto non valido sarà scartato automaticamente. Questa "
-#~ "opzione è valida solo quando sono vere la selezione e la consegna "
-#~ "automatiche."
-
-#~ msgid "Dynamic Adjust:"
-#~ msgstr "Regolazione dinamica:"
-
-#~ msgid "If true then the phrases' frequencies will be adjusted dynamically."
-#~ msgstr "Se vero, le frequenze delle frasi saranno regolate dinamicamente."
-
-#~ msgid "Auto Fill Preedit Area:"
-#~ msgstr "Riempimento automatico dell'area di premodifica:"
-
-#~ msgid ""
-#~ "If true then the preedit string will be filled up with the current "
-#~ "candiate phrase automatically.This option is only valid when Auto Select "
-#~ "is TRUE."
-#~ msgstr ""
-#~ "Se vero, la stringa di premodifica sarà riempita automaticamente con la "
-#~ "frase candidata attuale. Questa opzione è valida solo quando la selezione "
-#~ "automatica è vera."
-
-#~ msgid "Always Show Lookup Table:"
-#~ msgstr "Mostra sempre la tabella di riferimento:"
-
-#~ msgid ""
-#~ "If true then the lookup table will always be shown when any candidate "
-#~ "phrase is available. Otherwise the lookup table will only be shown when "
-#~ "necessary.\n"
-#~ "If Auto Fill is false, then this option will be no effect, and always be "
-#~ "true."
-#~ msgstr ""
-#~ "Se vero, la tabella di riferimento sarà sempre visualizzata quando "
-#~ "qualsiasi frase candidata sarà disponibile. Altrimenti la tabella di "
-#~ "riferimento sarà visualizzata solo quando necessario.\n"
-#~ "Se il riempimento automatico è falso, questa opzione non avrà effetto, e "
-#~ "sarà sempre vera."
-
-#~ msgid "Default Full Width Punct:"
-#~ msgstr "Punteggiatura predefinita a larghezza piena:"
-
-#~ msgid "If true then full width punctuations will be inputed by default."
-#~ msgstr ""
-#~ "Se vero, saranno inseriti segni di punteggiatura a larghezza piena come "
-#~ "impostazione predefinita."
-
-#~ msgid "Default Full Width Letter:"
-#~ msgstr "Lettere predefinite a larghezza piena:"
-
-#~ msgid "If true then full width letters will be inputed by default."
-#~ msgstr ""
-#~ "Se vero, saranno inserite lettere a larghezza piena come impostazione "
-#~ "predefinita."
-
-#~ msgid "Invalid icon file."
-#~ msgstr "File icone non valido."
-
-#~ msgid "Invalid languages."
-#~ msgstr "Lingue non valide."
-
-#~ msgid "Invalid status prompt."
-#~ msgstr "Prompt di stato non valido."
-
-#~ msgid "Invalid multi wildcard chars."
-#~ msgstr "Caratteri jolly multipli non validi."
-
-#~ msgid "Invalid single wildcard chars."
-#~ msgstr "Caratteri jolly singoli non validi."
-
-#~ msgid "Invalid commit keys."
-#~ msgstr "Tasti di consegna non validi."
-
-#~ msgid "Invalid select keys."
-#~ msgstr "Tasti di selezione non validi."
-
-#~ msgid "Invalid page up keys."
-#~ msgstr "Tasti pagina su non validi."
-
-#~ msgid "Invalid page down keys."
-#~ msgstr "Tasti pagina giù non validi."
-
-#~ msgid "Invalid max key length."
-#~ msgstr "Lunghezza massima dei tasti non valida."
-
-#~ msgid "Failed to save table %s!"
-#~ msgstr "Salvataggio della tabella %s non riuscito!"
-
-#~ msgid "Failed to load any Config Modules!"
-#~ msgstr "Caricamento di qualsiasi modulo di configurazione non riuscito."
-
-#~ msgid "_Current Config Module:"
-#~ msgstr "Modulo di _configurazione attuale:"
-
-#~ msgid "<Not found>"
-#~ msgstr "<Non trovato>"
-
-#~ msgid "Current Config Module has been changed to %s."
-#~ msgstr "Il modulo di configurazione attuale è stato cambiato in %s."
-
-#~ msgid "Start the SCIM Setup Utility."
-#~ msgstr "Avvia il programma di configurazione di SCIM."
-
-#~ msgid "Setup ..."
-#~ msgstr "Configurazione..."
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "Tastiera"
+++ /dev/null
-# Japanese translation for SCIM
-# Copyright (C) 2004 Free Software Foundation, Inc.
-# James Su <suzhe@tsinghua.org.cn>, 2004.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: ja\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2005-12-11 11:00+0900\n"
-"Last-Translator: Yukiko Bando <ybando@k6.dion.ne.jp>\n"
-"Language-Team: Japanese <ja@li.org>\n"
-"Language: ja\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-#, fuzzy
-msgid "Keyboard"
-msgstr "英語/キーボード"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "キー選択"
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "キー選択"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "オプション"
-
-#, fuzzy
-#~ msgid "Auto capitalization"
-#~ msgstr "自動スプリット:"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "全般"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "英語/キーボード"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "キー選択"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "英語/キーボード"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "オプション"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "英語/キーボード"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "英語(アメリカ)"
-
-#~ msgid "Amharic"
-#~ msgstr "アムハラ語"
-
-#~ msgid "Arabic"
-#~ msgstr "アラビア語"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "アラビア語(エジプト)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "アラビア語(レバノン)"
-
-#~ msgid "Assamese"
-#~ msgstr "アッサム語"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "アゼルバイジャン語"
-
-#~ msgid "Belarusian"
-#~ msgstr "白ロシア語"
-
-#~ msgid "Bulgarian"
-#~ msgstr "ブルガリア語"
-
-#~ msgid "Bengali"
-#~ msgstr "ベンガル語"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "ベンガル語(インド)"
-
-#~ msgid "Tibetan"
-#~ msgstr "チベット語"
-
-#~ msgid "Bosnian"
-#~ msgstr "ボスニア語"
-
-#~ msgid "Catalan"
-#~ msgstr "カタロニア語"
-
-#~ msgid "Czech"
-#~ msgstr "チェコ語"
-
-#~ msgid "Welsh"
-#~ msgstr "ウェールズ語"
-
-#~ msgid "Danish"
-#~ msgstr "デンマーク語"
-
-#~ msgid "German"
-#~ msgstr "ドイツ語"
-
-#~ msgid "Greek"
-#~ msgstr "ギリシャ語"
-
-#~ msgid "English"
-#~ msgstr "英語"
-
-#~ msgid "English (Australian)"
-#~ msgstr "英語(オーストラリア)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "英語(カナダ)"
-
-#~ msgid "English (British)"
-#~ msgstr "英語(イギリス)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "英語(アイルランド)"
-
-#~ msgid "English (American)"
-#~ msgstr "英語(アメリカ)"
-
-#~ msgid "Spanish"
-#~ msgstr "スペイン語"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#~ msgid "Estonian"
-#~ msgstr "エストニア語"
-
-#~ msgid "Basque"
-#~ msgstr "バスク語"
-
-#~ msgid "Persian"
-#~ msgstr "ペルシア語"
-
-#~ msgid "Finnish"
-#~ msgstr "フィンランド語"
-
-#~ msgid "French"
-#~ msgstr "フランス語"
-
-#~ msgid "Irish"
-#~ msgstr "アイルランド語"
-
-#~ msgid "Galician"
-#~ msgstr "ガリシア語"
-
-#~ msgid "Gujarati"
-#~ msgstr "グジャラート語"
-
-#~ msgid "Hebrew"
-#~ msgstr "ヘブライ語"
-
-#~ msgid "Hindi"
-#~ msgstr "ヒンディー語"
-
-#~ msgid "Croatian"
-#~ msgstr "クロアチア語"
-
-#~ msgid "Hungarian"
-#~ msgstr "ハンガリー語"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "ルーマニア語"
-
-#~ msgid "Interlingua"
-#~ msgstr "インターリングア"
-
-#~ msgid "Indonesian"
-#~ msgstr "インドネシア語"
-
-#~ msgid "Icelandic"
-#~ msgstr "アイスランド語"
-
-#~ msgid "Italian"
-#~ msgstr "イタリア語"
-
-#~ msgid "Japanese"
-#~ msgstr "日本語"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "ドイツ語"
-
-#~ msgid "Kazakh"
-#~ msgstr "カザフスタン語"
-
-#~ msgid "Cambodian"
-#~ msgstr "クメール語"
-
-#~ msgid "Kannada"
-#~ msgstr "カンナダ語"
-
-#~ msgid "Korean"
-#~ msgstr "ハングル"
-
-#~ msgid "Laothian"
-#~ msgstr "ラオス語"
-
-#~ msgid "Lithuanian"
-#~ msgstr "リトアニア語"
-
-#~ msgid "Latvian"
-#~ msgstr "ラトヴィア語"
-
-#~ msgid "Macedonian"
-#~ msgstr "マケドニア語"
-
-#~ msgid "Malayalam"
-#~ msgstr "マラヤーラム語"
-
-#~ msgid "Mongolian"
-#~ msgstr "モンゴル語"
-
-#~ msgid "Marathi"
-#~ msgstr "マラーティー語"
-
-#~ msgid "Malay"
-#~ msgstr "マレー語"
-
-#, fuzzy
-#~ msgid "Burmese"
-#~ msgstr "ブラウズ"
-
-#~ msgid "Nepali"
-#~ msgstr "ネパール語"
-
-#~ msgid "Dutch"
-#~ msgstr "オランダ語"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "ノルウェー語(ニューノルスク)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "ノルウェー語(ボックモール)"
-
-#~ msgid "Oriya"
-#~ msgstr "オリヤー語"
-
-#~ msgid "Punjabi"
-#~ msgstr "パンジャブ語"
-
-#~ msgid "Polish"
-#~ msgstr "ポーランド語"
-
-#~ msgid "Portuguese"
-#~ msgstr "ポルトガル語"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "ポルトガル語(ブラジル)"
-
-#~ msgid "Romanian"
-#~ msgstr "ルーマニア語"
-
-#~ msgid "Russian"
-#~ msgstr "ロシア語"
-
-#~ msgid "Slovak"
-#~ msgstr "スロバキア語"
-
-#~ msgid "Slovenian"
-#~ msgstr "スロベニア語"
-
-#~ msgid "Albanian"
-#~ msgstr "アルバニア語"
-
-#~ msgid "Serbian"
-#~ msgstr "セルビア語"
-
-#~ msgid "Swedish"
-#~ msgstr "スウェーデン語"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "スウェーデン語(フィンランド)"
-
-#~ msgid "Tamil"
-#~ msgstr "タミル語"
-
-#~ msgid "Telugu"
-#~ msgstr "テルグ語"
-
-#~ msgid "Thai"
-#~ msgstr "タイ語"
-
-#~ msgid "Turkish"
-#~ msgstr "トルコ語"
-
-#~ msgid "Uighur"
-#~ msgstr "ウィグル語"
-
-#~ msgid "Ukrainian"
-#~ msgstr "ウクライナ語"
-
-#~ msgid "Urdu"
-#~ msgstr "ウルドゥー語"
-
-#~ msgid "Uzbek"
-#~ msgstr "ウズベク語"
-
-#~ msgid "Vietnamese"
-#~ msgstr "ベトナム語"
-
-#~ msgid "Walloon"
-#~ msgstr "ワロン語"
-
-#~ msgid "Yiddish"
-#~ msgstr "イディッシュ語"
-
-#~ msgid "Chinese"
-#~ msgstr "中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "簡体中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "繁体中国語"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "ベルギー"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "英語(US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "英語(カナダ)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "英語(アイルランド)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "英語(イギリス)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "英語(アメリカ)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "英語(カナダ)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "英語(イギリス)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "英語(イギリス)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "英語(カナダ)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "英語(イギリス)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "フランス語(カナダ)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "フランス語(カナダ)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "フランス語(カナダ)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "ドイツ語(スイス)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "フランス語(カナダ)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "ドイツ語(deadkeyあり)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "ドイツ語(スイス)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "英語(オーストラリア)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "ドイツ語(スイス)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "ドイツ語(スイス)"
-
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "ポルトガル語(ブラジル)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "ポルトガル語(ブラジル)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "スペイン語(CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "スペイン語(メキシコ)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "マラヤーラム語"
-
-#~ msgid "Norwegian"
-#~ msgstr "ノルウェー語"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "セルビア語"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "繁体中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "繁体中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "繁体中国語"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "中国語"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "簡体中国語"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "アラビア語(エジプト)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "アラビア語(エジプト)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "アラビア語(エジプト)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "アラビア語(レバノン)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "アラビア語(エジプト)"
-
-#~ msgid "Other"
-#~ msgstr "その他"
-
-#~ msgid "Unknown"
-#~ msgstr "不明"
-
-#~ msgid "English (US)"
-#~ msgstr "英語(US)"
-
-#~ msgid "Belgian"
-#~ msgstr "ベルギー"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "チェコ語(qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "フランス語(スイス)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "ドイツ語(deadkeyあり)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "ポルトガル語(ブラジルUSアクセント)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "スロバキア語(qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "スペイン語(CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "スペイン語(ラテンアメリカ)"
-
-#~ msgid "English (UK)"
-#~ msgstr "英語(UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "簡体-繁体中国語相互変換"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "簡体中国語と繁体中国語を相互変換する"
-
-#~ msgid "SC-TC"
-#~ msgstr "簡体-繁体"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "簡体-繁体中国語相互変換"
-
-#~ msgid "No Conversion"
-#~ msgstr "変換しない"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "簡体から繁体へ"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "簡体中国語を繁体中国語に変換する"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "繁体から簡体へ"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "繁体中国語を簡体中国語に変換する"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "簡体->繁体"
-
-#~ msgid "TC->SC"
-#~ msgstr "繁体->簡体"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Smart Common Input Method platform"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "有効にする"
-
-#~ msgid "Name"
-#~ msgstr "名称"
-
-#~ msgid "Cursor Position"
-#~ msgstr "カーソル位置"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "現在のカーソル位置"
-
-#~ msgid "Maximum length"
-#~ msgstr "最大の長さ"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "String viewウィジェットの最大表示文字数。無制限の場合は0を指定して下さい。"
-
-#~ msgid "Maximum width"
-#~ msgstr "最大幅"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "String viewウィジェットの最大表示幅"
-
-#~ msgid "Has Frame"
-#~ msgstr "フレーム有りかどうか"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FALSEを指定した場合、文字表示ウィジェットの縁取りを描画しません。"
-
-#~ msgid "Draw cursor"
-#~ msgstr "カーソルを描画する"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "TRUEを指定した場合、カーソルを点滅させます。"
-
-#~ msgid "Auto move cursor"
-#~ msgstr "カーソルの自動移動"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr ""
-#~ "TRUEを指定した場合、マウスクリックされた位置にカーソルが移動します。"
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "マウスボタンのイベントを送る"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "TRUEの場合はマウスボタンのイベントをユーザプログラムに送ります。"
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "文字列に合わせてウィジェットのサイズを自動調整"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "TRUEを指定した、場合はウィジェットサイズを自動的に調整します。"
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr ""
-#~ "TRUEを指定した場合、マウスクリックされた位置にカーソルが移動します。"
-
-#~ msgid "Width in chars"
-#~ msgstr "文字の幅"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "String viewウィジェットに表示する文字数"
-
-#~ msgid "Scroll offset"
-#~ msgstr "スクロールオフセット"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "String viewウィジェットが画面左端に畳み込まれた際の表示ピクセル数"
-
-#~ msgid "Text"
-#~ msgstr "テキスト"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "String viewウィジェットの内容"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "設定済のキー:"
-
-#~ msgid "Key Code:"
-#~ msgstr "キーコード:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "モディファイア:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "リリース(_R)"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "キーコードを先に入力して下さい。"
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "キー(もしくは複数のキーの組合せ)を押して下さい。\n"
-#~ "キーをリリースするとこのダイアログは閉じます。"
-
-#~ msgid "Grabbing a key."
-#~ msgstr "キー選択"
-
-#~ msgid "Key Selection"
-#~ msgstr "キー選択"
-
-#~ msgid "Orientation"
-#~ msgstr "方向"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "トレイの方向"
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "テキスト"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "アムハラ語"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "常に"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "オプション"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "英語/キーボード"
-
-#~ msgid "English/European"
-#~ msgstr "英語/ヨーロッパ言語"
-
-#~ msgid "RAW CODE"
-#~ msgstr "RAW CODE"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "ホットキー:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " マルチバイトエンコード/ユニコードの切替え\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " 入力メソッドをリセット\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "現在の入力モード。変更するにはここをクリックして下さい。"
-
-#~ msgid "Unicode"
-#~ msgstr "ユニコード"
-
-#~ msgid "Global Setup"
-#~ msgstr "全体設定"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "全てのフロントエンドモジュール(X11 FrontEnd/GTK-Immoduele/Qt-Immoduleを含"
-#~ "む)で使用する全体オプションを設定"
-
-#~ msgid "_Trigger:"
-#~ msgstr "開始/終了(_T):"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "開始/終了キーの設定"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "入力メソッドを開始/終了するキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "Turn _On:"
-#~ msgstr "開始(_O):"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "開始キーの設定"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "入力メソッドを開始するキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "終了(_F):"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "終了キーの設定"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "入力メソッドを終了するキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "_Next input method:"
-#~ msgstr "次の入力メソッド(_N):"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "次の入力メソッドキーの設定"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "次の入力メソッドに切替えるキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "_Previous input method:"
-#~ msgstr "前の入力メソッド(_P):"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "前の入力メソッドキーの設定"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "前の入力メソッドに切替えるキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "入力メソッドメニューを表示(_M):"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "入力メソッドメニュー表示キーの設定"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "入力メソッドメニューを表示させるキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "キーボード配列(_K):"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "キーボード配列を認識する入力メソッドが正しく動作するように、現在使用されて"
-#~ "いるキーボード配列を選んでください。"
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "未確定文字列を入力対象クライアントのウィンドウに表示(_E)"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "このオプションを有効にすると、未確定文字列は独立した入力ウィンドウにではな"
-#~ "く入力対象クライアントに直接表示されます。"
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "全てのアプリケーションで同一入力メソッドを使用(_S)"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "このオプションを有効にすると、同一の入力メソッドを全てのアプリケーションで"
-#~ "使用できるようになります。アプリケーションごとに別々の入力メソッドを使用す"
-#~ "る場合はこのオプションを無効にして下さい。"
-
-#~ msgid "Hotkeys"
-#~ msgstr "ホットキー"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr "入力メソッドの有効/無効とホットキーの設定を行います。"
-
-#~ msgid "The installed input method services:"
-#~ msgstr "インストールされている入力メソッド:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "ホットキー(_H)"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "この入力メソッドに切り替えるホットキーを編集"
-
-#~ msgid "Select _Filters"
-#~ msgstr "フィルター(_F)"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "この入力メソッドで使用するフィルターを選択"
-
-#~ msgid "_Expand"
-#~ msgstr "開く(_E)"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "全ての言語グループを展開する"
-
-#~ msgid "_Collapse"
-#~ msgstr "閉じる(_C)"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "全ての言語グループを閉じる"
-
-#~ msgid "E_nable All"
-#~ msgstr "全て有効(_N)"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "全ての入力メソッドを有効にする"
-
-#~ msgid "_Disable All"
-#~ msgstr "全て無効(_D)"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "全ての入力メソッドを無効にする"
-
-#~ msgid "Filters"
-#~ msgstr "フィルター"
-
-#~ msgid "Languages"
-#~ msgstr "言語"
-
-#~ msgid "Description"
-#~ msgstr "説明"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "%s のホットキーを編集"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "%s のフィルターを編集"
-
-#~ msgid "Move _Up"
-#~ msgstr "上に移動(_U)"
-
-#~ msgid "Move _Down"
-#~ msgstr "下に移動(_D)"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "GTK+-2.xライブラリによるパネルデーモン"
-
-#~ msgid "On demand"
-#~ msgstr "開始時に"
-
-#~ msgid "Never"
-#~ msgstr "しない"
-
-#~ msgid "ToolBar"
-#~ msgstr "ツールバー"
-
-#~ msgid "_Show:"
-#~ msgstr "表示(_S):"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "オートスナップ(_N)"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "入力メソッドのアイコンを表示(_I)"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "入力メソッドの名称を表示(_U)"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "オートハイド(_O):"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "スティックアイコンを表示(_T)"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "メニューアイコンを表示(_E)"
-
-#~ msgid "Show _help icon"
-#~ msgstr "ヘルプアイコンを表示(_H)"
-
-#~ msgid "Show _property label"
-#~ msgstr "プロパティーラベルを表示(_P)"
-
-#~ msgid "Input window"
-#~ msgstr "入力ウィンドウ"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "候補ウィンドウを埋め込む(_M)"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "候補ウィンドウを縦に表示(_V)"
-
-#~ msgid "Misc"
-#~ msgstr "その他"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "トレーアイコンを表示(_Y)"
-
-#~ msgid "Stick _windows"
-#~ msgstr "ウィンドウを固定(_W)"
-
-#~ msgid "_Font:"
-#~ msgstr "フォント(_F):"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "\"常に\"を選ぶと、SCIMがアクティブでない時もツールバーが表示されます。\"開"
-#~ "始時に\"を選ぶと、SCIMがアクティブな時だけ表示されます。\"しない\"を選ぶ"
-#~ "と、SCIMがアクティブな時もツールバーは表示されません。"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "このオプションを有効にするとツールバーが\n"
-#~ "自動的にスクリーンの端に移動します。"
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "ここで設定した時間が経過するとツールバーは自動的に消えます。このオプション"
-#~ "は表示に\"常に\"が選択されている場合にのみ有効です。オートハイドを無効にす"
-#~ "るには値をゼロにして下さい。"
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にすると入力メソッドの\n"
-#~ "アイコンがツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にすると入力メソッドの\n"
-#~ "名称がツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にするとスティックアイコンが\n"
-#~ "ツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にするとメニューアイコンが\n"
-#~ "ツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にするとヘルプアイコンが\n"
-#~ "ツールバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "このオプションを有効にすると入力メソッドの\n"
-#~ "プロパティーがツールバーにテキスト表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "このオプションを有効にすると候補ウィンドウが\n"
-#~ "入力ウィンドウの中に表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "このオプションを有効にすると候補ウィンドウが\n"
-#~ "縦に表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "このオプションを有効にするとトレーアイコンが\n"
-#~ "タスクバーに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "このオプションを有効にするとツールバーと入力/候補ウィンドウが\n"
-#~ "本来の表示位置に固定されます。"
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr "このフォント設定は入力/候補ウィンドウに適用されます。"
-
-#~ msgid "Select Interface Font"
-#~ msgstr "インターフェイスのフォントを選択"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "フロントエンド"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMエンジン"
-
-#~ msgid "Panel"
-#~ msgstr "パネル"
-
-#~ msgid "Extra"
-#~ msgstr "その他"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "SCIM入力メソッドの設定"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI セットアップユーティリティ</"
-#~ "span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">%s モジュールの設定</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "SCIMの設定を終了しますか?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "すぐに有効にならない設定項目があります。\n"
-#~ "すべての変更を有効にするにはSCIMを再起動して下さい。"
-
-#~ msgid "SCIM Setup"
-#~ msgstr "SCIMを設定"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "GTK Widget library に基づく統合設定ユーティリティ"
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Smart Common Input Method platform セットアップユーティリティ"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIMヘルプ"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "入力ウィンドウ・ツールバーを固定する/固定しない"
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "SCIMと現在の入力メソッドについて簡単なヘルプを表示します"
-
-#~ msgid "Show command menu."
-#~ msgstr "コマンドメニューを表示"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "設定をリロード"
-
-#~ msgid "Stick Windows"
-#~ msgstr "ウィンドウを固定"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "ツールバーを隠す"
-
-#~ msgid "Help ..."
-#~ msgstr "ヘルプ..."
-
-#~ msgid "Exit"
-#~ msgstr "終了"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
-
-#~ msgid "Preedit String mode"
-#~ msgstr "未確定文字列の表示モード"
-
-#~ msgid "X Window"
-#~ msgstr "Xウィンドウ"
-
-#~ msgid "A FrontEnd module for X11R6 Window System, using XIM Protocol."
-#~ msgstr ""
-#~ "XIMプロトコルによるX11R6ウィンドウシステム用フロントエンドモジュール"
-
-#~ msgid "XIM Settings"
-#~ msgstr "XIMの設定"
-
-#~ msgid "_On The Spot"
-#~ msgstr "_On The Spot"
-
-#~ msgid "_Dynamic Event Flow"
-#~ msgstr "_Dynamic Event Flow"
-
-#~ msgid ""
-#~ "If this option is checked, the OnTheSpot input style will be used when "
-#~ "the client supports it."
-#~ msgstr ""
-#~ "このオプションを有効にするとOn The Spot入力スタイルが適用されます。但し、"
-#~ "クライアント側のサポートが必要です。"
-
-#~ msgid ""
-#~ "If this option is checked, then dynamic event flow will be used.This can "
-#~ "speed up the key event response, especially in remote X11 environment.But "
-#~ "SCIM may become unstable."
-#~ msgstr ""
-#~ "このオプションを有効にすると、特にリモートX11環境においてキーイベントのレ"
-#~ "スポンスを向上させることができます。但し、SCIMが不安定になる場合がありま"
-#~ "す。"
-
-#, fuzzy
-#~ msgid "Slovene"
-#~ msgstr "スロベニア語"
-
-#, fuzzy
-#~ msgid "Global"
-#~ msgstr "全体設定"
-
-#, fuzzy
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>"
-
-#, fuzzy
-#~ msgid "Hot Keys"
-#~ msgstr ""
-#~ "ショートカットキー:\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ "Hot keys:\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2004 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ "ショートカットキー:\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " open/close the input method.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ ":\n"
-#~ " 入力メソッドを開始/終了する\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " switch to the next input method.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ ":\n"
-#~ " 次の入力メソッドに切替える\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ ":\n"
-#~ " switch to the previous input method.\n"
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ " 前の入力メソッドに切替える\n"
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Full/Half Letter"
-#~ msgstr "全角/半角文字"
-
-#~ msgid "Full/Half Punct"
-#~ msgstr "全角/半角句読点"
-
-#~ msgid ""
-#~ "The input mode of the letters. Click to toggle between half and full."
-#~ msgstr ""
-#~ "文字入力モード。全角/半角文字に切替えるにはここをクリックして下さい。"
-
-#~ msgid ""
-#~ "The input mode of the puncutations. Click to toggle between half and full."
-#~ msgstr "句読点入力モード。全角/半角に切替えるにはここをクリックして下さい。"
-
-#~ msgid ""
-#~ " Switch between full/half width letter mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " 全角/半角文字切替\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Switch between full/half width punctuation mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " 全角/半角句読点切替\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Switch between Forward/Input mode.\n"
-#~ "\n"
-#~ " "
-#~ msgstr "直接入力/変換入力モードに切替"
-
-#~ msgid ""
-#~ " Add a new phrase.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ " 新しいフレーズを追加する\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ " Delete the selected phrase.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " 選択されたフレーズを削除する\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Control+Down:\n"
-#~ " Move lookup cursor to next shorter phrase\n"
-#~ " Only available when LongPhraseFirst option is set.\n"
-#~ "\n"
-#~ msgstr ""
-#~ "Control+Down:\n"
-#~ " カーソルを次のより短いフレーズに移動する\n"
-#~ " \"長いフレーズを優先的に表示\"が有効な場合のみ使用できます。\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Control+Up:\n"
-#~ " Move lookup cursor to previous longer phrase\n"
-#~ " Only available when LongPhraseFirst option is set.\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Control+Up:\n"
-#~ " カーソルを前のより長いフレーズに移動する\n"
-#~ " \"長いフレーズを優先的に表示\"が有効な場合のみ使用できます。\n"
-#~ "\n"
-
-#~ msgid ""
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ " Esc:\n"
-#~ " 入力メソッドをリセット\n"
-#~ "\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "How to add a phrase:\n"
-#~ " Input the new phrase as normal, then press the\n"
-#~ " hot key. A hint will be shown to let you input a key\n"
-#~ " for this phrase.\n"
-#~ " Input a key then press the space bar.\n"
-#~ " A hint will be shown to indicate whether\n"
-#~ " the phrase was added sucessfully.\n"
-#~ msgstr ""
-#~ "フレーズの追加方法:\n"
-#~ " 新しいフレーズを普通に入力しショートカットキーを押します。\n"
-#~ " ヒントが表示され、そのフレーズを入力する際に使うキーの入力\n"
-#~ " を促します。\n"
-#~ " キーを入力しスペースを押して下さい。\n"
-#~ " ヒントにフレーズが正しく登録されたかどうか表示されますので\n"
-#~ " 確認して下さい。\n"
-
-#~ msgid "Input a key string for phrase: "
-#~ msgstr "このフレーズに使うキーを入力して下さい: "
-
-#~ msgid "Success."
-#~ msgstr "登録完了"
-
-#~ msgid "Failed."
-#~ msgstr "登録に失敗しました"
-
-#~ msgid "option -no cannot be used with -o\n"
-#~ msgstr "-noオプションは-oオプションと同時には使用できません\n"
-
-#~ msgid "option -o cannot be used with -no\n"
-#~ msgstr "-oオプションは-noオプションと同時には使用できません\n"
-
-#~ msgid "No argument for option "
-#~ msgstr "オプション引数がありません"
-
-#~ msgid "Invalid option: "
-#~ msgstr "オプションが無効です:"
-
-#~ msgid "Loading table file "
-#~ msgstr "テーブルを読込中"
-
-#~ msgid " ...\n"
-#~ msgstr " ...\n"
-
-#~ msgid "table file load failed!"
-#~ msgstr "テーブルの読込に失敗!"
-
-#~ msgid "Saving frequency table file "
-#~ msgstr "頻度テーブルを保存中"
-
-#~ msgid "frequency table file load failed!"
-#~ msgstr "頻度テーブルの読込に失敗!"
-
-#~ msgid "Saving table file "
-#~ msgstr "テーブルを保存中"
-
-#~ msgid "Table file save failed!"
-#~ msgstr "テーブルの保存に失敗!"
-
-#~ msgid "Generic Table"
-#~ msgstr "汎用テーブル"
-
-#~ msgid "An IMEngine Module which uses generic table input method file."
-#~ msgstr "汎用テーブル入力メソッドを使用するIMエンジンモジュール"
-
-#~ msgid "Full width _punctuation:"
-#~ msgstr "全角/半角句読点(_P):"
-
-#~ msgid "Select full width puncutation keys"
-#~ msgstr "全角/半角句読点切替キーの設定"
-
-#~ msgid ""
-#~ "The key events to switch full/half width punctuation input mode. Click on "
-#~ "the button on the right to edit it."
-#~ msgstr ""
-#~ "全角/半角句読点を切替えるキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "Full width _letter:"
-#~ msgstr "全角/半角文字(_L):"
-
-#~ msgid "Select full width letter keys"
-#~ msgstr "全角/半角文字切替キーの設定"
-
-#~ msgid ""
-#~ "The key events to switch full/half width letter input mode. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "全角/半角文字を切替えるキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "_Mode switch:"
-#~ msgstr "入力モード切替(_M):"
-
-#~ msgid "Select mode switch keys"
-#~ msgstr "入力モード切替キーの設定"
-
-#~ msgid ""
-#~ "The key events to change current input mode. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "入力モードを切替えるキー。変更する場合は\n"
-#~ "右のボタンをクリックして下さい。"
-
-#~ msgid "_Add phrase:"
-#~ msgstr "フレーズ追加(_A):"
-
-#~ msgid "Select add phrase keys."
-#~ msgstr "フレーズ追加キーの設定"
-
-#~ msgid ""
-#~ "The key events to add a new user defined phrase. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "新しいフレーズを追加するキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "_Delete phrase:"
-#~ msgstr "フレーズ削除(_D):"
-
-#~ msgid "Select delete phrase keys."
-#~ msgstr "フレーズ削除キーの設定"
-
-#~ msgid ""
-#~ "The key events to delete a selected phrase. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "選択されたフレーズを削除するキー。変更する\n"
-#~ "場合は右のボタンをクリックして下さい。"
-
-#~ msgid "Show _prompt"
-#~ msgstr "プロンプトを表示(_P)"
-
-#~ msgid "Show key _hint"
-#~ msgstr "ヒントキーを表示(_H)"
-
-#~ msgid "Save _user table in binary format"
-#~ msgstr "ユーザーテーブルをバイナリー形式で保存(_U)"
-
-#~ msgid "Show the u_ser defined phrases first"
-#~ msgstr "ユーザー定義フレーズを優先的に表示(_S)"
-
-#~ msgid "Show the _longer phrases first"
-#~ msgstr "長いフレーズを優先的に表示(_L)"
-
-#~ msgid ""
-#~ "If this option is checked, the key prompt of the currently selected "
-#~ "phrase will be shown."
-#~ msgstr ""
-#~ "このオプションを有効にすると選択された\n"
-#~ "フレーズのキープロンプトが表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the remaining keystrokes of the phraseswill be "
-#~ "shown on the lookup table."
-#~ msgstr ""
-#~ "このオプションを有効にするとフレーズの残りの\n"
-#~ "キーストロークが候補ウィンドウに表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the user table will be stored with binary "
-#~ "format, this will increase the loading speed."
-#~ msgstr ""
-#~ "このオプションを有効にするとユーザー定義テーブルがバイナリー\n"
-#~ "形式で保存されます。テーブルの読込が速くなります。"
-
-#~ msgid ""
-#~ "If this option is checked, the user defined phrases will be shown in "
-#~ "front of others. "
-#~ msgstr ""
-#~ "このオプションを有効にするとユーザー定義フレーズ\n"
-#~ "が優先的に表示されます。"
-
-#~ msgid ""
-#~ "If this option is checked, the longer phrase will be shown in front of "
-#~ "others. "
-#~ msgstr ""
-#~ "このオプションを有効にすると長いフレーズが\n"
-#~ "優先的に表示されます。"
-
-#~ msgid "The installed tables:"
-#~ msgstr "インストール済みのテーブル:"
-
-#~ msgid "_Install"
-#~ msgstr "インストール(_I)"
-
-#~ msgid "Install a new table."
-#~ msgstr "新しいテーブルをインストール"
-
-#~ msgid "_Delete"
-#~ msgstr "削除(_D)"
-
-#~ msgid "Delete the selected table."
-#~ msgstr "選択されたテーブルを削除"
-
-#~ msgid "_Properties"
-#~ msgstr "プロパティー(_P)"
-
-#~ msgid "Edit the properties of the selected table."
-#~ msgstr "選択されたテーブルのプロパティーを編集"
-
-#~ msgid "Table Management"
-#~ msgstr "テーブル管理"
-
-#~ msgid "Select an icon file"
-#~ msgstr "アイコンファイルを選択"
-
-#~ msgid "User"
-#~ msgstr "ユーザー"
-
-#~ msgid "System"
-#~ msgstr "システム"
-
-#~ msgid "Please select the table file to be installed."
-#~ msgstr "インストールするテーブルファイルを選択して下さい。"
-
-#~ msgid "Failed to install the table! It's already in table file directory."
-#~ msgstr "テーブルのインストールに失敗!すでにインストールされています。"
-
-#~ msgid "Failed to load the table file!"
-#~ msgstr "テーブルファイルの読込に失敗!"
-
-#~ msgid ""
-#~ "Failed to install the table! Another version of this table was already "
-#~ "installed."
-#~ msgstr ""
-#~ "テーブルのインストールに失敗!他のバージョンが\n"
-#~ "すでにインストールされています。"
-
-#~ msgid ""
-#~ "Another version of this table was already installed. Do you want to "
-#~ "replace it with the new one?"
-#~ msgstr ""
-#~ "このテーブルの他のバージョンがすでにインストールされています。\n"
-#~ "新しいバージョンに置き換えますか?"
-
-#~ msgid ""
-#~ "Failed to install the table! A table with the same file name was already "
-#~ "installed."
-#~ msgstr ""
-#~ "テーブルのインストールに失敗!同じ名前のテーブルが\n"
-#~ "すでにインストールされています。"
-
-#~ msgid ""
-#~ "A table with the same file name was already installed. Do you want to "
-#~ "overwrite it?"
-#~ msgstr ""
-#~ "同じ名前のテーブルがすでにインストールされています。\n"
-#~ "上書きしますか?"
-
-#~ msgid "Failed to install the table to %s!"
-#~ msgstr "%sにテーブルをインストールできませんでした!"
-
-#~ msgid "Can not delete the file %s!"
-#~ msgstr "ファイル%sを削除できません!"
-
-#~ msgid "Are you sure to delete this table file?"
-#~ msgstr "このテーブルを削除しますか?"
-
-#~ msgid "Failed to delete the table file!"
-#~ msgstr "テーブルの削除に失敗!"
-
-#~ msgid "True"
-#~ msgstr "True"
-
-#~ msgid "False"
-#~ msgstr "False"
-
-#~ msgid "Split Keys:"
-#~ msgstr "スプリットキー:"
-
-#~ msgid "The key strokes to split inputed string."
-#~ msgstr "入力済みの文字列を分割するキー"
-
-#~ msgid "Commit Keys:"
-#~ msgstr "変換確定キー:"
-
-#~ msgid "The key strokes to commit converted result to client."
-#~ msgstr "変換結果をクライアントに送るキー"
-
-#~ msgid "Forward Keys:"
-#~ msgstr "直接入力キー:"
-
-#~ msgid "The key strokes to forward inputed string to client."
-#~ msgstr "入力された文字列を変換せずに直接クライアントに送るキー"
-
-#~ msgid "The key strokes to select candidate phrases in lookup table."
-#~ msgstr "候補ウィンドウからフレーズを選択するキー"
-
-#~ msgid "Page Up Keys:"
-#~ msgstr "前ページキー:"
-
-#~ msgid "The lookup table page up keys"
-#~ msgstr "候補ウィンドウで前のページに戻るキー"
-
-#~ msgid "Page Down Keys:"
-#~ msgstr "次ページキー:"
-
-#~ msgid "The lookup table page down keys"
-#~ msgstr "候補ウィンドウで次のページに進むキー"
-
-#~ msgid "Table Properties"
-#~ msgstr "テーブルのプロパティー"
-
-#~ msgid "Name:"
-#~ msgstr "名称:"
-
-#~ msgid "The name of this table."
-#~ msgstr "このテーブルの名称"
-
-#~ msgid "Author:"
-#~ msgstr "作者:"
-
-#~ msgid "The author of this table."
-#~ msgstr "このテーブルの作者"
-
-#~ msgid "UUID:"
-#~ msgstr "UUID:"
-
-#~ msgid "The unique ID of this table."
-#~ msgstr "このテーブルのID"
-
-#~ msgid "Serial Number:"
-#~ msgstr "バージョン:"
-
-#~ msgid "The serial number of this table."
-#~ msgstr "このテーブルのバージョン"
-
-#~ msgid "Icon File:"
-#~ msgstr "アイコンファイル:"
-
-#~ msgid "The icon file of this table."
-#~ msgstr "このテーブルのアイコンファイル"
-
-#~ msgid "Supported Languages:"
-#~ msgstr "サポート言語:"
-
-#~ msgid "The languages supported by this table."
-#~ msgstr "このテーブルがサポートする言語"
-
-#~ msgid "Status Prompt:"
-#~ msgstr "ステイタスプロンプト:"
-
-#~ msgid "A prompt string to be shown in status area."
-#~ msgstr "ステイタスに表示される文字列"
-
-#~ msgid "Valid Input Chars:"
-#~ msgstr "有効な文字:"
-
-#~ msgid "The valid input chars of this table."
-#~ msgstr "このテーブルで使用できる文字"
-
-#~ msgid "Multi Wildcard Char:"
-#~ msgstr "マルチワイルドカード文字:"
-
-#~ msgid ""
-#~ "The multi wildcard chars of this table. These chars can be used to match "
-#~ "one or more arbitrary chars."
-#~ msgstr ""
-#~ "このテーブルのマルチワイルドカード文字。\n"
-#~ "複数の文字の代わりに使用できます。"
-
-#~ msgid "Single Wildcard Char:"
-#~ msgstr "シングルワイルドカード文字:"
-
-#~ msgid ""
-#~ "The single wildcard chars of this table.These chars can be used to match "
-#~ "one arbitrary char."
-#~ msgstr ""
-#~ "このテーブルのシングルワイルドカード文字。\n"
-#~ "任意の一文字の代わりに使用できます。"
-
-#~ msgid "Max Key Length:"
-#~ msgstr "最大キー数:"
-
-#~ msgid "The maxmium length of key strings."
-#~ msgstr "文字列の最大キー数"
-
-#~ msgid "Show Key Prompt:"
-#~ msgstr "キープロンプトを表示:"
-
-#~ msgid "If true then the key prompts will be shown instead of the raw keys."
-#~ msgstr "Trueの場合は入力された文字の代わりにキープロンプトが表示されます。"
-
-#~ msgid "Auto Select:"
-#~ msgstr "自動選択:"
-
-#~ msgid ""
-#~ "If true then the first candidate phrase will be selected automatically "
-#~ "when inputing the next key."
-#~ msgstr ""
-#~ "Trueの場合は次のフレーズの入力を開始すると同時に入力済みの\n"
-#~ "フレーズに対してその第一変換候補が自動的に選択されます。"
-
-#~ msgid "Auto Wildcard:"
-#~ msgstr "自動ワイルドカード:"
-
-#~ msgid ""
-#~ "If true then a multi wildcard char will be append to the end of inputed "
-#~ "key string when searching phrases."
-#~ msgstr ""
-#~ "Trueの場合は検索時にマルチワイルドカード文字が\n"
-#~ "入力された文字列の最後に自動的に付加されます。"
-
-#~ msgid "Auto Commit:"
-#~ msgstr "自動コミット:"
-
-#~ msgid ""
-#~ "If true then the converted result string will be committed to client "
-#~ "automatically."
-#~ msgstr "Trueの場合は変換結果が自動的にコミットされます。"
-
-#~ msgid ""
-#~ "If true then the inputed key string will be splitted automatically when "
-#~ "necessary."
-#~ msgstr "Trueの場合は、入力された文字列が必要に応じて自動的に分割されます。"
-
-#~ msgid "Discard Invalid Key:"
-#~ msgstr "無効な文字列を排除:"
-
-#~ msgid ""
-#~ "If true then the invalid key will be discarded automatically.This option "
-#~ "is only valid when Auto Select and Auto Commit is true."
-#~ msgstr ""
-#~ "Trueの場合は、入力された無効な文字列を自動的に排除します。このオプションは"
-#~ "自動選択と自動コミットがTrueの場合のみ有効になります。"
-
-#~ msgid "Dynamic Adjust:"
-#~ msgstr "動的アップデート:"
-
-#~ msgid "If true then the phrases' frequencies will be adjusted dynamically."
-#~ msgstr "Trueの場合は、使用頻度情報が動的にアップデートされます。"
-
-#~ msgid "Auto Fill Preedit Area:"
-#~ msgstr "プリエディットの自動補完:"
-
-#~ msgid ""
-#~ "If true then the preedit string will be filled up with the current "
-#~ "candiate phrase automatically.This option is only valid when Auto Select "
-#~ "is TRUE."
-#~ msgstr ""
-#~ "Trueの場合は、自動的にプリエディットが変換候補によって補完されます。\n"
-#~ "このオプションは自動選択がTrueの場合のみ有効になります。"
-
-#~ msgid "Always Show Lookup Table:"
-#~ msgstr "候補リストを常に表示:"
-
-#~ msgid ""
-#~ "If true then the lookup table will always be shown when any candidate "
-#~ "phrase is available. Otherwise the lookup table will only be shown when "
-#~ "necessary.\n"
-#~ "If Auto Fill is false, then this option will be no effect, and always be "
-#~ "true."
-#~ msgstr ""
-#~ "Trueの場合は変換候補があれば常に候補ウィンドウが表示されます。\n"
-#~ "Falseの場合は必要な時のみ表示されます。\n"
-#~ "但し、自動補完が無効の場合は常に表示されます。"
-
-#~ msgid "Default Full Width Punct:"
-#~ msgstr "デフォルト句読点を全角に設定:"
-
-#~ msgid "If true then full width punctuations will be inputed by default."
-#~ msgstr "Trueの場合は、指定のない限り全角句読点が入力されます。"
-
-#~ msgid "Default Full Width Letter:"
-#~ msgstr "デフォルト文字幅を全角に設定:"
-
-#~ msgid "If true then full width letters will be inputed by default."
-#~ msgstr "Trueの場合は、指定のない限り全角文字が入力されます。"
-
-#~ msgid "Invalid icon file."
-#~ msgstr "アイコンファイルが無効です。"
-
-#~ msgid "Invalid languages."
-#~ msgstr "言語が無効です。"
-
-#~ msgid "Invalid status prompt."
-#~ msgstr "ステイタスプロンプトが無効です。"
-
-#~ msgid "Invalid multi wildcard chars."
-#~ msgstr "マルチワイルドカード文字が無効です。"
-
-#~ msgid "Invalid single wildcard chars."
-#~ msgstr "シングルワイルドカード文字が無効です。"
-
-#~ msgid "Invalid commit keys."
-#~ msgstr "コミットキーが無効です。"
-
-#~ msgid "Invalid select keys."
-#~ msgstr "選択キーが無効です。"
-
-#~ msgid "Invalid page up keys."
-#~ msgstr "次ページキーが無効です。"
-
-#~ msgid "Invalid page down keys."
-#~ msgstr "前ページキーが無効です。"
-
-#~ msgid "Invalid max key length."
-#~ msgstr "最大キー数が無効です。"
-
-#~ msgid "Failed to save table %s!"
-#~ msgstr "テーブル%sの保存に失敗!"
-
-#~ msgid "Failed to load any Config Modules!"
-#~ msgstr "設定モジュールの読込に失敗!"
-
-#~ msgid "_Current Config Module:"
-#~ msgstr "現在の設定モジュール(_C):"
-
-#~ msgid "<Not found>"
-#~ msgstr "<見つかりません>"
-
-#~ msgid "Current Config Module has been changed to %s."
-#~ msgstr "現在の設定モジュールを%sに変更しました。"
-
-#~ msgid "Start the SCIM Setup Utility."
-#~ msgstr "SCIMセットアップユーティリティを開く"
-
-#~ msgid "Setup ..."
-#~ msgstr "設定..."
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "キーボード"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+++ /dev/null
-# translation of ko.
-# Copyright (C) 2004 THE ko'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the ko package.
-#
-# Kitae <bluetux@gmail.com>, 2005.
-# Choe Hwanjin <choe.hwanjin@gmail.com>, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: SCIM\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2005-07-08 18:16+0900\n"
-"Last-Translator: Choe Hwanjin <choe.hwanjin@gmail.com>\n"
-"Language-Team: Korean <en@li.org>\n"
-"Language: ko\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-msgid "Keyboard"
-msgstr "키보드"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "키보드"
+++ /dev/null
-# translation of nl.po to Nederlands
-# This file is distributed under the same license as the scim package.
-# Copyright (C) 2004 THE scim'S COPYRIGHT HOLDER.
-#
-#
-# Ronald Stroethoff <stroet43@zonnet.nl>, 2007.
-msgid ""
-msgstr ""
-"Project-Id-Version: nl\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2007-03-17 18:54+0100\n"
-"Last-Translator: Ronald Stroethoff <stroet43@zonnet.nl>\n"
-"Language-Team: Nederlands\n"
-"Language: \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: KBabel 1.11.4\n"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-#, fuzzy
-msgid "Keyboard"
-msgstr "Nederlands/toetsenbord"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Toetsen selectie"
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Toetsen selectie"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Opties"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Duits"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Nederlands/toetsenbord"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Toetsen selectie"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Nederlands/toetsenbord"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Opties"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Nederlands/toetsenbord"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Engels (USA)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amhaars"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabisch"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabisch (Libanees)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamitisch"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbeidzjaans"
-
-#~ msgid "Belarusian"
-#~ msgstr "Witrussisch"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgaars"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengaals"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengaals (India)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetaans"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosnisch"
-
-#~ msgid "Catalan"
-#~ msgstr "Catalaans"
-
-#~ msgid "Czech"
-#~ msgstr "Tschechisch"
-
-#~ msgid "Welsh"
-#~ msgstr "Welsh"
-
-#~ msgid "Danish"
-#~ msgstr "Deens"
-
-#~ msgid "German"
-#~ msgstr "Duits"
-
-#~ msgid "Divehi"
-#~ msgstr "Divehi"
-
-#~ msgid "Greek"
-#~ msgstr "Grieks"
-
-#~ msgid "English"
-#~ msgstr "Engels"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Engels (Australie)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Engels (Canada)"
-
-#~ msgid "English (British)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Engels (Ierland)"
-
-#~ msgid "English (American)"
-#~ msgstr "Engels (USA)"
-
-#~ msgid "Spanish"
-#~ msgstr "Spaans"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Spaans (Mexico)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estlands"
-
-#~ msgid "Basque"
-#~ msgstr "Baskisch"
-
-#~ msgid "Persian"
-#~ msgstr "Perzisch"
-
-#~ msgid "Finnish"
-#~ msgstr "Fins"
-
-#~ msgid "French"
-#~ msgstr "Frans"
-
-#~ msgid "Irish"
-#~ msgstr "Iers"
-
-#~ msgid "Galician"
-#~ msgstr "Galicisch"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hebreeuws"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "Kroatisch"
-
-#~ msgid "Hungarian"
-#~ msgstr "Hongaars"
-
-#~ msgid "Armenian"
-#~ msgstr "Armeens"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonesisch"
-
-#~ msgid "Icelandic"
-#~ msgstr "IJslands"
-
-#~ msgid "Italian"
-#~ msgstr "Italiaans"
-
-#~ msgid "Japanese"
-#~ msgstr "Japans"
-
-#~ msgid "Georgian"
-#~ msgstr "Georgisch"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazachs"
-
-#~ msgid "Cambodian"
-#~ msgstr "Cambojaans"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannada"
-
-#~ msgid "Korean"
-#~ msgstr "Koreaans"
-
-#~ msgid "Laothian"
-#~ msgstr "Laothian"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Litouws"
-
-#~ msgid "Latvian"
-#~ msgstr "Lets"
-
-#~ msgid "Macedonian"
-#~ msgstr "Macedonisch"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malayalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongools"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Maleis"
-
-#~ msgid "Burmese"
-#~ msgstr "Birmaans"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepalees"
-
-#~ msgid "Dutch"
-#~ msgstr "Nederlands"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Noors (Nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Noors (Bokmal)"
-
-#~ msgid "Oriya"
-#~ msgstr "Oriya"
-
-#~ msgid "Punjabi"
-#~ msgstr "Punjabi"
-
-#~ msgid "Polish"
-#~ msgstr "Pools"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugees"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugees (Brazilie)"
-
-#~ msgid "Romanian"
-#~ msgstr "Roemeens"
-
-#~ msgid "Russian"
-#~ msgstr "Russisch"
-
-#~ msgid "Sinhala"
-#~ msgstr "Singalees"
-
-#~ msgid "Slovak"
-#~ msgstr "Slowaaks"
-
-#~ msgid "Slovenian"
-#~ msgstr "Sloveens"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanees"
-
-#~ msgid "Serbian"
-#~ msgstr "Servisch"
-
-#~ msgid "Swedish"
-#~ msgstr "Zweeds"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Zweeds (Finland)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamil"
-
-#~ msgid "Telugu"
-#~ msgstr "Telugu"
-
-#~ msgid "Thai"
-#~ msgstr "Thais"
-
-#~ msgid "Turkish"
-#~ msgstr "Turks"
-
-#~ msgid "Uighur"
-#~ msgstr "Oeigoers"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Oekraïens"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "Oezbeeks"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamees"
-
-#~ msgid "Walloon"
-#~ msgstr "Waals"
-
-#~ msgid "Yiddish"
-#~ msgstr "Jiddisch"
-
-#~ msgid "Chinese"
-#~ msgstr "Chinees"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Chinees (versimpeld)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Chinees (traditioneell)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belgisch"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Engels (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Engels (Canada)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Engels (Ierland)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Engels (USA)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Engels (Canada)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Engels (Canada)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Engels (Groot Britannie)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Frans (Canada)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Frans (Canada)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Frans (Canada)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Duits (Schwitsers)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Frans (Canada)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Duits (met deadkeys)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Duits (Schwitsers)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Engels (Australie)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Duits (Schwitsers)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Duits (Schwitsers)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugees (Brazilie)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugees (Brazilie)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Spaans (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Spaans (Mexico)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malayalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Noors"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Servisch"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Chinees (traditioneell)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Chinees (traditioneell)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Chinees (traditioneell)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Chinees"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Chinees (versimpeld)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabisch (Libanees)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabisch (Egyptisch)"
-
-#~ msgid "Other"
-#~ msgstr "Overige"
-
-#~ msgid "Unknown"
-#~ msgstr "Onbekend"
-
-#~ msgid "English (US)"
-#~ msgstr "Engels (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belgisch"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Tsjechisch (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Frans (Schwitsers) "
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Duits (met deadkeys)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugees (Brazilie, US, accent)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slowaaks (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Spaans (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Spaans (Latijns Amerika)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Engels (UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Omzetten versimpeld/traditioneel Chinees"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Versimpeld naar traditioneel Chinees omzetten en omgekeert."
-
-#, fuzzy
-#~ msgid "SC-TC"
-#~ msgstr "VC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Omzetting versimpeld naar traditioneel Chinees"
-
-#~ msgid "No Conversion"
-#~ msgstr "Geen omzetting"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Versimpeld naar traditioneel"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Versimpeld Chinees naar triditioneel Chinees omzetten"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Traditioneel naar versimpeld"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Traditioneel Chinees naar versimpeld Chinees omzetten"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "VC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->VC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Smart Common Invoer-methode Plattform "
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(c) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Aanzetten"
-
-#~ msgid "Name"
-#~ msgstr "Naam"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Cursor positie"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "De huidige positie van de cursor (in karakters)."
-
-#~ msgid "Maximum length"
-#~ msgstr "Maximale lengte"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr "Maximale aantal getoonde karakters. »0« betekend onbegrenst."
-
-#~ msgid "Maximum width"
-#~ msgstr "Maximale Breedte"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Maximale Breedte van de getoonde letterreeks."
-
-#~ msgid "Has Frame"
-#~ msgstr "Met kader"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "\"Nee\" verwijdert de buitenste rand van de getoonde letter-reeks."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Cursor tonen"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "Met \"JA\" wordt een knipperende cursor getoond."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Cursor automatisch verplaatsen"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "Bij »ja«, wordt de cursor automatisch verschoven."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Drukknop voor het doorgeven"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr ""
-#~ "Bij »ja«, wordt de gekozen uitdrukking met elke druk op een toets aan het "
-#~ "programma doorgegeven."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Venster-formaat automatisch aan teken-lengte aanpassen"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "Bei »ja« is de automatische grootte-aanpassing ingeschakeld."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "Bij »ja«, wordt de cursor automatisch verschoven."
-
-#~ msgid "Width in chars"
-#~ msgstr "Breedte in tekens"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Aantal tekens waarvoor ruimte gelaten wordt."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Scroll-instelling"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr ""
-#~ "Aantal pixels, waarmee de tekenreeks weergave buiten het scherm naar "
-#~ "links verschoven wordt"
-
-#~ msgid "Text"
-#~ msgstr "Tekst"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Inhoud van de tekenreeks weergave"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Gekozen toetsen:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Toetsen Code:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Wizigings-toetsen:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "_Alt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Vrijgeven"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "Su_per"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Geef eerst een toets-code op."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Druk eerst een toets in (of een toetscombinatie).\n"
-#~ " Dit dialoog sluit zich, wanneer de toets wordt losgelaten."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Een toets pakken."
-
-#~ msgid "Key Selection"
-#~ msgstr "Toetsen selectie"
-
-#~ msgid "Orientation"
-#~ msgstr "Oriëntatie"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "De richting van de werkbalk."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Tekst"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amhaars"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Altijd"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Opties"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Nederlands/toetsenbord"
-
-#~ msgid "English/European"
-#~ msgstr "Nederlands/Europeesch"
-
-#, fuzzy
-#~ msgid "RAW CODE"
-#~ msgstr "Unicode RAW CODE"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(c) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Sneltoetsen:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " Omschakelen tussen Multibyte-Codering en Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " Invoer-methode terug zetten.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr ""
-#~ "De status van de huidige invoer-methode. Klik op deze om het te "
-#~ "veranderen."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Algemene instellingen"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Algemene instellingen die door alle FrontEnd-modules gebruikt worden, "
-#~ "inclusief de X11 FrontEnd, GKT IMModule, QT IMModule, enz."
-
-#, fuzzy
-#~ msgid "_Trigger:"
-#~ msgstr "_Trigger:"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Trigger-toetsen kiezen"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Toets-combinaties, waarmee de SCIM-invoer-methode wordt IN- en UIT-"
-#~ "geschakeld. Om dit te veranderen, klik op de rechterknop."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Inschakelen:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Kies de inschakel toets."
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Toetscombinatie om de invoer-methode SCIM inteschakelen.Klik op de "
-#~ "rechterknop om te veranderen."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "U_itschakelen"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "UIT-schakeltoetsen uitkiezen"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Toetscombinatie waarmee de invoer-methode SCIM uitgeschakeld wordt. Klik "
-#~ "op de rechterknop om te veranderen."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Volgende invoer-methode:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr ""
-#~ "Kies een toetscombinatie om naar de volgende invoer-methode te gaan."
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Met deze toetscombinatie, gaat men naar de volgende invoer-methode. klik "
-#~ "op de rechterknop om te veranderen."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Vorige invoer-methode:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Kies de toetscombinatie om naar de vorige invoer-methode te gaan"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Met deze toetscombinatie gaat men naar de vorige invoer-methode. Klik op "
-#~ "de rechterknop om te veranderen."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Toon het keuze-menu voor invoer-methoden:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Kies de toetsen voor het tonen van het invoer-methode kies-menu"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Toetscombinatie's voor het tonen van het invoer-methode kies-menu. Klik "
-#~ "rechts voor het instellen."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Toetsenbord layout:"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Kies hier de huidige gebruikte toetsenbord-layout, zodat invoer-methoden, "
-#~ "die van het toetsenbord-layout afhankelijk zijn, goed werken."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Invoer direkt in programma-venster tonen."
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Wanneer voor deze optie gekozen is, wordt de invoer direkt in het "
-#~ "programma-venster getoond, in plaats van een extra invoer-venster."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "Dezelfde invoer-methode voor alle programma's gebruiken."
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Wanneer dit gekozen is, wordt een en dezelfde invoer-methode voor alle "
-#~ "programma's gebruikt. Wanneer dit niet gekozen is, kan voor elke "
-#~ "programma een andere invoer-methode gekozen worden."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Sneltoetsen"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Hier kunnen de geïnstalleerde invoer-methoden IN- en UIT-geschakeld "
-#~ "worden en hiervoor sneltoetsen gekozen worden."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Geïnstalleerde invoer-methoden:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "_Sneltoetsen instellen"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Sneltoetsen voor de gekozen invoer-methode instellen."
-
-#~ msgid "Select _Filters"
-#~ msgstr "_Filter selecteren"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Kies de filter, die aan deze invoer-methode verbonden moet worden."
-
-#~ msgid "_Expand"
-#~ msgstr "Uitbreiden"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Alle taalgroepen uitbreiden."
-
-#~ msgid "_Collapse"
-#~ msgstr "Samenvouwen"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Alle taalgroepen samenvouwen."
-
-#~ msgid "E_nable All"
-#~ msgstr "Alles _inschakelen"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Alle invoer-methoden inschakelen."
-
-#~ msgid "_Disable All"
-#~ msgstr "Alles _uitschakelen"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Alle invoer-methoden uitschakelen."
-
-#~ msgid "Filters"
-#~ msgstr "Filter"
-
-#~ msgid "Languages"
-#~ msgstr "Talen"
-
-#~ msgid "Description"
-#~ msgstr "Omschrijving"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Sneltoetsen voor %s instellen"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Filter voor %s selecteren"
-
-#~ msgid "Move _Up"
-#~ msgstr "Naar _boven"
-
-#~ msgid "Move _Down"
-#~ msgstr "Naar _onderen"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr ""
-#~ "Een hulp-programma met panelen, gebaseert op de GTK+-2.x-bibliotheek."
-
-#~ msgid "On demand"
-#~ msgstr "Op verzoek"
-
-#~ msgid "Never"
-#~ msgstr "Nooit"
-
-#~ msgid "ToolBar"
-#~ msgstr "Werkbalk"
-
-#~ msgid "_Show:"
-#~ msgstr "_Toon:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Auto s_nap"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Icoon voor invoer-methode tonen"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "_Namen van de invoer-methoden tonen"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Ontzichtbaar maken na (sec):"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Icoon altijd tonen"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "»_Menü« -icoon tonen"
-
-#~ msgid "Show _help icon"
-#~ msgstr "»_Help«-icoon tonen"
-
-#~ msgid "Show _property label"
-#~ msgstr "Eigenschappen-label tonen"
-
-#~ msgid "Input window"
-#~ msgstr "Invoer-venster"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Interne opzoek-tabel"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Vertikale opzoek-tabel"
-
-#~ msgid "Misc"
-#~ msgstr "Diversen"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Toon tra_y icoon"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Venster op plaats vastzetten"
-
-#~ msgid "_Font:"
-#~ msgstr "_Lettertype:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Wanneer \"Altijd\" is gekozen, wordt de werkbalk altijd op het scherm "
-#~ "getoond. Wanneer \"op verzoek\" is gekozen, wordt de werkbalk alleen "
-#~ "getoond wanneer SCIM aktief is. Wanneer \"Nooit\" is gekozen, wordt de "
-#~ "werkbalk nooit getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt de werkbalk aan de rand van het "
-#~ "beeldscherm vastgeklikt"
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "De werkbalk wordt ontzichtbaar na afloop van de ingestelde tijd. Deze "
-#~ "optie is alleen beschikbaar wanneer \"altijd tonen\" is gekozen.Zet de "
-#~ "tijd op nul (0) om dit gedrag uit te schakelen."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt het icoon van de huidige invoer-"
-#~ "methode in de werkbalk getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt de naam van de huidige invoer-"
-#~ "methode in de werkbalk getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt het sticky-icoon op de werkbalk "
-#~ "getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt het menu in de werkbalk getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt het hulp-icoon in de werkbalk "
-#~ "getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt naam van de invoer-methode getoond "
-#~ "in de werkbalk."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, wordt de opzoek-tabel in het invoer-"
-#~ "venster getoond"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen wordt de opzoek-tabel vertikaal getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, zal het icoon van de werkbalk in het "
-#~ "systeemvak getoond."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Wanneer deze optie is gekozen, worden de werkbalk, het invoer-venster en "
-#~ "de opzoektabel op deze plaats vastgezet."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Dit gekozen lettertype wordt in het invoer-venster en in het opzoek-tabel "
-#~ "gebruikt."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Interface-lettertype kiezen"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "FrontEnd"
-
-#~ msgid "IMEngine"
-#~ msgstr "Invoer-methode"
-
-#~ msgid "Panel"
-#~ msgstr "Paneel"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Instellingen voor de SCIM-invoer-methode"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Smart Common Input Method-Plattform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI instellingen</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Instellen van de %s-Module.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Wilt U de setup van SCIM werkelijk verlaten?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Niet alle instellingen kunnen geladen worden. SCIM moet opnieuw gestart "
-#~ "worden om alle nieuwe instellingen te laden."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Instellen van SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "Geïntegreerde setup dat op de GTK-widget bibiotheek is gebaseerd."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Setup voor de Smart Common Invoer-methode-Plattform"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIM handboek"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Invoer-methode"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Invoer-venster en de werkbalk vastzetten/verschuifbaar maken."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Toepasselijke help voor SCIM en de huidige invoer-methode tonen."
-
-#~ msgid "Show command menu."
-#~ msgstr "Commandoregel tonen."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(c) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Instellingen opnieuw laden"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Venster vastzetten"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Werkbalk ontzichtbaar maken"
-
-#~ msgid "Help ..."
-#~ msgstr "Help ..."
-
-#~ msgid "Exit"
-#~ msgstr "Afsluiten"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "Toetsenbord"
+++ /dev/null
-# translation of pa.po to Punjabi
-# translation of scim.NEW.po to Punjabi
-# translation of scim.po to Punjabi
-# This file is distributed under the same license as the PACKAGE package.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
-# Amanpreet Singh Alam <amanpreetalam@yahoo.com>, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: pa\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2005-12-13 08:28+0530\n"
-"Last-Translator: Amanpreet Singh Alam <amanpreetalam@yahoo.com>\n"
-"Language-Team: Punjabi <fedora-trans-pa@redhat.com>\n"
-"Language: pa\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-#, fuzzy
-msgid "Keyboard"
-msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "ਚੋਣ"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "ਜਰਮਨ"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "ਚੋਣ"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#~ msgid "Amharic"
-#~ msgstr "ਅਮਹੀਕਿਨ"
-
-#~ msgid "Arabic"
-#~ msgstr "ਅਰਬੀ"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#~ msgid "Assamese"
-#~ msgstr "ਆਸਾਮੀ"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "ਅਜ਼ਰਬਾਈਜਾਨ"
-
-#~ msgid "Belarusian"
-#~ msgstr "ਬੇਲਾਰੂਸੀ"
-
-#~ msgid "Bulgarian"
-#~ msgstr "ਬੁਲਗਾਰੀਅਨ"
-
-#~ msgid "Bengali"
-#~ msgstr "ਬੰਗਾਲੀ"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "ਬੰਗਾਲੀ (ਭਾਰਤ)"
-
-#~ msgid "Tibetan"
-#~ msgstr "ਤਿੱਬਤੀ"
-
-#~ msgid "Bosnian"
-#~ msgstr "ਬੋਸਨੀਅਨ"
-
-#~ msgid "Catalan"
-#~ msgstr "ਕੇਟੇਲਨ"
-
-#~ msgid "Czech"
-#~ msgstr "ਚੈੱਕ"
-
-#~ msgid "Welsh"
-#~ msgstr "ਵਾਲਿਸ਼"
-
-#~ msgid "Danish"
-#~ msgstr "ਡੈਨਿਸ਼"
-
-#~ msgid "German"
-#~ msgstr "ਜਰਮਨ"
-
-#~ msgid "Greek"
-#~ msgstr "ਗਰੀਕ"
-
-#~ msgid "English"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ"
-
-#~ msgid "English (Australian)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਸਟਰੇਲੀਅਨ)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#~ msgid "English (British)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਆਇਰਲੈਂਡ)"
-
-#~ msgid "English (American)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#~ msgid "Spanish"
-#~ msgstr "ਸਪੇਨੀ"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#~ msgid "Estonian"
-#~ msgstr "ਈਸਟੋਨੀਅਨ"
-
-#~ msgid "Basque"
-#~ msgstr "ਬਸਕਿਉ"
-
-#~ msgid "Persian"
-#~ msgstr "ਪਰਸੀਅਨ"
-
-#~ msgid "Finnish"
-#~ msgstr "ਫੈਨਿਸ਼"
-
-#~ msgid "French"
-#~ msgstr "ਫਰੈਂਚ"
-
-#~ msgid "Irish"
-#~ msgstr "ਆਇਰਸ਼"
-
-#~ msgid "Galician"
-#~ msgstr "ਗਾਲੇਸ਼ੀਅਨ"
-
-#~ msgid "Gujarati"
-#~ msgstr "ਗੁਜਰਾਤੀ"
-
-#~ msgid "Hebrew"
-#~ msgstr "ਹੈਬਰਿਊ"
-
-#~ msgid "Hindi"
-#~ msgstr "ਹਿੰਦੀ"
-
-#~ msgid "Croatian"
-#~ msgstr "ਕਰੋਆਟੀਅਨ"
-
-#~ msgid "Hungarian"
-#~ msgstr "ਹੰਗਰੀਅਨ"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "ਰੋਮਾਨੀਆਈ"
-
-#~ msgid "Interlingua"
-#~ msgstr "ਇੰਟਰਲਿੰਗੂਆ"
-
-#~ msgid "Indonesian"
-#~ msgstr "ਇੰਡੋਨੇਸ਼ੀਆਈ"
-
-#~ msgid "Icelandic"
-#~ msgstr "ਆਈਸਲੈਂਡੀ"
-
-#~ msgid "Italian"
-#~ msgstr "ਇਤਾਲਵੀ"
-
-#~ msgid "Japanese"
-#~ msgstr "ਜਾਪਾਨੀ"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "ਜਰਮਨ"
-
-#~ msgid "Kazakh"
-#~ msgstr "ਕਾਜ਼ਕ"
-
-#~ msgid "Cambodian"
-#~ msgstr "ਕੰਬੋਡੀਅਨ"
-
-#~ msgid "Kannada"
-#~ msgstr "ਕੰਨੜ"
-
-#~ msgid "Korean"
-#~ msgstr "ਕੋਰੀਅਨ"
-
-#~ msgid "Laothian"
-#~ msgstr "ਲਿਊਥੀਅਨ"
-
-#~ msgid "Lithuanian"
-#~ msgstr "ਲੀਥੂਵਨੀਅਨ"
-
-#~ msgid "Latvian"
-#~ msgstr "ਲਾਟਵੀਅਨ"
-
-#~ msgid "Macedonian"
-#~ msgstr "ਮੈਕਡੋਨੀਅਨ"
-
-#~ msgid "Malayalam"
-#~ msgstr "ਮਾਲਿਆਲਮ"
-
-#~ msgid "Mongolian"
-#~ msgstr "ਮੰਗੋਲੀਅਨ"
-
-#~ msgid "Marathi"
-#~ msgstr "ਮਰਾਠੀ"
-
-#~ msgid "Malay"
-#~ msgstr "ਮਲਾਇਆ"
-
-#~ msgid "Nepali"
-#~ msgstr "ਨੇਪਾਲੀ"
-
-#~ msgid "Dutch"
-#~ msgstr "ਡੱਚ"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "ਨਾਰਵੇਗੀਅਨ (ਨਿਉਰਸਕ)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "ਨਾਰਵੇਗੀਅਨ (ਬੋਕਮਾਲ)"
-
-#~ msgid "Oriya"
-#~ msgstr "ਓੜੀਆ"
-
-#~ msgid "Punjabi"
-#~ msgstr "ਪੰਜਾਬੀ"
-
-#~ msgid "Polish"
-#~ msgstr "ਪੋਲਿਸ਼"
-
-#~ msgid "Portuguese"
-#~ msgstr "ਪੁਰਤਗਾਲੀ"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ)"
-
-#~ msgid "Romanian"
-#~ msgstr "ਰੋਮਾਨੀਆਈ"
-
-#~ msgid "Russian"
-#~ msgstr "ਰੂਸੀ"
-
-#~ msgid "Slovak"
-#~ msgstr "ਸਲੋਵਾਕ"
-
-#~ msgid "Slovenian"
-#~ msgstr "ਸਲੋਵੀਅਨ"
-
-#~ msgid "Albanian"
-#~ msgstr "ਅਲਬਾਈਅਨ"
-
-#~ msgid "Serbian"
-#~ msgstr "ਸਰਬੀਅਨ"
-
-#~ msgid "Swedish"
-#~ msgstr "ਸਵੀਡਸ਼"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "ਸਵਡਿਸ਼ (ਫਿਨਲੈਂਡ)"
-
-#~ msgid "Tamil"
-#~ msgstr "ਤਾਮਿਲ"
-
-#~ msgid "Telugu"
-#~ msgstr "ਤੇਲਗੂ"
-
-#~ msgid "Thai"
-#~ msgstr "ਥਾਈ"
-
-#~ msgid "Turkish"
-#~ msgstr "ਤੁਰਕੀ"
-
-#~ msgid "Uighur"
-#~ msgstr "ਊਘਰ"
-
-#~ msgid "Ukrainian"
-#~ msgstr "ਯੂਕਰੇਨੀ"
-
-#~ msgid "Urdu"
-#~ msgstr "ਊਰਦੂ"
-
-#~ msgid "Uzbek"
-#~ msgstr "ਉਜੇਬਕ"
-
-#~ msgid "Vietnamese"
-#~ msgstr "ਵੀਅਤਨਾਮੀ"
-
-#~ msgid "Walloon"
-#~ msgstr "ਵਾਲਿਸ਼"
-
-#~ msgid "Yiddish"
-#~ msgstr "ਯਿਡਿੱਸ਼"
-
-#~ msgid "Chinese"
-#~ msgstr "ਚੀਨੀ"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "ਚੀਨੀ (ਸਧਾਰਨ)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "ਬੈਲਜੀਅਨ"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਆਇਰਲੈਂਡ)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "ਜਰਮਨ (ਡਿੱਡ ਸਵਿੱਚਾਂ ਨਾਲ)"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਸਟਰੇਲੀਅਨ)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "ਸਪੇਨੀ (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "ਮਾਲਿਆਲਮ"
-
-#~ msgid "Norwegian"
-#~ msgstr "ਨਾਰਵੇਗੀਅਨ"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "ਸਰਬੀਅਨ"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "ਚੀਨੀ"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "ਚੀਨੀ (ਸਧਾਰਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#~ msgid "Other"
-#~ msgstr "ਹੋਰ"
-
-#~ msgid "Unknown"
-#~ msgstr "ਅਣਜਾਣ"
-
-#~ msgid "English (US)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#~ msgid "Belgian"
-#~ msgstr "ਬੈਲਜੀਅਨ"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "ਚੈੱਕ(ਕਿਉਵਰਟੀ)"
-
-#~ msgid "Dvorak"
-#~ msgstr "ਡਵੋਰਿਕ"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "ਫਰੈਂਚ (ਸਵਟਿਜ਼ਰਲੈਂਡ)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "ਜਰਮਨ (ਡਿੱਡ ਸਵਿੱਚਾਂ ਨਾਲ)"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ ਅਮਰੀਕੀ ਢੰਗ)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "ਸਲੋਵਾਕ(ਕਿਉਵਰਟੀ)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "ਸਪੇਨੀ (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#~ msgid "English (UK)"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "ਸਧਾਰਨ-ਮੂਲ ਚੀਨੀ ਤਬਦੀਲੀ"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "ਸਧਾਰਨ ਚੀਨੀ ਅਤੇ ਮੂਲ ਚੀਨੀ ਵਿੱਚ ਤਬਦੀਲੀ"
-
-#~ msgid "SC-TC"
-#~ msgstr "SC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "ਸਧਾਰਨ-ਮੂਲ ਚੀਨੀ ਤਬਦੀਲੀ"
-
-#~ msgid "No Conversion"
-#~ msgstr "ਕੋਈ ਤਬਦੀਲੀ ਨਹੀਂ"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "ਸਧਾਰਨ ਤੋਂ ਮੂਲ"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "ਸਧਾਰਨ ਚੀਨੀ ਤੋਂ ਮੂਲ ਚੀਨੀ ਤਬਦੀਲ"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "ਮੂਲ ਤੋਂ ਸਧਾਰਨ"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "ਮੂਲ ਚੀਨੀ ਤੋਂ ਸਧਾਰਨ ਚੀਨੀ ਅਨੁਵਾਦ"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "SC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->SC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਥਡ ਪਲੇਟਫਾਰਮ"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "ਯੋਗ"
-
-#~ msgid "Name"
-#~ msgstr "ਨਾਂ"
-
-#~ msgid "Cursor Position"
-#~ msgstr "ਕਰਸਰ ਸਥਿਤੀ"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "ਕਰਸਰ ਦੀ ਮੌਜੂਦਾ ਸਥਿਤੀ ਅੱਖਰਾਂ ਵਿੱਚ।"
-
-#~ msgid "Maximum length"
-#~ msgstr "ਵੱਧ ਤੋ ਵੱਧ ਲੰਬਾਈ"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "ਇਸ ਸਤਰ ਝਲਕ ਲਈ ਵੱਧ ਤੋਂ ਵੱਧ ਅੱਖਰਾਂ ਦੀ ਗਿਣਤੀ। ਜੇਕਰ ਵੱਧ ਤੋਂ ਵੱਧ ਨਾ ਹੋਇਆ ਤਾਂ ਸਿਫ਼ਰ ਹੋਵੇਗਾ।"
-
-#~ msgid "Maximum width"
-#~ msgstr "ਵੱਧ ਤੋਂ ਵੱਧ ਚੌੜਾਈ"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "ਇਸ ਸਤਰ ਝਲਕ ਦੀ ਵੱਧ ਤੋਂ ਵੱਧ ਚੌੜਾਈ ਹੈ।"
-
-#~ msgid "Has Frame"
-#~ msgstr "ਫਰੇਮ ਹੈ"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "FALSE ਨਾਲ ਸਤਰ ਝਲਕ ਤੋਂ ਬਾਹਰੀ bevel ਹਟਾਏ ਜਾਏਗਾ।"
-
-#~ msgid "Draw cursor"
-#~ msgstr "ਕਰਸਰ ਬਣਾਓ"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "TRUE ਝਪਕਦੀ ਕਰਸਰ ਬਣਾਏਗਾ।"
-
-#~ msgid "Auto move cursor"
-#~ msgstr "ਸਵੈ ਏਧਰ ਓਧਰ ਕਰਸਰ"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "TRUE ਮਾਊਸ ਦਬਾਉਣ ਨਾਲ ਕਰਸਰ ਨੂੰ ਸਵੈ-ਚਾਲਤ ਏਧਰ ਓਧਰ ਕੀਤਾ ਜਾਵੇਗਾ।"
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "ਅੱਗੇ ਬਟਨ ਦਬਾਉਣ ਘਟਨਾ"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "TRUE ਉਪਭੋਗੀ ਪਰੋਗਰਾਮ ਲਈ ਅੱਗੇ ਬਟਨ ਦਬਾਉਣ ਘਟਨਾ ਹੈ।"
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "ਸਤਰ ਫਿੱਟ ਕਰਨ ਲਈ ਵਿਦਗਿਟ ਸਵੈ ਮੁੜ-ਅਕਾਰ"
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "TRUE ਸਵੈ ਮੁੜ-ਅਕਾਰ ਚਾਲੂ ਹੈ।"
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "TRUE ਮਾਊਸ ਦਬਾਉਣ ਨਾਲ ਕਰਸਰ ਨੂੰ ਸਵੈ-ਚਾਲਤ ਏਧਰ ਓਧਰ ਕੀਤਾ ਜਾਵੇਗਾ।"
-
-#~ msgid "Width in chars"
-#~ msgstr "ਅੱਖਰਾਂ ਵਿੱਚ ਚੌਡ਼ਾਈ"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "ਸਤਰ ਝਲਕ ਵਿੱਚ ਖਾਲੀ ਥਾਂ ਛੱਡਣ ਲਈ ਅੱਖਰਾਂ ਦੀ ਗਿਣਤੀ ਹੈ।"
-
-#~ msgid "Scroll offset"
-#~ msgstr "ਸੰਤੁਲਨ ਸਕਰੋਲ"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "ਖੱਬੇ ਤੋਂ ਸਕਰੀਨ ਨੂੰ ਸਤਰ ਝਲਕ ਸਮੇਟਣ ਲਈ ਪਿਕਸਲਾਂ ਦੀ ਗਿਣਤੀ"
-
-#~ msgid "Text"
-#~ msgstr "ਪਾਠ"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "ਸਤਰ ਝਲਕ ਦਾ ਪਰਸੰਗ"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "ਚੁਣੀਆਂ ਸਵਿੱਚਾਂ(_K):"
-
-#~ msgid "Key Code:"
-#~ msgstr "ਸਵਿੱਚ ਕੋਡ:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "ਸੋਧਕ:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "ਜਾਰੀ(_R)"
-
-#~ msgid "_Meta"
-#~ msgstr "ਮੈਟਾ(_M)"
-
-#~ msgid "S_uper"
-#~ msgstr "ਸੁਪਰ(_u)"
-
-#~ msgid "_Hyper"
-#~ msgstr "ਹਾਈਪਰ(_H)"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "ਪਹਿਲਾਂ ਇੱਕ ਸਵਿੱਚ ਕੋਡ ਦਿਓ।"
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "ਇੱਕ ਸਵਿੱਚ (ਜਾਂ ਇੱਕ ਸਵਿੱਚ ਜੋੜ) ਦਬਾਉ।\n"
-#~ "ਇਹ ਵਾਰਤਾਲਾਪ ਇੱਕ ਸਵਿੱਚ ਦਬਾਉਣ ਨਾਲ ਬੰਦ ਹੋ ਜਾਵੇਗਾ।"
-
-#~ msgid "Grabbing a key."
-#~ msgstr "ਇੱਕ ਸਵਿੱਚ ਫੜੋ।"
-
-#~ msgid "Key Selection"
-#~ msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#~ msgid "Orientation"
-#~ msgstr "ਸਥਿਤੀ"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "ਟਰੇ ਦੀ ਸਥਿਤੀ ਹੈ।"
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "ਪਾਠ"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "ਅਮਹੀਕਿਨ"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "ਹਮੇਸ਼ਾ"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "ਚੋਣ"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#~ msgid "English/European"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਯੂਰਪ"
-
-#~ msgid "RAW CODE"
-#~ msgstr "ਕੱਚਾ ਕੋਡ"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "ਹਾਟ ਸਵਿੱਚਾਂ:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " ਬਹੁ-ਬਾਈਟ ਇੰਕੋਡਿੰਗ ਅਤੇ ਯੂਨੀਕਰੋਡ ਵਿੱਚ ਤਬਦੀਲ ਹੋਣ ਲਈ।\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " ਇੰਪੁੱਟ ਢੰਗ ਮੁੜ-ਸੈਟ ਕਰਨ ਲਈ।\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "ਮੌਜੂਦਾ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਸਥਿਤੀ ਹੈ। ਤਬਦੀਲ ਕਰਨ ਲਈ ਦਬਾਉ।"
-
-#~ msgid "Unicode"
-#~ msgstr "ਯੂਨੀਕੋਡ"
-
-#~ msgid "Global Setup"
-#~ msgstr "ਗਲੋਬਲ ਸੈਟਅੱਪ"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "ਸਭ ਮੁੱਖ ਮੈਡੀਊਲ ਰਾਹੀਂ ਵਰਤੇ ਜਾਦੇ ਗਲੋਬਲ ਚੋਣ ਸੈਟਅੱਪ, ਜਿਸ ਵਿੱਚ X11 ਮੁੱਖ ਭੂਮੀ, GTK IMModule, "
-#~ "QT IMModule ਆਦਿ"
-
-#~ msgid "_Trigger:"
-#~ msgstr "ਤਬਦੀਲ(_T):"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "ਤਬਦੀਲੀ ਸਵਿੱਚ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "SCIM ਇੰਪੁੱਟ ਢੰਗ ਨੂੰ ਚਾਲੂ/ਬੰਦ ਕਰਨ ਲਈ ਕੁੰਜੀ ਘਟਨਾ ਹੈ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "Turn _On:"
-#~ msgstr "ਚਾਲੂ ਕਰੋ(_O):"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "ਚਾਲੂ ਕਰਨ ਵਾਲੀਆਂ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "SCIM ਇੰਪੁੱਟ ਢੰਗ ਚਾਲੂ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "ਬੰਦ ਕਰੋ(_f):"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "ਬੰਦ ਕਰਨ ਵਾਲੀਆਂ ਕੁੰਜੀਆਂ"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "SCIM ਇੰਪੁੱਟ ਢੰਗ ਬੰਦ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "_Next input method:"
-#~ msgstr "ਅੱਗੇ ਇੰਪੁੱਟ ਢੰਗ(_N):"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "ਅੱਗੇ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਚੋਣ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "ਅੱਗੇ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਚੋਣ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "_Previous input method:"
-#~ msgstr "ਪਿੱਛੇ ਇੰਪੁੱਟ ਢੰਗ(_P):"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "ਪਿਛਲਾ ਇੰਪੁੱਟ ਢੰਗ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "ਪਿਛਲਾ ਇੰਪੁੱਟ ਢੰਗ ਚਾਲੂ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਮੇਨੂ ਵੇਖਾਓ(_m):"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਮੇਨੂ ਵੇਖਾਉਣ ਲਈ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਮੇਨੂ ਵੇਖਾਉਣ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "ਕੀ-ਬੋਰਡ ਖਾਕਾ(_K):"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "ਤੁਹਾਨੂੰ ਇੱਥੇ ਆਪਣਾ ਮੌਜੂਦਾ ਕੀ-ਬੋਰਡ ਖਾਕੇ ਦੀ ਚੋਣ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ, ਤਾਂ ਕਿ ਇੰਪੁੱਟ ਢੰਗ, ਜੋ ਕਿ ਕੀ-"
-#~ "ਬੋਰਡ ਖਾਕੇ ਦਾ ਖਿਆਲ ਰੱਖਦਾ ਹੈ, ਠੀਕ ਤਰਾਂ ਕੰਮ ਕਰ ਸਕੇ।"
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "ਕਲਾਂਇਟ ਝਰੋਖੇ 'ਚ ਪਹਿਲਾਂ-ਸੋਧ ਸਤਰ(_E)"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਕਲਾਂਇਟ ਇੰਪੁੱਟ ਝਰੋਖੇ ਵਿੱਚ ਪਹਿਲਾਂ-ਸੋਧ ਸਤਰ ਸਿੱਧੀ ਵਿਖਾਈ ਜਾਵੇਗਾ, ਨਾ "
-#~ "ਕਿ ਇੱਕ ਆਜ਼ਾਦ ਤਰਦੇ ਝਰੋਖਾ।"
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "ਸਭ ਕਾਰਜਾਂ 'ਚ ਇੱਕੋ ਹੀ ਇੰਪੁੱਟ ਢੰਗ ਵਰਤੋਂ(_S)"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸਿਰਫ਼ ਇੱਕ ਹੀ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਵੇਗੀ, ਜੋ ਕਿ ਇੱਕ ਸਮੇਂ ਸਭ "
-#~ "ਕਾਰਜਾਂ ਲਈ ਵਰਤਿਆ ਜਾਵੇਗਾ। ਨਹੀਂ ਤਾਂ ਹਰ ਕਾਰਜ ਲਈ ਵੱਖਰਾ ਢੰਗ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਸੀ।"
-
-#~ msgid "Hotkeys"
-#~ msgstr "ਹਾਟ-ਸਵਿੱਚ"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr "ਤੁਸੀਂ ਇੱਥੇ ਇੰਪੁੱਟ ਢੰਗ ਯੋਗ/ਅਯੋਗ ਕਰ ਅਤੇ ਇੰਪੁੱਟ ਢੰਗ ਲਈ ਹਾਟ-ਸਵਿੱਚਾਂ ਸੈਟ ਕਰ ਸਕਦੇ ਹੋ।"
-
-#~ msgid "The installed input method services:"
-#~ msgstr "ਇੰਸਟਾਲ ਹੋਏ ਇੰਪੁੱਟ ਢੰਗ ਸੇਵਾਵਾਂ:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "ਹਾਟ-ਸਵਿੱਚ ਸੋਧ(_H)"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "ਚੁਣੇ ਇੰਪੁੱਟ ਢੰਗ ਨਾਲ ਸਬੰਧਤ ਹਾਟ-ਕੁੰਜੀਆਂ ਦੀ ਸੋਧ ਕਰੋ।"
-
-#~ msgid "Select _Filters"
-#~ msgstr "ਫਿਲਟਰ ਚੁਣੋ(_F)"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "ਫਿਲਟਰ ਦੀ ਚੋਣ ਕਰੋ, ਜੋ ਕਿ ਇਸ ਇੰਪੁੱਟ ਢੰਗ ਨਾਲ ਜੋੜਿਆ ਜਾਵੇਗਾ।"
-
-#~ msgid "_Expand"
-#~ msgstr "ਫੈਲਾਓ(_E)"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "ਸਭ ਭਾਸ਼ਾ ਵਰਗ ਫੈਲਾਓ।"
-
-#~ msgid "_Collapse"
-#~ msgstr "ਸਮੇਟੋ(_C)"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "ਸਭ ਭਾਸ਼ਾ ਵਰਗ ਸਮੇਟੋ।"
-
-#~ msgid "E_nable All"
-#~ msgstr "ਸਭ ਯੋਗ(_n)"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "ਸਭ ਇੰਪੁੱਟ ਢੰਗ ਯੋਗ ਕਰਦਾ ਹੈ।"
-
-#~ msgid "_Disable All"
-#~ msgstr "ਸਭ ਆਯੋਗ(_D)"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "ਸਭ ਇੰਪੁੱਟ ਢੰਗ ਆਯੋਗ ਹਨ।"
-
-#~ msgid "Filters"
-#~ msgstr "ਫਿਲਟਰ"
-
-#~ msgid "Languages"
-#~ msgstr "ਭਾਸ਼ਾਵਾਂ"
-
-#~ msgid "Description"
-#~ msgstr "ਵੇਰਵਾ"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "%s ਲਈ ਹਾਟ-ਸਵਿੱਚ ਸੋਧ"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "%s ਲਈ ਫਿਲਟਰ ਚੁਣੋ"
-
-#~ msgid "Move _Up"
-#~ msgstr "ਉੱਪਰ ਜਾਓ(_U)"
-
-#~ msgid "Move _Down"
-#~ msgstr "ਹੇਠਾਂ ਜਾਓ(_D)"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "GTK+-2.x ਲਾਇਬਰੇਰੀ 'ਤੇ ਪੈਨਲ ਡਾਈਮੋਨ ਹੈ।"
-
-#~ msgid "On demand"
-#~ msgstr "ਲੋੜ ਸਮੇਂ"
-
-#~ msgid "Never"
-#~ msgstr "ਕਦੇ ਨਹੀਂ"
-
-#~ msgid "ToolBar"
-#~ msgstr "ਸੰਦ-ਪੱਟੀ"
-
-#~ msgid "_Show:"
-#~ msgstr "ਵੇਖਾਓ(_S):"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "ਸਵੈ ਸਨੈਪ(_n)"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "ਇੰਪੁੱਟ ਆਈਕਾਨ ਢੰਗ ਆਈਕਾਨ ਵੇਖਾਓ(_i)"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਨਾਂ ਵੇਖਾਓ(_u)"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "ਸਮਾਂ-ਅੰਤਰਾਲ ਓਹਲੇ(_o):"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "ਟਿੱਕ ਆਈਕਾਨ ਵੇਖਾਓ(_t)"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "ਮੇਨੂ ਆਈਕਾਨ ਵੇਖਾਓ(_e)"
-
-#~ msgid "Show _help icon"
-#~ msgstr "ਸਹਾਇਤਾ ਆਈਕਾਨ ਵੇਖਾਓ(_h)"
-
-#~ msgid "Show _property label"
-#~ msgstr "ਵਿਸ਼ੇਸ਼ਤਾ ਲੇਬਲ ਵੇਖਾਓ(_p)"
-
-#~ msgid "Input window"
-#~ msgstr "ਇੰਪੁੱਟ ਝਰੋਖਾ"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "ਸ਼ਾਮਲ ਖੋਜ ਸਾਰਣੀ(_m)"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "ਲੰਬਕਾਰੀ ਖੋਜ ਸਾਰਣੀ(_V)"
-
-#~ msgid "Misc"
-#~ msgstr "ਫੁਟਕਲ"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "ਟਰੇ ਆਈਕਾਨ ਵੇਖਾਓ(_y)"
-
-#~ msgid "Stick _windows"
-#~ msgstr "ਝਰੋਖੇ ਚੇਪੋ(_w)"
-
-#~ msgid "_Font:"
-#~ msgstr "ਫੋਂਟ(_F):"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "ਜੇਕਰ \"ਹਮੇਸ਼ਾ\" ਚੋਣ ਯੋਗ ਕੀਤੀ ਗਈ ਤਾਂ, ਸੰਦ-ਪੱਟੀ ਨੂੰ ਹਮੇਸ਼ਾ ਪਰਦੇ 'ਤੇ ਵਿਖਾਇਆ ਜਾਵੇਗਾ। ਜੇਕਰ "
-#~ "\"ਲੋੜ ਸਮੇਂ\" ਦੀ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਹੀ ਵੇਖਾਇਆ ਜਾਵੇਗਾ, ਜਦੋਂ SCIM ਦੇ ਸਰਗਰਮ ਹੋਵੇਗਾ। ਜੇਕਰ \"ਕਦੇ "
-#~ "ਨਹੀਂ\" ਦੀ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇਸ ਨੂੰ ਕਦੇ ਨਹੀਂ ਵੇਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸੰਦ-ਪੱਟੀ ਸਕਰੀਨ ਹਾਸ਼ੀਏ 'ਚ ਸਮੇਟੀ ਜਾਵੇਗੀ।"
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "ਇਸ ਅੰਤਰਾਲ ਖਤਮ ਹੋਣ ਦੇ ਬਾਅਦ ਸੰਦ-ਪੱਟੀ ਨੂੰ ਓਹਲੇ ਕੀਤਾ ਜਾਵੇਗਾ। ਇਹ ਚੋਣ ਸਿਰਫ਼ ਤਾਂ ਹੀ ਠੀਕ ਹੈ, "
-#~ "ਜੇਕਰ \"ਹਮੇਸ਼ਾ ਵੇਖਾਓ\" ਦੀ ਚੋਣ ਕੀਤੀ ਹੈ। ਇਸ ਵਿਹਾਰ ਨੂੰ ਅਯੋਗ ਕਰਨ ਲਈ ਜ਼ੀਰੋ (0) ਬਣਾਓ।"
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇੰਪੁੱਟ ਢੰਗ ਆਈਕਾਨ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇੰਪੁੱਟ ਢੰਗ ਨਾਂ ਨੂੰ ਸੰਦ-ਪੱਟੀ 'ਚ ਚੁਣਿਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸਟਿੱਕੀ ਆਈਕਾਨ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਮੇਨੂ ਆਈਕਾਨ ਨੂੰ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਸਹਾਇਤਾ ਆਈਕਾਨ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਦਾ ਹੈ।"
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇੰਪੁੱਟ ਢੰਗ ਵਿਸ਼ੇਸ਼ਤਾ ਦਾ ਪਾਠ ਲੇਬਲ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਖੋਜ ਸਾਰਣੀ ਨੂੰ ਇੰਪੁੱਟ ਝਰੋਖੇ 'ਚ ਹੀ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਖੋਜ ਸਾਰਣੀ ਨੂੰ ਲੰਬਕਾਰੀ ਰੂਪ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਟਰੇ ਆਈਕਾਨ ਨੂੰ ਵੇਹੜੇ ਦੀ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਉ।"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸੰਦ-ਪੱਟੀ, ਇੰਪੁੱਟ ਅਤੇ ਖੋਜ ਸਾਰਣੀ ਝਰੋਖੇ ਨੂੰ ਇਸ ਦੀ ਅਸਲੀ ਸਥਿਤੀ ਨਾਲ "
-#~ "ਹੀ ਜੋੜੀ ਰੱਖਿਆ ਜਾਵੇਗਾ।"
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr "ਇੰਪੁੱਟ ਅਤੇ ਖੋਜ ਸਾਰਣੀ ਝਰੋਖੇ ਵਿੱਚ ਫੋਂਟ ਸੈਟਿੰਗ ਵਰਤੀ ਜਾਵੇਗੀ।"
-
-#~ msgid "Select Interface Font"
-#~ msgstr "ਇੰਟਰਫੇਸ ਫੋਂਟ ਚੁਣੋ"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "ਮੁੱਖ-ਭਾਗ"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "ਪੈਨਲ"
-
-#~ msgid "Extra"
-#~ msgstr "ਹੋਰ"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "SCIM ਇੰਪੁੱਟ ਢੰਗ ਸੈਟਅੱਪ"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਂਥਡ ਪਲੇਟਫਾਰਮ</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI ਸੈਟਅੱਪ ਸਹੂਲਤ</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">ਕਾਪੀਰਾਈਟ 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">%s ਮੈਡੀਊਲ ਲਈ ਸੈਟਅੱਪ ਹੈ।</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "ਕੀ ਤੁਸੀਂ SCIM ਸੈਟਅੱਪ ਨੂੰ ਬੰਦ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "ਸਭ ਸੰਰਚਨਾ ਨੂੰ ਯਕਦਮ ਲੋਡ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਨਵੀਂ ਸੰਰਚਨਾ ਨੂੰ ਪਰਭਾਵੀ ਹੋਣ ਲਈ SCIM ਨੂੰ ਮੁੜ-"
-#~ "ਚਾਲੂ ਕਰਨਾ ਨਾ ਭੁੱਲੋ।"
-
-#~ msgid "SCIM Setup"
-#~ msgstr "SCIM ਸੈਟਅੱਪ"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "GTK ਵਿਦਗਿਟ ਲਾਇਬਰੇਰੀ 'ਤੇ ਅਧਾਰਤ ਸੈਟਅੱਪ ਸਹੂਲਤ ਹੈ।"
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਂਥਸਡ ਪਲੇਟਫਾਰਮ ਲਈ ਸੈਟਅੱਪ ਸਹੂਲਤ"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIM ਸਹਾਇਤਾ"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਂਥਡ"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "ਇੰਪੁੱਟ ਝਰੋਖਾ ਅਤੇ ਸੰਦ-ਪੱਟੀ ਸਟਿੱਕੀ/ਨਾ-ਸਟਿੱਕੀ ਹੈ।"
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "SCIM ਅਤੇ ਮੌਜੂਦਾ ਇੰਪੁੱਟ ਢੰਗ ਬਾਰੇ ਸੰਖੇਪ ਸਹਾਇਤਾ ਵਿਖਾਓ।"
-
-#~ msgid "Show command menu."
-#~ msgstr "ਕਮਾਂਡ ਮੇਨ ਵੇਖਾਓ।"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "ਸੰਰਚਨਾ ਮੁੜ-ਲੋਡ"
-
-#~ msgid "Stick Windows"
-#~ msgstr "ਸਟਿੱਕੀ ਝਰੋਖੇ"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "ਸੰਦ-ਪੱਟੀ ਓਹਲੇ"
-
-#~ msgid "Help ..."
-#~ msgstr "ਸਹਾਇਤਾ ..."
-
-#~ msgid "Exit"
-#~ msgstr "ਬਾਹਰ"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "Teclado"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "Клавиатура"
+++ /dev/null
-# Swedish translation for scim
-# Copyright (c) (c) 2006 Canonical Ltd, and Rosetta Contributors 2006
-# This file is distributed under the same license as the scim package.
-# <>, 2006.
-#
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: scim\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2006-09-09 21:37+0200\n"
-"Last-Translator: <>\n"
-"Language-Team: Swedish <sv@li.org>\n"
-"Language: sv\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
-#, fuzzy
-msgid "Keyboard"
-msgstr "Latinsk teckeninmatning"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Tangentval"
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Tangentval"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Alternativ"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Tyska"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Latinsk teckeninmatning"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Tangentval"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Latinsk teckeninmatning"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Alternativ"
-
-#~ msgid "English/Keyboard"
-#~ msgstr "Latinsk teckeninmatning"
-
-#, fuzzy
-#~ msgid "English input service"
-#~ msgstr "Engelska (amerikansk)"
-
-#~ msgid "Amharic"
-#~ msgstr "Amhariska"
-
-#~ msgid "Arabic"
-#~ msgstr "Arabiska"
-
-#~ msgid "Arabic (Egypt)"
-#~ msgstr "Arabiska (Egypten)"
-
-#~ msgid "Arabic (Lebanon)"
-#~ msgstr "Arabiska (Libanon)"
-
-#~ msgid "Assamese"
-#~ msgstr "Assamesiska"
-
-#~ msgid "Azerbaijani"
-#~ msgstr "Azerbajdzjanska"
-
-#~ msgid "Belarusian"
-#~ msgstr "Vitryska"
-
-#~ msgid "Bulgarian"
-#~ msgstr "Bulgariska"
-
-#~ msgid "Bengali"
-#~ msgstr "Bengali"
-
-#~ msgid "Bengali (India)"
-#~ msgstr "Bengali (Indien)"
-
-#~ msgid "Tibetan"
-#~ msgstr "Tibetanska"
-
-#~ msgid "Bosnian"
-#~ msgstr "Bosniska"
-
-#~ msgid "Catalan"
-#~ msgstr "Katalanska"
-
-#~ msgid "Czech"
-#~ msgstr "Tjeckiska"
-
-#~ msgid "Welsh"
-#~ msgstr "Kymriska"
-
-#~ msgid "Danish"
-#~ msgstr "Danska"
-
-#~ msgid "German"
-#~ msgstr "Tyska"
-
-#~ msgid "Greek"
-#~ msgstr "Grekiska"
-
-#~ msgid "English"
-#~ msgstr "Engelska"
-
-#~ msgid "English (Australian)"
-#~ msgstr "Engelska (australiensisk)"
-
-#~ msgid "English (Canadian)"
-#~ msgstr "Engelska (kanadensisk)"
-
-#~ msgid "English (British)"
-#~ msgstr "Engelska (brittisk)"
-
-#~ msgid "English (Ireland)"
-#~ msgstr "Engelska (irländsk)"
-
-#~ msgid "English (American)"
-#~ msgstr "Engelska (amerikansk)"
-
-#~ msgid "Spanish"
-#~ msgstr "Spanska"
-
-#~ msgid "Spanish (Mexico)"
-#~ msgstr "Spanska (Mexiko)"
-
-#~ msgid "Estonian"
-#~ msgstr "Estniska"
-
-#~ msgid "Basque"
-#~ msgstr "Baskiska"
-
-#~ msgid "Persian"
-#~ msgstr "Persiska"
-
-#~ msgid "Finnish"
-#~ msgstr "Finska"
-
-#~ msgid "French"
-#~ msgstr "Franska"
-
-#~ msgid "Irish"
-#~ msgstr "Irländska"
-
-#~ msgid "Galician"
-#~ msgstr "Galiciska"
-
-#~ msgid "Gujarati"
-#~ msgstr "Gujarati"
-
-#~ msgid "Hebrew"
-#~ msgstr "Hebreiska"
-
-#~ msgid "Hindi"
-#~ msgstr "Hindi"
-
-#~ msgid "Croatian"
-#~ msgstr "Kroatiska"
-
-#~ msgid "Hungarian"
-#~ msgstr "Ungerska"
-
-#, fuzzy
-#~ msgid "Armenian"
-#~ msgstr "Rumänska"
-
-#~ msgid "Interlingua"
-#~ msgstr "Interlingua"
-
-#~ msgid "Indonesian"
-#~ msgstr "Indonesiska"
-
-#~ msgid "Icelandic"
-#~ msgstr "Isländska"
-
-#~ msgid "Italian"
-#~ msgstr "Italienska"
-
-#~ msgid "Japanese"
-#~ msgstr "Japanska"
-
-#, fuzzy
-#~ msgid "Georgian"
-#~ msgstr "Tyska"
-
-#~ msgid "Kazakh"
-#~ msgstr "Kazakisk"
-
-#~ msgid "Cambodian"
-#~ msgstr "Kambodjanska"
-
-#~ msgid "Kannada"
-#~ msgstr "Kannada"
-
-#~ msgid "Korean"
-#~ msgstr "Koreanska"
-
-#~ msgid "Laothian"
-#~ msgstr "Laotiska"
-
-#~ msgid "Lithuanian"
-#~ msgstr "Litauiska"
-
-#~ msgid "Latvian"
-#~ msgstr "Lettiska"
-
-#~ msgid "Macedonian"
-#~ msgstr "Makedonska"
-
-#~ msgid "Malayalam"
-#~ msgstr "Malayalam"
-
-#~ msgid "Mongolian"
-#~ msgstr "Mongolska"
-
-#~ msgid "Marathi"
-#~ msgstr "Marathi"
-
-#~ msgid "Malay"
-#~ msgstr "Malay"
-
-#~ msgid "Nepali"
-#~ msgstr "Nepali (Khaskura)"
-
-#~ msgid "Dutch"
-#~ msgstr "Holländska"
-
-#, fuzzy
-#~ msgid "Norwegian (Nynorsk)"
-#~ msgstr "Norska (nynorsk)"
-
-#, fuzzy
-#~ msgid "Norwegian (Bokmal)"
-#~ msgstr "Norska (bokmål)"
-
-#~ msgid "Oriya"
-#~ msgstr "Oriya"
-
-#~ msgid "Punjabi"
-#~ msgstr "Punjabi"
-
-#~ msgid "Polish"
-#~ msgstr "Polska"
-
-#~ msgid "Portuguese"
-#~ msgstr "Portugisiska"
-
-#~ msgid "Portuguese (Brazil)"
-#~ msgstr "Portugisiska (Brasilien)"
-
-#~ msgid "Romanian"
-#~ msgstr "Rumänska"
-
-#~ msgid "Russian"
-#~ msgstr "Ryska"
-
-#~ msgid "Slovak"
-#~ msgstr "Slovakiska"
-
-#~ msgid "Slovenian"
-#~ msgstr "Slovenska"
-
-#~ msgid "Albanian"
-#~ msgstr "Albanska"
-
-#~ msgid "Serbian"
-#~ msgstr "Serbiska"
-
-#~ msgid "Swedish"
-#~ msgstr "Svenska"
-
-#~ msgid "Swedish (Finland)"
-#~ msgstr "Svenska (Finland)"
-
-#~ msgid "Tamil"
-#~ msgstr "Tamil"
-
-#~ msgid "Telugu"
-#~ msgstr "Telagu"
-
-#~ msgid "Thai"
-#~ msgstr "Thai"
-
-#~ msgid "Turkish"
-#~ msgstr "Turkiska"
-
-#~ msgid "Uighur"
-#~ msgstr "Uiguriska"
-
-#~ msgid "Ukrainian"
-#~ msgstr "Ukrainska"
-
-#~ msgid "Urdu"
-#~ msgstr "Urdu"
-
-#~ msgid "Uzbek"
-#~ msgstr "Uzbekiska"
-
-#~ msgid "Vietnamese"
-#~ msgstr "Vietnamesiska"
-
-#~ msgid "Walloon"
-#~ msgstr "Vallonska"
-
-#~ msgid "Yiddish"
-#~ msgstr "Jiddish"
-
-#~ msgid "Chinese"
-#~ msgstr "Kinesiska"
-
-#, fuzzy
-#~ msgid "Chinese (Simplified)"
-#~ msgstr "Kinesiska (förenklad)"
-
-#, fuzzy
-#~ msgid "Chinese (Traditional)"
-#~ msgstr "Kinesiska (traditionell)"
-
-#, fuzzy
-#~ msgid "Dutch (Belgian)"
-#~ msgstr "Belgisk"
-
-#, fuzzy
-#~ msgid "English (United States)"
-#~ msgstr "Engelsk (US)"
-
-#, fuzzy
-#~ msgid "English (United Kingdom)"
-#~ msgstr "Engelska (kanadensisk)"
-
-#, fuzzy
-#~ msgid "English (New Zealand)"
-#~ msgstr "Engelska (irländsk)"
-
-#, fuzzy
-#~ msgid "English (Irish)"
-#~ msgstr "Engelska (brittisk)"
-
-#, fuzzy
-#~ msgid "English (South Africa)"
-#~ msgstr "Engelska (amerikansk)"
-
-#, fuzzy
-#~ msgid "English (Jamaica)"
-#~ msgstr "Engelska (kanadensisk)"
-
-#, fuzzy
-#~ msgid "English (Belize)"
-#~ msgstr "Engelska (brittisk)"
-
-#, fuzzy
-#~ msgid "English (Trinidad)"
-#~ msgstr "Engelska (brittisk)"
-
-#, fuzzy
-#~ msgid "English (Zimbabwe)"
-#~ msgstr "Engelska (kanadensisk)"
-
-#, fuzzy
-#~ msgid "English (Philippines)"
-#~ msgstr "Engelska (brittisk)"
-
-#, fuzzy
-#~ msgid "French (Standard)"
-#~ msgstr "Fransk (kanadensisk)"
-
-#, fuzzy
-#~ msgid "French (Belgian)"
-#~ msgstr "Fransk (kanadensisk)"
-
-#~ msgid "French (Canadian)"
-#~ msgstr "Fransk (kanadensisk)"
-
-#, fuzzy
-#~ msgid "French (Swiss)"
-#~ msgstr "Tysk (Schweizisk)"
-
-#, fuzzy
-#~ msgid "French (Monaco)"
-#~ msgstr "Fransk (kanadensisk)"
-
-#, fuzzy
-#~ msgid "German (Standard)"
-#~ msgstr "Tysk (med 'Tottaste')"
-
-#~ msgid "German (Swiss)"
-#~ msgstr "Tysk (Schweizisk)"
-
-#, fuzzy
-#~ msgid "German (Austrian)"
-#~ msgstr "Engelska (australiensisk)"
-
-#, fuzzy
-#~ msgid "German (Liechtenstein)"
-#~ msgstr "Tysk (Schweizisk)"
-
-#, fuzzy
-#~ msgid "Italian (Swiss)"
-#~ msgstr "Tysk (Schweizisk)"
-
-#, fuzzy
-#~ msgid "Portuguese (Brazilian)"
-#~ msgstr "Portugisiska (Brasilien)"
-
-#, fuzzy
-#~ msgid "Portuguese (Standard)"
-#~ msgstr "Portugisiska (Brasilien)"
-
-#, fuzzy
-#~ msgid "Spanish (Traditional Sort)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Mexican)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Guatemala)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Costa Rica)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Panama)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Dominican Republic)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#, fuzzy
-#~ msgid "Spanish (Venezuela)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Colombia)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Peru)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Argentina)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Ecuador)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Chile)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Uruguay)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Paraguay)"
-#~ msgstr "Spansk (CP 850)"
-
-#, fuzzy
-#~ msgid "Spanish (Bolivia)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Honduras)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Nicaragua)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Spanish (Puerto Rico)"
-#~ msgstr "Spanska (Mexiko)"
-
-#, fuzzy
-#~ msgid "Malay (Malaysia)"
-#~ msgstr "Malayalam"
-
-#~ msgid "Norwegian"
-#~ msgstr "Norsk"
-
-#, fuzzy
-#~ msgid "Serbian (Latin)"
-#~ msgstr "Serbiska"
-
-#, fuzzy
-#~ msgid "Chinese (Taiwan)"
-#~ msgstr "Kinesiska (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (Hong Kong)"
-#~ msgstr "Kinesiska (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (Macau)"
-#~ msgstr "Kinesiska (traditionell)"
-
-#, fuzzy
-#~ msgid "Chinese (PRC)"
-#~ msgstr "Kinesiska"
-
-#, fuzzy
-#~ msgid "Chinese (Singapore)"
-#~ msgstr "Kinesiska (förenklad)"
-
-#, fuzzy
-#~ msgid "Arabic (Iraq)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Libya)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Algeria)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Morocco)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Tunisia)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Oman)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Yemen)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Syria)"
-#~ msgstr "Arabiska (Egypten)"
-
-#, fuzzy
-#~ msgid "Arabic (Jordan)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Kuwait)"
-#~ msgstr "Arabiska (Egypten)"
-
-#, fuzzy
-#~ msgid "Arabic (UAE)"
-#~ msgstr "Arabiska (Egypten)"
-
-#, fuzzy
-#~ msgid "Arabic (Bahrain)"
-#~ msgstr "Arabiska (Libanon)"
-
-#, fuzzy
-#~ msgid "Arabic (Qatar)"
-#~ msgstr "Arabiska (Egypten)"
-
-#~ msgid "Other"
-#~ msgstr "Annat"
-
-#~ msgid "Unknown"
-#~ msgstr "Okänd"
-
-#~ msgid "English (US)"
-#~ msgstr "Engelsk (US)"
-
-#~ msgid "Belgian"
-#~ msgstr "Belgisk"
-
-#~ msgid "Czech (qwerty)"
-#~ msgstr "Tjeckisk (qwerty)"
-
-#~ msgid "Dvorak"
-#~ msgstr "Dvorak"
-
-#~ msgid "French (Switzerland)"
-#~ msgstr "Fransk (schweizisk)"
-
-#~ msgid "German (with deadkeys)"
-#~ msgstr "Tysk (med 'Tottaste')"
-
-#~ msgid "Portuguese (Brazil US accents)"
-#~ msgstr "Portugisisk (Brazilien, am. diakriter)"
-
-#~ msgid "Slovak (qwerty)"
-#~ msgstr "Slovakisk (qwerty)"
-
-#~ msgid "Spanish (CP 850)"
-#~ msgstr "Spansk (CP 850)"
-
-#~ msgid "Spanish (Latin America)"
-#~ msgstr "Spansk (Latinamerika)"
-
-#~ msgid "English (UK)"
-#~ msgstr "Engelsk (UK)"
-
-#~ msgid "Simplified-Traditional Chinese Conversion"
-#~ msgstr "Omvandling förenklad/traditionell kinesiska"
-
-#~ msgid "Convert between Simplified Chinese and Traditional Chinese"
-#~ msgstr "Omvandla förenklad kinesiska till traditionell och vice versa"
-
-#~ msgid "SC-TC"
-#~ msgstr "SC-TC"
-
-#~ msgid "Simplified-Traditional Chinese conversion"
-#~ msgstr "Omvandling förenklad/traditionell kinesiska"
-
-#~ msgid "No Conversion"
-#~ msgstr "Ingen omvandling"
-
-#~ msgid "Simplified to Traditional"
-#~ msgstr "Förenklad till traditionell"
-
-#~ msgid "Convert Simplified Chinese to Traditional Chinese"
-#~ msgstr "Omvandla förenklad kinesiska till traditionell"
-
-#~ msgid "Traditional to Simplified"
-#~ msgstr "Traditionell till förenklad"
-
-#~ msgid "Convert Traditional Chinese to Simplified Chinese"
-#~ msgstr "Omvandla traditionell kinesiska till förenklad"
-
-#~ msgid "James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "SC->TC"
-#~ msgstr "SC->TC"
-
-#~ msgid "TC->SC"
-#~ msgstr "TC->SC"
-
-#~ msgid "Smart Common Input Method platform "
-#~ msgstr "Scim-plattformen (Smart Common Input Method)"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-#~ "\n"
-
-#~ msgid ""
-#~ ":\n"
-#~ "\n"
-#~ msgstr ""
-#~ ":\n"
-#~ "\n"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-
-#~ msgid "Enable"
-#~ msgstr "Aktivera"
-
-#~ msgid "Name"
-#~ msgstr "Namn"
-
-#~ msgid "Cursor Position"
-#~ msgstr "Markörens position"
-
-#~ msgid "The current position of the insertion cursor in chars."
-#~ msgstr "Markörens läge i texten, räknat i tecken."
-
-#~ msgid "Maximum length"
-#~ msgstr "Maxlängd"
-
-#~ msgid ""
-#~ "Maximum number of characters for this string view. Zero if no maximum."
-#~ msgstr ""
-#~ "Högsta antal tecken att visa i den här teckenraden. Välj 0 för att inte "
-#~ "begränsa längden."
-
-#~ msgid "Maximum width"
-#~ msgstr "Maxbredd"
-
-#~ msgid "Maximum width of this string view."
-#~ msgstr "Maximal bredd för att visa den här teckenraden."
-
-#~ msgid "Has Frame"
-#~ msgstr "Med ram"
-
-#~ msgid "FALSE removes outside bevel from string view."
-#~ msgstr "Om FALSK tas ytterkanten bort från strängvyn."
-
-#~ msgid "Draw cursor"
-#~ msgstr "Visa markör"
-
-#~ msgid "TRUE draw blinking cursor."
-#~ msgstr "Om SANT använd blinkande markör."
-
-#~ msgid "Auto move cursor"
-#~ msgstr "Flytta markören automatiskt"
-
-#~ msgid "TRUE auto move cursor position when mouse clicking."
-#~ msgstr "Flytta markören automatiskt vid musklick."
-
-#, fuzzy
-#~ msgid "Forward button press/release event"
-#~ msgstr "Direktmata tangenter"
-
-#, fuzzy
-#~ msgid "TRUE forward button press/release event to user program."
-#~ msgstr "Skicka tangentnedtryckningar till användarprogrammet."
-
-#~ msgid "Auto resize the widget to fit the string"
-#~ msgstr "Anpassa storleken automatiskt till teckenraden."
-
-#~ msgid "TRUE Auto resize on."
-#~ msgstr "Storleken anpassas automatiskt."
-
-#, fuzzy
-#~ msgid "TRUE Emit move_cursor signal when press the string."
-#~ msgstr "Flytta markören automatiskt vid musklick."
-
-#~ msgid "Width in chars"
-#~ msgstr "Bredd (antal tecken)"
-
-#~ msgid "Number of characters to leave space for in the string view."
-#~ msgstr "Antal tecken att göra rum för i teckenraden."
-
-#~ msgid "Scroll offset"
-#~ msgstr "Mjuk rullning"
-
-#~ msgid ""
-#~ "Number of pixels of the string view scrolled off the screen to the left"
-#~ msgstr "Antal pixlar i teckenraden som rullat över vänsterkanten på skärmen"
-
-#~ msgid "Text"
-#~ msgstr "Text"
-
-#~ msgid "The contents of the string view"
-#~ msgstr "Innehållet i teckenraden"
-
-#~ msgid "Selected _Keys:"
-#~ msgstr "Valda _kortkommandon:"
-
-#~ msgid "Key Code:"
-#~ msgstr "Tangentkod:"
-
-#, fuzzy
-#~ msgid "....."
-#~ msgstr "..."
-
-#~ msgid "Modifiers:"
-#~ msgstr "Specialtangenter:"
-
-#~ msgid "_Ctrl"
-#~ msgstr "_Ctrl"
-
-#~ msgid "A_lt"
-#~ msgstr "A_lt"
-
-#~ msgid "_Shift"
-#~ msgstr "_Shift"
-
-#~ msgid "_Release"
-#~ msgstr "_Release"
-
-#~ msgid "_Meta"
-#~ msgstr "_Meta"
-
-#~ msgid "S_uper"
-#~ msgstr "S_uper"
-
-#~ msgid "_Hyper"
-#~ msgstr "_Hyper"
-
-#~ msgid "Please enter a Key Code first."
-#~ msgstr "Ange tangentkod först."
-
-#, fuzzy
-#~ msgid ""
-#~ "Press a key (or a key combination).\n"
-#~ "This dialog will be closed \n"
-#~ "when the key is released."
-#~ msgstr ""
-#~ "Tryck på en tangent eller på en tangentkombination.\n"
-#~ "Den här rutan försvinner när du släpper tangenten."
-
-#~ msgid "Grabbing a key."
-#~ msgstr "Plockar tangent"
-
-#~ msgid "Key Selection"
-#~ msgstr "Tangentval"
-
-#~ msgid "Orientation"
-#~ msgstr "Riktning"
-
-#~ msgid "The orientation of the tray."
-#~ msgstr "Panelens riktning."
-
-#, fuzzy
-#~ msgid "Next"
-#~ msgstr "Text"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amhariska"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Alltid"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Alternativ"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Latinsk teckeninmatning"
-
-#~ msgid "English/European"
-#~ msgstr "Västerländsk"
-
-#~ msgid "RAW CODE"
-#~ msgstr "TANGENTKOD"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Snabbtangenter:\n"
-#~ "\n"
-#~ " Ctrl+u:\n"
-#~ " Växla mellan multibytekodning and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " återställ inmatningsmetod.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Aktuell inmatningsmetod. Klicka för att ändra."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Allmänna inställningar"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Allmänna inställningar som gäller alla användargränssnitt, t.ex. X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-
-#~ msgid "_Trigger:"
-#~ msgstr "Ak_tiveringstangent"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Välj aktiveringstangenter"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som öppnar och stänger SCIM-inmatningen. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "Turn _On:"
-#~ msgstr "Slå på (_o):"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Välj på-kommando"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som öppnar SCIM-inmatningen. Klicka påknappen till "
-#~ "höger för att ändra."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "Stäng av (_f):"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Välj på-kommando"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som stänger SCIM-inmatningen. Klicka påknappen till "
-#~ "höger för att ändra."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Nästa inmatningsmetod:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Välj kommando för att hoppa till nästa"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som växlar till nästa inmatningsmetod. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "Föregående inmatningsmetod (_p):"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Välj kommando för att hoppa till föregående"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som växlar till föregående inmatningsmetod. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Visa _meny med inmatningsmetoder:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Välj kommando för att visa menyn med inmatningsmetoder"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som visar menyn med inmatningsmetoder. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "Tangentbordslayout (_k):"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Här väljer du vilket slags tangentbord du har. Det är nödvändigt föratt "
-#~ "vissa inmatningsmetoder skall fungera."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Visa okonverterad_e latinska tecken i ditt arbetsfönster."
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Med det här alternativet förbockat kommer de latinska bokstäver du "
-#~ "skriveratt visas direkt i fönstret du arbetar i. Annars visas de i ett "
-#~ "popup-fönster."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "Använd _samma inmatningsmetod i alla program"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Med det här alternativet förbockat kommer bara en inmatningsmetod att "
-#~ "användasi taget. Annars kan varje program använda olika metoder."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Kortkommandon"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Slå av och på inmatningsmetoder och ange kortkommandon för olika "
-#~ "inmatningsmetoder här."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Installerade inmatningsmetoder:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Redigera kortkommandon (_h)"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Välj kortkommandon för vald inmatningsmetod."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Välj _filter"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Välj filter att använda till den här inmatningsmetoden."
-
-#~ msgid "_Expand"
-#~ msgstr "Visa allt (_e)"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Visa alla inmatningsmetoder"
-
-#~ msgid "_Collapse"
-#~ msgstr "Göm allt (_c)"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Göm alla inmatningsmetoder."
-
-#~ msgid "E_nable All"
-#~ msgstr "Markera alla (_n)"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Gör alla inmatningsmetoder tillgängliga för användning."
-
-#~ msgid "_Disable All"
-#~ msgstr "Avmarkera alla (_d)"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Gör alla inmatningsmetoder otillgängliga för användning."
-
-#~ msgid "Filters"
-#~ msgstr "Filter"
-
-#~ msgid "Languages"
-#~ msgstr "Språk"
-
-#~ msgid "Description"
-#~ msgstr "Beskrivning"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Välj kortkommando för %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Välj filter för %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Flytta _uppåt"
-
-#~ msgid "Move _Down"
-#~ msgstr "Flytta ne_dåt"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Paneldemon byggd på GTK+-2.x-biblioteket."
-
-#~ msgid "On demand"
-#~ msgstr "På begäran"
-
-#~ msgid "Never"
-#~ msgstr "Aldrig"
-
-#~ msgid "ToolBar"
-#~ msgstr "Verktygsfält"
-
-#~ msgid "_Show:"
-#~ msgstr "Vi_sa"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Fäst vid skärmka_nt"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Visa ikon för aktuell inmatningsmetod"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Visa namn på akt_uell inmatningsmetod"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Time_out för att dölja:"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Vi_sa fixeringsikonen"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Visa m_enyikonen"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Visa _hjälpikonen"
-
-#~ msgid "Show _property label"
-#~ msgstr "Visa inmatningsalternativ"
-
-#~ msgid "Input window"
-#~ msgstr "Inmatningsfönster"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Infälld teckenväljare (_m)"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Vertikal teckenväljare"
-
-#~ msgid "Misc"
-#~ msgstr "Diverse"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Visa ikon i s_ystempanelen"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Fäst fönster (_w)"
-
-#~ msgid "_Font:"
-#~ msgstr "Typsnitt (_f)"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Välj \"Alltid\" för att ständigt visa verktygsfältet på skärmen. Välj\"På "
-#~ "begäran\" för att bara visa verktygsfältet när Scim är aktivt.Välj \"Never"
-#~ "\" för att aldrig visa verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Med det här alternativet förbockat är verktygsfältet alltid fäst mot "
-#~ "skärmkanten."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Verktygsfältet döljs efter så här lång tid. Den här inställningen används "
-#~ "baranär du har valt \"Alltid\" i menyn till vänster. Välj 0 för att "
-#~ "aldrig döljaverktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas alltid ikonen för "
-#~ "aktuellinmatningsmetod i verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas alltid namnet på "
-#~ "aktuellinmatningsmetod i verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas häftstiftsikonen i "
-#~ "verktygsfältet"
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas menyikonen i verktygsfältet"
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas hjälpikonen i verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas en textlapp med "
-#~ "inmatningsalternativi verktygsfältet"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas teckenväljaren infälld "
-#~ "iinmatningsfönstret."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat används en vertikal teckenväljare."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat visas panelikonen i "
-#~ "skrivbordetssystempanel."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat fixeras verktygsfält, "
-#~ "inmatningsfönsteroch teckenväljare på en given plats."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Det typsnitt som kommer att användas i inmatnings- och teckenväljarfönster"
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Välj typsnitt för användargränssnittet"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "FrontEnd"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Panel"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Inställningar för Scim"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Scim-plattformen (Smart Common Input Method)</"
-#~ "span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Grafiskt inställningsverktyg</"
-#~ "span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Inställningar för %s-moduler.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Vill du avsluta inställningsverktyget för Scim?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Många inställningar kräver att du startar om Scim innan du fortsätter,för "
-#~ "att de skall börja verka."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Inställningar för Scim"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "Inställningsverktyg byggt på GTK Widget-biblioteket."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr ""
-#~ "Inställningsverktyg för Scim-plattformen (Smart Common Input Method)"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Om Scim"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Scim (Smart Common Input Method)"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Fixera/lossa inmatningsfönstret och verktygsfältet"
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Kortfattad information om Scim och om aktuell inmatningsmetod."
-
-#~ msgid "Show command menu."
-#~ msgstr "Visa kommandomenyn."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Återhämta inställningar"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Fixera fönster"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Dölj verktygsfältet"
-
-#~ msgid "Help ..."
-#~ msgstr "Hjälp ..."
-
-#~ msgid "Exit"
-#~ msgstr "Avsluta"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
+msgid "Keyboard"
+msgstr "Klavye"
SRCROOT=../..
POTFILES=POTFILES.in
-#ALL_LINGUAS= am az be ca cs da de el en_CA en_GB es et fi fr hr hu it ja ko lv mk ml ms nb ne nl pa pl pt pt_BR ru rw sk sl sr sr@Latn sv ta tr uk vi zh_CN zh_TW
ALL_LINGUAS="de_DE el_GR en es_ES fr_FR it_IT ja_JP ko_KR nl_NL pt_PT ru_RU tr_TR zh_CN zh_HK zh_TW"
XGETTEXT=/usr/bin/xgettext
-# translation of zh_CN.po to Simplified Chinese
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: zh_CN\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2011-01-01 14:57+0800\n"
-"Last-Translator: Haifeng Deng <haifeng.deng@samsung.com>\n"
-"Language-Team: Simplified Chinese <zh@li.org>\n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.3.1\n"
#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
msgid "Keyboard"
msgstr "键盘"
-
-#~ msgid "Keyboard selection"
-#~ msgstr "键盘选择"
-# translation of zh_HK.po to Chinese (Hongkong)
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: ISF 2.2\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-01-19 18:51+0900\n"
-"PO-Revision-Date: 2011-01-01 22:41+0800\n"
-"Last-Translator: Haifeng Deng <haifeng.deng@samsung.com>\n"
-"Language-Team: scim@freedesktop.org\n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:254
-#: ism/extras/efl_setting/isf_setting_wizard.cpp:257
-msgid "Keyboard selection"
-msgstr "鍵盤選擇"
-
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:310
+#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
msgid "Keyboard"
msgstr "鍵盤"
-# translation of zh_TW.po to Chinese (Taiwan)
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: ISF 2.2\n"
+"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 11:24+0900\n"
-"PO-Revision-Date: 2011-01-01 22:41+0800\n"
-"Last-Translator: Haifeng Deng <haifeng.deng@samsung.com>\n"
-"Language-Team: scim@freedesktop.org\n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
#: ism/extras/efl_setting/isf_setting_wizard.cpp:315
msgid "Keyboard"
msgstr "鍵盤"
-
-#~ msgid "Keyboard selection"
-#~ msgstr "鍵盤選擇"
+++ /dev/null
-# translation of cs.po to Czech
-# translation of cs.po to cs_CZ
-# translation of scim.po to cs_CZ
-# This file is distributed under the same license as the PACKAGE package.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
-# Klara Cihlarova <koty@seznam.cz>, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: cs\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
-"PO-Revision-Date: 2005-12-11 19:55+0100\n"
-"Last-Translator: Klara Cihlarova <koty@seznam.cz>\n"
-"Language-Team: Czech <suse@suse.cz>\n"
-"Language: cs\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.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"
-
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
-#: ism/src/scim_utility.cpp:702
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
-msgid "English/Keyboard"
-msgstr "Angličtina/klávesnice"
-
-#. return WideString ();
-#: ism/src/scim_compose_key.cpp:145
-#, fuzzy
-msgid "English input service"
-msgstr "Angličtina (americká)"
-
-#: ism/src/scim_utility.cpp:703
-msgid "Amharic"
-msgstr "Amharština"
-
-#: ism/src/scim_utility.cpp:704
-msgid "Arabic"
-msgstr "Arabština"
-
-#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
-msgid "Arabic (Egypt)"
-msgstr "Arabština (egyptská)"
-
-#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
-msgid "Arabic (Lebanon)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:707
-msgid "Assamese"
-msgstr "Ásámština"
-
-#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
-msgid "Azerbaijani"
-msgstr "Azerbajdžánština"
-
-#: ism/src/scim_utility.cpp:709
-msgid "Belarusian"
-msgstr "Běloruština"
-
-#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
-msgid "Bulgarian"
-msgstr "Bulharština"
-
-#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
-#: ism/src/scim_utility.cpp:914
-msgid "Bengali"
-msgstr "Bengálština"
-
-#: ism/src/scim_utility.cpp:713
-msgid "Bengali (India)"
-msgstr "Bengálština (indická)"
-
-#: ism/src/scim_utility.cpp:714
-msgid "Tibetan"
-msgstr "Tibetština"
-
-#: ism/src/scim_utility.cpp:715
-msgid "Bosnian"
-msgstr "Bosenština"
-
-#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
-msgid "Catalan"
-msgstr "Katalánština"
-
-#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
-#: ism/src/scim_keyboard_layout_data.h:4596
-msgid "Czech"
-msgstr "Čeština"
-
-#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
-msgid "Welsh"
-msgstr "Welština"
-
-#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
-#: ism/src/scim_keyboard_layout_data.h:4598
-msgid "Danish"
-msgstr "Dánština"
-
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
-msgid "German"
-msgstr "Němčina"
-
-#: ism/src/scim_utility.cpp:721
-msgid "Divehi"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
-#: ism/src/scim_keyboard_layout_data.h:4609
-msgid "Greek"
-msgstr "Řečtina"
-
-#: ism/src/scim_utility.cpp:723
-msgid "English"
-msgstr "Angličtina"
-
-#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
-msgid "English (Australian)"
-msgstr "Angličtina (australská)"
-
-#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
-msgid "English (Canadian)"
-msgstr "Angličtina (kanadská)"
-
-#: ism/src/scim_utility.cpp:726
-msgid "English (British)"
-msgstr "Angličtina (britská)"
-
-#: ism/src/scim_utility.cpp:727
-msgid "English (Ireland)"
-msgstr "Angličtina (irská)"
-
-#: ism/src/scim_utility.cpp:728
-msgid "English (American)"
-msgstr "Angličtina (americká)"
-
-#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
-#: ism/src/scim_keyboard_layout_data.h:4622
-msgid "Spanish"
-msgstr "Španělština"
-
-#: ism/src/scim_utility.cpp:731
-msgid "Spanish (Mexico)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
-#: ism/src/scim_keyboard_layout_data.h:4601
-msgid "Estonian"
-msgstr "Estonština"
-
-#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
-msgid "Basque"
-msgstr "Baskičtina"
-
-#: ism/src/scim_utility.cpp:734
-msgid "Persian"
-msgstr "Perština"
-
-#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
-#: ism/src/scim_keyboard_layout_data.h:4602
-msgid "Finnish"
-msgstr "Finština"
-
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
-msgid "French"
-msgstr "Francouzština"
-
-#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
-msgid "Irish"
-msgstr "Irština"
-
-#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
-msgid "Galician"
-msgstr "Galština"
-
-#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
-msgid "Gujarati"
-msgstr "Gudžarádština"
-
-#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
-#: ism/src/scim_utility.cpp:891
-msgid "Hebrew"
-msgstr "Hebrejština"
-
-#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
-msgid "Hindi"
-msgstr "Hindština"
-
-#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
-msgid "Croatian"
-msgstr "Chorvatština"
-
-#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
-#: ism/src/scim_keyboard_layout_data.h:4610
-msgid "Hungarian"
-msgstr "Maďarština"
-
-#: ism/src/scim_utility.cpp:744
-#, fuzzy
-msgid "Armenian"
-msgstr "Rumunština"
-
-#: ism/src/scim_utility.cpp:745
-msgid "Interlingua"
-msgstr "Interlingua"
-
-#: ism/src/scim_utility.cpp:746
-msgid "Indonesian"
-msgstr "Indonézština"
-
-#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
-#: ism/src/scim_keyboard_layout_data.h:4628
-msgid "Icelandic"
-msgstr "Islandština"
-
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
-msgid "Italian"
-msgstr "Italština"
-
-#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
-#: ism/src/scim_keyboard_layout_data.h:4612
-msgid "Japanese"
-msgstr "Japonština"
-
-#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
-#, fuzzy
-msgid "Georgian"
-msgstr "Němčina"
-
-#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
-msgid "Kazakh"
-msgstr "Kazaština"
-
-#: ism/src/scim_utility.cpp:753
-msgid "Cambodian"
-msgstr "Khmerština"
-
-#: ism/src/scim_utility.cpp:754
-msgid "Kannada"
-msgstr "Kannadština"
-
-#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
-msgid "Korean"
-msgstr "Korejština"
-
-#: ism/src/scim_utility.cpp:756
-msgid "Laothian"
-msgstr "Laoština"
-
-#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
-#: ism/src/scim_keyboard_layout_data.h:4629
-msgid "Lithuanian"
-msgstr "Litevština"
-
-#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
-msgid "Latvian"
-msgstr "Lotyšština"
-
-#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
-msgid "Macedonian"
-msgstr "Makedonština"
-
-#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
-msgid "Malayalam"
-msgstr "Malajámština"
-
-#: ism/src/scim_utility.cpp:761
-msgid "Mongolian"
-msgstr "Mongolština"
-
-#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
-msgid "Marathi"
-msgstr "Maráthština"
-
-#: ism/src/scim_utility.cpp:763
-msgid "Malay"
-msgstr "Malajština"
-
-#: ism/src/scim_utility.cpp:764
-msgid "Burmese"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:765
-msgid "Nepali"
-msgstr "Nepálština"
-
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
-msgid "Dutch"
-msgstr "Nizozemské"
-
-#: ism/src/scim_utility.cpp:767
-#, fuzzy
-msgid "Norwegian (Nynorsk)"
-msgstr "Norština (nynorsk)"
-
-#: ism/src/scim_utility.cpp:768
-#, fuzzy
-msgid "Norwegian (Bokmal)"
-msgstr "Norština (bokmal)"
-
-#: ism/src/scim_utility.cpp:769
-msgid "Oriya"
-msgstr "Orijština"
-
-#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
-msgid "Punjabi"
-msgstr "Pandžábština"
-
-#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
-#: ism/src/scim_keyboard_layout_data.h:4614
-msgid "Polish"
-msgstr "Polština"
-
-#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
-msgid "Portuguese"
-msgstr "Portugalština"
-
-#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
-msgid "Portuguese (Brazil)"
-msgstr "Portugalština (brazilská)"
-
-#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
-msgid "Romanian"
-msgstr "Rumunština"
-
-#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
-#: ism/src/scim_keyboard_layout_data.h:4618
-msgid "Russian"
-msgstr "Ruština"
-
-#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
-msgid "Sinhala"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
-#: ism/src/scim_keyboard_layout_data.h:4619
-msgid "Slovak"
-msgstr "Slovenština"
-
-#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
-#: ism/src/scim_keyboard_layout_data.h:4621
-msgid "Slovenian"
-msgstr "Slovinština"
-
-#: ism/src/scim_utility.cpp:780
-msgid "Albanian"
-msgstr "Albánština"
-
-#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
-#: ism/src/scim_utility.cpp:783
-msgid "Serbian"
-msgstr "Srbština"
-
-#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
-#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
-msgid "Swedish"
-msgstr "Švédština"
-
-#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
-msgid "Swedish (Finland)"
-msgstr "Švédština (finská)"
-
-#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
-msgid "Tamil"
-msgstr "Tamilština"
-
-#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
-msgid "Telugu"
-msgstr "Telugština"
-
-#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
-msgid "Thai"
-msgstr "Thajština"
-
-#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
-#: ism/src/scim_keyboard_layout_data.h:4626
-msgid "Turkish"
-msgstr "Turečtina"
-
-#: ism/src/scim_utility.cpp:791
-msgid "Uighur"
-msgstr "Ujgurština"
-
-#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
-#: ism/src/scim_keyboard_layout_data.h:4630
-msgid "Ukrainian"
-msgstr "Ukrajinština"
-
-#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
-msgid "Urdu"
-msgstr "Urdština"
-
-#: ism/src/scim_utility.cpp:794
-msgid "Uzbek"
-msgstr "Uzbečtina"
-
-#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
-msgid "Vietnamese"
-msgstr "Vietnamština"
-
-#: ism/src/scim_utility.cpp:796
-msgid "Walloon"
-msgstr "Walloon"
-
-#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
-msgid "Yiddish"
-msgstr "Jidiš"
-
-#: ism/src/scim_utility.cpp:799
-msgid "Chinese"
-msgstr "Čínština"
-
-#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
-#, fuzzy
-msgid "Chinese (Simplified)"
-msgstr "Čínština (zjednodušená)"
-
-#: ism/src/scim_utility.cpp:801
-#, fuzzy
-msgid "Chinese (Hongkong)"
-msgstr "Čínština (tradiční)"
-
-#: ism/src/scim_utility.cpp:803
-#, fuzzy
-msgid "Chinese (Traditional)"
-msgstr "Čínština (tradiční)"
-
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:806
-#, fuzzy
-msgid "Dutch (Belgian)"
-msgstr "Belgičtina"
-
-#: ism/src/scim_utility.cpp:807
-#, fuzzy
-msgid "English (United States)"
-msgstr "Angličtina (US)"
-
-#: ism/src/scim_utility.cpp:808
-#, fuzzy
-msgid "English (United Kingdom)"
-msgstr "Angličtina (kanadská)"
-
-#: ism/src/scim_utility.cpp:811
-#, fuzzy
-msgid "English (New Zealand)"
-msgstr "Angličtina (irská)"
-
-#: ism/src/scim_utility.cpp:812
-#, fuzzy
-msgid "English (Irish)"
-msgstr "Angličtina (britská)"
-
-#: ism/src/scim_utility.cpp:813
-#, fuzzy
-msgid "English (South Africa)"
-msgstr "Angličtina (americká)"
-
-#: ism/src/scim_utility.cpp:814
-#, fuzzy
-msgid "English (Jamaica)"
-msgstr "Angličtina (kanadská)"
-
-#: ism/src/scim_utility.cpp:815
-#, fuzzy
-msgid "English (Belize)"
-msgstr "Angličtina (britská)"
-
-#: ism/src/scim_utility.cpp:816
-#, fuzzy
-msgid "English (Trinidad)"
-msgstr "Angličtina (britská)"
-
-#: ism/src/scim_utility.cpp:817
-#, fuzzy
-msgid "English (Zimbabwe)"
-msgstr "Angličtina (kanadská)"
-
-#: ism/src/scim_utility.cpp:818
-#, fuzzy
-msgid "English (Philippines)"
-msgstr "Angličtina (britská)"
-
-#: ism/src/scim_utility.cpp:819
-#, fuzzy
-msgid "French (Standard)"
-msgstr "Francouzština (kanadská)"
-
-#: ism/src/scim_utility.cpp:820
-#, fuzzy
-msgid "French (Belgian)"
-msgstr "Francouzština (kanadská)"
-
-#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
-msgid "French (Canadian)"
-msgstr "Francouzština (kanadská)"
-
-#: ism/src/scim_utility.cpp:822
-#, fuzzy
-msgid "French (Swiss)"
-msgstr "Němčina (švýcarská)"
-
-#: ism/src/scim_utility.cpp:823
-msgid "French (Luxembourg)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:824
-#, fuzzy
-msgid "French (Monaco)"
-msgstr "Francouzština (kanadská)"
-
-#: ism/src/scim_utility.cpp:825
-#, fuzzy
-msgid "German (Standard)"
-msgstr "Němčina (s mrtvými klávesami)"
-
-#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
-msgid "German (Swiss)"
-msgstr "Němčina (švýcarská)"
-
-#: ism/src/scim_utility.cpp:827
-#, fuzzy
-msgid "German (Austrian)"
-msgstr "Angličtina (australská)"
-
-#: ism/src/scim_utility.cpp:828
-msgid "German (Luxembourg)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:829
-#, fuzzy
-msgid "German (Liechtenstein)"
-msgstr "Němčina (švýcarská)"
-
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:831
-#, fuzzy
-msgid "Italian (Swiss)"
-msgstr "Němčina (švýcarská)"
-
-#: ism/src/scim_utility.cpp:832
-#, fuzzy
-msgid "Portuguese (Brazilian)"
-msgstr "Portugalština (brazilská)"
-
-#: ism/src/scim_utility.cpp:833
-#, fuzzy
-msgid "Portuguese (Standard)"
-msgstr "Portugalština (brazilská)"
-
-#: ism/src/scim_utility.cpp:834
-#, fuzzy
-msgid "Spanish (Traditional Sort)"
-msgstr "Španělština (jihoamerická)"
-
-#: ism/src/scim_utility.cpp:835
-#, fuzzy
-msgid "Spanish (Mexican)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:836
-#, fuzzy
-msgid "Spanish (Guatemala)"
-msgstr "Španělština (jihoamerická)"
-
-#: ism/src/scim_utility.cpp:837
-#, fuzzy
-msgid "Spanish (Costa Rica)"
-msgstr "Španělština (jihoamerická)"
-
-#: ism/src/scim_utility.cpp:838
-#, fuzzy
-msgid "Spanish (Panama)"
-msgstr "Španělština (jihoamerická)"
-
-#: ism/src/scim_utility.cpp:839
-#, fuzzy
-msgid "Spanish (Dominican Republic)"
-msgstr "Španělština (jihoamerická)"
-
-#: ism/src/scim_utility.cpp:840
-#, fuzzy
-msgid "Spanish (Venezuela)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:841
-#, fuzzy
-msgid "Spanish (Colombia)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:842
-#, fuzzy
-msgid "Spanish (Peru)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:843
-#, fuzzy
-msgid "Spanish (Argentina)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:844
-#, fuzzy
-msgid "Spanish (Ecuador)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:845
-#, fuzzy
-msgid "Spanish (Chile)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:846
-#, fuzzy
-msgid "Spanish (Uruguay)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:847
-#, fuzzy
-msgid "Spanish (Paraguay)"
-msgstr "Španělština (CP 850)"
-
-#: ism/src/scim_utility.cpp:848
-#, fuzzy
-msgid "Spanish (Bolivia)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:849
-msgid "Spanish (El Salvador)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:850
-#, fuzzy
-msgid "Spanish (Honduras)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:851
-#, fuzzy
-msgid "Spanish (Nicaragua)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:852
-#, fuzzy
-msgid "Spanish (Puerto Rico)"
-msgstr "Španělština (mexická)"
-
-#: ism/src/scim_utility.cpp:856
-msgid "Afrikaans"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:859
-#, fuzzy
-msgid "Malay (Malaysia)"
-msgstr "Malajámština"
-
-#: ism/src/scim_utility.cpp:860
-msgid "Malay (Brunei Darussalam)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
-msgid "Norwegian"
-msgstr "Norština"
-
-#: ism/src/scim_utility.cpp:868
-#, fuzzy
-msgid "Serbian (Latin)"
-msgstr "Srbština"
-
-#: ism/src/scim_utility.cpp:879
-msgid "Serbian (Cyrillic)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:882
-msgid "Uzbek (Latin)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:885
-#, fuzzy
-msgid "Chinese (Taiwan)"
-msgstr "Čínština (tradiční)"
-
-#: ism/src/scim_utility.cpp:886
-#, fuzzy
-msgid "Chinese (Hong Kong)"
-msgstr "Čínština (tradiční)"
-
-#: ism/src/scim_utility.cpp:887
-#, fuzzy
-msgid "Chinese (Macau)"
-msgstr "Čínština (tradiční)"
-
-#: ism/src/scim_utility.cpp:888
-#, fuzzy
-msgid "Chinese (PRC)"
-msgstr "Čínština"
-
-#: ism/src/scim_utility.cpp:889
-#, fuzzy
-msgid "Chinese (Singapore)"
-msgstr "Čínština (zjednodušená)"
-
-#: ism/src/scim_utility.cpp:892
-msgid "Arabic (Saudi Arabia)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:893
-#, fuzzy
-msgid "Arabic (Iraq)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:895
-#, fuzzy
-msgid "Arabic (Libya)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:896
-#, fuzzy
-msgid "Arabic (Algeria)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:897
-#, fuzzy
-msgid "Arabic (Morocco)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:898
-#, fuzzy
-msgid "Arabic (Tunisia)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:899
-#, fuzzy
-msgid "Arabic (Oman)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:900
-#, fuzzy
-msgid "Arabic (Yemen)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:901
-#, fuzzy
-msgid "Arabic (Syria)"
-msgstr "Arabština (egyptská)"
-
-#: ism/src/scim_utility.cpp:902
-#, fuzzy
-msgid "Arabic (Jordan)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:904
-#, fuzzy
-msgid "Arabic (Kuwait)"
-msgstr "Arabština (egyptská)"
-
-#: ism/src/scim_utility.cpp:905
-#, fuzzy
-msgid "Arabic (UAE)"
-msgstr "Arabština (egyptská)"
-
-#: ism/src/scim_utility.cpp:906
-#, fuzzy
-msgid "Arabic (Bahrain)"
-msgstr "Arabština (libanonská)"
-
-#: ism/src/scim_utility.cpp:907
-#, fuzzy
-msgid "Arabic (Qatar)"
-msgstr "Arabština (egyptská)"
-
-#: ism/src/scim_utility.cpp:921
-msgid "Hausa"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:925
-msgid "Xhosa"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:926
-msgid "Yoruba"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:927
-msgid "Zulu"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:1025
-msgid "Other"
-msgstr "Ostatní"
-
-#: ism/src/scim_keyboard_layout_data.h:4592
-#: ism/modules/imengine/scim_socket_imengine.cpp:409
-#: ism/modules/imengine/scim_socket_imengine.cpp:466
-#: ism/modules/imengine/scim_socket_imengine.cpp:496
-#: ism/modules/imengine/scim_socket_imengine.cpp:526
-msgid "Unknown"
-msgstr "Neznámé"
-
-#: ism/src/scim_keyboard_layout_data.h:4593
-msgid "English (US)"
-msgstr "Angličtina (US)"
-
-#: ism/src/scim_keyboard_layout_data.h:4594
-msgid "Belgian"
-msgstr "Belgičtina"
-
-#: ism/src/scim_keyboard_layout_data.h:4597
-msgid "Czech (qwerty)"
-msgstr "Čeština (qwerty)"
-
-#: ism/src/scim_keyboard_layout_data.h:4600
-msgid "Dvorak"
-msgstr "Dvorak"
-
-#: ism/src/scim_keyboard_layout_data.h:4605
-msgid "French (Switzerland)"
-msgstr "Francouzština (švýcarská)"
-
-#: ism/src/scim_keyboard_layout_data.h:4607
-msgid "German (with deadkeys)"
-msgstr "Němčina (s mrtvými klávesami)"
-
-#: ism/src/scim_keyboard_layout_data.h:4617
-msgid "Portuguese (Brazil US accents)"
-msgstr "Portugalština (brazilská)"
-
-#: ism/src/scim_keyboard_layout_data.h:4620
-msgid "Slovak (qwerty)"
-msgstr "Slovenština (qwerty)"
-
-#: ism/src/scim_keyboard_layout_data.h:4623
-msgid "Spanish (CP 850)"
-msgstr "Španělština (CP 850)"
-
-#: ism/src/scim_keyboard_layout_data.h:4624
-msgid "Spanish (Latin America)"
-msgstr "Španělština (jihoamerická)"
-
-#: ism/src/scim_keyboard_layout_data.h:4627
-msgid "English (UK)"
-msgstr "Angličtina (UK)"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:57
-msgid "Simplified-Traditional Chinese Conversion"
-msgstr "Převod zjednodušená - tradiční čínština"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:60
-msgid "Convert between Simplified Chinese and Traditional Chinese"
-msgstr "Převod mezi zjednodušenou čínštinou a tradiční čínštinou"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:71
-msgid "SC-TC"
-msgstr "SC-TC"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:73
-#: ism/modules/filter/scim_sctc_filter.cpp:78
-msgid "Simplified-Traditional Chinese conversion"
-msgstr "Převod zjednodušená - tradiční čínština"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:76
-msgid "No Conversion"
-msgstr "Bez převodu"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:81
-msgid "Simplified to Traditional"
-msgstr "Ze zjednodušené do tradiční"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:83
-msgid "Convert Simplified Chinese to Traditional Chinese"
-msgstr "Převést zjednodušenou čínštinu do tradiční čínštiny"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:86
-msgid "Traditional to Simplified"
-msgstr "Z tradiční do zjednodušené"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:88
-msgid "Convert Traditional Chinese to Simplified Chinese"
-msgstr "Převést tradiční čínštinu do zjednodušené čínštiny"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:300
-msgid "James Su <suzhe@tsinghua.org.cn>"
-msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:425
-#: ism/modules/filter/scim_sctc_filter.cpp:555
-#: ism/modules/filter/scim_sctc_filter.cpp:571
-msgid "SC->TC"
-msgstr "SC->TC"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:431
-#: ism/modules/filter/scim_sctc_filter.cpp:559
-#: ism/modules/filter/scim_sctc_filter.cpp:575
-msgid "TC->SC"
-msgstr "TC->SC"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
-msgid "Smart Common Input Method platform "
-msgstr "SCIM platforma"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
-msgid ""
-"\n"
-"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-"\n"
-msgstr ""
-"\n"
-"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-"\n"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
-msgid ""
-":\n"
-"\n"
-msgstr ""
-":\n"
-"\n"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
-msgid ""
-"\n"
-"\n"
-msgstr ""
-"\n"
-"\n"
-
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
-msgid "Enable"
-msgstr "Stav"
-
-#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
-#. gtk_tree_view_column_set_fixed_width (column, 232);
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
-msgid "Name"
-msgstr "Název"
-
-#: ism/utils/scimstringview.c:201
-msgid "Cursor Position"
-msgstr "Pozice kurzoru"
-
-#: ism/utils/scimstringview.c:202
-msgid "The current position of the insertion cursor in chars."
-msgstr "Aktuální pozice vkládacího kurzoru mezi znaky."
-
-#: ism/utils/scimstringview.c:211
-msgid "Maximum length"
-msgstr "Maximální délka"
-
-#: ism/utils/scimstringview.c:212
-msgid "Maximum number of characters for this string view. Zero if no maximum."
-msgstr ""
-"Maximální počet znaků při zobrazení řetězce. Nula, pokud není nic nastaveno."
-
-#: ism/utils/scimstringview.c:221
-msgid "Maximum width"
-msgstr "Maximální šířka"
-
-#: ism/utils/scimstringview.c:222
-msgid "Maximum width of this string view."
-msgstr "Maximální šířka pohledu na řetězec."
-
-#: ism/utils/scimstringview.c:231
-msgid "Has Frame"
-msgstr "S rámem"
-
-#: ism/utils/scimstringview.c:232
-msgid "FALSE removes outside bevel from string view."
-msgstr "FALSE odstraní zkosení."
-
-#: ism/utils/scimstringview.c:239
-msgid "Draw cursor"
-msgstr "Vykreslit kurzor"
-
-#: ism/utils/scimstringview.c:240
-msgid "TRUE draw blinking cursor."
-msgstr "TRUE vykreslí blikající kurzor."
-
-#: ism/utils/scimstringview.c:247
-msgid "Auto move cursor"
-msgstr "Automatické přesunutí kurzoru"
-
-#: ism/utils/scimstringview.c:248
-msgid "TRUE auto move cursor position when mouse clicking."
-msgstr "TRUE automaticky přemístí kurzor při kliknutí myší."
-
-#: ism/utils/scimstringview.c:255
-#, fuzzy
-msgid "Forward button press/release event"
-msgstr "Předání událost stisknutí tlačítka"
-
-#: ism/utils/scimstringview.c:256
-#, fuzzy
-msgid "TRUE forward button press/release event to user program."
-msgstr "TRUE předá událost stisknutí tlačítka programu."
-
-#: ism/utils/scimstringview.c:263
-msgid "Auto resize the widget to fit the string"
-msgstr "Automatická změna velikosti widgetu podle řetězce"
-
-#: ism/utils/scimstringview.c:264
-msgid "TRUE Auto resize on."
-msgstr "TRUE povolí automatickou změnu velikosti."
-
-#: ism/utils/scimstringview.c:271
-msgid "Emit move_cursor signal when press/release the string"
-msgstr ""
-
-#: ism/utils/scimstringview.c:272
-#, fuzzy
-msgid "TRUE Emit move_cursor signal when press the string."
-msgstr "TRUE automaticky přemístí kurzor při kliknutí myší."
-
-#: ism/utils/scimstringview.c:279
-msgid "Width in chars"
-msgstr "Šířka znaků"
-
-#: ism/utils/scimstringview.c:280
-msgid "Number of characters to leave space for in the string view."
-msgstr "Počet znaků, pro které se v řetězci vynechá místo."
-
-#: ism/utils/scimstringview.c:289
-msgid "Scroll offset"
-msgstr "Scroll offset"
-
-#: ism/utils/scimstringview.c:290
-msgid "Number of pixels of the string view scrolled off the screen to the left"
-msgstr "Počet pixelů v zobrazeném řetězci při přesunu vlevo"
-
-#: ism/utils/scimstringview.c:299
-msgid "Text"
-msgstr "Text"
-
-#: ism/utils/scimstringview.c:300
-msgid "The contents of the string view"
-msgstr "Obsahy zobrazeného řetězce"
-
-#: ism/utils/scimkeyselection.cpp:161
-msgid "Selected _Keys:"
-msgstr "Zvolené _klávesy:"
-
-#: ism/utils/scimkeyselection.cpp:206
-msgid "Key Code:"
-msgstr "Kód klávesy:"
-
-#: ism/utils/scimkeyselection.cpp:224
-#, fuzzy
-msgid "....."
-msgstr "..."
-
-#: ism/utils/scimkeyselection.cpp:229
-msgid "Modifiers:"
-msgstr "Modifikátor:"
-
-#: ism/utils/scimkeyselection.cpp:242
-msgid "_Ctrl"
-msgstr "_Ctrl"
-
-#: ism/utils/scimkeyselection.cpp:246
-msgid "A_lt"
-msgstr "A_lt"
-
-#: ism/utils/scimkeyselection.cpp:250
-msgid "_Shift"
-msgstr "_Shift"
-
-#: ism/utils/scimkeyselection.cpp:254
-msgid "_Release"
-msgstr "_Uvolnit"
-
-#: ism/utils/scimkeyselection.cpp:264
-msgid "_Meta"
-msgstr "_Meta"
-
-#: ism/utils/scimkeyselection.cpp:268
-msgid "S_uper"
-msgstr "S_uper"
-
-#: ism/utils/scimkeyselection.cpp:272
-msgid "_Hyper"
-msgstr "_Hyper"
-
-#: ism/utils/scimkeyselection.cpp:337
-msgid "Please enter a Key Code first."
-msgstr "Zadejte prosím nejdřív kód klávesy."
-
-#: ism/utils/scimkeyselection.cpp:391
-#, fuzzy
-msgid ""
-"Press a key (or a key combination).\n"
-"This dialog will be closed \n"
-"when the key is released."
-msgstr ""
-"Stiskněte klávesu (nebo kombinaci kláves).\n"
-"Dialog se zavře po uvolnění kláves."
-
-#: ism/utils/scimkeyselection.cpp:395
-msgid "Grabbing a key."
-msgstr "Zachycení klávesy."
-
-#: ism/utils/scimkeyselection.cpp:686
-msgid "Key Selection"
-msgstr "Výběr kláves"
-
-#: ism/utils/scimtrayicon.c:108
-msgid "Orientation"
-msgstr "Orientace"
-
-#: ism/utils/scimtrayicon.c:109
-msgid "The orientation of the tray."
-msgstr "Orientace panelu."
-
-#. Normal Layout
-#: ism/demos/isf_layout_efl.cpp:184
-msgid "NORMAL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:184
-msgid "click to enter TEXT"
-msgstr ""
-
-#. Number Layout
-#: ism/demos/isf_layout_efl.cpp:188
-msgid "NUMBER LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:188
-msgid "click to enter NUMBER"
-msgstr ""
-
-#. Email Layout
-#: ism/demos/isf_layout_efl.cpp:192
-msgid "EMAIL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:192
-msgid "click to enter EMAIL"
-msgstr ""
-
-#. URL Layout
-#: ism/demos/isf_layout_efl.cpp:196
-msgid "URL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:196
-msgid "click to enter URL"
-msgstr ""
-
-#. Phonenumber Layout
-#: ism/demos/isf_layout_efl.cpp:200
-msgid "PHONENUMBER LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:200
-msgid "click to enter PHONENUMBER"
-msgstr ""
-
-#. IP Layout
-#: ism/demos/isf_layout_efl.cpp:204
-msgid "IP LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:204
-msgid "click to enter IP"
-msgstr ""
-
-#. Month Layout
-#: ism/demos/isf_layout_efl.cpp:208
-msgid "MONTH LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:208
-msgid "click to enter MONTH"
-msgstr ""
-
-#. Number Only Layout
-#: ism/demos/isf_layout_efl.cpp:212
-msgid "NUMBERONLY LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:212
-msgid "click to enter NUMBERONLY"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:230
-msgid "Layout"
-msgstr ""
-
-#: ism/demos/isf_demo_efl.cpp:140
-msgid "Previous"
-msgstr ""
-
-#. bundle_add(ad->data, "navi_btn_left", NULL);
-#: ism/demos/isf_demo_efl.cpp:142
-#, fuzzy
-msgid "Next"
-msgstr "Text"
-
-#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
-msgstr ""
-
-#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
-msgstr ""
-
-#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
-msgstr ""
-
-#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
-msgstr ""
-
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
-msgstr ""
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Výběr kláves"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Volby"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Němčina"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Angličtina/klávesnice"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Výběr kláves"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Výběr kláves"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Angličtina/klávesnice"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Volby"
-
-#, fuzzy
-#~ msgid "Keyboard"
-#~ msgstr "Angličtina/klávesnice"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amharština"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Vždy"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Volby"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Angličtina/klávesnice"
-
-#~ msgid "English/European"
-#~ msgstr "Angličtina/Evropa"
-
-#~ msgid "RAW CODE"
-#~ msgstr "RAW KÓD"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Klávesové zkratky:\n"
-#~ "\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " přepnutí mezi Multibyte a Unicode kódováním.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " zrušení vstupní metody.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Stav aktuální vstupní metody. Změnu provedete kliknutím."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Obecná nastavení"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Nastavení klávesový zkratek používaných moduly včetně X11, GTK, IMModule, "
-#~ "GTK IMModule, QT IMModule atd."
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Spouštění:"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Zvolte spouštěcí klávesy"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Klávesové události zapínající/vypínající SCIM vstupní metodu. Úpravu "
-#~ "provedete kliknutím na tlačítko vpravo."
-
-#~ msgid "Turn _On:"
-#~ msgstr "_Zapnout:"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Zvolte spouštěcí klávesy"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Klávesové události zapínající SCIM vstupní metodu. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "_Vypnout:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Zvolte vypínací klávesy"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Klávesové události vypínající SCIM vstupní metodu. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Další vstupní metoda:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Zvolte klávesy další vstupní metody"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Klávesové události přepínající na další vstupní metodu. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Předchozí vstupní metoda:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Zvolte klávesy předchozí vstupní metody"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Klávesové události přepnutí do předcházející vstupní metody. Úpravu "
-#~ "provedete kliknutím na tlačítko vpravo."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "_Zobrazit nabídku vstupní metody:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Zvolte klávesy zobrazení nabídky vstupní metody"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Klávesové události k zobrazení nabídky vstupní metody. Úpravu provedete "
-#~ "kliknutím na tlačítko vpravo."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Rozložení klávesnice:"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Zde můžete nastavit své rozložení klávesnice tak, aby zvolené vstupní "
-#~ "metody fungovaly korektně."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "_Vložit předpřipravený řetězec do klientského okna"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, zobrazí se předpřipravený řetězec přímo v "
-#~ "klientském vstupním okně než v nezávislém plovoucím okně."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "_Zdílet vstupní metody u všech aplikací"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Pokud tuto volbu zaškrtnete, bude se u všech aplikací používat pouze "
-#~ "jeden typ vstupní metody. V opačném případě se u každé aplikace může "
-#~ "použije jiná."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Klávesové zkratky"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Zde můžete povolit/zakázat vstupní metody a nastavit jejich klávesové "
-#~ "zkratky."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Služby nainstalované vstupní metody:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Upravit _klávesové zkratky"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Úprava klávesových zkratek spojených se zvolenou vstupní metodou."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Zvolit _filtry"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Zvolte filtry spojené s touto vstupní metodou."
-
-#~ msgid "_Expand"
-#~ msgstr "_Rozbalit"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Zobrazení všech jazykových kategorií."
-
-#~ msgid "_Collapse"
-#~ msgstr "_Zabalit"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Skrytí všech jazykových kategorií."
-
-#~ msgid "E_nable All"
-#~ msgstr "_Povolit vše"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Povolit všechny vstupní metody."
-
-#~ msgid "_Disable All"
-#~ msgstr "_Zakázat vše"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Zakázat všechny vstupní metody."
-
-#~ msgid "Filters"
-#~ msgstr "Filtry"
-
-#~ msgid "Languages"
-#~ msgstr "Jazyky"
-
-#~ msgid "Description"
-#~ msgstr "Popis"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Upravit klávesové zkratky %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Zvolte filtry pro %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Posunout na_horu"
-
-#~ msgid "Move _Down"
-#~ msgstr "Posunout _dolů"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Démon zapuštěný do panelu založený na knihovně GTK+-2.x."
-
-#~ msgid "On demand"
-#~ msgstr "Na požádání"
-
-#~ msgid "Never"
-#~ msgstr "Nikdy"
-
-#~ msgid "ToolBar"
-#~ msgstr "Nástrojová lišta"
-
-#~ msgid "_Show:"
-#~ msgstr "_Zobrazit:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Automatické přicvaknutí"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Zobrazit ikonu _vstupní metody"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Zobrazit _název vstupní metody"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Délka _zobrazení::"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Zobrazit ikonu _přilepení"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Zobrazit ikonu _nabídky"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Zobrazit ikonu _nápovědy"
-
-#~ msgid "Show _property label"
-#~ msgstr "Zobrazit _vlastnosti"
-
-#~ msgid "Input window"
-#~ msgstr "Vstupní okno"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "_Vložená vyhledávací tabulka"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "V_ertikální vyhledávací tabulka"
-
-#~ msgid "Misc"
-#~ msgstr "Různé"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Pohltit ikonu do panelu"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Přišpendlit _okno"
-
-#~ msgid "_Font:"
-#~ msgstr "_Písmo:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Pokud jste zvolili \"Vždy\", bude lišta vždy zobrazena. V případě \"Na "
-#~ "požádání\" bude vždy po deaktivaci SCIM skryta. U volby \"Nikdy\" se "
-#~ "nezobrazí nikdy."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, bude nástrojová lišta přichycena k okraji "
-#~ "pracovní plochy."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Lišta se skryje po uplynutí zadaného času. Tato volba je platná pouze "
-#~ "pokud jste současně zvolili \"Vždy zobrazit'\". Funkci vypnete nastavením "
-#~ "na hodnotu 0."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona metody."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, objeví se na liště název vstupní metody."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona přišpendlení."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona nabídky."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr "Pokud zvolíte tuto možnost, objeví se na liště ikona nápovědy."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, objeví se na liště ikona vlastností vstupní "
-#~ "metody."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, připojí se vstupního okna vyhledávací tabulka."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, zobrazí se vyhledávací tabulka vertikálně."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr "Pokud zvolíte tuto možnost, zapustí se ikona programu do panelu."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Pokud zvolíte tuto možnost, lišta nástrojů, vstupní okno a vyhledávací "
-#~ "tabulka se přišpendlí do původní pozice."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr "Nastavení písma v okně vstupu a ve vyhledávací tabulce."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Zvolte písmo rozhraní"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Rozhraní"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Panel"
-
-#~ msgid "Extra"
-#~ msgstr "Rozšíření"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Nastavení vstupní metody SCIM"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ "<span size=\"20000\">Smart Common Input Method platforma</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Grafické rozhraní</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Nastavení %s modulů.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Chcete skutečně ukončit nastavení SCIM?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Ne všechna nastavení lze zavést za běhu. Nezapomeňte SCIM restartovat."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Nastavit SCIM"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "Grafické rozhraní založené na knihovně GTK Widget."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Nástroj pro nastavení Smart Common Input Method platformy"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Nápověda SCIM"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Přišpendlit/odšpendlit vstupní okno a nástrojovou lištu."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Zobrazí krátkou nápovědu o aktuální vstupní metodě."
-
-#~ msgid "Show command menu."
-#~ msgstr "Zobrazí nabídku příkazů."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Obnovit konfiguraci"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Přišpendlit okno"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Skrýt lištu"
-
-#~ msgid "Help ..."
-#~ msgstr "Nápověda..."
-
-#~ msgid "Exit"
-#~ msgstr "Ukončit"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
msgstr ""
"Project-Id-Version: de\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\n"
"PO-Revision-Date: 2005-12-16 14:10+0100\n"
"Last-Translator: Jan Hefti <j.hefti@chinaboard.de>\n"
"Language-Team: German <scim-devel@lists.sourceforge.net>\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: KBabel 1.11\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "Danish"
msgstr "Dänisch"
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr "Deutsch"
msgid "Finnish"
msgstr "Finnisch"
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr "Französisch"
msgid "Icelandic"
msgstr "Isländisch"
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr "Italienisch"
msgid "Nepali"
msgstr "Nepalesisch"
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr "Niederländisch"
msgstr "Polnisch"
#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr "Portugiesisch"
msgid "Chinese (Traditional)"
msgstr "Chinesisch (traditionell)"
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:806
#, fuzzy
msgid "Dutch (Belgian)"
msgid "English (Philippines)"
msgstr "Englisch (Großbritannien)"
-#: ism/src/scim_utility.cpp:819
-#, fuzzy
-msgid "French (Standard)"
-msgstr "Französisch (Kanada)"
-
#: ism/src/scim_utility.cpp:820
#, fuzzy
msgid "French (Belgian)"
msgid "French (Monaco)"
msgstr "Französisch (Kanada)"
-#: ism/src/scim_utility.cpp:825
-#, fuzzy
-msgid "German (Standard)"
-msgstr "Deutsch (mit deadkeys)"
-
#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr "Deutsch (Schweiz)"
msgid "German (Liechtenstein)"
msgstr "Deutsch (Schweiz)"
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:831
#, fuzzy
msgid "Italian (Swiss)"
msgid "Portuguese (Brazilian)"
msgstr "Portugiesisch (Brasilien)"
-#: ism/src/scim_utility.cpp:833
-#, fuzzy
-msgid "Portuguese (Standard)"
-msgstr "Portugiesisch (Brasilien)"
-
#: ism/src/scim_utility.cpp:834
#, fuzzy
msgid "Spanish (Traditional Sort)"
msgstr "Text"
#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
+msgid "ISF Demo"
msgstr ""
#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
+msgid "Entry Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
+msgid "Label Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
+msgid "Event"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
msgstr ""
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Tastenauswahl"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Optionen"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Deutsch"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Deutsch/Tastatur"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Tastenauswahl"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Tastenauswahl"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Deutsch/Tastatur"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Optionen"
-
-#, fuzzy
-#~ msgid "Keyboard"
-#~ msgstr "Deutsch/Tastatur"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amharisch"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Immer"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Optionen"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Deutsch/Tastatur"
-
#~ msgid "English/European"
#~ msgstr "Deutsch/Europäisch"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\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"
"Language: \n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "Danish"
msgstr ""
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr ""
msgid "Finnish"
msgstr ""
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr ""
msgid "Icelandic"
msgstr ""
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr ""
msgid "Nepali"
msgstr ""
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr ""
msgstr ""
#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr ""
msgid "Chinese (Traditional)"
msgstr ""
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:806
msgid "Dutch (Belgian)"
msgstr ""
msgid "English (Philippines)"
msgstr ""
-#: ism/src/scim_utility.cpp:819
-msgid "French (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:820
msgid "French (Belgian)"
msgstr ""
msgid "French (Monaco)"
msgstr ""
-#: ism/src/scim_utility.cpp:825
-msgid "German (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr ""
msgid "German (Liechtenstein)"
msgstr ""
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:831
msgid "Italian (Swiss)"
msgstr ""
msgid "Portuguese (Brazilian)"
msgstr ""
-#: ism/src/scim_utility.cpp:833
-msgid "Portuguese (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:834
msgid "Spanish (Traditional Sort)"
msgstr ""
msgstr ""
#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
+msgid "ISF Demo"
msgstr ""
#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
+msgid "Entry Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
+msgid "Label Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
+msgid "Event"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
msgstr ""
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
+#: ism/src/scim_utility.cpp:702
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
+msgid "English/Keyboard"
+msgstr ""
+
+#. return WideString ();
+#: ism/src/scim_compose_key.cpp:145
+msgid "English input service"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:703
+msgid "Amharic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:704
+msgid "Arabic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
+msgid "Arabic (Egypt)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
+msgid "Arabic (Lebanon)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:707
+msgid "Assamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
+msgid "Azerbaijani"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:709
+msgid "Belarusian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
+msgid "Bulgarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
+#: ism/src/scim_utility.cpp:914
+msgid "Bengali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:713
+msgid "Bengali (India)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:714
+msgid "Tibetan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:715
+msgid "Bosnian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
+msgid "Catalan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
+#: ism/src/scim_keyboard_layout_data.h:4596
+msgid "Czech"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
+msgid "Welsh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
+#: ism/src/scim_keyboard_layout_data.h:4598
+msgid "Danish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
+msgid "German"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:721
+msgid "Divehi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
+#: ism/src/scim_keyboard_layout_data.h:4609
+msgid "Greek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:723
+msgid "English"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
+msgid "English (Australian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
+msgid "English (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:726
+msgid "English (British)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:727
+msgid "English (Ireland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:728
+msgid "English (American)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
+#: ism/src/scim_keyboard_layout_data.h:4622
+msgid "Spanish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:731
+msgid "Spanish (Mexico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
+#: ism/src/scim_keyboard_layout_data.h:4601
+msgid "Estonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
+msgid "Basque"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:734
+msgid "Persian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
+#: ism/src/scim_keyboard_layout_data.h:4602
+msgid "Finnish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
+msgid "French"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
+msgid "Irish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
+msgid "Galician"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
+msgid "Gujarati"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
+#: ism/src/scim_utility.cpp:891
+msgid "Hebrew"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
+msgid "Hindi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
+msgid "Croatian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
+#: ism/src/scim_keyboard_layout_data.h:4610
+msgid "Hungarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:744
+msgid "Armenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:745
+msgid "Interlingua"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:746
+msgid "Indonesian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
+#: ism/src/scim_keyboard_layout_data.h:4628
+msgid "Icelandic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
+msgid "Italian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
+#: ism/src/scim_keyboard_layout_data.h:4612
+msgid "Japanese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
+msgid "Georgian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
+msgid "Kazakh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:753
+msgid "Cambodian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:754
+msgid "Kannada"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
+msgid "Korean"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:756
+msgid "Laothian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
+#: ism/src/scim_keyboard_layout_data.h:4629
+msgid "Lithuanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
+msgid "Latvian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
+msgid "Macedonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
+msgid "Malayalam"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:761
+msgid "Mongolian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
+msgid "Marathi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:763
+msgid "Malay"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:764
+msgid "Burmese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:765
+msgid "Nepali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
+msgid "Dutch"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:767
+msgid "Norwegian (Nynorsk)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:768
+msgid "Norwegian (Bokmal)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:769
+msgid "Oriya"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
+msgid "Punjabi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
+#: ism/src/scim_keyboard_layout_data.h:4614
+msgid "Polish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
+msgid "Portuguese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
+msgid "Portuguese (Brazil)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
+msgid "Romanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
+#: ism/src/scim_keyboard_layout_data.h:4618
+msgid "Russian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
+msgid "Sinhala"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
+#: ism/src/scim_keyboard_layout_data.h:4619
+msgid "Slovak"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
+#: ism/src/scim_keyboard_layout_data.h:4621
+msgid "Slovenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:780
+msgid "Albanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
+#: ism/src/scim_utility.cpp:783
+msgid "Serbian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
+#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
+msgid "Swedish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
+msgid "Swedish (Finland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
+msgid "Tamil"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
+msgid "Telugu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
+msgid "Thai"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
+#: ism/src/scim_keyboard_layout_data.h:4626
+msgid "Turkish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:791
+msgid "Uighur"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
+#: ism/src/scim_keyboard_layout_data.h:4630
+msgid "Ukrainian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
+msgid "Urdu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:794
+msgid "Uzbek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
+msgid "Vietnamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:796
+msgid "Walloon"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
+msgid "Yiddish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:799
+msgid "Chinese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
+msgid "Chinese (Simplified)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:801
+msgid "Chinese (Hongkong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:803
+msgid "Chinese (Traditional)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:806
+msgid "Dutch (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:807
+msgid "English (United States)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:808
+msgid "English (United Kingdom)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:811
+msgid "English (New Zealand)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:812
+msgid "English (Irish)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:813
+msgid "English (South Africa)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:814
+msgid "English (Jamaica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:815
+msgid "English (Belize)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:816
+msgid "English (Trinidad)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:817
+msgid "English (Zimbabwe)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:818
+msgid "English (Philippines)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:820
+msgid "French (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
+msgid "French (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:822
+msgid "French (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:823
+msgid "French (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:824
+msgid "French (Monaco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
+msgid "German (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:827
+msgid "German (Austrian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:828
+msgid "German (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:829
+msgid "German (Liechtenstein)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:831
+msgid "Italian (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:832
+msgid "Portuguese (Brazilian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:834
+msgid "Spanish (Traditional Sort)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:835
+msgid "Spanish (Mexican)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:836
+msgid "Spanish (Guatemala)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:837
+msgid "Spanish (Costa Rica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:838
+msgid "Spanish (Panama)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:839
+msgid "Spanish (Dominican Republic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:840
+msgid "Spanish (Venezuela)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:841
+msgid "Spanish (Colombia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:842
+msgid "Spanish (Peru)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:843
+msgid "Spanish (Argentina)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:844
+msgid "Spanish (Ecuador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:845
+msgid "Spanish (Chile)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:846
+msgid "Spanish (Uruguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:847
+msgid "Spanish (Paraguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:848
+msgid "Spanish (Bolivia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:849
+msgid "Spanish (El Salvador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:850
+msgid "Spanish (Honduras)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:851
+msgid "Spanish (Nicaragua)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:852
+msgid "Spanish (Puerto Rico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:856
+msgid "Afrikaans"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:859
+msgid "Malay (Malaysia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:860
+msgid "Malay (Brunei Darussalam)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
+msgid "Norwegian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:868
+msgid "Serbian (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:879
+msgid "Serbian (Cyrillic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:882
+msgid "Uzbek (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:885
+msgid "Chinese (Taiwan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:886
+msgid "Chinese (Hong Kong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:887
+msgid "Chinese (Macau)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:888
+msgid "Chinese (PRC)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:889
+msgid "Chinese (Singapore)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:892
+msgid "Arabic (Saudi Arabia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:893
+msgid "Arabic (Iraq)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:895
+msgid "Arabic (Libya)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:896
+msgid "Arabic (Algeria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:897
+msgid "Arabic (Morocco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:898
+msgid "Arabic (Tunisia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:899
+msgid "Arabic (Oman)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:900
+msgid "Arabic (Yemen)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:901
+msgid "Arabic (Syria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:902
+msgid "Arabic (Jordan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:904
+msgid "Arabic (Kuwait)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:905
+msgid "Arabic (UAE)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:906
+msgid "Arabic (Bahrain)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:907
+msgid "Arabic (Qatar)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:921
+msgid "Hausa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:925
+msgid "Xhosa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:926
+msgid "Yoruba"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:927
+msgid "Zulu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:1025
+msgid "Other"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4592
+#: ism/modules/imengine/scim_socket_imengine.cpp:409
+#: ism/modules/imengine/scim_socket_imengine.cpp:466
+#: ism/modules/imengine/scim_socket_imengine.cpp:496
+#: ism/modules/imengine/scim_socket_imengine.cpp:526
+msgid "Unknown"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4593
+msgid "English (US)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4594
+msgid "Belgian"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4597
+msgid "Czech (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4600
+msgid "Dvorak"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4605
+msgid "French (Switzerland)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4607
+msgid "German (with deadkeys)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4617
+msgid "Portuguese (Brazil US accents)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4620
+msgid "Slovak (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4623
+msgid "Spanish (CP 850)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4624
+msgid "Spanish (Latin America)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4627
+msgid "English (UK)"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:57
+msgid "Simplified-Traditional Chinese Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:60
+msgid "Convert between Simplified Chinese and Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:71
+msgid "SC-TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:73
+#: ism/modules/filter/scim_sctc_filter.cpp:78
+msgid "Simplified-Traditional Chinese conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:76
+msgid "No Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:81
+msgid "Simplified to Traditional"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:83
+msgid "Convert Simplified Chinese to Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:86
+msgid "Traditional to Simplified"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:88
+msgid "Convert Traditional Chinese to Simplified Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:300
+msgid "James Su <suzhe@tsinghua.org.cn>"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:425
+#: ism/modules/filter/scim_sctc_filter.cpp:555
+#: ism/modules/filter/scim_sctc_filter.cpp:571
+msgid "SC->TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:431
+#: ism/modules/filter/scim_sctc_filter.cpp:559
+#: ism/modules/filter/scim_sctc_filter.cpp:575
+msgid "TC->SC"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
+msgid "Smart Common Input Method platform "
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
+msgid ""
+"\n"
+"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
+msgid ""
+":\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
+msgid ""
+"\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
+msgid "Enable"
+msgstr ""
+
+#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
+#. gtk_tree_view_column_set_fixed_width (column, 232);
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
+msgid "Name"
+msgstr ""
+
+#: ism/utils/scimstringview.c:201
+msgid "Cursor Position"
+msgstr ""
+
+#: ism/utils/scimstringview.c:202
+msgid "The current position of the insertion cursor in chars."
+msgstr ""
+
+#: ism/utils/scimstringview.c:211
+msgid "Maximum length"
+msgstr ""
+
+#: ism/utils/scimstringview.c:212
+msgid "Maximum number of characters for this string view. Zero if no maximum."
+msgstr ""
+
+#: ism/utils/scimstringview.c:221
+msgid "Maximum width"
+msgstr ""
+
+#: ism/utils/scimstringview.c:222
+msgid "Maximum width of this string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:231
+msgid "Has Frame"
+msgstr ""
+
+#: ism/utils/scimstringview.c:232
+msgid "FALSE removes outside bevel from string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:239
+msgid "Draw cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:240
+msgid "TRUE draw blinking cursor."
+msgstr ""
+
+#: ism/utils/scimstringview.c:247
+msgid "Auto move cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:248
+msgid "TRUE auto move cursor position when mouse clicking."
+msgstr ""
+
+#: ism/utils/scimstringview.c:255
+msgid "Forward button press/release event"
+msgstr ""
+
+#: ism/utils/scimstringview.c:256
+msgid "TRUE forward button press/release event to user program."
+msgstr ""
+
+#: ism/utils/scimstringview.c:263
+msgid "Auto resize the widget to fit the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:264
+msgid "TRUE Auto resize on."
+msgstr ""
+
+#: ism/utils/scimstringview.c:271
+msgid "Emit move_cursor signal when press/release the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:272
+msgid "TRUE Emit move_cursor signal when press the string."
+msgstr ""
+
+#: ism/utils/scimstringview.c:279
+msgid "Width in chars"
+msgstr ""
+
+#: ism/utils/scimstringview.c:280
+msgid "Number of characters to leave space for in the string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:289
+msgid "Scroll offset"
+msgstr ""
+
+#: ism/utils/scimstringview.c:290
+msgid "Number of pixels of the string view scrolled off the screen to the left"
+msgstr ""
+
+#: ism/utils/scimstringview.c:299
+msgid "Text"
+msgstr ""
+
+#: ism/utils/scimstringview.c:300
+msgid "The contents of the string view"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:161
+msgid "Selected _Keys:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:206
+msgid "Key Code:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:224
+msgid "....."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:229
+msgid "Modifiers:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:242
+msgid "_Ctrl"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:246
+msgid "A_lt"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:250
+msgid "_Shift"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:254
+msgid "_Release"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:264
+msgid "_Meta"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:268
+msgid "S_uper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:272
+msgid "_Hyper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:337
+msgid "Please enter a Key Code first."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:391
+msgid ""
+"Press a key (or a key combination).\n"
+"This dialog will be closed \n"
+"when the key is released."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:395
+msgid "Grabbing a key."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:686
+msgid "Key Selection"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:108
+msgid "Orientation"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:109
+msgid "The orientation of the tray."
+msgstr ""
+
+#. Normal Layout
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "NORMAL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "click to enter TEXT"
+msgstr ""
+
+#. Number Layout
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "NUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "click to enter NUMBER"
+msgstr ""
+
+#. Email Layout
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "EMAIL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "click to enter EMAIL"
+msgstr ""
+
+#. URL Layout
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "URL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "click to enter URL"
+msgstr ""
+
+#. Phonenumber Layout
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "PHONENUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "click to enter PHONENUMBER"
+msgstr ""
+
+#. IP Layout
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "IP LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "click to enter IP"
+msgstr ""
+
+#. Month Layout
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "MONTH LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "click to enter MONTH"
+msgstr ""
+
+#. Number Only Layout
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "NUMBERONLY LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "click to enter NUMBERONLY"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:230
+msgid "Layout"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:140
+msgid "Previous"
+msgstr ""
+
+#. bundle_add(ad->data, "navi_btn_left", NULL);
+#: ism/demos/isf_demo_efl.cpp:142
+msgid "Next"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:196
+msgid "ISF Demo"
+msgstr ""
+
+#: ism/demos/isf_entry_event_efl.cpp:151
+msgid "Entry Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:232
+msgid "Label Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:262
+msgid "Event"
+msgstr ""
+
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
+msgstr ""
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
+#: ism/src/scim_utility.cpp:702
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
+msgid "English/Keyboard"
+msgstr ""
+
+#. return WideString ();
+#: ism/src/scim_compose_key.cpp:145
+msgid "English input service"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:703
+msgid "Amharic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:704
+msgid "Arabic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
+msgid "Arabic (Egypt)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
+msgid "Arabic (Lebanon)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:707
+msgid "Assamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
+msgid "Azerbaijani"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:709
+msgid "Belarusian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
+msgid "Bulgarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
+#: ism/src/scim_utility.cpp:914
+msgid "Bengali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:713
+msgid "Bengali (India)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:714
+msgid "Tibetan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:715
+msgid "Bosnian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
+msgid "Catalan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
+#: ism/src/scim_keyboard_layout_data.h:4596
+msgid "Czech"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
+msgid "Welsh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
+#: ism/src/scim_keyboard_layout_data.h:4598
+msgid "Danish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
+msgid "German"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:721
+msgid "Divehi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
+#: ism/src/scim_keyboard_layout_data.h:4609
+msgid "Greek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:723
+msgid "English"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
+msgid "English (Australian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
+msgid "English (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:726
+msgid "English (British)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:727
+msgid "English (Ireland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:728
+msgid "English (American)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
+#: ism/src/scim_keyboard_layout_data.h:4622
+msgid "Spanish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:731
+msgid "Spanish (Mexico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
+#: ism/src/scim_keyboard_layout_data.h:4601
+msgid "Estonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
+msgid "Basque"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:734
+msgid "Persian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
+#: ism/src/scim_keyboard_layout_data.h:4602
+msgid "Finnish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
+msgid "French"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
+msgid "Irish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
+msgid "Galician"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
+msgid "Gujarati"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
+#: ism/src/scim_utility.cpp:891
+msgid "Hebrew"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
+msgid "Hindi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
+msgid "Croatian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
+#: ism/src/scim_keyboard_layout_data.h:4610
+msgid "Hungarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:744
+msgid "Armenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:745
+msgid "Interlingua"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:746
+msgid "Indonesian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
+#: ism/src/scim_keyboard_layout_data.h:4628
+msgid "Icelandic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
+msgid "Italian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
+#: ism/src/scim_keyboard_layout_data.h:4612
+msgid "Japanese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
+msgid "Georgian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
+msgid "Kazakh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:753
+msgid "Cambodian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:754
+msgid "Kannada"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
+msgid "Korean"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:756
+msgid "Laothian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
+#: ism/src/scim_keyboard_layout_data.h:4629
+msgid "Lithuanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
+msgid "Latvian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
+msgid "Macedonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
+msgid "Malayalam"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:761
+msgid "Mongolian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
+msgid "Marathi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:763
+msgid "Malay"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:764
+msgid "Burmese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:765
+msgid "Nepali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
+msgid "Dutch"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:767
+msgid "Norwegian (Nynorsk)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:768
+msgid "Norwegian (Bokmal)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:769
+msgid "Oriya"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
+msgid "Punjabi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
+#: ism/src/scim_keyboard_layout_data.h:4614
+msgid "Polish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
+msgid "Portuguese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
+msgid "Portuguese (Brazil)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
+msgid "Romanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
+#: ism/src/scim_keyboard_layout_data.h:4618
+msgid "Russian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
+msgid "Sinhala"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
+#: ism/src/scim_keyboard_layout_data.h:4619
+msgid "Slovak"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
+#: ism/src/scim_keyboard_layout_data.h:4621
+msgid "Slovenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:780
+msgid "Albanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
+#: ism/src/scim_utility.cpp:783
+msgid "Serbian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
+#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
+msgid "Swedish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
+msgid "Swedish (Finland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
+msgid "Tamil"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
+msgid "Telugu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
+msgid "Thai"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
+#: ism/src/scim_keyboard_layout_data.h:4626
+msgid "Turkish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:791
+msgid "Uighur"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
+#: ism/src/scim_keyboard_layout_data.h:4630
+msgid "Ukrainian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
+msgid "Urdu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:794
+msgid "Uzbek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
+msgid "Vietnamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:796
+msgid "Walloon"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
+msgid "Yiddish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:799
+msgid "Chinese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
+msgid "Chinese (Simplified)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:801
+msgid "Chinese (Hongkong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:803
+msgid "Chinese (Traditional)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:806
+msgid "Dutch (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:807
+msgid "English (United States)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:808
+msgid "English (United Kingdom)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:811
+msgid "English (New Zealand)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:812
+msgid "English (Irish)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:813
+msgid "English (South Africa)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:814
+msgid "English (Jamaica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:815
+msgid "English (Belize)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:816
+msgid "English (Trinidad)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:817
+msgid "English (Zimbabwe)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:818
+msgid "English (Philippines)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:820
+msgid "French (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
+msgid "French (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:822
+msgid "French (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:823
+msgid "French (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:824
+msgid "French (Monaco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
+msgid "German (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:827
+msgid "German (Austrian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:828
+msgid "German (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:829
+msgid "German (Liechtenstein)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:831
+msgid "Italian (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:832
+msgid "Portuguese (Brazilian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:834
+msgid "Spanish (Traditional Sort)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:835
+msgid "Spanish (Mexican)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:836
+msgid "Spanish (Guatemala)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:837
+msgid "Spanish (Costa Rica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:838
+msgid "Spanish (Panama)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:839
+msgid "Spanish (Dominican Republic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:840
+msgid "Spanish (Venezuela)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:841
+msgid "Spanish (Colombia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:842
+msgid "Spanish (Peru)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:843
+msgid "Spanish (Argentina)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:844
+msgid "Spanish (Ecuador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:845
+msgid "Spanish (Chile)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:846
+msgid "Spanish (Uruguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:847
+msgid "Spanish (Paraguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:848
+msgid "Spanish (Bolivia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:849
+msgid "Spanish (El Salvador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:850
+msgid "Spanish (Honduras)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:851
+msgid "Spanish (Nicaragua)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:852
+msgid "Spanish (Puerto Rico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:856
+msgid "Afrikaans"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:859
+msgid "Malay (Malaysia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:860
+msgid "Malay (Brunei Darussalam)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
+msgid "Norwegian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:868
+msgid "Serbian (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:879
+msgid "Serbian (Cyrillic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:882
+msgid "Uzbek (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:885
+msgid "Chinese (Taiwan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:886
+msgid "Chinese (Hong Kong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:887
+msgid "Chinese (Macau)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:888
+msgid "Chinese (PRC)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:889
+msgid "Chinese (Singapore)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:892
+msgid "Arabic (Saudi Arabia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:893
+msgid "Arabic (Iraq)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:895
+msgid "Arabic (Libya)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:896
+msgid "Arabic (Algeria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:897
+msgid "Arabic (Morocco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:898
+msgid "Arabic (Tunisia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:899
+msgid "Arabic (Oman)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:900
+msgid "Arabic (Yemen)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:901
+msgid "Arabic (Syria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:902
+msgid "Arabic (Jordan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:904
+msgid "Arabic (Kuwait)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:905
+msgid "Arabic (UAE)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:906
+msgid "Arabic (Bahrain)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:907
+msgid "Arabic (Qatar)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:921
+msgid "Hausa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:925
+msgid "Xhosa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:926
+msgid "Yoruba"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:927
+msgid "Zulu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:1025
+msgid "Other"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4592
+#: ism/modules/imengine/scim_socket_imengine.cpp:409
+#: ism/modules/imengine/scim_socket_imengine.cpp:466
+#: ism/modules/imengine/scim_socket_imengine.cpp:496
+#: ism/modules/imengine/scim_socket_imengine.cpp:526
+msgid "Unknown"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4593
+msgid "English (US)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4594
+msgid "Belgian"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4597
+msgid "Czech (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4600
+msgid "Dvorak"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4605
+msgid "French (Switzerland)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4607
+msgid "German (with deadkeys)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4617
+msgid "Portuguese (Brazil US accents)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4620
+msgid "Slovak (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4623
+msgid "Spanish (CP 850)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4624
+msgid "Spanish (Latin America)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4627
+msgid "English (UK)"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:57
+msgid "Simplified-Traditional Chinese Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:60
+msgid "Convert between Simplified Chinese and Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:71
+msgid "SC-TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:73
+#: ism/modules/filter/scim_sctc_filter.cpp:78
+msgid "Simplified-Traditional Chinese conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:76
+msgid "No Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:81
+msgid "Simplified to Traditional"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:83
+msgid "Convert Simplified Chinese to Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:86
+msgid "Traditional to Simplified"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:88
+msgid "Convert Traditional Chinese to Simplified Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:300
+msgid "James Su <suzhe@tsinghua.org.cn>"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:425
+#: ism/modules/filter/scim_sctc_filter.cpp:555
+#: ism/modules/filter/scim_sctc_filter.cpp:571
+msgid "SC->TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:431
+#: ism/modules/filter/scim_sctc_filter.cpp:559
+#: ism/modules/filter/scim_sctc_filter.cpp:575
+msgid "TC->SC"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
+msgid "Smart Common Input Method platform "
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
+msgid ""
+"\n"
+"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
+msgid ""
+":\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
+msgid ""
+"\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
+msgid "Enable"
+msgstr ""
+
+#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
+#. gtk_tree_view_column_set_fixed_width (column, 232);
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
+msgid "Name"
+msgstr ""
+
+#: ism/utils/scimstringview.c:201
+msgid "Cursor Position"
+msgstr ""
+
+#: ism/utils/scimstringview.c:202
+msgid "The current position of the insertion cursor in chars."
+msgstr ""
+
+#: ism/utils/scimstringview.c:211
+msgid "Maximum length"
+msgstr ""
+
+#: ism/utils/scimstringview.c:212
+msgid "Maximum number of characters for this string view. Zero if no maximum."
+msgstr ""
+
+#: ism/utils/scimstringview.c:221
+msgid "Maximum width"
+msgstr ""
+
+#: ism/utils/scimstringview.c:222
+msgid "Maximum width of this string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:231
+msgid "Has Frame"
+msgstr ""
+
+#: ism/utils/scimstringview.c:232
+msgid "FALSE removes outside bevel from string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:239
+msgid "Draw cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:240
+msgid "TRUE draw blinking cursor."
+msgstr ""
+
+#: ism/utils/scimstringview.c:247
+msgid "Auto move cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:248
+msgid "TRUE auto move cursor position when mouse clicking."
+msgstr ""
+
+#: ism/utils/scimstringview.c:255
+msgid "Forward button press/release event"
+msgstr ""
+
+#: ism/utils/scimstringview.c:256
+msgid "TRUE forward button press/release event to user program."
+msgstr ""
+
+#: ism/utils/scimstringview.c:263
+msgid "Auto resize the widget to fit the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:264
+msgid "TRUE Auto resize on."
+msgstr ""
+
+#: ism/utils/scimstringview.c:271
+msgid "Emit move_cursor signal when press/release the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:272
+msgid "TRUE Emit move_cursor signal when press the string."
+msgstr ""
+
+#: ism/utils/scimstringview.c:279
+msgid "Width in chars"
+msgstr ""
+
+#: ism/utils/scimstringview.c:280
+msgid "Number of characters to leave space for in the string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:289
+msgid "Scroll offset"
+msgstr ""
+
+#: ism/utils/scimstringview.c:290
+msgid "Number of pixels of the string view scrolled off the screen to the left"
+msgstr ""
+
+#: ism/utils/scimstringview.c:299
+msgid "Text"
+msgstr ""
+
+#: ism/utils/scimstringview.c:300
+msgid "The contents of the string view"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:161
+msgid "Selected _Keys:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:206
+msgid "Key Code:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:224
+msgid "....."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:229
+msgid "Modifiers:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:242
+msgid "_Ctrl"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:246
+msgid "A_lt"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:250
+msgid "_Shift"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:254
+msgid "_Release"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:264
+msgid "_Meta"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:268
+msgid "S_uper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:272
+msgid "_Hyper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:337
+msgid "Please enter a Key Code first."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:391
+msgid ""
+"Press a key (or a key combination).\n"
+"This dialog will be closed \n"
+"when the key is released."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:395
+msgid "Grabbing a key."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:686
+msgid "Key Selection"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:108
+msgid "Orientation"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:109
+msgid "The orientation of the tray."
+msgstr ""
+
+#. Normal Layout
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "NORMAL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "click to enter TEXT"
+msgstr ""
+
+#. Number Layout
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "NUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "click to enter NUMBER"
+msgstr ""
+
+#. Email Layout
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "EMAIL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "click to enter EMAIL"
+msgstr ""
+
+#. URL Layout
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "URL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "click to enter URL"
+msgstr ""
+
+#. Phonenumber Layout
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "PHONENUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "click to enter PHONENUMBER"
+msgstr ""
+
+#. IP Layout
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "IP LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "click to enter IP"
+msgstr ""
+
+#. Month Layout
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "MONTH LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "click to enter MONTH"
+msgstr ""
+
+#. Number Only Layout
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "NUMBERONLY LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "click to enter NUMBERONLY"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:230
+msgid "Layout"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:140
+msgid "Previous"
+msgstr ""
+
+#. bundle_add(ad->data, "navi_btn_left", NULL);
+#: ism/demos/isf_demo_efl.cpp:142
+msgid "Next"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:196
+msgid "ISF Demo"
+msgstr ""
+
+#: ism/demos/isf_entry_event_efl.cpp:151
+msgid "Entry Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:232
+msgid "Label Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:262
+msgid "Event"
+msgstr ""
+
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
+msgstr ""
+++ /dev/null
-# Finnish translation for scim
-# Copyright (c) (c) 2006 Canonical Ltd, and Rosetta Contributors 2006
-# This file is distributed under the same license as the scim package.
-# Timo Jyrinki <timo.jyrinki@iki.fi>, 2006.
-# note: GFTT is at http://www.gnome.fi/
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: scim\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
-"PO-Revision-Date: 2006-05-24 16:51+0000\n"
-"Last-Translator: Timo Jyrinki <timo.jyrinki@iki.fi>\n"
-"Language-Team: Finnish <gnome-fi-laatu@lists.sourceforge.net>\n"
-"Language: fi\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
-#: ism/src/scim_utility.cpp:702
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
-msgid "English/Keyboard"
-msgstr "englanti/näppäimistö"
-
-#. return WideString ();
-#: ism/src/scim_compose_key.cpp:145
-#, fuzzy
-msgid "English input service"
-msgstr "englanti (amerikanenglanti)"
-
-#: ism/src/scim_utility.cpp:703
-msgid "Amharic"
-msgstr "amhara"
-
-#: ism/src/scim_utility.cpp:704
-msgid "Arabic"
-msgstr "arabia"
-
-#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
-msgid "Arabic (Egypt)"
-msgstr "arabia (Egypti)"
-
-#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
-msgid "Arabic (Lebanon)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:707
-msgid "Assamese"
-msgstr "assami"
-
-#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
-msgid "Azerbaijani"
-msgstr "azeri"
-
-#: ism/src/scim_utility.cpp:709
-msgid "Belarusian"
-msgstr "valkovenäjä"
-
-#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
-msgid "Bulgarian"
-msgstr "bulgaria"
-
-#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
-#: ism/src/scim_utility.cpp:914
-msgid "Bengali"
-msgstr "bengali"
-
-#: ism/src/scim_utility.cpp:713
-msgid "Bengali (India)"
-msgstr "bengali (Intia)"
-
-#: ism/src/scim_utility.cpp:714
-msgid "Tibetan"
-msgstr "tiibetti"
-
-#: ism/src/scim_utility.cpp:715
-msgid "Bosnian"
-msgstr "bosnia"
-
-#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
-msgid "Catalan"
-msgstr "katalaani"
-
-#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
-#: ism/src/scim_keyboard_layout_data.h:4596
-msgid "Czech"
-msgstr "tšekki"
-
-#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
-msgid "Welsh"
-msgstr "wales"
-
-#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
-#: ism/src/scim_keyboard_layout_data.h:4598
-msgid "Danish"
-msgstr "tanska"
-
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
-msgid "German"
-msgstr "saksa"
-
-#: ism/src/scim_utility.cpp:721
-msgid "Divehi"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
-#: ism/src/scim_keyboard_layout_data.h:4609
-msgid "Greek"
-msgstr "kreikka"
-
-#: ism/src/scim_utility.cpp:723
-msgid "English"
-msgstr "englanti"
-
-#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
-msgid "English (Australian)"
-msgstr "englanti (Australia)"
-
-#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
-msgid "English (Canadian)"
-msgstr "englanti (Kanada)"
-
-#: ism/src/scim_utility.cpp:726
-msgid "English (British)"
-msgstr "englanti (Iso-Britannia)"
-
-#: ism/src/scim_utility.cpp:727
-msgid "English (Ireland)"
-msgstr "englanti (Irlanti)"
-
-#: ism/src/scim_utility.cpp:728
-msgid "English (American)"
-msgstr "englanti (amerikanenglanti)"
-
-#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
-#: ism/src/scim_keyboard_layout_data.h:4622
-msgid "Spanish"
-msgstr "espanja"
-
-#: ism/src/scim_utility.cpp:731
-msgid "Spanish (Mexico)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
-#: ism/src/scim_keyboard_layout_data.h:4601
-msgid "Estonian"
-msgstr "viro"
-
-#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
-msgid "Basque"
-msgstr "baski"
-
-#: ism/src/scim_utility.cpp:734
-msgid "Persian"
-msgstr "persia"
-
-#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
-#: ism/src/scim_keyboard_layout_data.h:4602
-msgid "Finnish"
-msgstr "suomi"
-
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
-msgid "French"
-msgstr "ranska"
-
-#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
-msgid "Irish"
-msgstr "irlanti"
-
-#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
-msgid "Galician"
-msgstr "galicia"
-
-#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
-msgid "Gujarati"
-msgstr "gudžarati"
-
-#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
-#: ism/src/scim_utility.cpp:891
-msgid "Hebrew"
-msgstr "heprea"
-
-#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
-msgid "Hindi"
-msgstr "hindi"
-
-#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
-msgid "Croatian"
-msgstr "kroatia"
-
-#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
-#: ism/src/scim_keyboard_layout_data.h:4610
-msgid "Hungarian"
-msgstr "unkari"
-
-#: ism/src/scim_utility.cpp:744
-#, fuzzy
-msgid "Armenian"
-msgstr "romania"
-
-#: ism/src/scim_utility.cpp:745
-msgid "Interlingua"
-msgstr "interlingua"
-
-#: ism/src/scim_utility.cpp:746
-msgid "Indonesian"
-msgstr "indonesia"
-
-#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
-#: ism/src/scim_keyboard_layout_data.h:4628
-msgid "Icelandic"
-msgstr "islanti"
-
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
-msgid "Italian"
-msgstr "italia"
-
-#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
-#: ism/src/scim_keyboard_layout_data.h:4612
-msgid "Japanese"
-msgstr "japani"
-
-#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
-#, fuzzy
-msgid "Georgian"
-msgstr "saksa"
-
-#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
-msgid "Kazakh"
-msgstr "kazak"
-
-#: ism/src/scim_utility.cpp:753
-msgid "Cambodian"
-msgstr "kampodia/khmer"
-
-#: ism/src/scim_utility.cpp:754
-msgid "Kannada"
-msgstr "kannada"
-
-#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
-msgid "Korean"
-msgstr "korea"
-
-#: ism/src/scim_utility.cpp:756
-msgid "Laothian"
-msgstr "laos"
-
-#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
-#: ism/src/scim_keyboard_layout_data.h:4629
-msgid "Lithuanian"
-msgstr "liettua"
-
-#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
-msgid "Latvian"
-msgstr "latvia"
-
-#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
-msgid "Macedonian"
-msgstr "makedonia"
-
-#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
-msgid "Malayalam"
-msgstr "malajalam"
-
-#: ism/src/scim_utility.cpp:761
-msgid "Mongolian"
-msgstr "mongolia"
-
-#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
-msgid "Marathi"
-msgstr "marathi"
-
-#: ism/src/scim_utility.cpp:763
-msgid "Malay"
-msgstr "malaiji"
-
-#: ism/src/scim_utility.cpp:764
-msgid "Burmese"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:765
-msgid "Nepali"
-msgstr "nepali"
-
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
-msgid "Dutch"
-msgstr "hollanti"
-
-#: ism/src/scim_utility.cpp:767
-#, fuzzy
-msgid "Norwegian (Nynorsk)"
-msgstr "norja (nykynorja)"
-
-#: ism/src/scim_utility.cpp:768
-#, fuzzy
-msgid "Norwegian (Bokmal)"
-msgstr "norja (kirjanorja)"
-
-#: ism/src/scim_utility.cpp:769
-msgid "Oriya"
-msgstr "oriya"
-
-#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
-#, fuzzy
-msgid "Punjabi"
-msgstr "panjabi"
-
-#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
-#: ism/src/scim_keyboard_layout_data.h:4614
-msgid "Polish"
-msgstr "puola"
-
-#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
-msgid "Portuguese"
-msgstr "portugali"
-
-#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
-msgid "Portuguese (Brazil)"
-msgstr "portugali (Brasilia)"
-
-#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
-msgid "Romanian"
-msgstr "romania"
-
-#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
-#: ism/src/scim_keyboard_layout_data.h:4618
-msgid "Russian"
-msgstr "venäjä"
-
-#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
-msgid "Sinhala"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
-#: ism/src/scim_keyboard_layout_data.h:4619
-msgid "Slovak"
-msgstr "slovakki"
-
-#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
-#: ism/src/scim_keyboard_layout_data.h:4621
-msgid "Slovenian"
-msgstr "sloveeni"
-
-#: ism/src/scim_utility.cpp:780
-msgid "Albanian"
-msgstr "albania"
-
-#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
-#: ism/src/scim_utility.cpp:783
-msgid "Serbian"
-msgstr "serbia"
-
-#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
-#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
-msgid "Swedish"
-msgstr "ruotsi"
-
-#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
-msgid "Swedish (Finland)"
-msgstr "ruotsi (Suomi)"
-
-#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
-msgid "Tamil"
-msgstr "tamili"
-
-#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
-msgid "Telugu"
-msgstr "telugu"
-
-#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
-msgid "Thai"
-msgstr "thai"
-
-#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
-#: ism/src/scim_keyboard_layout_data.h:4626
-msgid "Turkish"
-msgstr "turkki"
-
-#: ism/src/scim_utility.cpp:791
-msgid "Uighur"
-msgstr "uiguuri"
-
-#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
-#: ism/src/scim_keyboard_layout_data.h:4630
-msgid "Ukrainian"
-msgstr "ukraina"
-
-#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
-msgid "Urdu"
-msgstr "urdu"
-
-#: ism/src/scim_utility.cpp:794
-msgid "Uzbek"
-msgstr "uzbekki"
-
-#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
-msgid "Vietnamese"
-msgstr "vietnam"
-
-#: ism/src/scim_utility.cpp:796
-msgid "Walloon"
-msgstr "valloni"
-
-#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
-msgid "Yiddish"
-msgstr "jiddiš"
-
-#: ism/src/scim_utility.cpp:799
-msgid "Chinese"
-msgstr "kiina"
-
-#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
-#, fuzzy
-msgid "Chinese (Simplified)"
-msgstr "kiina (yksinkertaistettu)"
-
-#: ism/src/scim_utility.cpp:801
-#, fuzzy
-msgid "Chinese (Hongkong)"
-msgstr "kiina (perinteinen)"
-
-#: ism/src/scim_utility.cpp:803
-#, fuzzy
-msgid "Chinese (Traditional)"
-msgstr "kiina (perinteinen)"
-
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:806
-#, fuzzy
-msgid "Dutch (Belgian)"
-msgstr "belgia"
-
-#: ism/src/scim_utility.cpp:807
-#, fuzzy
-msgid "English (United States)"
-msgstr "englanti (USA)"
-
-#: ism/src/scim_utility.cpp:808
-#, fuzzy
-msgid "English (United Kingdom)"
-msgstr "englanti (Kanada)"
-
-#: ism/src/scim_utility.cpp:811
-#, fuzzy
-msgid "English (New Zealand)"
-msgstr "englanti (Irlanti)"
-
-#: ism/src/scim_utility.cpp:812
-#, fuzzy
-msgid "English (Irish)"
-msgstr "englanti (Iso-Britannia)"
-
-#: ism/src/scim_utility.cpp:813
-#, fuzzy
-msgid "English (South Africa)"
-msgstr "englanti (amerikanenglanti)"
-
-#: ism/src/scim_utility.cpp:814
-#, fuzzy
-msgid "English (Jamaica)"
-msgstr "englanti (Kanada)"
-
-#: ism/src/scim_utility.cpp:815
-#, fuzzy
-msgid "English (Belize)"
-msgstr "englanti (Iso-Britannia)"
-
-#: ism/src/scim_utility.cpp:816
-#, fuzzy
-msgid "English (Trinidad)"
-msgstr "englanti (Iso-Britannia)"
-
-#: ism/src/scim_utility.cpp:817
-#, fuzzy
-msgid "English (Zimbabwe)"
-msgstr "englanti (Kanada)"
-
-#: ism/src/scim_utility.cpp:818
-#, fuzzy
-msgid "English (Philippines)"
-msgstr "englanti (Iso-Britannia)"
-
-#: ism/src/scim_utility.cpp:819
-#, fuzzy
-msgid "French (Standard)"
-msgstr "Ranska (Kanada)"
-
-#: ism/src/scim_utility.cpp:820
-#, fuzzy
-msgid "French (Belgian)"
-msgstr "Ranska (Kanada)"
-
-#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
-msgid "French (Canadian)"
-msgstr "Ranska (Kanada)"
-
-#: ism/src/scim_utility.cpp:822
-#, fuzzy
-msgid "French (Swiss)"
-msgstr "Saksa (sveitsiläinen)"
-
-#: ism/src/scim_utility.cpp:823
-msgid "French (Luxembourg)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:824
-#, fuzzy
-msgid "French (Monaco)"
-msgstr "Ranska (Kanada)"
-
-#: ism/src/scim_utility.cpp:825
-#, fuzzy
-msgid "German (Standard)"
-msgstr "Saksa (kuolleilla näppäimillä)"
-
-#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
-msgid "German (Swiss)"
-msgstr "Saksa (sveitsiläinen)"
-
-#: ism/src/scim_utility.cpp:827
-#, fuzzy
-msgid "German (Austrian)"
-msgstr "englanti (Australia)"
-
-#: ism/src/scim_utility.cpp:828
-msgid "German (Luxembourg)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:829
-#, fuzzy
-msgid "German (Liechtenstein)"
-msgstr "Saksa (sveitsiläinen)"
-
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:831
-#, fuzzy
-msgid "Italian (Swiss)"
-msgstr "Saksa (sveitsiläinen)"
-
-#: ism/src/scim_utility.cpp:832
-#, fuzzy
-msgid "Portuguese (Brazilian)"
-msgstr "portugali (Brasilia)"
-
-#: ism/src/scim_utility.cpp:833
-#, fuzzy
-msgid "Portuguese (Standard)"
-msgstr "portugali (Brasilia)"
-
-#: ism/src/scim_utility.cpp:834
-#, fuzzy
-msgid "Spanish (Traditional Sort)"
-msgstr "espanja (latinalainen amerikka)"
-
-#: ism/src/scim_utility.cpp:835
-#, fuzzy
-msgid "Spanish (Mexican)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:836
-#, fuzzy
-msgid "Spanish (Guatemala)"
-msgstr "espanja (latinalainen amerikka)"
-
-#: ism/src/scim_utility.cpp:837
-#, fuzzy
-msgid "Spanish (Costa Rica)"
-msgstr "espanja (latinalainen amerikka)"
-
-#: ism/src/scim_utility.cpp:838
-#, fuzzy
-msgid "Spanish (Panama)"
-msgstr "espanja (latinalainen amerikka)"
-
-#: ism/src/scim_utility.cpp:839
-#, fuzzy
-msgid "Spanish (Dominican Republic)"
-msgstr "espanja (latinalainen amerikka)"
-
-#: ism/src/scim_utility.cpp:840
-#, fuzzy
-msgid "Spanish (Venezuela)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:841
-#, fuzzy
-msgid "Spanish (Colombia)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:842
-#, fuzzy
-msgid "Spanish (Peru)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:843
-#, fuzzy
-msgid "Spanish (Argentina)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:844
-#, fuzzy
-msgid "Spanish (Ecuador)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:845
-#, fuzzy
-msgid "Spanish (Chile)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:846
-#, fuzzy
-msgid "Spanish (Uruguay)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:847
-#, fuzzy
-msgid "Spanish (Paraguay)"
-msgstr "espanja (CP 850)"
-
-#: ism/src/scim_utility.cpp:848
-#, fuzzy
-msgid "Spanish (Bolivia)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:849
-msgid "Spanish (El Salvador)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:850
-#, fuzzy
-msgid "Spanish (Honduras)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:851
-#, fuzzy
-msgid "Spanish (Nicaragua)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:852
-#, fuzzy
-msgid "Spanish (Puerto Rico)"
-msgstr "espanja (Mexico)"
-
-#: ism/src/scim_utility.cpp:856
-msgid "Afrikaans"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:859
-#, fuzzy
-msgid "Malay (Malaysia)"
-msgstr "malajalam"
-
-#: ism/src/scim_utility.cpp:860
-msgid "Malay (Brunei Darussalam)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
-msgid "Norwegian"
-msgstr "norja"
-
-#: ism/src/scim_utility.cpp:868
-#, fuzzy
-msgid "Serbian (Latin)"
-msgstr "serbia"
-
-#: ism/src/scim_utility.cpp:879
-msgid "Serbian (Cyrillic)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:882
-msgid "Uzbek (Latin)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:885
-#, fuzzy
-msgid "Chinese (Taiwan)"
-msgstr "kiina (perinteinen)"
-
-#: ism/src/scim_utility.cpp:886
-#, fuzzy
-msgid "Chinese (Hong Kong)"
-msgstr "kiina (perinteinen)"
-
-#: ism/src/scim_utility.cpp:887
-#, fuzzy
-msgid "Chinese (Macau)"
-msgstr "kiina (perinteinen)"
-
-#: ism/src/scim_utility.cpp:888
-#, fuzzy
-msgid "Chinese (PRC)"
-msgstr "kiina"
-
-#: ism/src/scim_utility.cpp:889
-#, fuzzy
-msgid "Chinese (Singapore)"
-msgstr "kiina (yksinkertaistettu)"
-
-#: ism/src/scim_utility.cpp:892
-msgid "Arabic (Saudi Arabia)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:893
-#, fuzzy
-msgid "Arabic (Iraq)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:895
-#, fuzzy
-msgid "Arabic (Libya)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:896
-#, fuzzy
-msgid "Arabic (Algeria)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:897
-#, fuzzy
-msgid "Arabic (Morocco)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:898
-#, fuzzy
-msgid "Arabic (Tunisia)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:899
-#, fuzzy
-msgid "Arabic (Oman)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:900
-#, fuzzy
-msgid "Arabic (Yemen)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:901
-#, fuzzy
-msgid "Arabic (Syria)"
-msgstr "arabia (Egypti)"
-
-#: ism/src/scim_utility.cpp:902
-#, fuzzy
-msgid "Arabic (Jordan)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:904
-#, fuzzy
-msgid "Arabic (Kuwait)"
-msgstr "arabia (Egypti)"
-
-#: ism/src/scim_utility.cpp:905
-#, fuzzy
-msgid "Arabic (UAE)"
-msgstr "arabia (Egypti)"
-
-#: ism/src/scim_utility.cpp:906
-#, fuzzy
-msgid "Arabic (Bahrain)"
-msgstr "arabia (Libanon)"
-
-#: ism/src/scim_utility.cpp:907
-#, fuzzy
-msgid "Arabic (Qatar)"
-msgstr "arabia (Egypti)"
-
-#: ism/src/scim_utility.cpp:921
-msgid "Hausa"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:925
-msgid "Xhosa"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:926
-msgid "Yoruba"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:927
-msgid "Zulu"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:1025
-msgid "Other"
-msgstr "Muu"
-
-#: ism/src/scim_keyboard_layout_data.h:4592
-#: ism/modules/imengine/scim_socket_imengine.cpp:409
-#: ism/modules/imengine/scim_socket_imengine.cpp:466
-#: ism/modules/imengine/scim_socket_imengine.cpp:496
-#: ism/modules/imengine/scim_socket_imengine.cpp:526
-msgid "Unknown"
-msgstr "Tuntematon"
-
-#: ism/src/scim_keyboard_layout_data.h:4593
-msgid "English (US)"
-msgstr "englanti (USA)"
-
-#: ism/src/scim_keyboard_layout_data.h:4594
-msgid "Belgian"
-msgstr "belgia"
-
-#: ism/src/scim_keyboard_layout_data.h:4597
-msgid "Czech (qwerty)"
-msgstr "tšekki (qwerty)"
-
-#: ism/src/scim_keyboard_layout_data.h:4600
-msgid "Dvorak"
-msgstr "Dvorak"
-
-#: ism/src/scim_keyboard_layout_data.h:4605
-msgid "French (Switzerland)"
-msgstr "Ranska (Sveitsi)"
-
-#: ism/src/scim_keyboard_layout_data.h:4607
-msgid "German (with deadkeys)"
-msgstr "Saksa (kuolleilla näppäimillä)"
-
-#: ism/src/scim_keyboard_layout_data.h:4617
-msgid "Portuguese (Brazil US accents)"
-msgstr "portugali (Brasilia/US-aksenttimerkit)"
-
-#: ism/src/scim_keyboard_layout_data.h:4620
-msgid "Slovak (qwerty)"
-msgstr "slovakia (qwerty)"
-
-#: ism/src/scim_keyboard_layout_data.h:4623
-msgid "Spanish (CP 850)"
-msgstr "espanja (CP 850)"
-
-#: ism/src/scim_keyboard_layout_data.h:4624
-msgid "Spanish (Latin America)"
-msgstr "espanja (latinalainen amerikka)"
-
-#: ism/src/scim_keyboard_layout_data.h:4627
-msgid "English (UK)"
-msgstr "englanti (Iso-Britannia)"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:57
-msgid "Simplified-Traditional Chinese Conversion"
-msgstr "Yksinkertaistetun/perinteisen kiinan muunnos"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:60
-msgid "Convert between Simplified Chinese and Traditional Chinese"
-msgstr "Muunna yksinkertaistetun ja perinteisen kiinan välillä"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:71
-msgid "SC-TC"
-msgstr "yk-pk"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:73
-#: ism/modules/filter/scim_sctc_filter.cpp:78
-msgid "Simplified-Traditional Chinese conversion"
-msgstr "Yksinkertaistetun/perinteisen kiinan muunnos"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:76
-msgid "No Conversion"
-msgstr "Ei muunnosta"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:81
-msgid "Simplified to Traditional"
-msgstr "Yksinkertaistetusta perinteiseksi"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:83
-msgid "Convert Simplified Chinese to Traditional Chinese"
-msgstr "Muunna yksinkertaistettu kiina perinteiseksi kiinaksi"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:86
-msgid "Traditional to Simplified"
-msgstr "Perinteisestä yksinkertaistetuksi"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:88
-msgid "Convert Traditional Chinese to Simplified Chinese"
-msgstr "Muunna perinteisestä kiinasta yksinkertaistetuksi kiinaksi"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:300
-msgid "James Su <suzhe@tsinghua.org.cn>"
-msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:425
-#: ism/modules/filter/scim_sctc_filter.cpp:555
-#: ism/modules/filter/scim_sctc_filter.cpp:571
-msgid "SC->TC"
-msgstr "yk->pk"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:431
-#: ism/modules/filter/scim_sctc_filter.cpp:559
-#: ism/modules/filter/scim_sctc_filter.cpp:575
-msgid "TC->SC"
-msgstr "pk->yk"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
-msgid "Smart Common Input Method platform "
-msgstr "Smart Common Input Method -alusta "
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
-msgid ""
-"\n"
-"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-"\n"
-msgstr ""
-"\n"
-"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-"\n"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
-msgid ""
-":\n"
-"\n"
-msgstr ""
-":\n"
-"\n"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
-msgid ""
-"\n"
-"\n"
-msgstr ""
-"\n"
-"\n"
-
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
-msgid "Enable"
-msgstr "Ota käyttöön"
-
-#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
-#. gtk_tree_view_column_set_fixed_width (column, 232);
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
-msgid "Name"
-msgstr "Nimi"
-
-#: ism/utils/scimstringview.c:201
-msgid "Cursor Position"
-msgstr "Kohdistimen paikka"
-
-#: ism/utils/scimstringview.c:202
-msgid "The current position of the insertion cursor in chars."
-msgstr "Syöttökohdistimen nykyinen paikka merkeissä."
-
-#: ism/utils/scimstringview.c:211
-msgid "Maximum length"
-msgstr "Suurin pituus"
-
-#: ism/utils/scimstringview.c:212
-msgid "Maximum number of characters for this string view. Zero if no maximum."
-msgstr "Suurin määrä merkkejä tälle merkkijononäytölle. Nolla, jos ei aseteta."
-
-#: ism/utils/scimstringview.c:221
-msgid "Maximum width"
-msgstr "Suurin leveys"
-
-#: ism/utils/scimstringview.c:222
-msgid "Maximum width of this string view."
-msgstr "Suurin leveys tälle merkkijononäytölle."
-
-#: ism/utils/scimstringview.c:231
-msgid "Has Frame"
-msgstr "Reunus"
-
-#: ism/utils/scimstringview.c:232
-msgid "FALSE removes outside bevel from string view."
-msgstr "FALSE poistaa ulkopuolisen reunan merkkijononäytöstä."
-
-#: ism/utils/scimstringview.c:239
-msgid "Draw cursor"
-msgstr "Piirrä kohdistin"
-
-#: ism/utils/scimstringview.c:240
-msgid "TRUE draw blinking cursor."
-msgstr "TRUE piirtää vilkkuvan kohdistimen."
-
-#: ism/utils/scimstringview.c:247
-msgid "Auto move cursor"
-msgstr "Kohdistimen siirto"
-
-#: ism/utils/scimstringview.c:248
-msgid "TRUE auto move cursor position when mouse clicking."
-msgstr "TRUE siirtää kohdistinta automaattisesti hiiren napsautukseta."
-
-#: ism/utils/scimstringview.c:255
-#, fuzzy
-msgid "Forward button press/release event"
-msgstr "Edelleenlähetä painikkeen painallus"
-
-#: ism/utils/scimstringview.c:256
-#, fuzzy
-msgid "TRUE forward button press/release event to user program."
-msgstr "TRUE lähettää painikkeen painalluksen edelleen käyttäjäohjelmalle."
-
-#: ism/utils/scimstringview.c:263
-msgid "Auto resize the widget to fit the string"
-msgstr "Muuta elementin kokoa merkkijonon mukaan"
-
-#: ism/utils/scimstringview.c:264
-msgid "TRUE Auto resize on."
-msgstr "TRUE Automaattinen koon muuttaminen käytössä."
-
-#: ism/utils/scimstringview.c:271
-msgid "Emit move_cursor signal when press/release the string"
-msgstr ""
-
-#: ism/utils/scimstringview.c:272
-#, fuzzy
-msgid "TRUE Emit move_cursor signal when press the string."
-msgstr "TRUE siirtää kohdistinta automaattisesti hiiren napsautukseta."
-
-#: ism/utils/scimstringview.c:279
-msgid "Width in chars"
-msgstr "Leveys merkeissä"
-
-#: ism/utils/scimstringview.c:280
-msgid "Number of characters to leave space for in the string view."
-msgstr "Merkkijononäyttöön jätettävän tyhjän tilan määrä merkeissä."
-
-#: ism/utils/scimstringview.c:289
-msgid "Scroll offset"
-msgstr "Vieritysmäärä"
-
-#: ism/utils/scimstringview.c:290
-msgid "Number of pixels of the string view scrolled off the screen to the left"
-msgstr "Merkkijonon vierityksen määrä pikseleissä"
-
-#: ism/utils/scimstringview.c:299
-msgid "Text"
-msgstr "Teksti"
-
-#: ism/utils/scimstringview.c:300
-msgid "The contents of the string view"
-msgstr "Merkkijononäytön sisältö"
-
-#: ism/utils/scimkeyselection.cpp:161
-msgid "Selected _Keys:"
-msgstr "Valitus _näppäimet:"
-
-#: ism/utils/scimkeyselection.cpp:206
-msgid "Key Code:"
-msgstr "Näppäinkoodi:"
-
-#: ism/utils/scimkeyselection.cpp:224
-#, fuzzy
-msgid "....."
-msgstr "..."
-
-#: ism/utils/scimkeyselection.cpp:229
-msgid "Modifiers:"
-msgstr "Pohjassa olevat näppäimet:"
-
-#: ism/utils/scimkeyselection.cpp:242
-msgid "_Ctrl"
-msgstr "_Ctrl"
-
-#: ism/utils/scimkeyselection.cpp:246
-msgid "A_lt"
-msgstr "A_lt"
-
-#: ism/utils/scimkeyselection.cpp:250
-msgid "_Shift"
-msgstr "_Shift"
-
-#: ism/utils/scimkeyselection.cpp:254
-msgid "_Release"
-msgstr "_Release"
-
-#: ism/utils/scimkeyselection.cpp:264
-msgid "_Meta"
-msgstr "_Meta"
-
-#: ism/utils/scimkeyselection.cpp:268
-msgid "S_uper"
-msgstr "S_uper"
-
-#: ism/utils/scimkeyselection.cpp:272
-msgid "_Hyper"
-msgstr "_Hyper"
-
-#: ism/utils/scimkeyselection.cpp:337
-msgid "Please enter a Key Code first."
-msgstr "Syötä näppäinkoodi ensin."
-
-#: ism/utils/scimkeyselection.cpp:391
-#, fuzzy
-msgid ""
-"Press a key (or a key combination).\n"
-"This dialog will be closed \n"
-"when the key is released."
-msgstr ""
-"Paina näppäintä (tai näppäinyhdistelmää).\n"
-"Tämä ikkuna sulkeutuu kun näppäin vapautetaan."
-
-#: ism/utils/scimkeyselection.cpp:395
-msgid "Grabbing a key."
-msgstr "Odotetaan näppäintä."
-
-#: ism/utils/scimkeyselection.cpp:686
-msgid "Key Selection"
-msgstr "Näppäimen valinta"
-
-#: ism/utils/scimtrayicon.c:108
-msgid "Orientation"
-msgstr "Suunta"
-
-#: ism/utils/scimtrayicon.c:109
-msgid "The orientation of the tray."
-msgstr "Ilmoitusalueen suunta."
-
-#. Normal Layout
-#: ism/demos/isf_layout_efl.cpp:184
-msgid "NORMAL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:184
-msgid "click to enter TEXT"
-msgstr ""
-
-#. Number Layout
-#: ism/demos/isf_layout_efl.cpp:188
-msgid "NUMBER LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:188
-msgid "click to enter NUMBER"
-msgstr ""
-
-#. Email Layout
-#: ism/demos/isf_layout_efl.cpp:192
-msgid "EMAIL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:192
-msgid "click to enter EMAIL"
-msgstr ""
-
-#. URL Layout
-#: ism/demos/isf_layout_efl.cpp:196
-msgid "URL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:196
-msgid "click to enter URL"
-msgstr ""
-
-#. Phonenumber Layout
-#: ism/demos/isf_layout_efl.cpp:200
-msgid "PHONENUMBER LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:200
-msgid "click to enter PHONENUMBER"
-msgstr ""
-
-#. IP Layout
-#: ism/demos/isf_layout_efl.cpp:204
-msgid "IP LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:204
-msgid "click to enter IP"
-msgstr ""
-
-#. Month Layout
-#: ism/demos/isf_layout_efl.cpp:208
-msgid "MONTH LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:208
-msgid "click to enter MONTH"
-msgstr ""
-
-#. Number Only Layout
-#: ism/demos/isf_layout_efl.cpp:212
-msgid "NUMBERONLY LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:212
-msgid "click to enter NUMBERONLY"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:230
-msgid "Layout"
-msgstr ""
-
-#: ism/demos/isf_demo_efl.cpp:140
-msgid "Previous"
-msgstr ""
-
-#. bundle_add(ad->data, "navi_btn_left", NULL);
-#: ism/demos/isf_demo_efl.cpp:142
-#, fuzzy
-msgid "Next"
-msgstr "Teksti"
-
-#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
-msgstr ""
-
-#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
-msgstr ""
-
-#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
-msgstr ""
-
-#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
-msgstr ""
-
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
-msgstr ""
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Näppäimen valinta"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Valinnat"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "saksa"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "englanti/näppäimistö"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Näppäimen valinta"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Näppäimen valinta"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "englanti/näppäimistö"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Valinnat"
-
-#, fuzzy
-#~ msgid "Keyboard"
-#~ msgstr "englanti/näppäimistö"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "amhara"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Aina"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Valinnat"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "englanti/näppäimistö"
-
-#~ msgid "English/European"
-#~ msgstr "englanti/eurooppalainen"
-
-#~ msgid "RAW CODE"
-#~ msgstr "RAW CODE"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Pikanäppäimet:\n"
-#~ "\n"
-#~ " Ctrl+u:\n"
-#~ " vaihda monitavukoodauksen ja Unicoden välillä.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " palauta syöttötavan oletusarvot.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Nykyisen syöttötavan tila. Napsauta vaihtaaksesi."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Globaalit asetukset"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Aseta yleiset kaikkien edustaohjelmien käyttämät asetukset, mukaanlukien "
-#~ "X11-, GTK-, IMModule-, QT IMModule-ohjelmat"
-
-#~ msgid "_Trigger:"
-#~ msgstr "_Liipaisin"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Valitse liipaisinnäppäimet"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat jotka ottavat käyttöön / poistavat käytöstä SCIM-"
-#~ "syöttötavan. Napsauta oikealla olevaa painiketta muokataksesi sitä."
-
-#~ msgid "Turn _On:"
-#~ msgstr "Ota _käyttöön"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Valitse \"ota käyttöön\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat jotka ottavat SCIM-syöttötavan käyttöön. Napsauta "
-#~ "oikealla olevaa painiketta muokataksesi sitä."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "_Poista käytöstä:"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Valitse \"poista käytöstä\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat jotka poistavat SCIM-syöttötavan käyttöstä. Napsauta "
-#~ "oikealla olevaa painiketta muokataksesi sitä."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Seuraava syöttötapa:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Valitse \"seuraava syöttötapa\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat joilla vaihdetaan seuraavaan syöttötapaan. Napsauta "
-#~ "painiketta oikealla muokataksesi."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "_Edellinen syöttötapa:"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Valitse \"edellinen syöttötapa\"-näppäimet"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat joilla vaihdetaan edelliseen syöttötapaan. Napsauta "
-#~ "painiketta oikealla muokataksesi."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Näytä syöttötapa_valikko"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Valitse näppäimet joilla syöttötapavalikko näytetään"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Näppäintapahtumat joilla syöttötapavalikko näytetään. Napsauta painiketta "
-#~ "oikealla muokataksesi."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "_Näppäimistöasettelu"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Valitse nykyinen näppäimistöasettelu tässä, jotta näppäimistöasettelusta "
-#~ "välittävät syöttötavat toimisivat oikein."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "_Sisällytä \"preedit\"-merkkijono asiakasikkunaan"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Jos tämä on valittu, \"preedit\"-merkkijono näytetään suoraan "
-#~ "asiakasikkunassa erillisen kelluvan ikkunan sijaan."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "_Jaa sama syöttötapa kaikkien ohjelmien kanssa"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Jos tämä on valittu, yhtä syöttötapaa käytetään kaikissa ohjelmissa. "
-#~ "Muutoin eri syöttötapa voidaan valita eri ohjelmille."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Pikanäppäimet"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Voit ottaa käyttöön / pois käytöstä syöttötapoja ja asettaa pikanäppäimiä "
-#~ "syöttötavoille."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Asennetut syöttötapapalvelut:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Muokkaa _pikanäppäimiä"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Muokkaa valittuun syöttötapaan liittyviä pikanäppäimiä."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Valitse _suotimet"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Valitse suotimet jotka liitetään tähän syöttötapaan."
-
-#~ msgid "_Expand"
-#~ msgstr "_Laajenna"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Laajenna kaikki kieliluokat"
-
-#~ msgid "_Collapse"
-#~ msgstr "_Supista"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Supista kaikki kieliluokat"
-
-#~ msgid "E_nable All"
-#~ msgstr "Ota _käyttöön kaikki"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Ottaa kaikki syöttötavat käyttöön."
-
-#~ msgid "_Disable All"
-#~ msgstr "_Poista käytöstä kaikki"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Poistaa kaikki syöttötavat käytöstä."
-
-#~ msgid "Filters"
-#~ msgstr "Suotimet"
-
-#~ msgid "Languages"
-#~ msgstr "Kielet"
-
-#~ msgid "Description"
-#~ msgstr "Kuvaus"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Muokkaa pikanäppäimiä: %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Valitse suotimet: %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Siirrä _ylös"
-
-#~ msgid "Move _Down"
-#~ msgstr "Siirrä _alas"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "GTK+-2.x-kirjastoon perustuva paneelisovellus"
-
-#~ msgid "On demand"
-#~ msgstr "Tarvittaessa"
-
-#~ msgid "Never"
-#~ msgstr "Ei koskaan"
-
-#~ msgid "ToolBar"
-#~ msgstr "Työkalupalkki"
-
-#~ msgid "_Show:"
-#~ msgstr "_Näytä:"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Automaattinen k_ohdistus"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Näytä _syöttötapakuvake"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Näytä syöttätavan _nimi"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Piilota aika_katkaisu"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Näytä _tikkukuvake"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Näytä _valikkokuvake"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Näytä o_hjekuvake"
-
-#~ msgid "Show _property label"
-#~ msgstr "Näytä ominaisuusnimi_ö"
-
-#~ msgid "Input window"
-#~ msgstr "Syöttöikkuna"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "S_ulautettu etsintätaulukko"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Pystysuuntainen etsintätaulukko"
-
-#~ msgid "Misc"
-#~ msgstr "Muut"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Näytä _ilmoitusalueen kuvake"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Koh_dista ikkunat"
-
-#~ msgid "_Font:"
-#~ msgstr "_Kirjasin:"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Jos valinta \"aina\" on valittu, työkalupalkki näytetään aina ruudulla. "
-#~ "Jos \"tarvittaessa\" on valittu, se näytetään vain SCIMin ollessa "
-#~ "aktiivisena. Valinnalla \"Never\" palkkia ei näytetä koskaan."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr "Jos tämä on valittu, työkalupalkki kohdistetaan ruudun reunaan."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Työkalupalkki piilotetaan kun määritelty aika on kulunut. Tämä valinta on "
-#~ "kelvollinen vain jos \"Näytä aina\" on valittu. Aseta nollaksi "
-#~ "poistaaksesi piilotuksen käytöstä."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr "Jos tämä on valittu, syöttötapakuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr "Jos tämä on valittu, syöttötavan nimi näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr "Jos tämä on valittu, kohdistuskuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr "Jos tämä on valittu, valikkokuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr "Jos tämä on valittu, ohjekuvake näytetään työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Jos tämä on valittu, syöttötapa-asetusten teksti näytetään "
-#~ "työkalupalkissa."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr "Jos tämä on valittu, etsintätaulukko sisällytetään syöttöikkunaan."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr "Jos tämä on valittu, etsintätaulukko näytetään pystysuuntaisesti."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Jos tämä on valittu, ilmoitusalueen kuvake näytetään työpöydän "
-#~ "työkalupalkissa"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Jos tämä on valittu, työkalupalkki, syöttö- ja etsintätaulukkoikkunat "
-#~ "kohdistetaan alkuperäisiin sijainteihinsa."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Kirjasinasetusta käytetään syöttötapa- ja etsintätaulukkoikkunoihin."
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Valitse käyttöliittymän kirjasin"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "Edustaohjelma"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Paneeli"
-
-#~ msgid "Extra"
-#~ msgstr "Ekstra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "SCIM syöttötapojen valinta"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Smart Common Input Method -alusta</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Graafinen asetusohjelma</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Asetukset moduulille \"%s\".</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Haluatko poistua SCIMin asetuksista?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Kaikkia asetuksia ei voida vaihtaa lennossa. Käynnistä SCIM uudelleen "
-#~ "ottaaksesi kaikki uudet asetukset käyttöön."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "SCIM-asetukset"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "GTK-elementtikirjastoon perustuva asetusohjelma."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "Asetusohjelma Smart Common Input Method -alustalle"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIM-ohje"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Smart Common Input Method"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Kohdista tai poista syöttöikkunan ja työkalurivun kohdistus."
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Näytä lyhyt ohje SCIMistä sekä nykyinen syöttötapa."
-
-#~ msgid "Show command menu."
-#~ msgstr "Näytä komentovalikko."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Lataa asetukset uudelleen"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Kohdista ikkunat"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Piilota työkalupalkki"
-
-#~ msgid "Help ..."
-#~ msgstr "Ohje ..."
-
-#~ msgid "Exit"
-#~ msgstr "Poistu"
msgstr ""
"Project-Id-Version: fr\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\n"
"PO-Revision-Date: 2005-12-11 13:54+0800\n"
"Last-Translator: Damien Menanteau <MengDaming@nerdshack.com>\n"
"Language-Team: French\n"
"X-Generator: KBabel 1.11\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "Danish"
msgstr "Danois"
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr "Allemand"
msgid "Finnish"
msgstr "Finnois"
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr "Français"
msgid "Icelandic"
msgstr "Islandais"
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr "Italien"
msgid "Nepali"
msgstr "Népalais"
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr "Néerlandais"
msgstr "Polonais"
#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr "Portugais"
msgid "Chinese (Traditional)"
msgstr "Chinois (traditionnel)"
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:806
#, fuzzy
msgid "Dutch (Belgian)"
msgid "English (Philippines)"
msgstr "Anglais (Royaume Uni)"
-#: ism/src/scim_utility.cpp:819
-#, fuzzy
-msgid "French (Standard)"
-msgstr "Français (Canada)"
-
#: ism/src/scim_utility.cpp:820
#, fuzzy
msgid "French (Belgian)"
msgid "French (Monaco)"
msgstr "Français (Canada)"
-#: ism/src/scim_utility.cpp:825
-#, fuzzy
-msgid "German (Standard)"
-msgstr "Allemand (avec touches mortes)"
-
#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr "Allemand (Suisse)"
msgid "German (Liechtenstein)"
msgstr "Allemand (Suisse)"
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:831
#, fuzzy
msgid "Italian (Swiss)"
msgid "Portuguese (Brazilian)"
msgstr "Portugais (Brésil)"
-#: ism/src/scim_utility.cpp:833
-#, fuzzy
-msgid "Portuguese (Standard)"
-msgstr "Portugais (Brésil)"
-
#: ism/src/scim_utility.cpp:834
#, fuzzy
msgid "Spanish (Traditional Sort)"
msgstr "Texte"
#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
+msgid "ISF Demo"
msgstr ""
#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
+msgid "Entry Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
+msgid "Label Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
+msgid "Event"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
msgstr ""
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Sélection de Touche"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Options"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Allemand"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Français/Clavier"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Sélection de Touche"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Sélection de Touche"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Français/Clavier"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Options"
-
-#, fuzzy
-#~ msgid "Keyboard"
-#~ msgstr "Français/Clavier"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amharique"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Toujours"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Options"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Français/Clavier"
-
#~ msgid "English/European"
#~ msgstr "Français/Européen"
msgstr ""
"Project-Id-Version: it\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\n"
"PO-Revision-Date: 2005-12-13 00:36+0100\n"
"Last-Translator: Federico Zenith <zenith@chemeng.ntnu.no>\n"
"Language-Team: Italian <kde-i18n-it@kde.org>\n"
"X-Generator: KBabel 1.10.2\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "Danish"
msgstr "Danese"
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr "Tedesco"
msgid "Finnish"
msgstr "Finlandese"
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr "Francese"
msgid "Icelandic"
msgstr "Islandese"
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr "Italiano"
msgid "Nepali"
msgstr "Nepalese"
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr "Olandese"
msgstr "Polacco"
#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr "Portoghese"
msgid "Chinese (Traditional)"
msgstr "Cinese (tradizionale)"
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:806
#, fuzzy
msgid "Dutch (Belgian)"
msgid "English (Philippines)"
msgstr "Inglese (britannico)"
-#: ism/src/scim_utility.cpp:819
-#, fuzzy
-msgid "French (Standard)"
-msgstr "Francese (canadese)"
-
#: ism/src/scim_utility.cpp:820
#, fuzzy
msgid "French (Belgian)"
msgid "French (Monaco)"
msgstr "Francese (canadese)"
-#: ism/src/scim_utility.cpp:825
-#, fuzzy
-msgid "German (Standard)"
-msgstr "Tedesco (con tasti morti)"
-
#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr "Tedesco (svizzero)"
msgid "German (Liechtenstein)"
msgstr "Tedesco (svizzero)"
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:831
#, fuzzy
msgid "Italian (Swiss)"
msgid "Portuguese (Brazilian)"
msgstr "Portoghese (brasiliano)"
-#: ism/src/scim_utility.cpp:833
-#, fuzzy
-msgid "Portuguese (Standard)"
-msgstr "Portoghese (Brasile)"
-
#: ism/src/scim_utility.cpp:834
#, fuzzy
msgid "Spanish (Traditional Sort)"
msgstr "Testo"
#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
+msgid "ISF Demo"
msgstr ""
#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
+msgid "Entry Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
+msgid "Label Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
+msgid "Event"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
msgstr ""
#, fuzzy
#~ msgstr "Divisione automatica:"
#, fuzzy
+#~ msgid "Auto period"
+#~ msgstr "Divisione automatica:"
+
+#, fuzzy
#~ msgid "General"
#~ msgstr "Generico"
msgstr ""
"Project-Id-Version: ja\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\n"
"PO-Revision-Date: 2005-12-11 11:00+0900\n"
"Last-Translator: Yukiko Bando <ybando@k6.dion.ne.jp>\n"
"Language-Team: Japanese <ja@li.org>\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.3.1\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "Danish"
msgstr "デンマーク語"
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr "ドイツ語"
msgid "Finnish"
msgstr "フィンランド語"
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr "フランス語"
msgid "Icelandic"
msgstr "アイスランド語"
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr "イタリア語"
msgid "Nepali"
msgstr "ネパール語"
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr "オランダ語"
msgstr "ポーランド語"
#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr "ポルトガル語"
msgid "Chinese (Traditional)"
msgstr "繁体中国語"
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:806
#, fuzzy
msgid "Dutch (Belgian)"
msgid "English (Philippines)"
msgstr "英語(イギリス)"
-#: ism/src/scim_utility.cpp:819
-#, fuzzy
-msgid "French (Standard)"
-msgstr "フランス語(カナダ)"
-
#: ism/src/scim_utility.cpp:820
#, fuzzy
msgid "French (Belgian)"
msgid "French (Monaco)"
msgstr "フランス語(カナダ)"
-#: ism/src/scim_utility.cpp:825
-#, fuzzy
-msgid "German (Standard)"
-msgstr "ドイツ語(deadkeyあり)"
-
#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr "ドイツ語(スイス)"
msgid "German (Liechtenstein)"
msgstr "ドイツ語(スイス)"
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:831
#, fuzzy
msgid "Italian (Swiss)"
msgid "Portuguese (Brazilian)"
msgstr "ポルトガル語(ブラジル)"
-#: ism/src/scim_utility.cpp:833
-#, fuzzy
-msgid "Portuguese (Standard)"
-msgstr "ポルトガル語(ブラジル)"
-
#: ism/src/scim_utility.cpp:834
#, fuzzy
msgid "Spanish (Traditional Sort)"
msgstr "テキスト"
#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
+msgid "ISF Demo"
msgstr ""
#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
+msgid "Entry Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
+msgid "Label Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
+msgid "Event"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
msgstr ""
#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "キー選択"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "オプション"
-
-#, fuzzy
-#~ msgid "Auto capitalization"
-#~ msgstr "自動スプリット:"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "全般"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "英語/キーボード"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "キー選択"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "キー選択"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "英語/キーボード"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "オプション"
-
-#, fuzzy
-#~ msgid "Keyboard"
-#~ msgstr "英語/キーボード"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "アムハラ語"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "常に"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "オプション"
-
-#, fuzzy
#~ msgid "Keyboards"
#~ msgstr "英語/キーボード"
msgstr ""
"Project-Id-Version: SCIM\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\n"
"PO-Revision-Date: 2005-07-08 18:16+0900\n"
"Last-Translator: Choe Hwanjin <choe.hwanjin@gmail.com>\n"
"Language-Team: Korean <en@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "Danish"
msgstr "덴마크어"
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr "독일어"
msgid "Finnish"
msgstr "핀란드어"
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr "프랑스어"
msgid "Icelandic"
msgstr "아이슬란드어"
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr "이탈리아어"
msgid "Nepali"
msgstr "네팔어"
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr "네델란드어"
msgstr "폴란드어"
#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr "포루투갈어"
msgid "Chinese (Traditional)"
msgstr "중국어 (번체)"
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr "네덜란드어"
-
#: ism/src/scim_utility.cpp:806
msgid "Dutch (Belgian)"
msgstr "네덜란드어 (벨기에)"
msgid "English (Philippines)"
msgstr "영어 (필리핀)"
-#: ism/src/scim_utility.cpp:819
-msgid "French (Standard)"
-msgstr "프랑스어"
-
#: ism/src/scim_utility.cpp:820
msgid "French (Belgian)"
msgstr "프랑스어 (벨기에)"
msgid "French (Monaco)"
msgstr "프랑스어 (모나코)"
-#: ism/src/scim_utility.cpp:825
-msgid "German (Standard)"
-msgstr "독일어"
-
#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr "독일어 (스위스)"
msgid "German (Liechtenstein)"
msgstr "독일어 (리히텐슈타인)"
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr "이탈리아어"
-
#: ism/src/scim_utility.cpp:831
msgid "Italian (Swiss)"
msgstr "이탈리아어 (스위스)"
msgid "Portuguese (Brazilian)"
msgstr "포루투갈어 (브라질)"
-#: ism/src/scim_utility.cpp:833
-msgid "Portuguese (Standard)"
-msgstr "포루투갈어"
-
#: ism/src/scim_utility.cpp:834
msgid "Spanish (Traditional Sort)"
msgstr "스페인어 (전통 정렬)"
msgstr "다음"
#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
+msgid "ISF Demo"
msgstr ""
#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
+msgid "Entry Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
+msgid "Label Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
+msgid "Event"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
msgstr ""
-#~ msgid "Quit"
-#~ msgstr "종료"
-
-#~ msgid "Set"
-#~ msgstr "설정"
-
-#~ msgid "Selection"
-#~ msgstr "키보드 선택"
-
-#~ msgid "Option"
-#~ msgstr "옵션"
-
-#~ msgid "Auto capitalization"
-#~ msgstr "자동 대문자"
-
-#~ msgid "General"
-#~ msgstr "일반"
-
-#~ msgid "S/W keyboard"
-#~ msgstr "소프트 키보드"
-
-#~ msgid "Keyboard selection"
-#~ msgstr "키보드 선택"
-
-#~ msgid "Keyboard option"
-#~ msgstr "키보드 옵션"
-
-#~ msgid "H/W keyboard"
-#~ msgstr "하드웨어 키보드"
-
-#~ msgid "option"
-#~ msgstr "옵션"
-
-#~ msgid "Back"
-#~ msgstr "이전"
-
-#~ msgid "Keyboard"
-#~ msgstr "키보드"
-
-#~ msgid "Automatic"
-#~ msgstr "자동"
-
-#~ msgid "Always used"
-#~ msgstr "항상"
-
-#~ msgid "Done"
-#~ msgstr "완료"
-
-#~ msgid "Qwerty keyboard"
-#~ msgstr "Qwerty 키보드"
-
-#~ msgid "Phone keypad"
-#~ msgstr "폰 키보드"
-
-#~ msgid "%s Option"
-#~ msgstr "%s 옵션"
-
-#~ msgid "S/W keyboard connection"
-#~ msgstr "소프트웨어 키보드 연결"
-
-# msgid "MoAKey Korean"
-# msgstr "모아키 한국어"
-# msgid "MoAKey Chinese"
-# msgstr "모아키 중국어"
-# msgid "MoAKey Indic"
-# msgstr "모아키 인도어"
-# msgid "Indic"
-# msgstr "인도어"
-# msgid "Western Europe 1 & US"
-# msgstr "서유럽어 및 영어 키보드"
-#~ msgid "Keyboards"
-#~ msgstr "키보드"
-
-#~ msgid "Add new Keyboard"
-#~ msgstr "키보드 추가"
-
-#~ msgid "Supporting keyboard"
-#~ msgstr "지원 키보드"
-
-#~ msgid "Cancel"
-#~ msgstr "취소"
-
-#~ msgid "Keyboard Types"
-#~ msgstr "키보드 타입"
-
-#~ msgid "Writing languages"
-#~ msgstr "입력언어"
-
-#~ msgid "language"
-#~ msgstr "언어"
-
-#~ msgid "ISE selection"
-#~ msgstr "ISE 선택"
-
-#~ msgid "Text input"
-#~ msgstr "문자 입력 설정"
-
#~ msgid "RAW CODE"
#~ msgstr "RAW CODE"
msgstr ""
"Project-Id-Version: nl\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\n"
"PO-Revision-Date: 2007-03-17 18:54+0100\n"
"Last-Translator: Ronald Stroethoff <stroet43@zonnet.nl>\n"
"Language-Team: Nederlands\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: KBabel 1.11.4\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "Danish"
msgstr "Deens"
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr "Duits"
msgid "Finnish"
msgstr "Fins"
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr "Frans"
msgid "Icelandic"
msgstr "IJslands"
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr "Italiaans"
msgid "Nepali"
msgstr "Nepalees"
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr "Nederlands"
msgstr "Pools"
#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr "Portugees"
msgid "Chinese (Traditional)"
msgstr "Chinees (traditioneell)"
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:806
#, fuzzy
msgid "Dutch (Belgian)"
msgid "English (Philippines)"
msgstr "Engels (Groot Britannie)"
-#: ism/src/scim_utility.cpp:819
-#, fuzzy
-msgid "French (Standard)"
-msgstr "Frans (Canada)"
-
#: ism/src/scim_utility.cpp:820
#, fuzzy
msgid "French (Belgian)"
msgid "French (Monaco)"
msgstr "Frans (Canada)"
-#: ism/src/scim_utility.cpp:825
-#, fuzzy
-msgid "German (Standard)"
-msgstr "Duits (met deadkeys)"
-
#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr "Duits (Schwitsers)"
msgid "German (Liechtenstein)"
msgstr "Duits (Schwitsers)"
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
#: ism/src/scim_utility.cpp:831
#, fuzzy
msgid "Italian (Swiss)"
msgid "Portuguese (Brazilian)"
msgstr "Portugees (Brazilie)"
-#: ism/src/scim_utility.cpp:833
-#, fuzzy
-msgid "Portuguese (Standard)"
-msgstr "Portugees (Brazilie)"
-
#: ism/src/scim_utility.cpp:834
#, fuzzy
msgid "Spanish (Traditional Sort)"
msgstr "Tekst"
#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
+msgid "ISF Demo"
msgstr ""
#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
+msgid "Entry Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
+msgid "Label Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
+msgid "Event"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
msgstr ""
#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Toetsen selectie"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Opties"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Duits"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Nederlands/toetsenbord"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Toetsen selectie"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Toetsen selectie"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Nederlands/toetsenbord"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Opties"
-
-#, fuzzy
-#~ msgid "Keyboard"
-#~ msgstr "Nederlands/toetsenbord"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amhaars"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Altijd"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Opties"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Nederlands/toetsenbord"
-
-#~ msgid "English/European"
-#~ msgstr "Nederlands/Europeesch"
-
-#, fuzzy
#~ msgid "RAW CODE"
#~ msgstr "Unicode RAW CODE"
+++ /dev/null
-# translation of pa.po to Punjabi
-# translation of scim.NEW.po to Punjabi
-# translation of scim.po to Punjabi
-# This file is distributed under the same license as the PACKAGE package.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
-# Amanpreet Singh Alam <amanpreetalam@yahoo.com>, 2005.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: pa\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
-"PO-Revision-Date: 2005-12-13 08:28+0530\n"
-"Last-Translator: Amanpreet Singh Alam <amanpreetalam@yahoo.com>\n"
-"Language-Team: Punjabi <fedora-trans-pa@redhat.com>\n"
-"Language: pa\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
-#: ism/src/scim_utility.cpp:702
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
-msgid "English/Keyboard"
-msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#. return WideString ();
-#: ism/src/scim_compose_key.cpp:145
-#, fuzzy
-msgid "English input service"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_utility.cpp:703
-msgid "Amharic"
-msgstr "ਅਮਹੀਕਿਨ"
-
-#: ism/src/scim_utility.cpp:704
-msgid "Arabic"
-msgstr "ਅਰਬੀ"
-
-#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
-msgid "Arabic (Egypt)"
-msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
-msgid "Arabic (Lebanon)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:707
-msgid "Assamese"
-msgstr "ਆਸਾਮੀ"
-
-#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
-msgid "Azerbaijani"
-msgstr "ਅਜ਼ਰਬਾਈਜਾਨ"
-
-#: ism/src/scim_utility.cpp:709
-msgid "Belarusian"
-msgstr "ਬੇਲਾਰੂਸੀ"
-
-#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
-msgid "Bulgarian"
-msgstr "ਬੁਲਗਾਰੀਅਨ"
-
-#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
-#: ism/src/scim_utility.cpp:914
-msgid "Bengali"
-msgstr "ਬੰਗਾਲੀ"
-
-#: ism/src/scim_utility.cpp:713
-msgid "Bengali (India)"
-msgstr "ਬੰਗਾਲੀ (ਭਾਰਤ)"
-
-#: ism/src/scim_utility.cpp:714
-msgid "Tibetan"
-msgstr "ਤਿੱਬਤੀ"
-
-#: ism/src/scim_utility.cpp:715
-msgid "Bosnian"
-msgstr "ਬੋਸਨੀਅਨ"
-
-#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
-msgid "Catalan"
-msgstr "ਕੇਟੇਲਨ"
-
-#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
-#: ism/src/scim_keyboard_layout_data.h:4596
-msgid "Czech"
-msgstr "ਚੈੱਕ"
-
-#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
-msgid "Welsh"
-msgstr "ਵਾਲਿਸ਼"
-
-#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
-#: ism/src/scim_keyboard_layout_data.h:4598
-msgid "Danish"
-msgstr "ਡੈਨਿਸ਼"
-
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
-msgid "German"
-msgstr "ਜਰਮਨ"
-
-#: ism/src/scim_utility.cpp:721
-msgid "Divehi"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
-#: ism/src/scim_keyboard_layout_data.h:4609
-msgid "Greek"
-msgstr "ਗਰੀਕ"
-
-#: ism/src/scim_utility.cpp:723
-msgid "English"
-msgstr "ਅੰਗਰੇਜ਼ੀ"
-
-#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
-msgid "English (Australian)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਸਟਰੇਲੀਅਨ)"
-
-#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
-msgid "English (Canadian)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#: ism/src/scim_utility.cpp:726
-msgid "English (British)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#: ism/src/scim_utility.cpp:727
-msgid "English (Ireland)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਆਇਰਲੈਂਡ)"
-
-#: ism/src/scim_utility.cpp:728
-msgid "English (American)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
-#: ism/src/scim_keyboard_layout_data.h:4622
-msgid "Spanish"
-msgstr "ਸਪੇਨੀ"
-
-#: ism/src/scim_utility.cpp:731
-msgid "Spanish (Mexico)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
-#: ism/src/scim_keyboard_layout_data.h:4601
-msgid "Estonian"
-msgstr "ਈਸਟੋਨੀਅਨ"
-
-#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
-msgid "Basque"
-msgstr "ਬਸਕਿਉ"
-
-#: ism/src/scim_utility.cpp:734
-msgid "Persian"
-msgstr "ਪਰਸੀਅਨ"
-
-#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
-#: ism/src/scim_keyboard_layout_data.h:4602
-msgid "Finnish"
-msgstr "ਫੈਨਿਸ਼"
-
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
-msgid "French"
-msgstr "ਫਰੈਂਚ"
-
-#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
-msgid "Irish"
-msgstr "ਆਇਰਸ਼"
-
-#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
-msgid "Galician"
-msgstr "ਗਾਲੇਸ਼ੀਅਨ"
-
-#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
-msgid "Gujarati"
-msgstr "ਗੁਜਰਾਤੀ"
-
-#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
-#: ism/src/scim_utility.cpp:891
-msgid "Hebrew"
-msgstr "ਹੈਬਰਿਊ"
-
-#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
-msgid "Hindi"
-msgstr "ਹਿੰਦੀ"
-
-#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
-msgid "Croatian"
-msgstr "ਕਰੋਆਟੀਅਨ"
-
-#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
-#: ism/src/scim_keyboard_layout_data.h:4610
-msgid "Hungarian"
-msgstr "ਹੰਗਰੀਅਨ"
-
-#: ism/src/scim_utility.cpp:744
-#, fuzzy
-msgid "Armenian"
-msgstr "ਰੋਮਾਨੀਆਈ"
-
-#: ism/src/scim_utility.cpp:745
-msgid "Interlingua"
-msgstr "ਇੰਟਰਲਿੰਗੂਆ"
-
-#: ism/src/scim_utility.cpp:746
-msgid "Indonesian"
-msgstr "ਇੰਡੋਨੇਸ਼ੀਆਈ"
-
-#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
-#: ism/src/scim_keyboard_layout_data.h:4628
-msgid "Icelandic"
-msgstr "ਆਈਸਲੈਂਡੀ"
-
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
-msgid "Italian"
-msgstr "ਇਤਾਲਵੀ"
-
-#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
-#: ism/src/scim_keyboard_layout_data.h:4612
-msgid "Japanese"
-msgstr "ਜਾਪਾਨੀ"
-
-#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
-#, fuzzy
-msgid "Georgian"
-msgstr "ਜਰਮਨ"
-
-#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
-msgid "Kazakh"
-msgstr "ਕਾਜ਼ਕ"
-
-#: ism/src/scim_utility.cpp:753
-msgid "Cambodian"
-msgstr "ਕੰਬੋਡੀਅਨ"
-
-#: ism/src/scim_utility.cpp:754
-msgid "Kannada"
-msgstr "ਕੰਨੜ"
-
-#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
-msgid "Korean"
-msgstr "ਕੋਰੀਅਨ"
-
-#: ism/src/scim_utility.cpp:756
-msgid "Laothian"
-msgstr "ਲਿਊਥੀਅਨ"
-
-#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
-#: ism/src/scim_keyboard_layout_data.h:4629
-msgid "Lithuanian"
-msgstr "ਲੀਥੂਵਨੀਅਨ"
-
-#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
-msgid "Latvian"
-msgstr "ਲਾਟਵੀਅਨ"
-
-#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
-msgid "Macedonian"
-msgstr "ਮੈਕਡੋਨੀਅਨ"
-
-#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
-msgid "Malayalam"
-msgstr "ਮਾਲਿਆਲਮ"
-
-#: ism/src/scim_utility.cpp:761
-msgid "Mongolian"
-msgstr "ਮੰਗੋਲੀਅਨ"
-
-#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
-msgid "Marathi"
-msgstr "ਮਰਾਠੀ"
-
-#: ism/src/scim_utility.cpp:763
-msgid "Malay"
-msgstr "ਮਲਾਇਆ"
-
-#: ism/src/scim_utility.cpp:764
-msgid "Burmese"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:765
-msgid "Nepali"
-msgstr "ਨੇਪਾਲੀ"
-
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
-msgid "Dutch"
-msgstr "ਡੱਚ"
-
-#: ism/src/scim_utility.cpp:767
-#, fuzzy
-msgid "Norwegian (Nynorsk)"
-msgstr "ਨਾਰਵੇਗੀਅਨ (ਨਿਉਰਸਕ)"
-
-#: ism/src/scim_utility.cpp:768
-#, fuzzy
-msgid "Norwegian (Bokmal)"
-msgstr "ਨਾਰਵੇਗੀਅਨ (ਬੋਕਮਾਲ)"
-
-#: ism/src/scim_utility.cpp:769
-msgid "Oriya"
-msgstr "ਓੜੀਆ"
-
-#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
-msgid "Punjabi"
-msgstr "ਪੰਜਾਬੀ"
-
-#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
-#: ism/src/scim_keyboard_layout_data.h:4614
-msgid "Polish"
-msgstr "ਪੋਲਿਸ਼"
-
-#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
-msgid "Portuguese"
-msgstr "ਪੁਰਤਗਾਲੀ"
-
-#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
-msgid "Portuguese (Brazil)"
-msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ)"
-
-#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
-msgid "Romanian"
-msgstr "ਰੋਮਾਨੀਆਈ"
-
-#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
-#: ism/src/scim_keyboard_layout_data.h:4618
-msgid "Russian"
-msgstr "ਰੂਸੀ"
-
-#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
-msgid "Sinhala"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
-#: ism/src/scim_keyboard_layout_data.h:4619
-msgid "Slovak"
-msgstr "ਸਲੋਵਾਕ"
-
-#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
-#: ism/src/scim_keyboard_layout_data.h:4621
-msgid "Slovenian"
-msgstr "ਸਲੋਵੀਅਨ"
-
-#: ism/src/scim_utility.cpp:780
-msgid "Albanian"
-msgstr "ਅਲਬਾਈਅਨ"
-
-#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
-#: ism/src/scim_utility.cpp:783
-msgid "Serbian"
-msgstr "ਸਰਬੀਅਨ"
-
-#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
-#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
-msgid "Swedish"
-msgstr "ਸਵੀਡਸ਼"
-
-#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
-msgid "Swedish (Finland)"
-msgstr "ਸਵਡਿਸ਼ (ਫਿਨਲੈਂਡ)"
-
-#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
-msgid "Tamil"
-msgstr "ਤਾਮਿਲ"
-
-#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
-msgid "Telugu"
-msgstr "ਤੇਲਗੂ"
-
-#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
-msgid "Thai"
-msgstr "ਥਾਈ"
-
-#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
-#: ism/src/scim_keyboard_layout_data.h:4626
-msgid "Turkish"
-msgstr "ਤੁਰਕੀ"
-
-#: ism/src/scim_utility.cpp:791
-msgid "Uighur"
-msgstr "ਊਘਰ"
-
-#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
-#: ism/src/scim_keyboard_layout_data.h:4630
-msgid "Ukrainian"
-msgstr "ਯੂਕਰੇਨੀ"
-
-#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
-msgid "Urdu"
-msgstr "ਊਰਦੂ"
-
-#: ism/src/scim_utility.cpp:794
-msgid "Uzbek"
-msgstr "ਉਜੇਬਕ"
-
-#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
-msgid "Vietnamese"
-msgstr "ਵੀਅਤਨਾਮੀ"
-
-#: ism/src/scim_utility.cpp:796
-msgid "Walloon"
-msgstr "ਵਾਲਿਸ਼"
-
-#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
-msgid "Yiddish"
-msgstr "ਯਿਡਿੱਸ਼"
-
-#: ism/src/scim_utility.cpp:799
-msgid "Chinese"
-msgstr "ਚੀਨੀ"
-
-#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
-#, fuzzy
-msgid "Chinese (Simplified)"
-msgstr "ਚੀਨੀ (ਸਧਾਰਨ)"
-
-#: ism/src/scim_utility.cpp:801
-#, fuzzy
-msgid "Chinese (Hongkong)"
-msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#: ism/src/scim_utility.cpp:803
-#, fuzzy
-msgid "Chinese (Traditional)"
-msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:806
-#, fuzzy
-msgid "Dutch (Belgian)"
-msgstr "ਬੈਲਜੀਅਨ"
-
-#: ism/src/scim_utility.cpp:807
-#, fuzzy
-msgid "English (United States)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_utility.cpp:808
-#, fuzzy
-msgid "English (United Kingdom)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#: ism/src/scim_utility.cpp:811
-#, fuzzy
-msgid "English (New Zealand)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਆਇਰਲੈਂਡ)"
-
-#: ism/src/scim_utility.cpp:812
-#, fuzzy
-msgid "English (Irish)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#: ism/src/scim_utility.cpp:813
-#, fuzzy
-msgid "English (South Africa)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_utility.cpp:814
-#, fuzzy
-msgid "English (Jamaica)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#: ism/src/scim_utility.cpp:815
-#, fuzzy
-msgid "English (Belize)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#: ism/src/scim_utility.cpp:816
-#, fuzzy
-msgid "English (Trinidad)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#: ism/src/scim_utility.cpp:817
-#, fuzzy
-msgid "English (Zimbabwe)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਕੈਨੇਡੀ)"
-
-#: ism/src/scim_utility.cpp:818
-#, fuzzy
-msgid "English (Philippines)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#: ism/src/scim_utility.cpp:819
-#, fuzzy
-msgid "French (Standard)"
-msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#: ism/src/scim_utility.cpp:820
-#, fuzzy
-msgid "French (Belgian)"
-msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
-msgid "French (Canadian)"
-msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#: ism/src/scim_utility.cpp:822
-#, fuzzy
-msgid "French (Swiss)"
-msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#: ism/src/scim_utility.cpp:823
-msgid "French (Luxembourg)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:824
-#, fuzzy
-msgid "French (Monaco)"
-msgstr "ਫਰੈਂਚ (ਕੈਨੇਡੀ)"
-
-#: ism/src/scim_utility.cpp:825
-#, fuzzy
-msgid "German (Standard)"
-msgstr "ਜਰਮਨ (ਡਿੱਡ ਸਵਿੱਚਾਂ ਨਾਲ)"
-
-#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
-msgid "German (Swiss)"
-msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#: ism/src/scim_utility.cpp:827
-#, fuzzy
-msgid "German (Austrian)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਸਟਰੇਲੀਅਨ)"
-
-#: ism/src/scim_utility.cpp:828
-msgid "German (Luxembourg)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:829
-#, fuzzy
-msgid "German (Liechtenstein)"
-msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:831
-#, fuzzy
-msgid "Italian (Swiss)"
-msgstr "ਜਰਮਨ (ਸਵਿੱਸ)"
-
-#: ism/src/scim_utility.cpp:832
-#, fuzzy
-msgid "Portuguese (Brazilian)"
-msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ)"
-
-#: ism/src/scim_utility.cpp:833
-#, fuzzy
-msgid "Portuguese (Standard)"
-msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ)"
-
-#: ism/src/scim_utility.cpp:834
-#, fuzzy
-msgid "Spanish (Traditional Sort)"
-msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_utility.cpp:835
-#, fuzzy
-msgid "Spanish (Mexican)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:836
-#, fuzzy
-msgid "Spanish (Guatemala)"
-msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_utility.cpp:837
-#, fuzzy
-msgid "Spanish (Costa Rica)"
-msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_utility.cpp:838
-#, fuzzy
-msgid "Spanish (Panama)"
-msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_utility.cpp:839
-#, fuzzy
-msgid "Spanish (Dominican Republic)"
-msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_utility.cpp:840
-#, fuzzy
-msgid "Spanish (Venezuela)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:841
-#, fuzzy
-msgid "Spanish (Colombia)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:842
-#, fuzzy
-msgid "Spanish (Peru)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:843
-#, fuzzy
-msgid "Spanish (Argentina)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:844
-#, fuzzy
-msgid "Spanish (Ecuador)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:845
-#, fuzzy
-msgid "Spanish (Chile)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:846
-#, fuzzy
-msgid "Spanish (Uruguay)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:847
-#, fuzzy
-msgid "Spanish (Paraguay)"
-msgstr "ਸਪੇਨੀ (CP 850)"
-
-#: ism/src/scim_utility.cpp:848
-#, fuzzy
-msgid "Spanish (Bolivia)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:849
-msgid "Spanish (El Salvador)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:850
-#, fuzzy
-msgid "Spanish (Honduras)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:851
-#, fuzzy
-msgid "Spanish (Nicaragua)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:852
-#, fuzzy
-msgid "Spanish (Puerto Rico)"
-msgstr "ਸਪੇਨੀ (ਮੈਕਸਿਕੋ)"
-
-#: ism/src/scim_utility.cpp:856
-msgid "Afrikaans"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:859
-#, fuzzy
-msgid "Malay (Malaysia)"
-msgstr "ਮਾਲਿਆਲਮ"
-
-#: ism/src/scim_utility.cpp:860
-msgid "Malay (Brunei Darussalam)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
-msgid "Norwegian"
-msgstr "ਨਾਰਵੇਗੀਅਨ"
-
-#: ism/src/scim_utility.cpp:868
-#, fuzzy
-msgid "Serbian (Latin)"
-msgstr "ਸਰਬੀਅਨ"
-
-#: ism/src/scim_utility.cpp:879
-msgid "Serbian (Cyrillic)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:882
-msgid "Uzbek (Latin)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:885
-#, fuzzy
-msgid "Chinese (Taiwan)"
-msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#: ism/src/scim_utility.cpp:886
-#, fuzzy
-msgid "Chinese (Hong Kong)"
-msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#: ism/src/scim_utility.cpp:887
-#, fuzzy
-msgid "Chinese (Macau)"
-msgstr "ਚੀਨੀ (ਮੂਲ)"
-
-#: ism/src/scim_utility.cpp:888
-#, fuzzy
-msgid "Chinese (PRC)"
-msgstr "ਚੀਨੀ"
-
-#: ism/src/scim_utility.cpp:889
-#, fuzzy
-msgid "Chinese (Singapore)"
-msgstr "ਚੀਨੀ (ਸਧਾਰਨ)"
-
-#: ism/src/scim_utility.cpp:892
-msgid "Arabic (Saudi Arabia)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:893
-#, fuzzy
-msgid "Arabic (Iraq)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:895
-#, fuzzy
-msgid "Arabic (Libya)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:896
-#, fuzzy
-msgid "Arabic (Algeria)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:897
-#, fuzzy
-msgid "Arabic (Morocco)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:898
-#, fuzzy
-msgid "Arabic (Tunisia)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:899
-#, fuzzy
-msgid "Arabic (Oman)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:900
-#, fuzzy
-msgid "Arabic (Yemen)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:901
-#, fuzzy
-msgid "Arabic (Syria)"
-msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#: ism/src/scim_utility.cpp:902
-#, fuzzy
-msgid "Arabic (Jordan)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:904
-#, fuzzy
-msgid "Arabic (Kuwait)"
-msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#: ism/src/scim_utility.cpp:905
-#, fuzzy
-msgid "Arabic (UAE)"
-msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#: ism/src/scim_utility.cpp:906
-#, fuzzy
-msgid "Arabic (Bahrain)"
-msgstr "ਅਰਬੀ (ਲਿਬਨਾਨ)"
-
-#: ism/src/scim_utility.cpp:907
-#, fuzzy
-msgid "Arabic (Qatar)"
-msgstr "ਅਰਬੀ (ਮਿਸਰ)"
-
-#: ism/src/scim_utility.cpp:921
-msgid "Hausa"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:925
-msgid "Xhosa"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:926
-msgid "Yoruba"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:927
-msgid "Zulu"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:1025
-msgid "Other"
-msgstr "ਹੋਰ"
-
-#: ism/src/scim_keyboard_layout_data.h:4592
-#: ism/modules/imengine/scim_socket_imengine.cpp:409
-#: ism/modules/imengine/scim_socket_imengine.cpp:466
-#: ism/modules/imengine/scim_socket_imengine.cpp:496
-#: ism/modules/imengine/scim_socket_imengine.cpp:526
-msgid "Unknown"
-msgstr "ਅਣਜਾਣ"
-
-#: ism/src/scim_keyboard_layout_data.h:4593
-msgid "English (US)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_keyboard_layout_data.h:4594
-msgid "Belgian"
-msgstr "ਬੈਲਜੀਅਨ"
-
-#: ism/src/scim_keyboard_layout_data.h:4597
-msgid "Czech (qwerty)"
-msgstr "ਚੈੱਕ(ਕਿਉਵਰਟੀ)"
-
-#: ism/src/scim_keyboard_layout_data.h:4600
-msgid "Dvorak"
-msgstr "ਡਵੋਰਿਕ"
-
-#: ism/src/scim_keyboard_layout_data.h:4605
-msgid "French (Switzerland)"
-msgstr "ਫਰੈਂਚ (ਸਵਟਿਜ਼ਰਲੈਂਡ)"
-
-#: ism/src/scim_keyboard_layout_data.h:4607
-msgid "German (with deadkeys)"
-msgstr "ਜਰਮਨ (ਡਿੱਡ ਸਵਿੱਚਾਂ ਨਾਲ)"
-
-#: ism/src/scim_keyboard_layout_data.h:4617
-msgid "Portuguese (Brazil US accents)"
-msgstr "ਪੁਰਤਗਾਲੀ (ਬਰਾਜ਼ੀਲ ਅਮਰੀਕੀ ਢੰਗ)"
-
-#: ism/src/scim_keyboard_layout_data.h:4620
-msgid "Slovak (qwerty)"
-msgstr "ਸਲੋਵਾਕ(ਕਿਉਵਰਟੀ)"
-
-#: ism/src/scim_keyboard_layout_data.h:4623
-msgid "Spanish (CP 850)"
-msgstr "ਸਪੇਨੀ (CP 850)"
-
-#: ism/src/scim_keyboard_layout_data.h:4624
-msgid "Spanish (Latin America)"
-msgstr "ਸਪੇਨੀ (ਲੈਟਿਨ ਅਮਰੀਕੀ)"
-
-#: ism/src/scim_keyboard_layout_data.h:4627
-msgid "English (UK)"
-msgstr "ਅੰਗਰੇਜ਼ੀ (ਬਰਤਾਨੀਵੀਂ)"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:57
-msgid "Simplified-Traditional Chinese Conversion"
-msgstr "ਸਧਾਰਨ-ਮੂਲ ਚੀਨੀ ਤਬਦੀਲੀ"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:60
-msgid "Convert between Simplified Chinese and Traditional Chinese"
-msgstr "ਸਧਾਰਨ ਚੀਨੀ ਅਤੇ ਮੂਲ ਚੀਨੀ ਵਿੱਚ ਤਬਦੀਲੀ"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:71
-msgid "SC-TC"
-msgstr "SC-TC"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:73
-#: ism/modules/filter/scim_sctc_filter.cpp:78
-msgid "Simplified-Traditional Chinese conversion"
-msgstr "ਸਧਾਰਨ-ਮੂਲ ਚੀਨੀ ਤਬਦੀਲੀ"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:76
-msgid "No Conversion"
-msgstr "ਕੋਈ ਤਬਦੀਲੀ ਨਹੀਂ"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:81
-msgid "Simplified to Traditional"
-msgstr "ਸਧਾਰਨ ਤੋਂ ਮੂਲ"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:83
-msgid "Convert Simplified Chinese to Traditional Chinese"
-msgstr "ਸਧਾਰਨ ਚੀਨੀ ਤੋਂ ਮੂਲ ਚੀਨੀ ਤਬਦੀਲ"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:86
-msgid "Traditional to Simplified"
-msgstr "ਮੂਲ ਤੋਂ ਸਧਾਰਨ"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:88
-msgid "Convert Traditional Chinese to Simplified Chinese"
-msgstr "ਮੂਲ ਚੀਨੀ ਤੋਂ ਸਧਾਰਨ ਚੀਨੀ ਅਨੁਵਾਦ"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:300
-msgid "James Su <suzhe@tsinghua.org.cn>"
-msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:425
-#: ism/modules/filter/scim_sctc_filter.cpp:555
-#: ism/modules/filter/scim_sctc_filter.cpp:571
-msgid "SC->TC"
-msgstr "SC->TC"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:431
-#: ism/modules/filter/scim_sctc_filter.cpp:559
-#: ism/modules/filter/scim_sctc_filter.cpp:575
-msgid "TC->SC"
-msgstr "TC->SC"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
-msgid "Smart Common Input Method platform "
-msgstr "ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਥਡ ਪਲੇਟਫਾਰਮ"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
-msgid ""
-"\n"
-"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-"\n"
-msgstr ""
-"\n"
-"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-"\n"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
-msgid ""
-":\n"
-"\n"
-msgstr ""
-":\n"
-"\n"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
-msgid ""
-"\n"
-"\n"
-msgstr ""
-"\n"
-"\n"
-
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
-msgid "Enable"
-msgstr "ਯੋਗ"
-
-#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
-#. gtk_tree_view_column_set_fixed_width (column, 232);
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
-msgid "Name"
-msgstr "ਨਾਂ"
-
-#: ism/utils/scimstringview.c:201
-msgid "Cursor Position"
-msgstr "ਕਰਸਰ ਸਥਿਤੀ"
-
-#: ism/utils/scimstringview.c:202
-msgid "The current position of the insertion cursor in chars."
-msgstr "ਕਰਸਰ ਦੀ ਮੌਜੂਦਾ ਸਥਿਤੀ ਅੱਖਰਾਂ ਵਿੱਚ।"
-
-#: ism/utils/scimstringview.c:211
-msgid "Maximum length"
-msgstr "ਵੱਧ ਤੋ ਵੱਧ ਲੰਬਾਈ"
-
-#: ism/utils/scimstringview.c:212
-msgid "Maximum number of characters for this string view. Zero if no maximum."
-msgstr "ਇਸ ਸਤਰ ਝਲਕ ਲਈ ਵੱਧ ਤੋਂ ਵੱਧ ਅੱਖਰਾਂ ਦੀ ਗਿਣਤੀ। ਜੇਕਰ ਵੱਧ ਤੋਂ ਵੱਧ ਨਾ ਹੋਇਆ ਤਾਂ ਸਿਫ਼ਰ ਹੋਵੇਗਾ।"
-
-#: ism/utils/scimstringview.c:221
-msgid "Maximum width"
-msgstr "ਵੱਧ ਤੋਂ ਵੱਧ ਚੌੜਾਈ"
-
-#: ism/utils/scimstringview.c:222
-msgid "Maximum width of this string view."
-msgstr "ਇਸ ਸਤਰ ਝਲਕ ਦੀ ਵੱਧ ਤੋਂ ਵੱਧ ਚੌੜਾਈ ਹੈ।"
-
-#: ism/utils/scimstringview.c:231
-msgid "Has Frame"
-msgstr "ਫਰੇਮ ਹੈ"
-
-#: ism/utils/scimstringview.c:232
-msgid "FALSE removes outside bevel from string view."
-msgstr "FALSE ਨਾਲ ਸਤਰ ਝਲਕ ਤੋਂ ਬਾਹਰੀ bevel ਹਟਾਏ ਜਾਏਗਾ।"
-
-#: ism/utils/scimstringview.c:239
-msgid "Draw cursor"
-msgstr "ਕਰਸਰ ਬਣਾਓ"
-
-#: ism/utils/scimstringview.c:240
-msgid "TRUE draw blinking cursor."
-msgstr "TRUE ਝਪਕਦੀ ਕਰਸਰ ਬਣਾਏਗਾ।"
-
-#: ism/utils/scimstringview.c:247
-msgid "Auto move cursor"
-msgstr "ਸਵੈ ਏਧਰ ਓਧਰ ਕਰਸਰ"
-
-#: ism/utils/scimstringview.c:248
-msgid "TRUE auto move cursor position when mouse clicking."
-msgstr "TRUE ਮਾਊਸ ਦਬਾਉਣ ਨਾਲ ਕਰਸਰ ਨੂੰ ਸਵੈ-ਚਾਲਤ ਏਧਰ ਓਧਰ ਕੀਤਾ ਜਾਵੇਗਾ।"
-
-#: ism/utils/scimstringview.c:255
-#, fuzzy
-msgid "Forward button press/release event"
-msgstr "ਅੱਗੇ ਬਟਨ ਦਬਾਉਣ ਘਟਨਾ"
-
-#: ism/utils/scimstringview.c:256
-#, fuzzy
-msgid "TRUE forward button press/release event to user program."
-msgstr "TRUE ਉਪਭੋਗੀ ਪਰੋਗਰਾਮ ਲਈ ਅੱਗੇ ਬਟਨ ਦਬਾਉਣ ਘਟਨਾ ਹੈ।"
-
-#: ism/utils/scimstringview.c:263
-msgid "Auto resize the widget to fit the string"
-msgstr "ਸਤਰ ਫਿੱਟ ਕਰਨ ਲਈ ਵਿਦਗਿਟ ਸਵੈ ਮੁੜ-ਅਕਾਰ"
-
-#: ism/utils/scimstringview.c:264
-msgid "TRUE Auto resize on."
-msgstr "TRUE ਸਵੈ ਮੁੜ-ਅਕਾਰ ਚਾਲੂ ਹੈ।"
-
-#: ism/utils/scimstringview.c:271
-msgid "Emit move_cursor signal when press/release the string"
-msgstr ""
-
-#: ism/utils/scimstringview.c:272
-#, fuzzy
-msgid "TRUE Emit move_cursor signal when press the string."
-msgstr "TRUE ਮਾਊਸ ਦਬਾਉਣ ਨਾਲ ਕਰਸਰ ਨੂੰ ਸਵੈ-ਚਾਲਤ ਏਧਰ ਓਧਰ ਕੀਤਾ ਜਾਵੇਗਾ।"
-
-#: ism/utils/scimstringview.c:279
-msgid "Width in chars"
-msgstr "ਅੱਖਰਾਂ ਵਿੱਚ ਚੌਡ਼ਾਈ"
-
-#: ism/utils/scimstringview.c:280
-msgid "Number of characters to leave space for in the string view."
-msgstr "ਸਤਰ ਝਲਕ ਵਿੱਚ ਖਾਲੀ ਥਾਂ ਛੱਡਣ ਲਈ ਅੱਖਰਾਂ ਦੀ ਗਿਣਤੀ ਹੈ।"
-
-#: ism/utils/scimstringview.c:289
-msgid "Scroll offset"
-msgstr "ਸੰਤੁਲਨ ਸਕਰੋਲ"
-
-#: ism/utils/scimstringview.c:290
-msgid "Number of pixels of the string view scrolled off the screen to the left"
-msgstr "ਖੱਬੇ ਤੋਂ ਸਕਰੀਨ ਨੂੰ ਸਤਰ ਝਲਕ ਸਮੇਟਣ ਲਈ ਪਿਕਸਲਾਂ ਦੀ ਗਿਣਤੀ"
-
-#: ism/utils/scimstringview.c:299
-msgid "Text"
-msgstr "ਪਾਠ"
-
-#: ism/utils/scimstringview.c:300
-msgid "The contents of the string view"
-msgstr "ਸਤਰ ਝਲਕ ਦਾ ਪਰਸੰਗ"
-
-#: ism/utils/scimkeyselection.cpp:161
-msgid "Selected _Keys:"
-msgstr "ਚੁਣੀਆਂ ਸਵਿੱਚਾਂ(_K):"
-
-#: ism/utils/scimkeyselection.cpp:206
-msgid "Key Code:"
-msgstr "ਸਵਿੱਚ ਕੋਡ:"
-
-#: ism/utils/scimkeyselection.cpp:224
-#, fuzzy
-msgid "....."
-msgstr "..."
-
-#: ism/utils/scimkeyselection.cpp:229
-msgid "Modifiers:"
-msgstr "ਸੋਧਕ:"
-
-#: ism/utils/scimkeyselection.cpp:242
-msgid "_Ctrl"
-msgstr "_Ctrl"
-
-#: ism/utils/scimkeyselection.cpp:246
-msgid "A_lt"
-msgstr "A_lt"
-
-#: ism/utils/scimkeyselection.cpp:250
-msgid "_Shift"
-msgstr "_Shift"
-
-#: ism/utils/scimkeyselection.cpp:254
-msgid "_Release"
-msgstr "ਜਾਰੀ(_R)"
-
-#: ism/utils/scimkeyselection.cpp:264
-msgid "_Meta"
-msgstr "ਮੈਟਾ(_M)"
-
-#: ism/utils/scimkeyselection.cpp:268
-msgid "S_uper"
-msgstr "ਸੁਪਰ(_u)"
-
-#: ism/utils/scimkeyselection.cpp:272
-msgid "_Hyper"
-msgstr "ਹਾਈਪਰ(_H)"
-
-#: ism/utils/scimkeyselection.cpp:337
-msgid "Please enter a Key Code first."
-msgstr "ਪਹਿਲਾਂ ਇੱਕ ਸਵਿੱਚ ਕੋਡ ਦਿਓ।"
-
-#: ism/utils/scimkeyselection.cpp:391
-#, fuzzy
-msgid ""
-"Press a key (or a key combination).\n"
-"This dialog will be closed \n"
-"when the key is released."
-msgstr ""
-"ਇੱਕ ਸਵਿੱਚ (ਜਾਂ ਇੱਕ ਸਵਿੱਚ ਜੋੜ) ਦਬਾਉ।\n"
-"ਇਹ ਵਾਰਤਾਲਾਪ ਇੱਕ ਸਵਿੱਚ ਦਬਾਉਣ ਨਾਲ ਬੰਦ ਹੋ ਜਾਵੇਗਾ।"
-
-#: ism/utils/scimkeyselection.cpp:395
-msgid "Grabbing a key."
-msgstr "ਇੱਕ ਸਵਿੱਚ ਫੜੋ।"
-
-#: ism/utils/scimkeyselection.cpp:686
-msgid "Key Selection"
-msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#: ism/utils/scimtrayicon.c:108
-msgid "Orientation"
-msgstr "ਸਥਿਤੀ"
-
-#: ism/utils/scimtrayicon.c:109
-msgid "The orientation of the tray."
-msgstr "ਟਰੇ ਦੀ ਸਥਿਤੀ ਹੈ।"
-
-#. Normal Layout
-#: ism/demos/isf_layout_efl.cpp:184
-msgid "NORMAL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:184
-msgid "click to enter TEXT"
-msgstr ""
-
-#. Number Layout
-#: ism/demos/isf_layout_efl.cpp:188
-msgid "NUMBER LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:188
-msgid "click to enter NUMBER"
-msgstr ""
-
-#. Email Layout
-#: ism/demos/isf_layout_efl.cpp:192
-msgid "EMAIL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:192
-msgid "click to enter EMAIL"
-msgstr ""
-
-#. URL Layout
-#: ism/demos/isf_layout_efl.cpp:196
-msgid "URL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:196
-msgid "click to enter URL"
-msgstr ""
-
-#. Phonenumber Layout
-#: ism/demos/isf_layout_efl.cpp:200
-msgid "PHONENUMBER LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:200
-msgid "click to enter PHONENUMBER"
-msgstr ""
-
-#. IP Layout
-#: ism/demos/isf_layout_efl.cpp:204
-msgid "IP LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:204
-msgid "click to enter IP"
-msgstr ""
-
-#. Month Layout
-#: ism/demos/isf_layout_efl.cpp:208
-msgid "MONTH LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:208
-msgid "click to enter MONTH"
-msgstr ""
-
-#. Number Only Layout
-#: ism/demos/isf_layout_efl.cpp:212
-msgid "NUMBERONLY LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:212
-msgid "click to enter NUMBERONLY"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:230
-msgid "Layout"
-msgstr ""
-
-#: ism/demos/isf_demo_efl.cpp:140
-msgid "Previous"
-msgstr ""
-
-#. bundle_add(ad->data, "navi_btn_left", NULL);
-#: ism/demos/isf_demo_efl.cpp:142
-#, fuzzy
-msgid "Next"
-msgstr "ਪਾਠ"
-
-#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
-msgstr ""
-
-#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
-msgstr ""
-
-#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
-msgstr ""
-
-#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
-msgstr ""
-
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
-msgstr ""
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "ਚੋਣ"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "ਜਰਮਨ"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "ਸਵਿੱਚ ਚੋਣ"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "ਚੋਣ"
-
-#, fuzzy
-#~ msgid "Keyboard"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "ਅਮਹੀਕਿਨ"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "ਹਮੇਸ਼ਾ"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "ਚੋਣ"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਕੀ-ਬੋਰਡ"
-
-#~ msgid "English/European"
-#~ msgstr "ਅੰਗਰੇਜ਼ੀ/ਯੂਰਪ"
-
-#~ msgid "RAW CODE"
-#~ msgstr "ਕੱਚਾ ਕੋਡ"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "ਹਾਟ ਸਵਿੱਚਾਂ:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " ਬਹੁ-ਬਾਈਟ ਇੰਕੋਡਿੰਗ ਅਤੇ ਯੂਨੀਕਰੋਡ ਵਿੱਚ ਤਬਦੀਲ ਹੋਣ ਲਈ।\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " ਇੰਪੁੱਟ ਢੰਗ ਮੁੜ-ਸੈਟ ਕਰਨ ਲਈ।\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "ਮੌਜੂਦਾ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਸਥਿਤੀ ਹੈ। ਤਬਦੀਲ ਕਰਨ ਲਈ ਦਬਾਉ।"
-
-#~ msgid "Unicode"
-#~ msgstr "ਯੂਨੀਕੋਡ"
-
-#~ msgid "Global Setup"
-#~ msgstr "ਗਲੋਬਲ ਸੈਟਅੱਪ"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "ਸਭ ਮੁੱਖ ਮੈਡੀਊਲ ਰਾਹੀਂ ਵਰਤੇ ਜਾਦੇ ਗਲੋਬਲ ਚੋਣ ਸੈਟਅੱਪ, ਜਿਸ ਵਿੱਚ X11 ਮੁੱਖ ਭੂਮੀ, GTK IMModule, "
-#~ "QT IMModule ਆਦਿ"
-
-#~ msgid "_Trigger:"
-#~ msgstr "ਤਬਦੀਲ(_T):"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "ਤਬਦੀਲੀ ਸਵਿੱਚ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "SCIM ਇੰਪੁੱਟ ਢੰਗ ਨੂੰ ਚਾਲੂ/ਬੰਦ ਕਰਨ ਲਈ ਕੁੰਜੀ ਘਟਨਾ ਹੈ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "Turn _On:"
-#~ msgstr "ਚਾਲੂ ਕਰੋ(_O):"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "ਚਾਲੂ ਕਰਨ ਵਾਲੀਆਂ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "SCIM ਇੰਪੁੱਟ ਢੰਗ ਚਾਲੂ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "ਬੰਦ ਕਰੋ(_f):"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "ਬੰਦ ਕਰਨ ਵਾਲੀਆਂ ਕੁੰਜੀਆਂ"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "SCIM ਇੰਪੁੱਟ ਢੰਗ ਬੰਦ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "_Next input method:"
-#~ msgstr "ਅੱਗੇ ਇੰਪੁੱਟ ਢੰਗ(_N):"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "ਅੱਗੇ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਚੋਣ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "ਅੱਗੇ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਚੋਣ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "_Previous input method:"
-#~ msgstr "ਪਿੱਛੇ ਇੰਪੁੱਟ ਢੰਗ(_P):"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "ਪਿਛਲਾ ਇੰਪੁੱਟ ਢੰਗ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "ਪਿਛਲਾ ਇੰਪੁੱਟ ਢੰਗ ਚਾਲੂ ਕਰਨ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਮੇਨੂ ਵੇਖਾਓ(_m):"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਮੇਨੂ ਵੇਖਾਉਣ ਲਈ ਕੁੰਜੀਆਂ ਚੁਣੋ"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਮੇਨੂ ਵੇਖਾਉਣ ਲਈ ਕੁੰਜੀਆਂ ਦੀ ਚੋਣ ਕਰੋ। ਇਸ ਨੂੰ ਸੋਧਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਦੇ ਬਟਨ ਨੂੰ ਦਬਾਉ।"
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "ਕੀ-ਬੋਰਡ ਖਾਕਾ(_K):"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "ਤੁਹਾਨੂੰ ਇੱਥੇ ਆਪਣਾ ਮੌਜੂਦਾ ਕੀ-ਬੋਰਡ ਖਾਕੇ ਦੀ ਚੋਣ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ, ਤਾਂ ਕਿ ਇੰਪੁੱਟ ਢੰਗ, ਜੋ ਕਿ ਕੀ-"
-#~ "ਬੋਰਡ ਖਾਕੇ ਦਾ ਖਿਆਲ ਰੱਖਦਾ ਹੈ, ਠੀਕ ਤਰਾਂ ਕੰਮ ਕਰ ਸਕੇ।"
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "ਕਲਾਂਇਟ ਝਰੋਖੇ 'ਚ ਪਹਿਲਾਂ-ਸੋਧ ਸਤਰ(_E)"
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਕਲਾਂਇਟ ਇੰਪੁੱਟ ਝਰੋਖੇ ਵਿੱਚ ਪਹਿਲਾਂ-ਸੋਧ ਸਤਰ ਸਿੱਧੀ ਵਿਖਾਈ ਜਾਵੇਗਾ, ਨਾ "
-#~ "ਕਿ ਇੱਕ ਆਜ਼ਾਦ ਤਰਦੇ ਝਰੋਖਾ।"
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "ਸਭ ਕਾਰਜਾਂ 'ਚ ਇੱਕੋ ਹੀ ਇੰਪੁੱਟ ਢੰਗ ਵਰਤੋਂ(_S)"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸਿਰਫ਼ ਇੱਕ ਹੀ ਇੰਪੁੱਟ ਢੰਗ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਵੇਗੀ, ਜੋ ਕਿ ਇੱਕ ਸਮੇਂ ਸਭ "
-#~ "ਕਾਰਜਾਂ ਲਈ ਵਰਤਿਆ ਜਾਵੇਗਾ। ਨਹੀਂ ਤਾਂ ਹਰ ਕਾਰਜ ਲਈ ਵੱਖਰਾ ਢੰਗ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਸੀ।"
-
-#~ msgid "Hotkeys"
-#~ msgstr "ਹਾਟ-ਸਵਿੱਚ"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr "ਤੁਸੀਂ ਇੱਥੇ ਇੰਪੁੱਟ ਢੰਗ ਯੋਗ/ਅਯੋਗ ਕਰ ਅਤੇ ਇੰਪੁੱਟ ਢੰਗ ਲਈ ਹਾਟ-ਸਵਿੱਚਾਂ ਸੈਟ ਕਰ ਸਕਦੇ ਹੋ।"
-
-#~ msgid "The installed input method services:"
-#~ msgstr "ਇੰਸਟਾਲ ਹੋਏ ਇੰਪੁੱਟ ਢੰਗ ਸੇਵਾਵਾਂ:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "ਹਾਟ-ਸਵਿੱਚ ਸੋਧ(_H)"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "ਚੁਣੇ ਇੰਪੁੱਟ ਢੰਗ ਨਾਲ ਸਬੰਧਤ ਹਾਟ-ਕੁੰਜੀਆਂ ਦੀ ਸੋਧ ਕਰੋ।"
-
-#~ msgid "Select _Filters"
-#~ msgstr "ਫਿਲਟਰ ਚੁਣੋ(_F)"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "ਫਿਲਟਰ ਦੀ ਚੋਣ ਕਰੋ, ਜੋ ਕਿ ਇਸ ਇੰਪੁੱਟ ਢੰਗ ਨਾਲ ਜੋੜਿਆ ਜਾਵੇਗਾ।"
-
-#~ msgid "_Expand"
-#~ msgstr "ਫੈਲਾਓ(_E)"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "ਸਭ ਭਾਸ਼ਾ ਵਰਗ ਫੈਲਾਓ।"
-
-#~ msgid "_Collapse"
-#~ msgstr "ਸਮੇਟੋ(_C)"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "ਸਭ ਭਾਸ਼ਾ ਵਰਗ ਸਮੇਟੋ।"
-
-#~ msgid "E_nable All"
-#~ msgstr "ਸਭ ਯੋਗ(_n)"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "ਸਭ ਇੰਪੁੱਟ ਢੰਗ ਯੋਗ ਕਰਦਾ ਹੈ।"
-
-#~ msgid "_Disable All"
-#~ msgstr "ਸਭ ਆਯੋਗ(_D)"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "ਸਭ ਇੰਪੁੱਟ ਢੰਗ ਆਯੋਗ ਹਨ।"
-
-#~ msgid "Filters"
-#~ msgstr "ਫਿਲਟਰ"
-
-#~ msgid "Languages"
-#~ msgstr "ਭਾਸ਼ਾਵਾਂ"
-
-#~ msgid "Description"
-#~ msgstr "ਵੇਰਵਾ"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "%s ਲਈ ਹਾਟ-ਸਵਿੱਚ ਸੋਧ"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "%s ਲਈ ਫਿਲਟਰ ਚੁਣੋ"
-
-#~ msgid "Move _Up"
-#~ msgstr "ਉੱਪਰ ਜਾਓ(_U)"
-
-#~ msgid "Move _Down"
-#~ msgstr "ਹੇਠਾਂ ਜਾਓ(_D)"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "GTK+-2.x ਲਾਇਬਰੇਰੀ 'ਤੇ ਪੈਨਲ ਡਾਈਮੋਨ ਹੈ।"
-
-#~ msgid "On demand"
-#~ msgstr "ਲੋੜ ਸਮੇਂ"
-
-#~ msgid "Never"
-#~ msgstr "ਕਦੇ ਨਹੀਂ"
-
-#~ msgid "ToolBar"
-#~ msgstr "ਸੰਦ-ਪੱਟੀ"
-
-#~ msgid "_Show:"
-#~ msgstr "ਵੇਖਾਓ(_S):"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "ਸਵੈ ਸਨੈਪ(_n)"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "ਇੰਪੁੱਟ ਆਈਕਾਨ ਢੰਗ ਆਈਕਾਨ ਵੇਖਾਓ(_i)"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "ਇੰਪੁੱਟ ਢੰਗ ਨਾਂ ਵੇਖਾਓ(_u)"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "ਸਮਾਂ-ਅੰਤਰਾਲ ਓਹਲੇ(_o):"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "ਟਿੱਕ ਆਈਕਾਨ ਵੇਖਾਓ(_t)"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "ਮੇਨੂ ਆਈਕਾਨ ਵੇਖਾਓ(_e)"
-
-#~ msgid "Show _help icon"
-#~ msgstr "ਸਹਾਇਤਾ ਆਈਕਾਨ ਵੇਖਾਓ(_h)"
-
-#~ msgid "Show _property label"
-#~ msgstr "ਵਿਸ਼ੇਸ਼ਤਾ ਲੇਬਲ ਵੇਖਾਓ(_p)"
-
-#~ msgid "Input window"
-#~ msgstr "ਇੰਪੁੱਟ ਝਰੋਖਾ"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "ਸ਼ਾਮਲ ਖੋਜ ਸਾਰਣੀ(_m)"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "ਲੰਬਕਾਰੀ ਖੋਜ ਸਾਰਣੀ(_V)"
-
-#~ msgid "Misc"
-#~ msgstr "ਫੁਟਕਲ"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "ਟਰੇ ਆਈਕਾਨ ਵੇਖਾਓ(_y)"
-
-#~ msgid "Stick _windows"
-#~ msgstr "ਝਰੋਖੇ ਚੇਪੋ(_w)"
-
-#~ msgid "_Font:"
-#~ msgstr "ਫੋਂਟ(_F):"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "ਜੇਕਰ \"ਹਮੇਸ਼ਾ\" ਚੋਣ ਯੋਗ ਕੀਤੀ ਗਈ ਤਾਂ, ਸੰਦ-ਪੱਟੀ ਨੂੰ ਹਮੇਸ਼ਾ ਪਰਦੇ 'ਤੇ ਵਿਖਾਇਆ ਜਾਵੇਗਾ। ਜੇਕਰ "
-#~ "\"ਲੋੜ ਸਮੇਂ\" ਦੀ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਹੀ ਵੇਖਾਇਆ ਜਾਵੇਗਾ, ਜਦੋਂ SCIM ਦੇ ਸਰਗਰਮ ਹੋਵੇਗਾ। ਜੇਕਰ \"ਕਦੇ "
-#~ "ਨਹੀਂ\" ਦੀ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇਸ ਨੂੰ ਕਦੇ ਨਹੀਂ ਵੇਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸੰਦ-ਪੱਟੀ ਸਕਰੀਨ ਹਾਸ਼ੀਏ 'ਚ ਸਮੇਟੀ ਜਾਵੇਗੀ।"
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "ਇਸ ਅੰਤਰਾਲ ਖਤਮ ਹੋਣ ਦੇ ਬਾਅਦ ਸੰਦ-ਪੱਟੀ ਨੂੰ ਓਹਲੇ ਕੀਤਾ ਜਾਵੇਗਾ। ਇਹ ਚੋਣ ਸਿਰਫ਼ ਤਾਂ ਹੀ ਠੀਕ ਹੈ, "
-#~ "ਜੇਕਰ \"ਹਮੇਸ਼ਾ ਵੇਖਾਓ\" ਦੀ ਚੋਣ ਕੀਤੀ ਹੈ। ਇਸ ਵਿਹਾਰ ਨੂੰ ਅਯੋਗ ਕਰਨ ਲਈ ਜ਼ੀਰੋ (0) ਬਣਾਓ।"
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇੰਪੁੱਟ ਢੰਗ ਆਈਕਾਨ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇੰਪੁੱਟ ਢੰਗ ਨਾਂ ਨੂੰ ਸੰਦ-ਪੱਟੀ 'ਚ ਚੁਣਿਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸਟਿੱਕੀ ਆਈਕਾਨ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਮੇਨੂ ਆਈਕਾਨ ਨੂੰ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਸਹਾਇਤਾ ਆਈਕਾਨ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਦਾ ਹੈ।"
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਇੰਪੁੱਟ ਢੰਗ ਵਿਸ਼ੇਸ਼ਤਾ ਦਾ ਪਾਠ ਲੇਬਲ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਖੋਜ ਸਾਰਣੀ ਨੂੰ ਇੰਪੁੱਟ ਝਰੋਖੇ 'ਚ ਹੀ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਖੋਜ ਸਾਰਣੀ ਨੂੰ ਲੰਬਕਾਰੀ ਰੂਪ 'ਚ ਵਿਖਾਇਆ ਜਾਵੇਗਾ।"
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ ਟਰੇ ਆਈਕਾਨ ਨੂੰ ਵੇਹੜੇ ਦੀ ਸੰਦ-ਪੱਟੀ 'ਚ ਵਿਖਾਉ।"
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "ਜੇਕਰ ਇਹ ਚੋਣ ਕੀਤੀ ਗਈ ਤਾਂ, ਸੰਦ-ਪੱਟੀ, ਇੰਪੁੱਟ ਅਤੇ ਖੋਜ ਸਾਰਣੀ ਝਰੋਖੇ ਨੂੰ ਇਸ ਦੀ ਅਸਲੀ ਸਥਿਤੀ ਨਾਲ "
-#~ "ਹੀ ਜੋੜੀ ਰੱਖਿਆ ਜਾਵੇਗਾ।"
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr "ਇੰਪੁੱਟ ਅਤੇ ਖੋਜ ਸਾਰਣੀ ਝਰੋਖੇ ਵਿੱਚ ਫੋਂਟ ਸੈਟਿੰਗ ਵਰਤੀ ਜਾਵੇਗੀ।"
-
-#~ msgid "Select Interface Font"
-#~ msgstr "ਇੰਟਰਫੇਸ ਫੋਂਟ ਚੁਣੋ"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "ਮੁੱਖ-ਭਾਗ"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "ਪੈਨਲ"
-
-#~ msgid "Extra"
-#~ msgstr "ਹੋਰ"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "SCIM ਇੰਪੁੱਟ ਢੰਗ ਸੈਟਅੱਪ"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਂਥਡ ਪਲੇਟਫਾਰਮ</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI ਸੈਟਅੱਪ ਸਹੂਲਤ</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">ਕਾਪੀਰਾਈਟ 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">%s ਮੈਡੀਊਲ ਲਈ ਸੈਟਅੱਪ ਹੈ।</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "ਕੀ ਤੁਸੀਂ SCIM ਸੈਟਅੱਪ ਨੂੰ ਬੰਦ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "ਸਭ ਸੰਰਚਨਾ ਨੂੰ ਯਕਦਮ ਲੋਡ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਨਵੀਂ ਸੰਰਚਨਾ ਨੂੰ ਪਰਭਾਵੀ ਹੋਣ ਲਈ SCIM ਨੂੰ ਮੁੜ-"
-#~ "ਚਾਲੂ ਕਰਨਾ ਨਾ ਭੁੱਲੋ।"
-
-#~ msgid "SCIM Setup"
-#~ msgstr "SCIM ਸੈਟਅੱਪ"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "GTK ਵਿਦਗਿਟ ਲਾਇਬਰੇਰੀ 'ਤੇ ਅਧਾਰਤ ਸੈਟਅੱਪ ਸਹੂਲਤ ਹੈ।"
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr "ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਂਥਸਡ ਪਲੇਟਫਾਰਮ ਲਈ ਸੈਟਅੱਪ ਸਹੂਲਤ"
-
-#~ msgid "SCIM Help"
-#~ msgstr "SCIM ਸਹਾਇਤਾ"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "ਸਮਾਰਟ ਕਾਮਨ ਇੰਪੁੱਟ ਮੈਂਥਡ"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "ਇੰਪੁੱਟ ਝਰੋਖਾ ਅਤੇ ਸੰਦ-ਪੱਟੀ ਸਟਿੱਕੀ/ਨਾ-ਸਟਿੱਕੀ ਹੈ।"
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "SCIM ਅਤੇ ਮੌਜੂਦਾ ਇੰਪੁੱਟ ਢੰਗ ਬਾਰੇ ਸੰਖੇਪ ਸਹਾਇਤਾ ਵਿਖਾਓ।"
-
-#~ msgid "Show command menu."
-#~ msgstr "ਕਮਾਂਡ ਮੇਨ ਵੇਖਾਓ।"
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "ਸੰਰਚਨਾ ਮੁੜ-ਲੋਡ"
-
-#~ msgid "Stick Windows"
-#~ msgstr "ਸਟਿੱਕੀ ਝਰੋਖੇ"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "ਸੰਦ-ਪੱਟੀ ਓਹਲੇ"
-
-#~ msgid "Help ..."
-#~ msgstr "ਸਹਾਇਤਾ ..."
-
-#~ msgid "Exit"
-#~ msgstr "ਬਾਹਰ"
-
-#~ msgid "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-#~ msgstr "zh_CN,zh_TW,zh_HK,zh_SG,ja_JP,ko_KR"
-
-#~ msgid "En"
-#~ msgstr "En"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
+#: ism/src/scim_utility.cpp:702
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
+msgid "English/Keyboard"
+msgstr ""
+
+#. return WideString ();
+#: ism/src/scim_compose_key.cpp:145
+msgid "English input service"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:703
+msgid "Amharic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:704
+msgid "Arabic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
+msgid "Arabic (Egypt)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
+msgid "Arabic (Lebanon)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:707
+msgid "Assamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
+msgid "Azerbaijani"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:709
+msgid "Belarusian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
+msgid "Bulgarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
+#: ism/src/scim_utility.cpp:914
+msgid "Bengali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:713
+msgid "Bengali (India)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:714
+msgid "Tibetan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:715
+msgid "Bosnian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
+msgid "Catalan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
+#: ism/src/scim_keyboard_layout_data.h:4596
+msgid "Czech"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
+msgid "Welsh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
+#: ism/src/scim_keyboard_layout_data.h:4598
+msgid "Danish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
+msgid "German"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:721
+msgid "Divehi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
+#: ism/src/scim_keyboard_layout_data.h:4609
+msgid "Greek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:723
+msgid "English"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
+msgid "English (Australian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
+msgid "English (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:726
+msgid "English (British)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:727
+msgid "English (Ireland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:728
+msgid "English (American)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
+#: ism/src/scim_keyboard_layout_data.h:4622
+msgid "Spanish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:731
+msgid "Spanish (Mexico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
+#: ism/src/scim_keyboard_layout_data.h:4601
+msgid "Estonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
+msgid "Basque"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:734
+msgid "Persian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
+#: ism/src/scim_keyboard_layout_data.h:4602
+msgid "Finnish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
+msgid "French"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
+msgid "Irish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
+msgid "Galician"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
+msgid "Gujarati"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
+#: ism/src/scim_utility.cpp:891
+msgid "Hebrew"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
+msgid "Hindi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
+msgid "Croatian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
+#: ism/src/scim_keyboard_layout_data.h:4610
+msgid "Hungarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:744
+msgid "Armenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:745
+msgid "Interlingua"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:746
+msgid "Indonesian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
+#: ism/src/scim_keyboard_layout_data.h:4628
+msgid "Icelandic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
+msgid "Italian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
+#: ism/src/scim_keyboard_layout_data.h:4612
+msgid "Japanese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
+msgid "Georgian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
+msgid "Kazakh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:753
+msgid "Cambodian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:754
+msgid "Kannada"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
+msgid "Korean"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:756
+msgid "Laothian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
+#: ism/src/scim_keyboard_layout_data.h:4629
+msgid "Lithuanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
+msgid "Latvian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
+msgid "Macedonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
+msgid "Malayalam"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:761
+msgid "Mongolian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
+msgid "Marathi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:763
+msgid "Malay"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:764
+msgid "Burmese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:765
+msgid "Nepali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
+msgid "Dutch"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:767
+msgid "Norwegian (Nynorsk)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:768
+msgid "Norwegian (Bokmal)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:769
+msgid "Oriya"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
+msgid "Punjabi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
+#: ism/src/scim_keyboard_layout_data.h:4614
+msgid "Polish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
+msgid "Portuguese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
+msgid "Portuguese (Brazil)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
+msgid "Romanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
+#: ism/src/scim_keyboard_layout_data.h:4618
+msgid "Russian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
+msgid "Sinhala"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
+#: ism/src/scim_keyboard_layout_data.h:4619
+msgid "Slovak"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
+#: ism/src/scim_keyboard_layout_data.h:4621
+msgid "Slovenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:780
+msgid "Albanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
+#: ism/src/scim_utility.cpp:783
+msgid "Serbian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
+#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
+msgid "Swedish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
+msgid "Swedish (Finland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
+msgid "Tamil"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
+msgid "Telugu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
+msgid "Thai"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
+#: ism/src/scim_keyboard_layout_data.h:4626
+msgid "Turkish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:791
+msgid "Uighur"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
+#: ism/src/scim_keyboard_layout_data.h:4630
+msgid "Ukrainian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
+msgid "Urdu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:794
+msgid "Uzbek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
+msgid "Vietnamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:796
+msgid "Walloon"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
+msgid "Yiddish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:799
+msgid "Chinese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
+msgid "Chinese (Simplified)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:801
+msgid "Chinese (Hongkong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:803
+msgid "Chinese (Traditional)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:806
+msgid "Dutch (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:807
+msgid "English (United States)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:808
+msgid "English (United Kingdom)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:811
+msgid "English (New Zealand)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:812
+msgid "English (Irish)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:813
+msgid "English (South Africa)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:814
+msgid "English (Jamaica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:815
+msgid "English (Belize)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:816
+msgid "English (Trinidad)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:817
+msgid "English (Zimbabwe)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:818
+msgid "English (Philippines)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:820
+msgid "French (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
+msgid "French (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:822
+msgid "French (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:823
+msgid "French (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:824
+msgid "French (Monaco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
+msgid "German (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:827
+msgid "German (Austrian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:828
+msgid "German (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:829
+msgid "German (Liechtenstein)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:831
+msgid "Italian (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:832
+msgid "Portuguese (Brazilian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:834
+msgid "Spanish (Traditional Sort)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:835
+msgid "Spanish (Mexican)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:836
+msgid "Spanish (Guatemala)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:837
+msgid "Spanish (Costa Rica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:838
+msgid "Spanish (Panama)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:839
+msgid "Spanish (Dominican Republic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:840
+msgid "Spanish (Venezuela)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:841
+msgid "Spanish (Colombia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:842
+msgid "Spanish (Peru)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:843
+msgid "Spanish (Argentina)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:844
+msgid "Spanish (Ecuador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:845
+msgid "Spanish (Chile)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:846
+msgid "Spanish (Uruguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:847
+msgid "Spanish (Paraguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:848
+msgid "Spanish (Bolivia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:849
+msgid "Spanish (El Salvador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:850
+msgid "Spanish (Honduras)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:851
+msgid "Spanish (Nicaragua)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:852
+msgid "Spanish (Puerto Rico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:856
+msgid "Afrikaans"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:859
+msgid "Malay (Malaysia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:860
+msgid "Malay (Brunei Darussalam)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
+msgid "Norwegian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:868
+msgid "Serbian (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:879
+msgid "Serbian (Cyrillic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:882
+msgid "Uzbek (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:885
+msgid "Chinese (Taiwan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:886
+msgid "Chinese (Hong Kong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:887
+msgid "Chinese (Macau)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:888
+msgid "Chinese (PRC)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:889
+msgid "Chinese (Singapore)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:892
+msgid "Arabic (Saudi Arabia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:893
+msgid "Arabic (Iraq)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:895
+msgid "Arabic (Libya)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:896
+msgid "Arabic (Algeria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:897
+msgid "Arabic (Morocco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:898
+msgid "Arabic (Tunisia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:899
+msgid "Arabic (Oman)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:900
+msgid "Arabic (Yemen)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:901
+msgid "Arabic (Syria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:902
+msgid "Arabic (Jordan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:904
+msgid "Arabic (Kuwait)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:905
+msgid "Arabic (UAE)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:906
+msgid "Arabic (Bahrain)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:907
+msgid "Arabic (Qatar)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:921
+msgid "Hausa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:925
+msgid "Xhosa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:926
+msgid "Yoruba"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:927
+msgid "Zulu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:1025
+msgid "Other"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4592
+#: ism/modules/imengine/scim_socket_imengine.cpp:409
+#: ism/modules/imengine/scim_socket_imengine.cpp:466
+#: ism/modules/imengine/scim_socket_imengine.cpp:496
+#: ism/modules/imengine/scim_socket_imengine.cpp:526
+msgid "Unknown"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4593
+msgid "English (US)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4594
+msgid "Belgian"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4597
+msgid "Czech (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4600
+msgid "Dvorak"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4605
+msgid "French (Switzerland)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4607
+msgid "German (with deadkeys)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4617
+msgid "Portuguese (Brazil US accents)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4620
+msgid "Slovak (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4623
+msgid "Spanish (CP 850)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4624
+msgid "Spanish (Latin America)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4627
+msgid "English (UK)"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:57
+msgid "Simplified-Traditional Chinese Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:60
+msgid "Convert between Simplified Chinese and Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:71
+msgid "SC-TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:73
+#: ism/modules/filter/scim_sctc_filter.cpp:78
+msgid "Simplified-Traditional Chinese conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:76
+msgid "No Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:81
+msgid "Simplified to Traditional"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:83
+msgid "Convert Simplified Chinese to Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:86
+msgid "Traditional to Simplified"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:88
+msgid "Convert Traditional Chinese to Simplified Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:300
+msgid "James Su <suzhe@tsinghua.org.cn>"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:425
+#: ism/modules/filter/scim_sctc_filter.cpp:555
+#: ism/modules/filter/scim_sctc_filter.cpp:571
+msgid "SC->TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:431
+#: ism/modules/filter/scim_sctc_filter.cpp:559
+#: ism/modules/filter/scim_sctc_filter.cpp:575
+msgid "TC->SC"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
+msgid "Smart Common Input Method platform "
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
+msgid ""
+"\n"
+"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
+msgid ""
+":\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
+msgid ""
+"\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
+msgid "Enable"
+msgstr ""
+
+#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
+#. gtk_tree_view_column_set_fixed_width (column, 232);
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
+msgid "Name"
+msgstr ""
+
+#: ism/utils/scimstringview.c:201
+msgid "Cursor Position"
+msgstr ""
+
+#: ism/utils/scimstringview.c:202
+msgid "The current position of the insertion cursor in chars."
+msgstr ""
+
+#: ism/utils/scimstringview.c:211
+msgid "Maximum length"
+msgstr ""
+
+#: ism/utils/scimstringview.c:212
+msgid "Maximum number of characters for this string view. Zero if no maximum."
+msgstr ""
+
+#: ism/utils/scimstringview.c:221
+msgid "Maximum width"
+msgstr ""
+
+#: ism/utils/scimstringview.c:222
+msgid "Maximum width of this string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:231
+msgid "Has Frame"
+msgstr ""
+
+#: ism/utils/scimstringview.c:232
+msgid "FALSE removes outside bevel from string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:239
+msgid "Draw cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:240
+msgid "TRUE draw blinking cursor."
+msgstr ""
+
+#: ism/utils/scimstringview.c:247
+msgid "Auto move cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:248
+msgid "TRUE auto move cursor position when mouse clicking."
+msgstr ""
+
+#: ism/utils/scimstringview.c:255
+msgid "Forward button press/release event"
+msgstr ""
+
+#: ism/utils/scimstringview.c:256
+msgid "TRUE forward button press/release event to user program."
+msgstr ""
+
+#: ism/utils/scimstringview.c:263
+msgid "Auto resize the widget to fit the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:264
+msgid "TRUE Auto resize on."
+msgstr ""
+
+#: ism/utils/scimstringview.c:271
+msgid "Emit move_cursor signal when press/release the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:272
+msgid "TRUE Emit move_cursor signal when press the string."
+msgstr ""
+
+#: ism/utils/scimstringview.c:279
+msgid "Width in chars"
+msgstr ""
+
+#: ism/utils/scimstringview.c:280
+msgid "Number of characters to leave space for in the string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:289
+msgid "Scroll offset"
+msgstr ""
+
+#: ism/utils/scimstringview.c:290
+msgid "Number of pixels of the string view scrolled off the screen to the left"
+msgstr ""
+
+#: ism/utils/scimstringview.c:299
+msgid "Text"
+msgstr ""
+
+#: ism/utils/scimstringview.c:300
+msgid "The contents of the string view"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:161
+msgid "Selected _Keys:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:206
+msgid "Key Code:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:224
+msgid "....."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:229
+msgid "Modifiers:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:242
+msgid "_Ctrl"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:246
+msgid "A_lt"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:250
+msgid "_Shift"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:254
+msgid "_Release"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:264
+msgid "_Meta"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:268
+msgid "S_uper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:272
+msgid "_Hyper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:337
+msgid "Please enter a Key Code first."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:391
+msgid ""
+"Press a key (or a key combination).\n"
+"This dialog will be closed \n"
+"when the key is released."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:395
+msgid "Grabbing a key."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:686
+msgid "Key Selection"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:108
+msgid "Orientation"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:109
+msgid "The orientation of the tray."
+msgstr ""
+
+#. Normal Layout
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "NORMAL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "click to enter TEXT"
+msgstr ""
+
+#. Number Layout
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "NUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "click to enter NUMBER"
+msgstr ""
+
+#. Email Layout
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "EMAIL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "click to enter EMAIL"
+msgstr ""
+
+#. URL Layout
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "URL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "click to enter URL"
+msgstr ""
+
+#. Phonenumber Layout
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "PHONENUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "click to enter PHONENUMBER"
+msgstr ""
+
+#. IP Layout
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "IP LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "click to enter IP"
+msgstr ""
+
+#. Month Layout
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "MONTH LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "click to enter MONTH"
+msgstr ""
+
+#. Number Only Layout
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "NUMBERONLY LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "click to enter NUMBERONLY"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:230
+msgid "Layout"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:140
+msgid "Previous"
+msgstr ""
+
+#. bundle_add(ad->data, "navi_btn_left", NULL);
+#: ism/demos/isf_demo_efl.cpp:142
+msgid "Next"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:196
+msgid "ISF Demo"
+msgstr ""
+
+#: ism/demos/isf_entry_event_efl.cpp:151
+msgid "Entry Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:232
+msgid "Label Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:262
+msgid "Event"
+msgstr ""
+
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
+msgstr ""
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
+#: ism/src/scim_utility.cpp:702
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
+msgid "English/Keyboard"
+msgstr ""
+
+#. return WideString ();
+#: ism/src/scim_compose_key.cpp:145
+msgid "English input service"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:703
+msgid "Amharic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:704
+msgid "Arabic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
+msgid "Arabic (Egypt)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
+msgid "Arabic (Lebanon)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:707
+msgid "Assamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
+msgid "Azerbaijani"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:709
+msgid "Belarusian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
+msgid "Bulgarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
+#: ism/src/scim_utility.cpp:914
+msgid "Bengali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:713
+msgid "Bengali (India)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:714
+msgid "Tibetan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:715
+msgid "Bosnian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
+msgid "Catalan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
+#: ism/src/scim_keyboard_layout_data.h:4596
+msgid "Czech"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
+msgid "Welsh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
+#: ism/src/scim_keyboard_layout_data.h:4598
+msgid "Danish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
+msgid "German"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:721
+msgid "Divehi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
+#: ism/src/scim_keyboard_layout_data.h:4609
+msgid "Greek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:723
+msgid "English"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
+msgid "English (Australian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
+msgid "English (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:726
+msgid "English (British)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:727
+msgid "English (Ireland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:728
+msgid "English (American)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
+#: ism/src/scim_keyboard_layout_data.h:4622
+msgid "Spanish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:731
+msgid "Spanish (Mexico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
+#: ism/src/scim_keyboard_layout_data.h:4601
+msgid "Estonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
+msgid "Basque"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:734
+msgid "Persian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
+#: ism/src/scim_keyboard_layout_data.h:4602
+msgid "Finnish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
+msgid "French"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
+msgid "Irish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
+msgid "Galician"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
+msgid "Gujarati"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
+#: ism/src/scim_utility.cpp:891
+msgid "Hebrew"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
+msgid "Hindi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
+msgid "Croatian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
+#: ism/src/scim_keyboard_layout_data.h:4610
+msgid "Hungarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:744
+msgid "Armenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:745
+msgid "Interlingua"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:746
+msgid "Indonesian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
+#: ism/src/scim_keyboard_layout_data.h:4628
+msgid "Icelandic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
+msgid "Italian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
+#: ism/src/scim_keyboard_layout_data.h:4612
+msgid "Japanese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
+msgid "Georgian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
+msgid "Kazakh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:753
+msgid "Cambodian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:754
+msgid "Kannada"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
+msgid "Korean"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:756
+msgid "Laothian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
+#: ism/src/scim_keyboard_layout_data.h:4629
+msgid "Lithuanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
+msgid "Latvian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
+msgid "Macedonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
+msgid "Malayalam"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:761
+msgid "Mongolian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
+msgid "Marathi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:763
+msgid "Malay"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:764
+msgid "Burmese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:765
+msgid "Nepali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
+msgid "Dutch"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:767
+msgid "Norwegian (Nynorsk)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:768
+msgid "Norwegian (Bokmal)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:769
+msgid "Oriya"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
+msgid "Punjabi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
+#: ism/src/scim_keyboard_layout_data.h:4614
+msgid "Polish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
+msgid "Portuguese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
+msgid "Portuguese (Brazil)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
+msgid "Romanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
+#: ism/src/scim_keyboard_layout_data.h:4618
+msgid "Russian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
+msgid "Sinhala"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
+#: ism/src/scim_keyboard_layout_data.h:4619
+msgid "Slovak"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
+#: ism/src/scim_keyboard_layout_data.h:4621
+msgid "Slovenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:780
+msgid "Albanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
+#: ism/src/scim_utility.cpp:783
+msgid "Serbian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
+#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
+msgid "Swedish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
+msgid "Swedish (Finland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
+msgid "Tamil"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
+msgid "Telugu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
+msgid "Thai"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
+#: ism/src/scim_keyboard_layout_data.h:4626
+msgid "Turkish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:791
+msgid "Uighur"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
+#: ism/src/scim_keyboard_layout_data.h:4630
+msgid "Ukrainian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
+msgid "Urdu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:794
+msgid "Uzbek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
+msgid "Vietnamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:796
+msgid "Walloon"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
+msgid "Yiddish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:799
+msgid "Chinese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
+msgid "Chinese (Simplified)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:801
+msgid "Chinese (Hongkong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:803
+msgid "Chinese (Traditional)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:806
+msgid "Dutch (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:807
+msgid "English (United States)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:808
+msgid "English (United Kingdom)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:811
+msgid "English (New Zealand)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:812
+msgid "English (Irish)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:813
+msgid "English (South Africa)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:814
+msgid "English (Jamaica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:815
+msgid "English (Belize)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:816
+msgid "English (Trinidad)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:817
+msgid "English (Zimbabwe)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:818
+msgid "English (Philippines)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:820
+msgid "French (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
+msgid "French (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:822
+msgid "French (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:823
+msgid "French (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:824
+msgid "French (Monaco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
+msgid "German (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:827
+msgid "German (Austrian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:828
+msgid "German (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:829
+msgid "German (Liechtenstein)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:831
+msgid "Italian (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:832
+msgid "Portuguese (Brazilian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:834
+msgid "Spanish (Traditional Sort)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:835
+msgid "Spanish (Mexican)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:836
+msgid "Spanish (Guatemala)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:837
+msgid "Spanish (Costa Rica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:838
+msgid "Spanish (Panama)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:839
+msgid "Spanish (Dominican Republic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:840
+msgid "Spanish (Venezuela)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:841
+msgid "Spanish (Colombia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:842
+msgid "Spanish (Peru)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:843
+msgid "Spanish (Argentina)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:844
+msgid "Spanish (Ecuador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:845
+msgid "Spanish (Chile)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:846
+msgid "Spanish (Uruguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:847
+msgid "Spanish (Paraguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:848
+msgid "Spanish (Bolivia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:849
+msgid "Spanish (El Salvador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:850
+msgid "Spanish (Honduras)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:851
+msgid "Spanish (Nicaragua)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:852
+msgid "Spanish (Puerto Rico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:856
+msgid "Afrikaans"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:859
+msgid "Malay (Malaysia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:860
+msgid "Malay (Brunei Darussalam)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
+msgid "Norwegian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:868
+msgid "Serbian (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:879
+msgid "Serbian (Cyrillic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:882
+msgid "Uzbek (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:885
+msgid "Chinese (Taiwan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:886
+msgid "Chinese (Hong Kong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:887
+msgid "Chinese (Macau)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:888
+msgid "Chinese (PRC)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:889
+msgid "Chinese (Singapore)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:892
+msgid "Arabic (Saudi Arabia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:893
+msgid "Arabic (Iraq)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:895
+msgid "Arabic (Libya)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:896
+msgid "Arabic (Algeria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:897
+msgid "Arabic (Morocco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:898
+msgid "Arabic (Tunisia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:899
+msgid "Arabic (Oman)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:900
+msgid "Arabic (Yemen)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:901
+msgid "Arabic (Syria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:902
+msgid "Arabic (Jordan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:904
+msgid "Arabic (Kuwait)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:905
+msgid "Arabic (UAE)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:906
+msgid "Arabic (Bahrain)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:907
+msgid "Arabic (Qatar)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:921
+msgid "Hausa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:925
+msgid "Xhosa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:926
+msgid "Yoruba"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:927
+msgid "Zulu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:1025
+msgid "Other"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4592
+#: ism/modules/imengine/scim_socket_imengine.cpp:409
+#: ism/modules/imengine/scim_socket_imengine.cpp:466
+#: ism/modules/imengine/scim_socket_imengine.cpp:496
+#: ism/modules/imengine/scim_socket_imengine.cpp:526
+msgid "Unknown"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4593
+msgid "English (US)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4594
+msgid "Belgian"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4597
+msgid "Czech (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4600
+msgid "Dvorak"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4605
+msgid "French (Switzerland)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4607
+msgid "German (with deadkeys)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4617
+msgid "Portuguese (Brazil US accents)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4620
+msgid "Slovak (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4623
+msgid "Spanish (CP 850)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4624
+msgid "Spanish (Latin America)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4627
+msgid "English (UK)"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:57
+msgid "Simplified-Traditional Chinese Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:60
+msgid "Convert between Simplified Chinese and Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:71
+msgid "SC-TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:73
+#: ism/modules/filter/scim_sctc_filter.cpp:78
+msgid "Simplified-Traditional Chinese conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:76
+msgid "No Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:81
+msgid "Simplified to Traditional"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:83
+msgid "Convert Simplified Chinese to Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:86
+msgid "Traditional to Simplified"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:88
+msgid "Convert Traditional Chinese to Simplified Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:300
+msgid "James Su <suzhe@tsinghua.org.cn>"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:425
+#: ism/modules/filter/scim_sctc_filter.cpp:555
+#: ism/modules/filter/scim_sctc_filter.cpp:571
+msgid "SC->TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:431
+#: ism/modules/filter/scim_sctc_filter.cpp:559
+#: ism/modules/filter/scim_sctc_filter.cpp:575
+msgid "TC->SC"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
+msgid "Smart Common Input Method platform "
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
+msgid ""
+"\n"
+"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
+msgid ""
+":\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
+msgid ""
+"\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
+msgid "Enable"
+msgstr ""
+
+#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
+#. gtk_tree_view_column_set_fixed_width (column, 232);
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
+msgid "Name"
+msgstr ""
+
+#: ism/utils/scimstringview.c:201
+msgid "Cursor Position"
+msgstr ""
+
+#: ism/utils/scimstringview.c:202
+msgid "The current position of the insertion cursor in chars."
+msgstr ""
+
+#: ism/utils/scimstringview.c:211
+msgid "Maximum length"
+msgstr ""
+
+#: ism/utils/scimstringview.c:212
+msgid "Maximum number of characters for this string view. Zero if no maximum."
+msgstr ""
+
+#: ism/utils/scimstringview.c:221
+msgid "Maximum width"
+msgstr ""
+
+#: ism/utils/scimstringview.c:222
+msgid "Maximum width of this string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:231
+msgid "Has Frame"
+msgstr ""
+
+#: ism/utils/scimstringview.c:232
+msgid "FALSE removes outside bevel from string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:239
+msgid "Draw cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:240
+msgid "TRUE draw blinking cursor."
+msgstr ""
+
+#: ism/utils/scimstringview.c:247
+msgid "Auto move cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:248
+msgid "TRUE auto move cursor position when mouse clicking."
+msgstr ""
+
+#: ism/utils/scimstringview.c:255
+msgid "Forward button press/release event"
+msgstr ""
+
+#: ism/utils/scimstringview.c:256
+msgid "TRUE forward button press/release event to user program."
+msgstr ""
+
+#: ism/utils/scimstringview.c:263
+msgid "Auto resize the widget to fit the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:264
+msgid "TRUE Auto resize on."
+msgstr ""
+
+#: ism/utils/scimstringview.c:271
+msgid "Emit move_cursor signal when press/release the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:272
+msgid "TRUE Emit move_cursor signal when press the string."
+msgstr ""
+
+#: ism/utils/scimstringview.c:279
+msgid "Width in chars"
+msgstr ""
+
+#: ism/utils/scimstringview.c:280
+msgid "Number of characters to leave space for in the string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:289
+msgid "Scroll offset"
+msgstr ""
+
+#: ism/utils/scimstringview.c:290
+msgid "Number of pixels of the string view scrolled off the screen to the left"
+msgstr ""
+
+#: ism/utils/scimstringview.c:299
+msgid "Text"
+msgstr ""
+
+#: ism/utils/scimstringview.c:300
+msgid "The contents of the string view"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:161
+msgid "Selected _Keys:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:206
+msgid "Key Code:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:224
+msgid "....."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:229
+msgid "Modifiers:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:242
+msgid "_Ctrl"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:246
+msgid "A_lt"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:250
+msgid "_Shift"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:254
+msgid "_Release"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:264
+msgid "_Meta"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:268
+msgid "S_uper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:272
+msgid "_Hyper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:337
+msgid "Please enter a Key Code first."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:391
+msgid ""
+"Press a key (or a key combination).\n"
+"This dialog will be closed \n"
+"when the key is released."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:395
+msgid "Grabbing a key."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:686
+msgid "Key Selection"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:108
+msgid "Orientation"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:109
+msgid "The orientation of the tray."
+msgstr ""
+
+#. Normal Layout
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "NORMAL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "click to enter TEXT"
+msgstr ""
+
+#. Number Layout
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "NUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "click to enter NUMBER"
+msgstr ""
+
+#. Email Layout
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "EMAIL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "click to enter EMAIL"
+msgstr ""
+
+#. URL Layout
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "URL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "click to enter URL"
+msgstr ""
+
+#. Phonenumber Layout
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "PHONENUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "click to enter PHONENUMBER"
+msgstr ""
+
+#. IP Layout
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "IP LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "click to enter IP"
+msgstr ""
+
+#. Month Layout
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "MONTH LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "click to enter MONTH"
+msgstr ""
+
+#. Number Only Layout
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "NUMBERONLY LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "click to enter NUMBERONLY"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:230
+msgid "Layout"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:140
+msgid "Previous"
+msgstr ""
+
+#. bundle_add(ad->data, "navi_btn_left", NULL);
+#: ism/demos/isf_demo_efl.cpp:142
+msgid "Next"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:196
+msgid "ISF Demo"
+msgstr ""
+
+#: ism/demos/isf_entry_event_efl.cpp:151
+msgid "Entry Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:232
+msgid "Label Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:262
+msgid "Event"
+msgstr ""
+
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
+msgstr ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-04-09 21:24+0900\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"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:3994
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "ise event demo"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
+#: ism/demos/isf_imcontrol_efl.cpp:236
msgid "isfimcontrol api"
msgstr ""
+++ /dev/null
-# Swedish translation for scim
-# Copyright (c) (c) 2006 Canonical Ltd, and Rosetta Contributors 2006
-# This file is distributed under the same license as the scim package.
-# <>, 2006.
-#
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: scim\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
-"PO-Revision-Date: 2006-09-09 21:37+0200\n"
-"Last-Translator: <>\n"
-"Language-Team: Swedish <sv@li.org>\n"
-"Language: sv\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
-#: ism/src/scim_utility.cpp:702
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
-msgid "English/Keyboard"
-msgstr "Latinsk teckeninmatning"
-
-#. return WideString ();
-#: ism/src/scim_compose_key.cpp:145
-#, fuzzy
-msgid "English input service"
-msgstr "Engelska (amerikansk)"
-
-#: ism/src/scim_utility.cpp:703
-msgid "Amharic"
-msgstr "Amhariska"
-
-#: ism/src/scim_utility.cpp:704
-msgid "Arabic"
-msgstr "Arabiska"
-
-#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
-msgid "Arabic (Egypt)"
-msgstr "Arabiska (Egypten)"
-
-#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
-msgid "Arabic (Lebanon)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:707
-msgid "Assamese"
-msgstr "Assamesiska"
-
-#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
-msgid "Azerbaijani"
-msgstr "Azerbajdzjanska"
-
-#: ism/src/scim_utility.cpp:709
-msgid "Belarusian"
-msgstr "Vitryska"
-
-#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
-msgid "Bulgarian"
-msgstr "Bulgariska"
-
-#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
-#: ism/src/scim_utility.cpp:914
-msgid "Bengali"
-msgstr "Bengali"
-
-#: ism/src/scim_utility.cpp:713
-msgid "Bengali (India)"
-msgstr "Bengali (Indien)"
-
-#: ism/src/scim_utility.cpp:714
-msgid "Tibetan"
-msgstr "Tibetanska"
-
-#: ism/src/scim_utility.cpp:715
-msgid "Bosnian"
-msgstr "Bosniska"
-
-#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
-msgid "Catalan"
-msgstr "Katalanska"
-
-#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
-#: ism/src/scim_keyboard_layout_data.h:4596
-msgid "Czech"
-msgstr "Tjeckiska"
-
-#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
-msgid "Welsh"
-msgstr "Kymriska"
-
-#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
-#: ism/src/scim_keyboard_layout_data.h:4598
-msgid "Danish"
-msgstr "Danska"
-
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
-msgid "German"
-msgstr "Tyska"
-
-#: ism/src/scim_utility.cpp:721
-msgid "Divehi"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
-#: ism/src/scim_keyboard_layout_data.h:4609
-msgid "Greek"
-msgstr "Grekiska"
-
-#: ism/src/scim_utility.cpp:723
-msgid "English"
-msgstr "Engelska"
-
-#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
-msgid "English (Australian)"
-msgstr "Engelska (australiensisk)"
-
-#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
-msgid "English (Canadian)"
-msgstr "Engelska (kanadensisk)"
-
-#: ism/src/scim_utility.cpp:726
-msgid "English (British)"
-msgstr "Engelska (brittisk)"
-
-#: ism/src/scim_utility.cpp:727
-msgid "English (Ireland)"
-msgstr "Engelska (irländsk)"
-
-#: ism/src/scim_utility.cpp:728
-msgid "English (American)"
-msgstr "Engelska (amerikansk)"
-
-#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
-#: ism/src/scim_keyboard_layout_data.h:4622
-msgid "Spanish"
-msgstr "Spanska"
-
-#: ism/src/scim_utility.cpp:731
-msgid "Spanish (Mexico)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
-#: ism/src/scim_keyboard_layout_data.h:4601
-msgid "Estonian"
-msgstr "Estniska"
-
-#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
-msgid "Basque"
-msgstr "Baskiska"
-
-#: ism/src/scim_utility.cpp:734
-msgid "Persian"
-msgstr "Persiska"
-
-#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
-#: ism/src/scim_keyboard_layout_data.h:4602
-msgid "Finnish"
-msgstr "Finska"
-
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
-msgid "French"
-msgstr "Franska"
-
-#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
-msgid "Irish"
-msgstr "Irländska"
-
-#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
-msgid "Galician"
-msgstr "Galiciska"
-
-#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
-msgid "Gujarati"
-msgstr "Gujarati"
-
-#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
-#: ism/src/scim_utility.cpp:891
-msgid "Hebrew"
-msgstr "Hebreiska"
-
-#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
-msgid "Hindi"
-msgstr "Hindi"
-
-#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
-msgid "Croatian"
-msgstr "Kroatiska"
-
-#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
-#: ism/src/scim_keyboard_layout_data.h:4610
-msgid "Hungarian"
-msgstr "Ungerska"
-
-#: ism/src/scim_utility.cpp:744
-#, fuzzy
-msgid "Armenian"
-msgstr "Rumänska"
-
-#: ism/src/scim_utility.cpp:745
-msgid "Interlingua"
-msgstr "Interlingua"
-
-#: ism/src/scim_utility.cpp:746
-msgid "Indonesian"
-msgstr "Indonesiska"
-
-#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
-#: ism/src/scim_keyboard_layout_data.h:4628
-msgid "Icelandic"
-msgstr "Isländska"
-
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
-msgid "Italian"
-msgstr "Italienska"
-
-#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
-#: ism/src/scim_keyboard_layout_data.h:4612
-msgid "Japanese"
-msgstr "Japanska"
-
-#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
-#, fuzzy
-msgid "Georgian"
-msgstr "Tyska"
-
-#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
-msgid "Kazakh"
-msgstr "Kazakisk"
-
-#: ism/src/scim_utility.cpp:753
-msgid "Cambodian"
-msgstr "Kambodjanska"
-
-#: ism/src/scim_utility.cpp:754
-msgid "Kannada"
-msgstr "Kannada"
-
-#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
-msgid "Korean"
-msgstr "Koreanska"
-
-#: ism/src/scim_utility.cpp:756
-msgid "Laothian"
-msgstr "Laotiska"
-
-#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
-#: ism/src/scim_keyboard_layout_data.h:4629
-msgid "Lithuanian"
-msgstr "Litauiska"
-
-#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
-msgid "Latvian"
-msgstr "Lettiska"
-
-#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
-msgid "Macedonian"
-msgstr "Makedonska"
-
-#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
-msgid "Malayalam"
-msgstr "Malayalam"
-
-#: ism/src/scim_utility.cpp:761
-msgid "Mongolian"
-msgstr "Mongolska"
-
-#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
-msgid "Marathi"
-msgstr "Marathi"
-
-#: ism/src/scim_utility.cpp:763
-msgid "Malay"
-msgstr "Malay"
-
-#: ism/src/scim_utility.cpp:764
-msgid "Burmese"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:765
-msgid "Nepali"
-msgstr "Nepali (Khaskura)"
-
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
-msgid "Dutch"
-msgstr "Holländska"
-
-#: ism/src/scim_utility.cpp:767
-#, fuzzy
-msgid "Norwegian (Nynorsk)"
-msgstr "Norska (nynorsk)"
-
-#: ism/src/scim_utility.cpp:768
-#, fuzzy
-msgid "Norwegian (Bokmal)"
-msgstr "Norska (bokmål)"
-
-#: ism/src/scim_utility.cpp:769
-msgid "Oriya"
-msgstr "Oriya"
-
-#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
-msgid "Punjabi"
-msgstr "Punjabi"
-
-#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
-#: ism/src/scim_keyboard_layout_data.h:4614
-msgid "Polish"
-msgstr "Polska"
-
-#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
-msgid "Portuguese"
-msgstr "Portugisiska"
-
-#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
-msgid "Portuguese (Brazil)"
-msgstr "Portugisiska (Brasilien)"
-
-#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
-msgid "Romanian"
-msgstr "Rumänska"
-
-#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
-#: ism/src/scim_keyboard_layout_data.h:4618
-msgid "Russian"
-msgstr "Ryska"
-
-#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
-msgid "Sinhala"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
-#: ism/src/scim_keyboard_layout_data.h:4619
-msgid "Slovak"
-msgstr "Slovakiska"
-
-#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
-#: ism/src/scim_keyboard_layout_data.h:4621
-msgid "Slovenian"
-msgstr "Slovenska"
-
-#: ism/src/scim_utility.cpp:780
-msgid "Albanian"
-msgstr "Albanska"
-
-#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
-#: ism/src/scim_utility.cpp:783
-msgid "Serbian"
-msgstr "Serbiska"
-
-#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
-#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
-msgid "Swedish"
-msgstr "Svenska"
-
-#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
-msgid "Swedish (Finland)"
-msgstr "Svenska (Finland)"
-
-#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
-msgid "Tamil"
-msgstr "Tamil"
-
-#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
-msgid "Telugu"
-msgstr "Telagu"
-
-#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
-msgid "Thai"
-msgstr "Thai"
-
-#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
-#: ism/src/scim_keyboard_layout_data.h:4626
-msgid "Turkish"
-msgstr "Turkiska"
-
-#: ism/src/scim_utility.cpp:791
-msgid "Uighur"
-msgstr "Uiguriska"
-
-#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
-#: ism/src/scim_keyboard_layout_data.h:4630
-msgid "Ukrainian"
-msgstr "Ukrainska"
-
-#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
-msgid "Urdu"
-msgstr "Urdu"
-
-#: ism/src/scim_utility.cpp:794
-msgid "Uzbek"
-msgstr "Uzbekiska"
-
-#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
-msgid "Vietnamese"
-msgstr "Vietnamesiska"
-
-#: ism/src/scim_utility.cpp:796
-msgid "Walloon"
-msgstr "Vallonska"
-
-#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
-msgid "Yiddish"
-msgstr "Jiddish"
-
-#: ism/src/scim_utility.cpp:799
-msgid "Chinese"
-msgstr "Kinesiska"
-
-#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
-#, fuzzy
-msgid "Chinese (Simplified)"
-msgstr "Kinesiska (förenklad)"
-
-#: ism/src/scim_utility.cpp:801
-#, fuzzy
-msgid "Chinese (Hongkong)"
-msgstr "Kinesiska (traditionell)"
-
-#: ism/src/scim_utility.cpp:803
-#, fuzzy
-msgid "Chinese (Traditional)"
-msgstr "Kinesiska (traditionell)"
-
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:806
-#, fuzzy
-msgid "Dutch (Belgian)"
-msgstr "Belgisk"
-
-#: ism/src/scim_utility.cpp:807
-#, fuzzy
-msgid "English (United States)"
-msgstr "Engelsk (US)"
-
-#: ism/src/scim_utility.cpp:808
-#, fuzzy
-msgid "English (United Kingdom)"
-msgstr "Engelska (kanadensisk)"
-
-#: ism/src/scim_utility.cpp:811
-#, fuzzy
-msgid "English (New Zealand)"
-msgstr "Engelska (irländsk)"
-
-#: ism/src/scim_utility.cpp:812
-#, fuzzy
-msgid "English (Irish)"
-msgstr "Engelska (brittisk)"
-
-#: ism/src/scim_utility.cpp:813
-#, fuzzy
-msgid "English (South Africa)"
-msgstr "Engelska (amerikansk)"
-
-#: ism/src/scim_utility.cpp:814
-#, fuzzy
-msgid "English (Jamaica)"
-msgstr "Engelska (kanadensisk)"
-
-#: ism/src/scim_utility.cpp:815
-#, fuzzy
-msgid "English (Belize)"
-msgstr "Engelska (brittisk)"
-
-#: ism/src/scim_utility.cpp:816
-#, fuzzy
-msgid "English (Trinidad)"
-msgstr "Engelska (brittisk)"
-
-#: ism/src/scim_utility.cpp:817
-#, fuzzy
-msgid "English (Zimbabwe)"
-msgstr "Engelska (kanadensisk)"
-
-#: ism/src/scim_utility.cpp:818
-#, fuzzy
-msgid "English (Philippines)"
-msgstr "Engelska (brittisk)"
-
-#: ism/src/scim_utility.cpp:819
-#, fuzzy
-msgid "French (Standard)"
-msgstr "Fransk (kanadensisk)"
-
-#: ism/src/scim_utility.cpp:820
-#, fuzzy
-msgid "French (Belgian)"
-msgstr "Fransk (kanadensisk)"
-
-#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
-msgid "French (Canadian)"
-msgstr "Fransk (kanadensisk)"
-
-#: ism/src/scim_utility.cpp:822
-#, fuzzy
-msgid "French (Swiss)"
-msgstr "Tysk (Schweizisk)"
-
-#: ism/src/scim_utility.cpp:823
-msgid "French (Luxembourg)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:824
-#, fuzzy
-msgid "French (Monaco)"
-msgstr "Fransk (kanadensisk)"
-
-#: ism/src/scim_utility.cpp:825
-#, fuzzy
-msgid "German (Standard)"
-msgstr "Tysk (med 'Tottaste')"
-
-#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
-msgid "German (Swiss)"
-msgstr "Tysk (Schweizisk)"
-
-#: ism/src/scim_utility.cpp:827
-#, fuzzy
-msgid "German (Austrian)"
-msgstr "Engelska (australiensisk)"
-
-#: ism/src/scim_utility.cpp:828
-msgid "German (Luxembourg)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:829
-#, fuzzy
-msgid "German (Liechtenstein)"
-msgstr "Tysk (Schweizisk)"
-
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:831
-#, fuzzy
-msgid "Italian (Swiss)"
-msgstr "Tysk (Schweizisk)"
-
-#: ism/src/scim_utility.cpp:832
-#, fuzzy
-msgid "Portuguese (Brazilian)"
-msgstr "Portugisiska (Brasilien)"
-
-#: ism/src/scim_utility.cpp:833
-#, fuzzy
-msgid "Portuguese (Standard)"
-msgstr "Portugisiska (Brasilien)"
-
-#: ism/src/scim_utility.cpp:834
-#, fuzzy
-msgid "Spanish (Traditional Sort)"
-msgstr "Spansk (Latinamerika)"
-
-#: ism/src/scim_utility.cpp:835
-#, fuzzy
-msgid "Spanish (Mexican)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:836
-#, fuzzy
-msgid "Spanish (Guatemala)"
-msgstr "Spansk (Latinamerika)"
-
-#: ism/src/scim_utility.cpp:837
-#, fuzzy
-msgid "Spanish (Costa Rica)"
-msgstr "Spansk (Latinamerika)"
-
-#: ism/src/scim_utility.cpp:838
-#, fuzzy
-msgid "Spanish (Panama)"
-msgstr "Spansk (Latinamerika)"
-
-#: ism/src/scim_utility.cpp:839
-#, fuzzy
-msgid "Spanish (Dominican Republic)"
-msgstr "Spansk (Latinamerika)"
-
-#: ism/src/scim_utility.cpp:840
-#, fuzzy
-msgid "Spanish (Venezuela)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:841
-#, fuzzy
-msgid "Spanish (Colombia)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:842
-#, fuzzy
-msgid "Spanish (Peru)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:843
-#, fuzzy
-msgid "Spanish (Argentina)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:844
-#, fuzzy
-msgid "Spanish (Ecuador)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:845
-#, fuzzy
-msgid "Spanish (Chile)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:846
-#, fuzzy
-msgid "Spanish (Uruguay)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:847
-#, fuzzy
-msgid "Spanish (Paraguay)"
-msgstr "Spansk (CP 850)"
-
-#: ism/src/scim_utility.cpp:848
-#, fuzzy
-msgid "Spanish (Bolivia)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:849
-msgid "Spanish (El Salvador)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:850
-#, fuzzy
-msgid "Spanish (Honduras)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:851
-#, fuzzy
-msgid "Spanish (Nicaragua)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:852
-#, fuzzy
-msgid "Spanish (Puerto Rico)"
-msgstr "Spanska (Mexiko)"
-
-#: ism/src/scim_utility.cpp:856
-msgid "Afrikaans"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:859
-#, fuzzy
-msgid "Malay (Malaysia)"
-msgstr "Malayalam"
-
-#: ism/src/scim_utility.cpp:860
-msgid "Malay (Brunei Darussalam)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
-msgid "Norwegian"
-msgstr "Norsk"
-
-#: ism/src/scim_utility.cpp:868
-#, fuzzy
-msgid "Serbian (Latin)"
-msgstr "Serbiska"
-
-#: ism/src/scim_utility.cpp:879
-msgid "Serbian (Cyrillic)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:882
-msgid "Uzbek (Latin)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:885
-#, fuzzy
-msgid "Chinese (Taiwan)"
-msgstr "Kinesiska (traditionell)"
-
-#: ism/src/scim_utility.cpp:886
-#, fuzzy
-msgid "Chinese (Hong Kong)"
-msgstr "Kinesiska (traditionell)"
-
-#: ism/src/scim_utility.cpp:887
-#, fuzzy
-msgid "Chinese (Macau)"
-msgstr "Kinesiska (traditionell)"
-
-#: ism/src/scim_utility.cpp:888
-#, fuzzy
-msgid "Chinese (PRC)"
-msgstr "Kinesiska"
-
-#: ism/src/scim_utility.cpp:889
-#, fuzzy
-msgid "Chinese (Singapore)"
-msgstr "Kinesiska (förenklad)"
-
-#: ism/src/scim_utility.cpp:892
-msgid "Arabic (Saudi Arabia)"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:893
-#, fuzzy
-msgid "Arabic (Iraq)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:895
-#, fuzzy
-msgid "Arabic (Libya)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:896
-#, fuzzy
-msgid "Arabic (Algeria)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:897
-#, fuzzy
-msgid "Arabic (Morocco)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:898
-#, fuzzy
-msgid "Arabic (Tunisia)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:899
-#, fuzzy
-msgid "Arabic (Oman)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:900
-#, fuzzy
-msgid "Arabic (Yemen)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:901
-#, fuzzy
-msgid "Arabic (Syria)"
-msgstr "Arabiska (Egypten)"
-
-#: ism/src/scim_utility.cpp:902
-#, fuzzy
-msgid "Arabic (Jordan)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:904
-#, fuzzy
-msgid "Arabic (Kuwait)"
-msgstr "Arabiska (Egypten)"
-
-#: ism/src/scim_utility.cpp:905
-#, fuzzy
-msgid "Arabic (UAE)"
-msgstr "Arabiska (Egypten)"
-
-#: ism/src/scim_utility.cpp:906
-#, fuzzy
-msgid "Arabic (Bahrain)"
-msgstr "Arabiska (Libanon)"
-
-#: ism/src/scim_utility.cpp:907
-#, fuzzy
-msgid "Arabic (Qatar)"
-msgstr "Arabiska (Egypten)"
-
-#: ism/src/scim_utility.cpp:921
-msgid "Hausa"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:925
-msgid "Xhosa"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:926
-msgid "Yoruba"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:927
-msgid "Zulu"
-msgstr ""
-
-#: ism/src/scim_utility.cpp:1025
-msgid "Other"
-msgstr "Annat"
-
-#: ism/src/scim_keyboard_layout_data.h:4592
-#: ism/modules/imengine/scim_socket_imengine.cpp:409
-#: ism/modules/imengine/scim_socket_imengine.cpp:466
-#: ism/modules/imengine/scim_socket_imengine.cpp:496
-#: ism/modules/imengine/scim_socket_imengine.cpp:526
-msgid "Unknown"
-msgstr "Okänd"
-
-#: ism/src/scim_keyboard_layout_data.h:4593
-msgid "English (US)"
-msgstr "Engelsk (US)"
-
-#: ism/src/scim_keyboard_layout_data.h:4594
-msgid "Belgian"
-msgstr "Belgisk"
-
-#: ism/src/scim_keyboard_layout_data.h:4597
-msgid "Czech (qwerty)"
-msgstr "Tjeckisk (qwerty)"
-
-#: ism/src/scim_keyboard_layout_data.h:4600
-msgid "Dvorak"
-msgstr "Dvorak"
-
-#: ism/src/scim_keyboard_layout_data.h:4605
-msgid "French (Switzerland)"
-msgstr "Fransk (schweizisk)"
-
-#: ism/src/scim_keyboard_layout_data.h:4607
-msgid "German (with deadkeys)"
-msgstr "Tysk (med 'Tottaste')"
-
-#: ism/src/scim_keyboard_layout_data.h:4617
-msgid "Portuguese (Brazil US accents)"
-msgstr "Portugisisk (Brazilien, am. diakriter)"
-
-#: ism/src/scim_keyboard_layout_data.h:4620
-msgid "Slovak (qwerty)"
-msgstr "Slovakisk (qwerty)"
-
-#: ism/src/scim_keyboard_layout_data.h:4623
-msgid "Spanish (CP 850)"
-msgstr "Spansk (CP 850)"
-
-#: ism/src/scim_keyboard_layout_data.h:4624
-msgid "Spanish (Latin America)"
-msgstr "Spansk (Latinamerika)"
-
-#: ism/src/scim_keyboard_layout_data.h:4627
-msgid "English (UK)"
-msgstr "Engelsk (UK)"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:57
-msgid "Simplified-Traditional Chinese Conversion"
-msgstr "Omvandling förenklad/traditionell kinesiska"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:60
-msgid "Convert between Simplified Chinese and Traditional Chinese"
-msgstr "Omvandla förenklad kinesiska till traditionell och vice versa"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:71
-msgid "SC-TC"
-msgstr "SC-TC"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:73
-#: ism/modules/filter/scim_sctc_filter.cpp:78
-msgid "Simplified-Traditional Chinese conversion"
-msgstr "Omvandling förenklad/traditionell kinesiska"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:76
-msgid "No Conversion"
-msgstr "Ingen omvandling"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:81
-msgid "Simplified to Traditional"
-msgstr "Förenklad till traditionell"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:83
-msgid "Convert Simplified Chinese to Traditional Chinese"
-msgstr "Omvandla förenklad kinesiska till traditionell"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:86
-msgid "Traditional to Simplified"
-msgstr "Traditionell till förenklad"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:88
-msgid "Convert Traditional Chinese to Simplified Chinese"
-msgstr "Omvandla traditionell kinesiska till förenklad"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:300
-msgid "James Su <suzhe@tsinghua.org.cn>"
-msgstr "James Su <suzhe@tsinghua.org.cn>"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:425
-#: ism/modules/filter/scim_sctc_filter.cpp:555
-#: ism/modules/filter/scim_sctc_filter.cpp:571
-msgid "SC->TC"
-msgstr "SC->TC"
-
-#: ism/modules/filter/scim_sctc_filter.cpp:431
-#: ism/modules/filter/scim_sctc_filter.cpp:559
-#: ism/modules/filter/scim_sctc_filter.cpp:575
-msgid "TC->SC"
-msgstr "TC->SC"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
-msgid "Smart Common Input Method platform "
-msgstr "Scim-plattformen (Smart Common Input Method)"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
-msgid ""
-"\n"
-"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-"\n"
-msgstr ""
-"\n"
-"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
-"\n"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
-msgid ""
-":\n"
-"\n"
-msgstr ""
-":\n"
-"\n"
-
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
-msgid ""
-"\n"
-"\n"
-msgstr ""
-"\n"
-"\n"
-
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
-msgid "Enable"
-msgstr "Aktivera"
-
-#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
-#. gtk_tree_view_column_set_fixed_width (column, 232);
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
-msgid "Name"
-msgstr "Namn"
-
-#: ism/utils/scimstringview.c:201
-msgid "Cursor Position"
-msgstr "Markörens position"
-
-#: ism/utils/scimstringview.c:202
-msgid "The current position of the insertion cursor in chars."
-msgstr "Markörens läge i texten, räknat i tecken."
-
-#: ism/utils/scimstringview.c:211
-msgid "Maximum length"
-msgstr "Maxlängd"
-
-#: ism/utils/scimstringview.c:212
-msgid "Maximum number of characters for this string view. Zero if no maximum."
-msgstr ""
-"Högsta antal tecken att visa i den här teckenraden. Välj 0 för att inte "
-"begränsa längden."
-
-#: ism/utils/scimstringview.c:221
-msgid "Maximum width"
-msgstr "Maxbredd"
-
-#: ism/utils/scimstringview.c:222
-msgid "Maximum width of this string view."
-msgstr "Maximal bredd för att visa den här teckenraden."
-
-#: ism/utils/scimstringview.c:231
-msgid "Has Frame"
-msgstr "Med ram"
-
-#: ism/utils/scimstringview.c:232
-msgid "FALSE removes outside bevel from string view."
-msgstr "Om FALSK tas ytterkanten bort från strängvyn."
-
-#: ism/utils/scimstringview.c:239
-msgid "Draw cursor"
-msgstr "Visa markör"
-
-#: ism/utils/scimstringview.c:240
-msgid "TRUE draw blinking cursor."
-msgstr "Om SANT använd blinkande markör."
-
-#: ism/utils/scimstringview.c:247
-msgid "Auto move cursor"
-msgstr "Flytta markören automatiskt"
-
-#: ism/utils/scimstringview.c:248
-msgid "TRUE auto move cursor position when mouse clicking."
-msgstr "Flytta markören automatiskt vid musklick."
-
-#: ism/utils/scimstringview.c:255
-#, fuzzy
-msgid "Forward button press/release event"
-msgstr "Direktmata tangenter"
-
-#: ism/utils/scimstringview.c:256
-#, fuzzy
-msgid "TRUE forward button press/release event to user program."
-msgstr "Skicka tangentnedtryckningar till användarprogrammet."
-
-#: ism/utils/scimstringview.c:263
-msgid "Auto resize the widget to fit the string"
-msgstr "Anpassa storleken automatiskt till teckenraden."
-
-#: ism/utils/scimstringview.c:264
-msgid "TRUE Auto resize on."
-msgstr "Storleken anpassas automatiskt."
-
-#: ism/utils/scimstringview.c:271
-msgid "Emit move_cursor signal when press/release the string"
-msgstr ""
-
-#: ism/utils/scimstringview.c:272
-#, fuzzy
-msgid "TRUE Emit move_cursor signal when press the string."
-msgstr "Flytta markören automatiskt vid musklick."
-
-#: ism/utils/scimstringview.c:279
-msgid "Width in chars"
-msgstr "Bredd (antal tecken)"
-
-#: ism/utils/scimstringview.c:280
-msgid "Number of characters to leave space for in the string view."
-msgstr "Antal tecken att göra rum för i teckenraden."
-
-#: ism/utils/scimstringview.c:289
-msgid "Scroll offset"
-msgstr "Mjuk rullning"
-
-#: ism/utils/scimstringview.c:290
-msgid "Number of pixels of the string view scrolled off the screen to the left"
-msgstr "Antal pixlar i teckenraden som rullat över vänsterkanten på skärmen"
-
-#: ism/utils/scimstringview.c:299
-msgid "Text"
-msgstr "Text"
-
-#: ism/utils/scimstringview.c:300
-msgid "The contents of the string view"
-msgstr "Innehållet i teckenraden"
-
-#: ism/utils/scimkeyselection.cpp:161
-msgid "Selected _Keys:"
-msgstr "Valda _kortkommandon:"
-
-#: ism/utils/scimkeyselection.cpp:206
-msgid "Key Code:"
-msgstr "Tangentkod:"
-
-#: ism/utils/scimkeyselection.cpp:224
-#, fuzzy
-msgid "....."
-msgstr "..."
-
-#: ism/utils/scimkeyselection.cpp:229
-msgid "Modifiers:"
-msgstr "Specialtangenter:"
-
-#: ism/utils/scimkeyselection.cpp:242
-msgid "_Ctrl"
-msgstr "_Ctrl"
-
-#: ism/utils/scimkeyselection.cpp:246
-msgid "A_lt"
-msgstr "A_lt"
-
-#: ism/utils/scimkeyselection.cpp:250
-msgid "_Shift"
-msgstr "_Shift"
-
-#: ism/utils/scimkeyselection.cpp:254
-msgid "_Release"
-msgstr "_Release"
-
-#: ism/utils/scimkeyselection.cpp:264
-msgid "_Meta"
-msgstr "_Meta"
-
-#: ism/utils/scimkeyselection.cpp:268
-msgid "S_uper"
-msgstr "S_uper"
-
-#: ism/utils/scimkeyselection.cpp:272
-msgid "_Hyper"
-msgstr "_Hyper"
-
-#: ism/utils/scimkeyselection.cpp:337
-msgid "Please enter a Key Code first."
-msgstr "Ange tangentkod först."
-
-#: ism/utils/scimkeyselection.cpp:391
-#, fuzzy
-msgid ""
-"Press a key (or a key combination).\n"
-"This dialog will be closed \n"
-"when the key is released."
-msgstr ""
-"Tryck på en tangent eller på en tangentkombination.\n"
-"Den här rutan försvinner när du släpper tangenten."
-
-#: ism/utils/scimkeyselection.cpp:395
-msgid "Grabbing a key."
-msgstr "Plockar tangent"
-
-#: ism/utils/scimkeyselection.cpp:686
-msgid "Key Selection"
-msgstr "Tangentval"
-
-#: ism/utils/scimtrayicon.c:108
-msgid "Orientation"
-msgstr "Riktning"
-
-#: ism/utils/scimtrayicon.c:109
-msgid "The orientation of the tray."
-msgstr "Panelens riktning."
-
-#. Normal Layout
-#: ism/demos/isf_layout_efl.cpp:184
-msgid "NORMAL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:184
-msgid "click to enter TEXT"
-msgstr ""
-
-#. Number Layout
-#: ism/demos/isf_layout_efl.cpp:188
-msgid "NUMBER LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:188
-msgid "click to enter NUMBER"
-msgstr ""
-
-#. Email Layout
-#: ism/demos/isf_layout_efl.cpp:192
-msgid "EMAIL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:192
-msgid "click to enter EMAIL"
-msgstr ""
-
-#. URL Layout
-#: ism/demos/isf_layout_efl.cpp:196
-msgid "URL LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:196
-msgid "click to enter URL"
-msgstr ""
-
-#. Phonenumber Layout
-#: ism/demos/isf_layout_efl.cpp:200
-msgid "PHONENUMBER LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:200
-msgid "click to enter PHONENUMBER"
-msgstr ""
-
-#. IP Layout
-#: ism/demos/isf_layout_efl.cpp:204
-msgid "IP LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:204
-msgid "click to enter IP"
-msgstr ""
-
-#. Month Layout
-#: ism/demos/isf_layout_efl.cpp:208
-msgid "MONTH LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:208
-msgid "click to enter MONTH"
-msgstr ""
-
-#. Number Only Layout
-#: ism/demos/isf_layout_efl.cpp:212
-msgid "NUMBERONLY LAYOUT"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:212
-msgid "click to enter NUMBERONLY"
-msgstr ""
-
-#: ism/demos/isf_layout_efl.cpp:230
-msgid "Layout"
-msgstr ""
-
-#: ism/demos/isf_demo_efl.cpp:140
-msgid "Previous"
-msgstr ""
-
-#. bundle_add(ad->data, "navi_btn_left", NULL);
-#: ism/demos/isf_demo_efl.cpp:142
-#, fuzzy
-msgid "Next"
-msgstr "Text"
-
-#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
-msgstr ""
-
-#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
-msgstr ""
-
-#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
-msgstr ""
-
-#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
-msgstr ""
-
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
-msgstr ""
-
-#, fuzzy
-#~ msgid "Selection"
-#~ msgstr "Tangentval"
-
-#, fuzzy
-#~ msgid "Option"
-#~ msgstr "Alternativ"
-
-#, fuzzy
-#~ msgid "General"
-#~ msgstr "Tyska"
-
-#, fuzzy
-#~ msgid "S/W keyboard"
-#~ msgstr "Latinsk teckeninmatning"
-
-#, fuzzy
-#~ msgid "Keyboard selection"
-#~ msgstr "Tangentval"
-
-#, fuzzy
-#~ msgid "Keyboard option"
-#~ msgstr "Tangentval"
-
-#, fuzzy
-#~ msgid "H/W keyboard"
-#~ msgstr "Latinsk teckeninmatning"
-
-#, fuzzy
-#~ msgid "option"
-#~ msgstr "Alternativ"
-
-#, fuzzy
-#~ msgid "Keyboard"
-#~ msgstr "Latinsk teckeninmatning"
-
-#, fuzzy
-#~ msgid "Automatic"
-#~ msgstr "Amhariska"
-
-#, fuzzy
-#~ msgid "Always used"
-#~ msgstr "Alltid"
-
-#, fuzzy
-#~ msgid "%s Option"
-#~ msgstr "Alternativ"
-
-#, fuzzy
-#~ msgid "Keyboards"
-#~ msgstr "Latinsk teckeninmatning"
-
-#~ msgid "English/European"
-#~ msgstr "Västerländsk"
-
-#~ msgid "RAW CODE"
-#~ msgstr "TANGENTKOD"
-
-#~ msgid "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr "(C) 2002-2006 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid ""
-#~ "Hot Keys:\n"
-#~ "\n"
-#~ " Control+u:\n"
-#~ " switch between Multibyte encoding and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " reset the input method.\n"
-#~ msgstr ""
-#~ "Snabbtangenter:\n"
-#~ "\n"
-#~ " Ctrl+u:\n"
-#~ " Växla mellan multibytekodning and Unicode.\n"
-#~ "\n"
-#~ " Esc:\n"
-#~ " återställ inmatningsmetod.\n"
-
-#~ msgid "The status of the current input method. Click to change it."
-#~ msgstr "Aktuell inmatningsmetod. Klicka för att ändra."
-
-#~ msgid "Unicode"
-#~ msgstr "Unicode"
-
-#~ msgid "Global Setup"
-#~ msgstr "Allmänna inställningar"
-
-#~ msgid ""
-#~ "Setup the global options used by All FrontEnd modules, including X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-#~ msgstr ""
-#~ "Allmänna inställningar som gäller alla användargränssnitt, t.ex. X11 "
-#~ "FrontEnd, GTK IMModule, QT IMModule etc."
-
-#~ msgid "_Trigger:"
-#~ msgstr "Ak_tiveringstangent"
-
-#~ msgid "Select the trigger keys"
-#~ msgstr "Välj aktiveringstangenter"
-
-#~ msgid ""
-#~ "The key events to turn on/off SCIM input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som öppnar och stänger SCIM-inmatningen. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "Turn _On:"
-#~ msgstr "Slå på (_o):"
-
-#~ msgid "Select the Turn On keys"
-#~ msgstr "Välj på-kommando"
-
-#~ msgid ""
-#~ "The key events to turn on SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som öppnar SCIM-inmatningen. Klicka påknappen till "
-#~ "höger för att ändra."
-
-#~ msgid "Turn O_ff:"
-#~ msgstr "Stäng av (_f):"
-
-#~ msgid "Select the Turn Off keys"
-#~ msgstr "Välj på-kommando"
-
-#~ msgid ""
-#~ "The key events to turn off SCIM input method. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som stänger SCIM-inmatningen. Klicka påknappen till "
-#~ "höger för att ändra."
-
-#~ msgid "_Next input method:"
-#~ msgstr "_Nästa inmatningsmetod:"
-
-#~ msgid "Select the next input method keys"
-#~ msgstr "Välj kommando för att hoppa till nästa"
-
-#~ msgid ""
-#~ "The key events to switch to the next input method. Click on the button on "
-#~ "the right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som växlar till nästa inmatningsmetod. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "_Previous input method:"
-#~ msgstr "Föregående inmatningsmetod (_p):"
-
-#~ msgid "Select the previous input method keys"
-#~ msgstr "Välj kommando för att hoppa till föregående"
-
-#~ msgid ""
-#~ "The key events to switch to the previous input method. Click on the "
-#~ "button on the right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som växlar till föregående inmatningsmetod. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "Show input method _menu:"
-#~ msgstr "Visa _meny med inmatningsmetoder:"
-
-#~ msgid "Select the show input method menu keys"
-#~ msgstr "Välj kommando för att visa menyn med inmatningsmetoder"
-
-#~ msgid ""
-#~ "The key events to show the input method menu. Click on the button on the "
-#~ "right to edit it."
-#~ msgstr ""
-#~ "Tangentkombinationer som visar menyn med inmatningsmetoder. Klicka "
-#~ "påknappen till höger för att ändra."
-
-#~ msgid "_Keyboard Layout:"
-#~ msgstr "Tangentbordslayout (_k):"
-
-#~ msgid ""
-#~ "You should choose your currently used keyboard layout here so that input "
-#~ "methods, who care about keyboard layout, could work correctly."
-#~ msgstr ""
-#~ "Här väljer du vilket slags tangentbord du har. Det är nödvändigt föratt "
-#~ "vissa inmatningsmetoder skall fungera."
-
-#~ msgid "_Embed Preedit String into client window"
-#~ msgstr "Visa okonverterad_e latinska tecken i ditt arbetsfönster."
-
-#~ msgid ""
-#~ "If this option is checked, the preedit string will be displayed directly "
-#~ "in the client input window, rather than in a independent float window."
-#~ msgstr ""
-#~ "Med det här alternativet förbockat kommer de latinska bokstäver du "
-#~ "skriveratt visas direkt i fönstret du arbetar i. Annars visas de i ett "
-#~ "popup-fönster."
-
-#~ msgid "_Share the same input method among all applications"
-#~ msgstr "Använd _samma inmatningsmetod i alla program"
-
-#~ msgid ""
-#~ "If this option is checked, then only one input method could be used by "
-#~ "all applications at the same time.Otherwise different input method could "
-#~ "be used by each application."
-#~ msgstr ""
-#~ "Med det här alternativet förbockat kommer bara en inmatningsmetod att "
-#~ "användasi taget. Annars kan varje program använda olika metoder."
-
-#~ msgid "Hotkeys"
-#~ msgstr "Kortkommandon"
-
-#~ msgid ""
-#~ "You can enable/disable input methods and set hotkeys for input methods "
-#~ "here."
-#~ msgstr ""
-#~ "Slå av och på inmatningsmetoder och ange kortkommandon för olika "
-#~ "inmatningsmetoder här."
-
-#~ msgid "The installed input method services:"
-#~ msgstr "Installerade inmatningsmetoder:"
-
-#~ msgid "Edit _Hotkeys"
-#~ msgstr "Redigera kortkommandon (_h)"
-
-#~ msgid "Edit Hotkeys associated with the selected input method."
-#~ msgstr "Välj kortkommandon för vald inmatningsmetod."
-
-#~ msgid "Select _Filters"
-#~ msgstr "Välj _filter"
-
-#~ msgid "Select the Filters which will be attached to this input method."
-#~ msgstr "Välj filter att använda till den här inmatningsmetoden."
-
-#~ msgid "_Expand"
-#~ msgstr "Visa allt (_e)"
-
-#~ msgid "Expand all language categories."
-#~ msgstr "Visa alla inmatningsmetoder"
-
-#~ msgid "_Collapse"
-#~ msgstr "Göm allt (_c)"
-
-#~ msgid "Collapse all language categories."
-#~ msgstr "Göm alla inmatningsmetoder."
-
-#~ msgid "E_nable All"
-#~ msgstr "Markera alla (_n)"
-
-#~ msgid "Enable all input methods."
-#~ msgstr "Gör alla inmatningsmetoder tillgängliga för användning."
-
-#~ msgid "_Disable All"
-#~ msgstr "Avmarkera alla (_d)"
-
-#~ msgid "Disable all input methods."
-#~ msgstr "Gör alla inmatningsmetoder otillgängliga för användning."
-
-#~ msgid "Filters"
-#~ msgstr "Filter"
-
-#~ msgid "Languages"
-#~ msgstr "Språk"
-
-#~ msgid "Description"
-#~ msgstr "Beskrivning"
-
-#~ msgid "Edit Hotkeys for %s"
-#~ msgstr "Välj kortkommando för %s"
-
-#~ msgid "Select Filters for %s"
-#~ msgstr "Välj filter för %s"
-
-#~ msgid "Move _Up"
-#~ msgstr "Flytta _uppåt"
-
-#~ msgid "Move _Down"
-#~ msgstr "Flytta ne_dåt"
-
-#~ msgid "GTK"
-#~ msgstr "GTK"
-
-#~ msgid "A panel daemon based on GTK+-2.x library."
-#~ msgstr "Paneldemon byggd på GTK+-2.x-biblioteket."
-
-#~ msgid "On demand"
-#~ msgstr "På begäran"
-
-#~ msgid "Never"
-#~ msgstr "Aldrig"
-
-#~ msgid "ToolBar"
-#~ msgstr "Verktygsfält"
-
-#~ msgid "_Show:"
-#~ msgstr "Vi_sa"
-
-#~ msgid "Auto s_nap"
-#~ msgstr "Fäst vid skärmka_nt"
-
-#~ msgid "Show _input method icon"
-#~ msgstr "Visa ikon för aktuell inmatningsmetod"
-
-#~ msgid "Show inp_ut method name"
-#~ msgstr "Visa namn på akt_uell inmatningsmetod"
-
-#~ msgid "Hide time_out:"
-#~ msgstr "Time_out för att dölja:"
-
-#~ msgid "Show s_tick icon"
-#~ msgstr "Vi_sa fixeringsikonen"
-
-#~ msgid "Show m_enu icon"
-#~ msgstr "Visa m_enyikonen"
-
-#~ msgid "Show _help icon"
-#~ msgstr "Visa _hjälpikonen"
-
-#~ msgid "Show _property label"
-#~ msgstr "Visa inmatningsalternativ"
-
-#~ msgid "Input window"
-#~ msgstr "Inmatningsfönster"
-
-#~ msgid "E_mbedded lookup table"
-#~ msgstr "Infälld teckenväljare (_m)"
-
-#~ msgid "_Vertical lookup table"
-#~ msgstr "_Vertikal teckenväljare"
-
-#~ msgid "Misc"
-#~ msgstr "Diverse"
-
-#~ msgid "Show tra_y icon"
-#~ msgstr "Visa ikon i s_ystempanelen"
-
-#~ msgid "Stick _windows"
-#~ msgstr "Fäst fönster (_w)"
-
-#~ msgid "_Font:"
-#~ msgstr "Typsnitt (_f)"
-
-#~ msgid ""
-#~ "If option \"Always\" is selected, the toolbar will always be shown on the "
-#~ "screen. If option \"On demand\" is selected, it will only be shown when "
-#~ "SCIM is activated. If option \"Never\" is selected, it will never be "
-#~ "shown."
-#~ msgstr ""
-#~ "Välj \"Alltid\" för att ständigt visa verktygsfältet på skärmen. Välj\"På "
-#~ "begäran\" för att bara visa verktygsfältet när Scim är aktivt.Välj \"Never"
-#~ "\" för att aldrig visa verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar will be snapped to the screen "
-#~ "border."
-#~ msgstr ""
-#~ "Med det här alternativet förbockat är verktygsfältet alltid fäst mot "
-#~ "skärmkanten."
-
-#~ msgid ""
-#~ "The toolbar will be hidden out after this timeout is elapsed. This option "
-#~ "is only valid when \"Always show\" is selected. Set to zero to disable "
-#~ "this behavior."
-#~ msgstr ""
-#~ "Verktygsfältet döljs efter så här lång tid. Den här inställningen används "
-#~ "baranär du har valt \"Alltid\" i menyn till vänster. Välj 0 för att "
-#~ "aldrig döljaverktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the input method icon will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas alltid ikonen för "
-#~ "aktuellinmatningsmetod i verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the input method name will be showed on the "
-#~ "toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas alltid namnet på "
-#~ "aktuellinmatningsmetod i verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the stick icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas häftstiftsikonen i "
-#~ "verktygsfältet"
-
-#~ msgid ""
-#~ "If this option is checked, the menu icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas menyikonen i verktygsfältet"
-
-#~ msgid ""
-#~ "If this option is checked, the help icon will be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas hjälpikonen i verktygsfältet."
-
-#~ msgid ""
-#~ "If this option is checked, the text label of input method properties will "
-#~ "be showed on the toolbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas en textlapp med "
-#~ "inmatningsalternativi verktygsfältet"
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be embedded into the "
-#~ "input window."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat, visas teckenväljaren infälld "
-#~ "iinmatningsfönstret."
-
-#~ msgid ""
-#~ "If this option is checked, the lookup table will be displayed vertically."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat används en vertikal teckenväljare."
-
-#~ msgid ""
-#~ "If this option is checked, the tray icon will be showed on the desktop's "
-#~ "taskbar."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat visas panelikonen i "
-#~ "skrivbordetssystempanel."
-
-#~ msgid ""
-#~ "If this option is checked, the toolbar, input and lookup table windows "
-#~ "will be sticked to its original position."
-#~ msgstr ""
-#~ "Med det här alternativet förkryssat fixeras verktygsfält, "
-#~ "inmatningsfönsteroch teckenväljare på en given plats."
-
-#~ msgid "The font setting will be used in the input and lookup table windows."
-#~ msgstr ""
-#~ "Det typsnitt som kommer att användas i inmatnings- och teckenväljarfönster"
-
-#~ msgid "Select Interface Font"
-#~ msgstr "Välj typsnitt för användargränssnittet"
-
-#~ msgid "SCIM"
-#~ msgstr "SCIM"
-
-#~ msgid "FrontEnd"
-#~ msgstr "FrontEnd"
-
-#~ msgid "IMEngine"
-#~ msgstr "IMEngine"
-
-#~ msgid "Panel"
-#~ msgstr "Panel"
-
-#~ msgid "Extra"
-#~ msgstr "Extra"
-
-#~ msgid "SCIM Input Method Setup"
-#~ msgstr "Inställningar för Scim"
-
-#~ msgid ""
-#~ " <span size=\"20000\">Smart Common Input Method platform</span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">GUI Setup Utility</span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-#~ msgstr ""
-#~ " <span size=\"20000\">Scim-plattformen (Smart Common Input Method)</"
-#~ "span> \n"
-#~ "\n"
-#~ "<span size=\"16000\" style=\"italic\">Grafiskt inställningsverktyg</"
-#~ "span>\n"
-#~ "\n"
-#~ "\n"
-#~ "\n"
-#~ "<span size=\"12000\">Copyright 2002-2004, James Su <suzhe@tsinghua.org."
-#~ "cn></span>"
-
-#~ msgid "<span size=\"x-large\">The Setup for %s modules.</span>"
-#~ msgstr "<span size=\"x-large\">Inställningar för %s-moduler.</span>"
-
-#~ msgid "Are you sure you want to quit SCIM Setup?"
-#~ msgstr "Vill du avsluta inställningsverktyget för Scim?"
-
-#~ msgid ""
-#~ "Not all configuration can be reloaded on the fly. Don't forget to restart "
-#~ "SCIM in order to let all of the new configuration take effect."
-#~ msgstr ""
-#~ "Många inställningar kräver att du startar om Scim innan du fortsätter,för "
-#~ "att de skall börja verka."
-
-#~ msgid "SCIM Setup"
-#~ msgstr "Inställningar för Scim"
-
-#~ msgid "Integrated Setup Utility based on GTK Widget library."
-#~ msgstr "Inställningsverktyg byggt på GTK Widget-biblioteket."
-
-#~ msgid "Setup utility for Smart Common Input Method platform"
-#~ msgstr ""
-#~ "Inställningsverktyg för Scim-plattformen (Smart Common Input Method)"
-
-#~ msgid "SCIM Help"
-#~ msgstr "Om Scim"
-
-#~ msgid "Smart Common Input Method"
-#~ msgstr "Scim (Smart Common Input Method)"
-
-#~ msgid "Stick/unstick the input window and the toolbar."
-#~ msgstr "Fixera/lossa inmatningsfönstret och verktygsfältet"
-
-#~ msgid "Show a brief help about SCIM and the current input method."
-#~ msgstr "Kortfattad information om Scim och om aktuell inmatningsmetod."
-
-#~ msgid "Show command menu."
-#~ msgstr "Visa kommandomenyn."
-
-#~ msgid ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-#~ msgstr ""
-#~ "\n"
-#~ "(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>"
-
-#~ msgid "Reload Configuration"
-#~ msgstr "Återhämta inställningar"
-
-#~ msgid "Stick Windows"
-#~ msgstr "Fixera fönster"
-
-#~ msgid "Hide Toolbar"
-#~ msgstr "Dölj verktygsfältet"
-
-#~ msgid "Help ..."
-#~ msgstr "Hjälp ..."
-
-#~ msgid "Exit"
-#~ msgstr "Avsluta"
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\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"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
+#: ism/src/scim_utility.cpp:702
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
+msgid "English/Keyboard"
+msgstr ""
+
+#. return WideString ();
+#: ism/src/scim_compose_key.cpp:145
+msgid "English input service"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:703
+msgid "Amharic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:704
+msgid "Arabic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
+msgid "Arabic (Egypt)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
+msgid "Arabic (Lebanon)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:707
+msgid "Assamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
+msgid "Azerbaijani"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:709
+msgid "Belarusian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
+msgid "Bulgarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
+#: ism/src/scim_utility.cpp:914
+msgid "Bengali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:713
+msgid "Bengali (India)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:714
+msgid "Tibetan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:715
+msgid "Bosnian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
+msgid "Catalan"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
+#: ism/src/scim_keyboard_layout_data.h:4596
+msgid "Czech"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
+msgid "Welsh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
+#: ism/src/scim_keyboard_layout_data.h:4598
+msgid "Danish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
+msgid "German"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:721
+msgid "Divehi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
+#: ism/src/scim_keyboard_layout_data.h:4609
+msgid "Greek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:723
+msgid "English"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
+msgid "English (Australian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
+msgid "English (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:726
+msgid "English (British)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:727
+msgid "English (Ireland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:728
+msgid "English (American)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
+#: ism/src/scim_keyboard_layout_data.h:4622
+msgid "Spanish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:731
+msgid "Spanish (Mexico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
+#: ism/src/scim_keyboard_layout_data.h:4601
+msgid "Estonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
+msgid "Basque"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:734
+msgid "Persian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
+#: ism/src/scim_keyboard_layout_data.h:4602
+msgid "Finnish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
+msgid "French"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
+msgid "Irish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
+msgid "Galician"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
+msgid "Gujarati"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
+#: ism/src/scim_utility.cpp:891
+msgid "Hebrew"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
+msgid "Hindi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
+msgid "Croatian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
+#: ism/src/scim_keyboard_layout_data.h:4610
+msgid "Hungarian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:744
+msgid "Armenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:745
+msgid "Interlingua"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:746
+msgid "Indonesian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
+#: ism/src/scim_keyboard_layout_data.h:4628
+msgid "Icelandic"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
+msgid "Italian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
+#: ism/src/scim_keyboard_layout_data.h:4612
+msgid "Japanese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
+msgid "Georgian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
+msgid "Kazakh"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:753
+msgid "Cambodian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:754
+msgid "Kannada"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
+msgid "Korean"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:756
+msgid "Laothian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
+#: ism/src/scim_keyboard_layout_data.h:4629
+msgid "Lithuanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
+msgid "Latvian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
+msgid "Macedonian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
+msgid "Malayalam"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:761
+msgid "Mongolian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
+msgid "Marathi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:763
+msgid "Malay"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:764
+msgid "Burmese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:765
+msgid "Nepali"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
+msgid "Dutch"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:767
+msgid "Norwegian (Nynorsk)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:768
+msgid "Norwegian (Bokmal)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:769
+msgid "Oriya"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
+msgid "Punjabi"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
+#: ism/src/scim_keyboard_layout_data.h:4614
+msgid "Polish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
+msgid "Portuguese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
+msgid "Portuguese (Brazil)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
+msgid "Romanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
+#: ism/src/scim_keyboard_layout_data.h:4618
+msgid "Russian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
+msgid "Sinhala"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
+#: ism/src/scim_keyboard_layout_data.h:4619
+msgid "Slovak"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
+#: ism/src/scim_keyboard_layout_data.h:4621
+msgid "Slovenian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:780
+msgid "Albanian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
+#: ism/src/scim_utility.cpp:783
+msgid "Serbian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
+#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
+msgid "Swedish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
+msgid "Swedish (Finland)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
+msgid "Tamil"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
+msgid "Telugu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
+msgid "Thai"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
+#: ism/src/scim_keyboard_layout_data.h:4626
+msgid "Turkish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:791
+msgid "Uighur"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
+#: ism/src/scim_keyboard_layout_data.h:4630
+msgid "Ukrainian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
+msgid "Urdu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:794
+msgid "Uzbek"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
+msgid "Vietnamese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:796
+msgid "Walloon"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
+msgid "Yiddish"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:799
+msgid "Chinese"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
+msgid "Chinese (Simplified)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:801
+msgid "Chinese (Hongkong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:803
+msgid "Chinese (Traditional)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:806
+msgid "Dutch (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:807
+msgid "English (United States)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:808
+msgid "English (United Kingdom)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:811
+msgid "English (New Zealand)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:812
+msgid "English (Irish)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:813
+msgid "English (South Africa)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:814
+msgid "English (Jamaica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:815
+msgid "English (Belize)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:816
+msgid "English (Trinidad)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:817
+msgid "English (Zimbabwe)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:818
+msgid "English (Philippines)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:820
+msgid "French (Belgian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
+msgid "French (Canadian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:822
+msgid "French (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:823
+msgid "French (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:824
+msgid "French (Monaco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
+msgid "German (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:827
+msgid "German (Austrian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:828
+msgid "German (Luxembourg)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:829
+msgid "German (Liechtenstein)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:831
+msgid "Italian (Swiss)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:832
+msgid "Portuguese (Brazilian)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:834
+msgid "Spanish (Traditional Sort)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:835
+msgid "Spanish (Mexican)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:836
+msgid "Spanish (Guatemala)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:837
+msgid "Spanish (Costa Rica)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:838
+msgid "Spanish (Panama)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:839
+msgid "Spanish (Dominican Republic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:840
+msgid "Spanish (Venezuela)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:841
+msgid "Spanish (Colombia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:842
+msgid "Spanish (Peru)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:843
+msgid "Spanish (Argentina)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:844
+msgid "Spanish (Ecuador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:845
+msgid "Spanish (Chile)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:846
+msgid "Spanish (Uruguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:847
+msgid "Spanish (Paraguay)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:848
+msgid "Spanish (Bolivia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:849
+msgid "Spanish (El Salvador)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:850
+msgid "Spanish (Honduras)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:851
+msgid "Spanish (Nicaragua)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:852
+msgid "Spanish (Puerto Rico)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:856
+msgid "Afrikaans"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:859
+msgid "Malay (Malaysia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:860
+msgid "Malay (Brunei Darussalam)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
+msgid "Norwegian"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:868
+msgid "Serbian (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:879
+msgid "Serbian (Cyrillic)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:882
+msgid "Uzbek (Latin)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:885
+msgid "Chinese (Taiwan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:886
+msgid "Chinese (Hong Kong)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:887
+msgid "Chinese (Macau)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:888
+msgid "Chinese (PRC)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:889
+msgid "Chinese (Singapore)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:892
+msgid "Arabic (Saudi Arabia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:893
+msgid "Arabic (Iraq)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:895
+msgid "Arabic (Libya)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:896
+msgid "Arabic (Algeria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:897
+msgid "Arabic (Morocco)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:898
+msgid "Arabic (Tunisia)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:899
+msgid "Arabic (Oman)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:900
+msgid "Arabic (Yemen)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:901
+msgid "Arabic (Syria)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:902
+msgid "Arabic (Jordan)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:904
+msgid "Arabic (Kuwait)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:905
+msgid "Arabic (UAE)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:906
+msgid "Arabic (Bahrain)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:907
+msgid "Arabic (Qatar)"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:921
+msgid "Hausa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:925
+msgid "Xhosa"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:926
+msgid "Yoruba"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:927
+msgid "Zulu"
+msgstr ""
+
+#: ism/src/scim_utility.cpp:1025
+msgid "Other"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4592
+#: ism/modules/imengine/scim_socket_imengine.cpp:409
+#: ism/modules/imengine/scim_socket_imengine.cpp:466
+#: ism/modules/imengine/scim_socket_imengine.cpp:496
+#: ism/modules/imengine/scim_socket_imengine.cpp:526
+msgid "Unknown"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4593
+msgid "English (US)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4594
+msgid "Belgian"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4597
+msgid "Czech (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4600
+msgid "Dvorak"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4605
+msgid "French (Switzerland)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4607
+msgid "German (with deadkeys)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4617
+msgid "Portuguese (Brazil US accents)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4620
+msgid "Slovak (qwerty)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4623
+msgid "Spanish (CP 850)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4624
+msgid "Spanish (Latin America)"
+msgstr ""
+
+#: ism/src/scim_keyboard_layout_data.h:4627
+msgid "English (UK)"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:57
+msgid "Simplified-Traditional Chinese Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:60
+msgid "Convert between Simplified Chinese and Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:71
+msgid "SC-TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:73
+#: ism/modules/filter/scim_sctc_filter.cpp:78
+msgid "Simplified-Traditional Chinese conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:76
+msgid "No Conversion"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:81
+msgid "Simplified to Traditional"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:83
+msgid "Convert Simplified Chinese to Traditional Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:86
+msgid "Traditional to Simplified"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:88
+msgid "Convert Traditional Chinese to Simplified Chinese"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:300
+msgid "James Su <suzhe@tsinghua.org.cn>"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:425
+#: ism/modules/filter/scim_sctc_filter.cpp:555
+#: ism/modules/filter/scim_sctc_filter.cpp:571
+msgid "SC->TC"
+msgstr ""
+
+#: ism/modules/filter/scim_sctc_filter.cpp:431
+#: ism/modules/filter/scim_sctc_filter.cpp:559
+#: ism/modules/filter/scim_sctc_filter.cpp:575
+msgid "TC->SC"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
+msgid "Smart Common Input Method platform "
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
+msgid ""
+"\n"
+"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
+msgid ""
+":\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
+msgid ""
+"\n"
+"\n"
+msgstr ""
+
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
+msgid "Enable"
+msgstr ""
+
+#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
+#. gtk_tree_view_column_set_fixed_width (column, 232);
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
+msgid "Name"
+msgstr ""
+
+#: ism/utils/scimstringview.c:201
+msgid "Cursor Position"
+msgstr ""
+
+#: ism/utils/scimstringview.c:202
+msgid "The current position of the insertion cursor in chars."
+msgstr ""
+
+#: ism/utils/scimstringview.c:211
+msgid "Maximum length"
+msgstr ""
+
+#: ism/utils/scimstringview.c:212
+msgid "Maximum number of characters for this string view. Zero if no maximum."
+msgstr ""
+
+#: ism/utils/scimstringview.c:221
+msgid "Maximum width"
+msgstr ""
+
+#: ism/utils/scimstringview.c:222
+msgid "Maximum width of this string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:231
+msgid "Has Frame"
+msgstr ""
+
+#: ism/utils/scimstringview.c:232
+msgid "FALSE removes outside bevel from string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:239
+msgid "Draw cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:240
+msgid "TRUE draw blinking cursor."
+msgstr ""
+
+#: ism/utils/scimstringview.c:247
+msgid "Auto move cursor"
+msgstr ""
+
+#: ism/utils/scimstringview.c:248
+msgid "TRUE auto move cursor position when mouse clicking."
+msgstr ""
+
+#: ism/utils/scimstringview.c:255
+msgid "Forward button press/release event"
+msgstr ""
+
+#: ism/utils/scimstringview.c:256
+msgid "TRUE forward button press/release event to user program."
+msgstr ""
+
+#: ism/utils/scimstringview.c:263
+msgid "Auto resize the widget to fit the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:264
+msgid "TRUE Auto resize on."
+msgstr ""
+
+#: ism/utils/scimstringview.c:271
+msgid "Emit move_cursor signal when press/release the string"
+msgstr ""
+
+#: ism/utils/scimstringview.c:272
+msgid "TRUE Emit move_cursor signal when press the string."
+msgstr ""
+
+#: ism/utils/scimstringview.c:279
+msgid "Width in chars"
+msgstr ""
+
+#: ism/utils/scimstringview.c:280
+msgid "Number of characters to leave space for in the string view."
+msgstr ""
+
+#: ism/utils/scimstringview.c:289
+msgid "Scroll offset"
+msgstr ""
+
+#: ism/utils/scimstringview.c:290
+msgid "Number of pixels of the string view scrolled off the screen to the left"
+msgstr ""
+
+#: ism/utils/scimstringview.c:299
+msgid "Text"
+msgstr ""
+
+#: ism/utils/scimstringview.c:300
+msgid "The contents of the string view"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:161
+msgid "Selected _Keys:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:206
+msgid "Key Code:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:224
+msgid "....."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:229
+msgid "Modifiers:"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:242
+msgid "_Ctrl"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:246
+msgid "A_lt"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:250
+msgid "_Shift"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:254
+msgid "_Release"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:264
+msgid "_Meta"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:268
+msgid "S_uper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:272
+msgid "_Hyper"
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:337
+msgid "Please enter a Key Code first."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:391
+msgid ""
+"Press a key (or a key combination).\n"
+"This dialog will be closed \n"
+"when the key is released."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:395
+msgid "Grabbing a key."
+msgstr ""
+
+#: ism/utils/scimkeyselection.cpp:686
+msgid "Key Selection"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:108
+msgid "Orientation"
+msgstr ""
+
+#: ism/utils/scimtrayicon.c:109
+msgid "The orientation of the tray."
+msgstr ""
+
+#. Normal Layout
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "NORMAL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "click to enter TEXT"
+msgstr ""
+
+#. Number Layout
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "NUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "click to enter NUMBER"
+msgstr ""
+
+#. Email Layout
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "EMAIL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "click to enter EMAIL"
+msgstr ""
+
+#. URL Layout
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "URL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "click to enter URL"
+msgstr ""
+
+#. Phonenumber Layout
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "PHONENUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "click to enter PHONENUMBER"
+msgstr ""
+
+#. IP Layout
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "IP LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "click to enter IP"
+msgstr ""
+
+#. Month Layout
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "MONTH LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "click to enter MONTH"
+msgstr ""
+
+#. Number Only Layout
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "NUMBERONLY LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "click to enter NUMBERONLY"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:230
+msgid "Layout"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:140
+msgid "Previous"
+msgstr ""
+
+#. bundle_add(ad->data, "navi_btn_left", NULL);
+#: ism/demos/isf_demo_efl.cpp:142
+msgid "Next"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:196
+msgid "ISF Demo"
+msgstr ""
+
+#: ism/demos/isf_entry_event_efl.cpp:151
+msgid "Entry Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:232
+msgid "Label Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:262
+msgid "Event"
+msgstr ""
+
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
+msgstr ""
SRCROOT=../..
POTFILES=POTFILES.in
-#ALL_LINGUAS= am az be ca cs da de el en_CA en_GB es et fi fr hr hu it ja ko lv mk ml ms nb ne nl pa pl pt pt_BR ru rw sk sl sr sr@Latn sv ta tr uk vi zh_CN zh_TW
ALL_LINGUAS="de_DE el_GR en es_ES fr_FR it_IT ja_JP ko_KR nl_NL pt_PT ru_RU tr_TR zh_CN zh_HK zh_TW"
XGETTEXT=/usr/bin/xgettext
msgstr ""
"Project-Id-Version: zh_CN\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\n"
"PO-Revision-Date: 2004-06-20 14:57+0800\n"
"Last-Translator: James Su <suzhe@tsinghua.org.cn>\n"
"Language-Team: Simplified Chinese <zh@li.org>\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.3.1\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "Danish"
msgstr "丹麦语"
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr "德语"
msgid "Finnish"
msgstr "芬兰语"
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr "法语"
msgid "Icelandic"
msgstr "冰岛语"
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr "意大利语"
msgid "Nepali"
msgstr "尼泊尔语"
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr "荷兰语"
msgstr "波兰语"
#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr "葡萄牙语"
msgid "Chinese (Traditional)"
msgstr "繁体中文"
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr "荷兰语(标准)"
-
#: ism/src/scim_utility.cpp:806
msgid "Dutch (Belgian)"
msgstr "荷兰语(比利时)"
msgid "English (Philippines)"
msgstr "英语(菲律宾)"
-#: ism/src/scim_utility.cpp:819
-msgid "French (Standard)"
-msgstr "法语(标准)"
-
#: ism/src/scim_utility.cpp:820
msgid "French (Belgian)"
msgstr "法语(比利时)"
msgid "French (Monaco)"
msgstr "法语(摩纳哥)"
-#: ism/src/scim_utility.cpp:825
-msgid "German (Standard)"
-msgstr "德语(标准)"
-
#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr "德语(瑞士)"
msgid "German (Liechtenstein)"
msgstr "德语(列支敦士登)"
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr "意大利语(标准)"
-
#: ism/src/scim_utility.cpp:831
msgid "Italian (Swiss)"
msgstr "意大利语(瑞士)"
msgid "Portuguese (Brazilian)"
msgstr "葡萄牙语(巴西)"
-#: ism/src/scim_utility.cpp:833
-msgid "Portuguese (Standard)"
-msgstr "葡萄牙语(标准)"
-
#: ism/src/scim_utility.cpp:834
msgid "Spanish (Traditional Sort)"
msgstr "西班牙语(传统)"
msgstr ""
#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
+msgid "ISF Demo"
msgstr ""
#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
+msgid "Entry Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
+msgid "Label Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
+msgid "Event"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
msgstr ""
-#~ msgid "Automatic"
-#~ msgstr "自动"
-
-#~ msgid "Languages"
-#~ msgstr "语言"
-
-#~ msgid "Text Input Setting"
-#~ msgstr "文本输入设置"
-
-#~ msgid "Writing Language"
-#~ msgstr "文本语言"
-
-#~ msgid "Input Text Setting"
-#~ msgstr "设置"
-
#~ msgid "English/European"
#~ msgstr "英语/欧洲语"
msgstr ""
"Project-Id-Version: ISF 2.2\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-01-19 15:30+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\n"
"PO-Revision-Date: 2011-01-01 22:41+0800\n"
"Last-Translator: Haifeng Deng <haifeng.deng@samsung.com>\n"
"Language-Team: scim@freedesktop.org\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ism/src/scim_compose_key.cpp:127 ism/src/scim_imengine.cpp:659
-#: ism/src/scim_panel_agent.cpp:345 ism/src/scim_panel_agent.cpp:4334
-#: ism/src/scim_utility.cpp:701
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1740
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
+#: ism/src/scim_utility.cpp:702
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgstr "英文鍵盤"
#. return WideString ();
-#: ism/src/scim_compose_key.cpp:146
+#: ism/src/scim_compose_key.cpp:145
msgid "English input service"
msgstr "英文輸入"
-#: ism/src/scim_utility.cpp:702
+#: ism/src/scim_utility.cpp:703
msgid "Amharic"
msgstr "阿姆哈拉語"
-#: ism/src/scim_utility.cpp:703
+#: ism/src/scim_utility.cpp:704
msgid "Arabic"
msgstr "阿拉伯文"
-#: ism/src/scim_utility.cpp:704 ism/src/scim_utility.cpp:893
+#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:894
msgid "Arabic (Egypt)"
msgstr "阿拉伯文(埃及)"
-#: ism/src/scim_utility.cpp:705 ism/src/scim_utility.cpp:902
+#: ism/src/scim_utility.cpp:706 ism/src/scim_utility.cpp:903
msgid "Arabic (Lebanon)"
msgstr "阿拉伯文(黎巴嫩)"
-#: ism/src/scim_utility.cpp:706
+#: ism/src/scim_utility.cpp:707
msgid "Assamese"
msgstr "阿薩姆語"
-#: ism/src/scim_utility.cpp:707 ism/src/scim_utility.cpp:918
+#: ism/src/scim_utility.cpp:708 ism/src/scim_utility.cpp:919
msgid "Azerbaijani"
msgstr "亞賽拜然語"
-#: ism/src/scim_utility.cpp:708
+#: ism/src/scim_utility.cpp:709
msgid "Belarusian"
msgstr "白俄羅斯語"
-#: ism/src/scim_utility.cpp:709 ism/src/scim_utility.cpp:874
+#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:875
msgid "Bulgarian"
msgstr "保加利亞語"
-#: ism/src/scim_utility.cpp:710 ism/src/scim_utility.cpp:711
-#: ism/src/scim_utility.cpp:913
+#: ism/src/scim_utility.cpp:711 ism/src/scim_utility.cpp:712
+#: ism/src/scim_utility.cpp:914
msgid "Bengali"
msgstr "孟加拉語"
-#: ism/src/scim_utility.cpp:712
+#: ism/src/scim_utility.cpp:713
msgid "Bengali (India)"
msgstr "孟加拉語(印度)"
-#: ism/src/scim_utility.cpp:713
+#: ism/src/scim_utility.cpp:714
msgid "Tibetan"
msgstr "藏語"
-#: ism/src/scim_utility.cpp:714
+#: ism/src/scim_utility.cpp:715
msgid "Bosnian"
msgstr "波斯尼亞語"
-#: ism/src/scim_utility.cpp:715 ism/src/scim_utility.cpp:853
+#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:854
msgid "Catalan"
msgstr "加泰羅尼亞語"
-#: ism/src/scim_utility.cpp:716 ism/src/scim_utility.cpp:863
+#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:864
#: ism/src/scim_keyboard_layout_data.h:4596
msgid "Czech"
msgstr "捷克語"
-#: ism/src/scim_utility.cpp:717 ism/src/scim_utility.cpp:923
+#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:924
msgid "Welsh"
msgstr "威爾斯語"
-#: ism/src/scim_utility.cpp:718 ism/src/scim_utility.cpp:854
+#: ism/src/scim_utility.cpp:719 ism/src/scim_utility.cpp:855
#: ism/src/scim_keyboard_layout_data.h:4598
msgid "Danish"
msgstr "丹麥語"
-#: ism/src/scim_utility.cpp:719 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr "德文"
-#: ism/src/scim_utility.cpp:720
+#: ism/src/scim_utility.cpp:721
msgid "Divehi"
msgstr "迪韋西語"
-#: ism/src/scim_utility.cpp:721 ism/src/scim_utility.cpp:873
+#: ism/src/scim_utility.cpp:722 ism/src/scim_utility.cpp:874
#: ism/src/scim_keyboard_layout_data.h:4609
msgid "Greek"
msgstr "希臘文"
-#: ism/src/scim_utility.cpp:722
+#: ism/src/scim_utility.cpp:723
msgid "English"
msgstr "英文"
-#: ism/src/scim_utility.cpp:723 ism/src/scim_utility.cpp:808
+#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
msgid "English (Australian)"
msgstr "英文(澳洲)"
-#: ism/src/scim_utility.cpp:724 ism/src/scim_utility.cpp:809
+#: ism/src/scim_utility.cpp:725 ism/src/scim_utility.cpp:810
msgid "English (Canadian)"
msgstr "英文(加拿大)"
-#: ism/src/scim_utility.cpp:725
+#: ism/src/scim_utility.cpp:726
msgid "English (British)"
msgstr "英文(英國)"
-#: ism/src/scim_utility.cpp:726
+#: ism/src/scim_utility.cpp:727
msgid "English (Ireland)"
msgstr "英文(愛爾蘭)"
-#: ism/src/scim_utility.cpp:727
+#: ism/src/scim_utility.cpp:728
msgid "English (American)"
msgstr "英文(美國)"
-#: ism/src/scim_utility.cpp:728 ism/src/scim_utility.cpp:729
+#: ism/src/scim_utility.cpp:729 ism/src/scim_utility.cpp:730
#: ism/src/scim_keyboard_layout_data.h:4622
msgid "Spanish"
msgstr "西班牙文"
-#: ism/src/scim_utility.cpp:730
+#: ism/src/scim_utility.cpp:731
msgid "Spanish (Mexico)"
msgstr "西班牙文(墨西哥)"
-#: ism/src/scim_utility.cpp:731 ism/src/scim_utility.cpp:870
+#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:871
#: ism/src/scim_keyboard_layout_data.h:4601
msgid "Estonian"
msgstr "愛沙尼亞語"
-#: ism/src/scim_utility.cpp:732 ism/src/scim_utility.cpp:852
+#: ism/src/scim_utility.cpp:733 ism/src/scim_utility.cpp:853
msgid "Basque"
msgstr "巴斯克語"
-#: ism/src/scim_utility.cpp:733
+#: ism/src/scim_utility.cpp:734
msgid "Persian"
msgstr "波斯語"
-#: ism/src/scim_utility.cpp:734 ism/src/scim_utility.cpp:857
+#: ism/src/scim_utility.cpp:735 ism/src/scim_utility.cpp:858
#: ism/src/scim_keyboard_layout_data.h:4602
msgid "Finnish"
msgstr "芬蘭文"
-#: ism/src/scim_utility.cpp:735 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr "法文"
-#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:921
+#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:922
msgid "Irish"
msgstr "愛爾蘭語"
-#: ism/src/scim_utility.cpp:737 ism/src/scim_utility.cpp:919
+#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:920
msgid "Galician"
msgstr "加利西亞語"
-#: ism/src/scim_utility.cpp:738 ism/src/scim_utility.cpp:914
+#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:915
msgid "Gujarati"
msgstr "古吉拉特語"
-#: ism/src/scim_utility.cpp:739 ism/src/scim_utility.cpp:748
-#: ism/src/scim_utility.cpp:890
+#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:749
+#: ism/src/scim_utility.cpp:891
msgid "Hebrew"
msgstr "希伯來文"
-#: ism/src/scim_utility.cpp:740 ism/src/scim_utility.cpp:909
+#: ism/src/scim_utility.cpp:741 ism/src/scim_utility.cpp:910
msgid "Hindi"
msgstr "北印度文"
-#: ism/src/scim_utility.cpp:741 ism/src/scim_keyboard_layout_data.h:4595
+#: ism/src/scim_utility.cpp:742 ism/src/scim_keyboard_layout_data.h:4595
msgid "Croatian"
msgstr "克羅埃西亞語"
-#: ism/src/scim_utility.cpp:742 ism/src/scim_utility.cpp:864
+#: ism/src/scim_utility.cpp:743 ism/src/scim_utility.cpp:865
#: ism/src/scim_keyboard_layout_data.h:4610
msgid "Hungarian"
msgstr "匈牙利文"
-#: ism/src/scim_utility.cpp:743
+#: ism/src/scim_utility.cpp:744
msgid "Armenian"
msgstr "亞美尼亞語"
-#: ism/src/scim_utility.cpp:744
+#: ism/src/scim_utility.cpp:745
msgid "Interlingua"
msgstr "世界語"
-#: ism/src/scim_utility.cpp:745
+#: ism/src/scim_utility.cpp:746
msgid "Indonesian"
msgstr "印尼語"
-#: ism/src/scim_utility.cpp:746 ism/src/scim_utility.cpp:856
+#: ism/src/scim_utility.cpp:747 ism/src/scim_utility.cpp:857
#: ism/src/scim_keyboard_layout_data.h:4628
msgid "Icelandic"
msgstr "冰島語"
-#: ism/src/scim_utility.cpp:747 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr "義大利文"
-#: ism/src/scim_utility.cpp:749 ism/src/scim_utility.cpp:882
+#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:883
#: ism/src/scim_keyboard_layout_data.h:4612
msgid "Japanese"
msgstr "日文"
-#: ism/src/scim_utility.cpp:750 ism/src/scim_utility.cpp:917
+#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:918
msgid "Georgian"
msgstr "喬治亚語"
-#: ism/src/scim_utility.cpp:751 ism/src/scim_utility.cpp:875
+#: ism/src/scim_utility.cpp:752 ism/src/scim_utility.cpp:876
msgid "Kazakh"
msgstr "哈薩克語"
-#: ism/src/scim_utility.cpp:752
+#: ism/src/scim_utility.cpp:753
msgid "Cambodian"
msgstr "柬埔寨文"
-#: ism/src/scim_utility.cpp:753
+#: ism/src/scim_utility.cpp:754
msgid "Kannada"
msgstr "卡納達語"
-#: ism/src/scim_utility.cpp:754 ism/src/scim_utility.cpp:883
+#: ism/src/scim_utility.cpp:755 ism/src/scim_utility.cpp:884
msgid "Korean"
msgstr "韓文"
-#: ism/src/scim_utility.cpp:755
+#: ism/src/scim_utility.cpp:756
msgid "Laothian"
msgstr "老撾語"
-#: ism/src/scim_utility.cpp:756 ism/src/scim_utility.cpp:872
+#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:873
#: ism/src/scim_keyboard_layout_data.h:4629
msgid "Lithuanian"
msgstr "立陶宛文"
-#: ism/src/scim_utility.cpp:757 ism/src/scim_utility.cpp:871
+#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:872
msgid "Latvian"
msgstr "拉脫維亞語"
-#: ism/src/scim_utility.cpp:758 ism/src/scim_utility.cpp:876
+#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:877
msgid "Macedonian"
msgstr "馬其頓語"
-#: ism/src/scim_utility.cpp:759 ism/src/scim_utility.cpp:915
+#: ism/src/scim_utility.cpp:760 ism/src/scim_utility.cpp:916
msgid "Malayalam"
msgstr "馬拉雅拉姆語"
-#: ism/src/scim_utility.cpp:760
+#: ism/src/scim_utility.cpp:761
msgid "Mongolian"
msgstr "蒙古文"
-#: ism/src/scim_utility.cpp:761 ism/src/scim_utility.cpp:911
+#: ism/src/scim_utility.cpp:762 ism/src/scim_utility.cpp:912
msgid "Marathi"
msgstr "馬拉地語"
-#: ism/src/scim_utility.cpp:762
+#: ism/src/scim_utility.cpp:763
msgid "Malay"
msgstr "馬來語"
-#: ism/src/scim_utility.cpp:763
+#: ism/src/scim_utility.cpp:764
msgid "Burmese"
msgstr "緬甸語"
-#: ism/src/scim_utility.cpp:764
+#: ism/src/scim_utility.cpp:765
msgid "Nepali"
msgstr "尼泊爾語"
-#: ism/src/scim_utility.cpp:765 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr "荷蘭文"
-#: ism/src/scim_utility.cpp:766
+#: ism/src/scim_utility.cpp:767
msgid "Norwegian (Nynorsk)"
msgstr "挪威語(尼諾斯克)"
-#: ism/src/scim_utility.cpp:767
+#: ism/src/scim_utility.cpp:768
msgid "Norwegian (Bokmal)"
msgstr "挪威語(博克馬尓)"
-#: ism/src/scim_utility.cpp:768
+#: ism/src/scim_utility.cpp:769
msgid "Oriya"
msgstr "奧里雅語"
-#: ism/src/scim_utility.cpp:769 ism/src/scim_utility.cpp:916
+#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:917
msgid "Punjabi"
msgstr "旁遮普語"
-#: ism/src/scim_utility.cpp:770 ism/src/scim_utility.cpp:865
+#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:866
#: ism/src/scim_keyboard_layout_data.h:4614
msgid "Polish"
msgstr "波蘭文"
-#: ism/src/scim_utility.cpp:771 ism/src/scim_utility.cpp:773
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr "葡萄牙文"
-#: ism/src/scim_utility.cpp:772 ism/src/scim_keyboard_layout_data.h:4616
+#: ism/src/scim_utility.cpp:773 ism/src/scim_keyboard_layout_data.h:4616
msgid "Portuguese (Brazil)"
msgstr "葡萄牙文(巴西)"
-#: ism/src/scim_utility.cpp:774 ism/src/scim_utility.cpp:866
+#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:867
msgid "Romanian"
msgstr "羅馬尼亞語"
-#: ism/src/scim_utility.cpp:775 ism/src/scim_utility.cpp:877
+#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:878
#: ism/src/scim_keyboard_layout_data.h:4618
msgid "Russian"
msgstr "俄文"
-#: ism/src/scim_utility.cpp:776 ism/src/scim_utility.cpp:922
+#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:923
msgid "Sinhala"
msgstr "僧伽羅語"
-#: ism/src/scim_utility.cpp:777 ism/src/scim_utility.cpp:868
+#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
#: ism/src/scim_keyboard_layout_data.h:4619
msgid "Slovak"
msgstr "斯洛伐克語"
-#: ism/src/scim_utility.cpp:778 ism/src/scim_utility.cpp:869
+#: ism/src/scim_utility.cpp:779 ism/src/scim_utility.cpp:870
#: ism/src/scim_keyboard_layout_data.h:4621
msgid "Slovenian"
msgstr "斯洛文尼亞語"
-#: ism/src/scim_utility.cpp:779
+#: ism/src/scim_utility.cpp:780
msgid "Albanian"
msgstr "亞爾巴尼亞語"
-#: ism/src/scim_utility.cpp:780 ism/src/scim_utility.cpp:781
-#: ism/src/scim_utility.cpp:782
+#: ism/src/scim_utility.cpp:781 ism/src/scim_utility.cpp:782
+#: ism/src/scim_utility.cpp:783
msgid "Serbian"
msgstr "塞爾維亞語"
-#: ism/src/scim_utility.cpp:783 ism/src/scim_utility.cpp:785
-#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4625
+#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:786
+#: ism/src/scim_utility.cpp:862 ism/src/scim_keyboard_layout_data.h:4625
msgid "Swedish"
msgstr "瑞典語"
-#: ism/src/scim_utility.cpp:784 ism/src/scim_utility.cpp:862
+#: ism/src/scim_utility.cpp:785 ism/src/scim_utility.cpp:863
msgid "Swedish (Finland)"
msgstr "瑞典語(芬蘭)"
-#: ism/src/scim_utility.cpp:786 ism/src/scim_utility.cpp:912
+#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:913
msgid "Tamil"
msgstr "塔米爾語"
-#: ism/src/scim_utility.cpp:787 ism/src/scim_utility.cpp:910
+#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:911
msgid "Telugu"
msgstr "泰盧固語"
-#: ism/src/scim_utility.cpp:788 ism/src/scim_utility.cpp:889
+#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:890
msgid "Thai"
msgstr "泰文"
-#: ism/src/scim_utility.cpp:789 ism/src/scim_utility.cpp:880
+#: ism/src/scim_utility.cpp:790 ism/src/scim_utility.cpp:881
#: ism/src/scim_keyboard_layout_data.h:4626
msgid "Turkish"
msgstr "土耳其文"
-#: ism/src/scim_utility.cpp:790
+#: ism/src/scim_utility.cpp:791
msgid "Uighur"
msgstr "維吾爾語"
-#: ism/src/scim_utility.cpp:791 ism/src/scim_utility.cpp:879
+#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:880
#: ism/src/scim_keyboard_layout_data.h:4630
msgid "Ukrainian"
msgstr "烏克蘭語"
-#: ism/src/scim_utility.cpp:792 ism/src/scim_utility.cpp:907
+#: ism/src/scim_utility.cpp:793 ism/src/scim_utility.cpp:908
msgid "Urdu"
msgstr "烏爾都語(巴基斯坦)"
-#: ism/src/scim_utility.cpp:793
+#: ism/src/scim_utility.cpp:794
msgid "Uzbek"
msgstr "烏玆別克語"
-#: ism/src/scim_utility.cpp:794 ism/src/scim_utility.cpp:908
+#: ism/src/scim_utility.cpp:795 ism/src/scim_utility.cpp:909
msgid "Vietnamese"
msgstr "越南文"
-#: ism/src/scim_utility.cpp:795
+#: ism/src/scim_utility.cpp:796
msgid "Walloon"
msgstr "華隆語"
-#: ism/src/scim_utility.cpp:796 ism/src/scim_utility.cpp:797
+#: ism/src/scim_utility.cpp:797 ism/src/scim_utility.cpp:798
msgid "Yiddish"
msgstr "依地語"
-#: ism/src/scim_utility.cpp:798
+#: ism/src/scim_utility.cpp:799
msgid "Chinese"
msgstr "中文"
-#: ism/src/scim_utility.cpp:799 ism/src/scim_utility.cpp:801
+#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
msgid "Chinese (Simplified)"
msgstr "簡體中文"
-#: ism/src/scim_utility.cpp:800 ism/src/scim_utility.cpp:802
+#: ism/src/scim_utility.cpp:801
+msgid "Chinese (Hongkong)"
+msgstr "中文(香港)"
+
+#: ism/src/scim_utility.cpp:803
msgid "Chinese (Traditional)"
msgstr "繁體中文"
-#: ism/src/scim_utility.cpp:804
-msgid "Dutch (Standard)"
-msgstr "荷蘭語(標準)"
-
-#: ism/src/scim_utility.cpp:805
+#: ism/src/scim_utility.cpp:806
msgid "Dutch (Belgian)"
msgstr "荷蘭語(比利時)"
-#: ism/src/scim_utility.cpp:806
+#: ism/src/scim_utility.cpp:807
msgid "English (United States)"
msgstr "英文(美國)"
-#: ism/src/scim_utility.cpp:807
+#: ism/src/scim_utility.cpp:808
msgid "English (United Kingdom)"
msgstr "英文(加拿大)"
-#: ism/src/scim_utility.cpp:810
+#: ism/src/scim_utility.cpp:811
msgid "English (New Zealand)"
msgstr "英文(新西蘭)"
-#: ism/src/scim_utility.cpp:811
+#: ism/src/scim_utility.cpp:812
msgid "English (Irish)"
msgstr "英文(愛爾蘭)"
-#: ism/src/scim_utility.cpp:812
+#: ism/src/scim_utility.cpp:813
msgid "English (South Africa)"
msgstr "英文(南非)"
-#: ism/src/scim_utility.cpp:813
+#: ism/src/scim_utility.cpp:814
msgid "English (Jamaica)"
msgstr "英文(牙買加)"
-#: ism/src/scim_utility.cpp:814
+#: ism/src/scim_utility.cpp:815
msgid "English (Belize)"
msgstr "英文(伯利茲)"
-#: ism/src/scim_utility.cpp:815
+#: ism/src/scim_utility.cpp:816
msgid "English (Trinidad)"
msgstr "英文(特立尼達)"
-#: ism/src/scim_utility.cpp:816
+#: ism/src/scim_utility.cpp:817
msgid "English (Zimbabwe)"
msgstr "英文(津巴布韋)"
-#: ism/src/scim_utility.cpp:817
+#: ism/src/scim_utility.cpp:818
msgid "English (Philippines)"
msgstr "英文(菲律賓)"
-#: ism/src/scim_utility.cpp:818
-msgid "French (Standard)"
-msgstr "法文(標準)"
-
-#: ism/src/scim_utility.cpp:819
+#: ism/src/scim_utility.cpp:820
msgid "French (Belgian)"
msgstr "法文(比利時)"
-#: ism/src/scim_utility.cpp:820 ism/src/scim_keyboard_layout_data.h:4604
+#: ism/src/scim_utility.cpp:821 ism/src/scim_keyboard_layout_data.h:4604
msgid "French (Canadian)"
msgstr "法文(加拿大)"
-#: ism/src/scim_utility.cpp:821
+#: ism/src/scim_utility.cpp:822
msgid "French (Swiss)"
msgstr "德文(瑞士)"
-#: ism/src/scim_utility.cpp:822
+#: ism/src/scim_utility.cpp:823
msgid "French (Luxembourg)"
msgstr "法文(盧森堡)"
-#: ism/src/scim_utility.cpp:823
+#: ism/src/scim_utility.cpp:824
msgid "French (Monaco)"
msgstr "法文(摩納哥)"
-#: ism/src/scim_utility.cpp:824
-msgid "German (Standard)"
-msgstr "德文(標準)"
-
-#: ism/src/scim_utility.cpp:825 ism/src/scim_keyboard_layout_data.h:4608
+#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr "德文(瑞士)"
-#: ism/src/scim_utility.cpp:826
+#: ism/src/scim_utility.cpp:827
msgid "German (Austrian)"
msgstr "英文(澳洲)"
-#: ism/src/scim_utility.cpp:827
+#: ism/src/scim_utility.cpp:828
msgid "German (Luxembourg)"
msgstr "德文(盧森堡)"
-#: ism/src/scim_utility.cpp:828
+#: ism/src/scim_utility.cpp:829
msgid "German (Liechtenstein)"
msgstr "德文(列支敦士登)"
-#: ism/src/scim_utility.cpp:829
-msgid "Italian (Standard)"
-msgstr "意大利文(標準)"
-
-#: ism/src/scim_utility.cpp:830
+#: ism/src/scim_utility.cpp:831
msgid "Italian (Swiss)"
msgstr "意大利文(瑞士)"
-#: ism/src/scim_utility.cpp:831
+#: ism/src/scim_utility.cpp:832
msgid "Portuguese (Brazilian)"
msgstr "葡萄牙文(巴西)"
-#: ism/src/scim_utility.cpp:832
-msgid "Portuguese (Standard)"
-msgstr "葡萄牙文(標準)"
-
-#: ism/src/scim_utility.cpp:833
+#: ism/src/scim_utility.cpp:834
msgid "Spanish (Traditional Sort)"
msgstr "西班牙文(傳統)"
-#: ism/src/scim_utility.cpp:834
+#: ism/src/scim_utility.cpp:835
msgid "Spanish (Mexican)"
msgstr "西班牙文(墨西哥)"
-#: ism/src/scim_utility.cpp:835
+#: ism/src/scim_utility.cpp:836
msgid "Spanish (Guatemala)"
msgstr "西班牙文(危地馬拉)"
-#: ism/src/scim_utility.cpp:836
+#: ism/src/scim_utility.cpp:837
msgid "Spanish (Costa Rica)"
msgstr "西班牙文(哥斯達黎加)"
-#: ism/src/scim_utility.cpp:837
+#: ism/src/scim_utility.cpp:838
msgid "Spanish (Panama)"
msgstr "西班牙文(巴拿馬)"
-#: ism/src/scim_utility.cpp:838
+#: ism/src/scim_utility.cpp:839
msgid "Spanish (Dominican Republic)"
msgstr "西班牙文(多米尼加共和國)"
-#: ism/src/scim_utility.cpp:839
+#: ism/src/scim_utility.cpp:840
msgid "Spanish (Venezuela)"
msgstr "西班牙文(委內瑞拉)"
-#: ism/src/scim_utility.cpp:840
+#: ism/src/scim_utility.cpp:841
msgid "Spanish (Colombia)"
msgstr "西班牙文(哥倫比亞)"
-#: ism/src/scim_utility.cpp:841
+#: ism/src/scim_utility.cpp:842
msgid "Spanish (Peru)"
msgstr "西班牙文(秘魯)"
-#: ism/src/scim_utility.cpp:842
+#: ism/src/scim_utility.cpp:843
msgid "Spanish (Argentina)"
msgstr "西班牙文(阿根廷)"
-#: ism/src/scim_utility.cpp:843
+#: ism/src/scim_utility.cpp:844
msgid "Spanish (Ecuador)"
msgstr "西班牙文(厄瓜多爾)"
-#: ism/src/scim_utility.cpp:844
+#: ism/src/scim_utility.cpp:845
msgid "Spanish (Chile)"
msgstr "西班牙文(智利)"
-#: ism/src/scim_utility.cpp:845
+#: ism/src/scim_utility.cpp:846
msgid "Spanish (Uruguay)"
msgstr "西班牙文(烏拉圭)"
-#: ism/src/scim_utility.cpp:846
+#: ism/src/scim_utility.cpp:847
msgid "Spanish (Paraguay)"
msgstr "西班牙文(巴拉圭)"
-#: ism/src/scim_utility.cpp:847
+#: ism/src/scim_utility.cpp:848
msgid "Spanish (Bolivia)"
msgstr "西班牙文(玻利維亞)"
-#: ism/src/scim_utility.cpp:848
+#: ism/src/scim_utility.cpp:849
msgid "Spanish (El Salvador)"
msgstr "西班牙文(薩爾瓦多)"
-#: ism/src/scim_utility.cpp:849
+#: ism/src/scim_utility.cpp:850
msgid "Spanish (Honduras)"
msgstr "西班牙文(洪都拉斯)"
-#: ism/src/scim_utility.cpp:850
+#: ism/src/scim_utility.cpp:851
msgid "Spanish (Nicaragua)"
msgstr "西班牙文(尼加拉瓜)"
-#: ism/src/scim_utility.cpp:851
+#: ism/src/scim_utility.cpp:852
msgid "Spanish (Puerto Rico)"
msgstr "西班牙文(波多黎各)"
-#: ism/src/scim_utility.cpp:855
+#: ism/src/scim_utility.cpp:856
msgid "Afrikaans"
msgstr "南非語"
-#: ism/src/scim_utility.cpp:858
+#: ism/src/scim_utility.cpp:859
msgid "Malay (Malaysia)"
msgstr "馬來文(馬來西亞)"
-#: ism/src/scim_utility.cpp:859
+#: ism/src/scim_utility.cpp:860
msgid "Malay (Brunei Darussalam)"
msgstr "馬來文(文萊)"
-#: ism/src/scim_utility.cpp:860 ism/src/scim_keyboard_layout_data.h:4613
+#: ism/src/scim_utility.cpp:861 ism/src/scim_keyboard_layout_data.h:4613
msgid "Norwegian"
msgstr "挪威語"
-#: ism/src/scim_utility.cpp:867
+#: ism/src/scim_utility.cpp:868
msgid "Serbian (Latin)"
msgstr "塞爾維亞語(拉丁)"
-#: ism/src/scim_utility.cpp:878
+#: ism/src/scim_utility.cpp:879
msgid "Serbian (Cyrillic)"
msgstr "塞爾維亞語(西里爾)"
-#: ism/src/scim_utility.cpp:881
+#: ism/src/scim_utility.cpp:882
msgid "Uzbek (Latin)"
msgstr "烏茲別克語(拉丁)"
-#: ism/src/scim_utility.cpp:884
+#: ism/src/scim_utility.cpp:885
msgid "Chinese (Taiwan)"
msgstr "中文(台灣)"
-#: ism/src/scim_utility.cpp:885
-msgid "Chinese (Hongkong)"
+#: ism/src/scim_utility.cpp:886
+#, fuzzy
+msgid "Chinese (Hong Kong)"
msgstr "中文(香港)"
-#: ism/src/scim_utility.cpp:886
+#: ism/src/scim_utility.cpp:887
msgid "Chinese (Macau)"
msgstr "中文(澳門)"
-#: ism/src/scim_utility.cpp:887
+#: ism/src/scim_utility.cpp:888
msgid "Chinese (PRC)"
msgstr "中文(中華人民共和國)"
-#: ism/src/scim_utility.cpp:888
+#: ism/src/scim_utility.cpp:889
msgid "Chinese (Singapore)"
msgstr "中文(新加坡)"
-#: ism/src/scim_utility.cpp:891
+#: ism/src/scim_utility.cpp:892
msgid "Arabic (Saudi Arabia)"
msgstr "阿拉伯文(沙特阿拉伯)"
-#: ism/src/scim_utility.cpp:892
+#: ism/src/scim_utility.cpp:893
msgid "Arabic (Iraq)"
msgstr "阿拉伯文(伊拉克)"
-#: ism/src/scim_utility.cpp:894
+#: ism/src/scim_utility.cpp:895
msgid "Arabic (Libya)"
msgstr "阿拉伯文(利比亞)"
-#: ism/src/scim_utility.cpp:895
+#: ism/src/scim_utility.cpp:896
msgid "Arabic (Algeria)"
msgstr "阿拉伯文(阿爾及利亞)"
-#: ism/src/scim_utility.cpp:896
+#: ism/src/scim_utility.cpp:897
msgid "Arabic (Morocco)"
msgstr "阿拉伯文(摩洛哥)"
-#: ism/src/scim_utility.cpp:897
+#: ism/src/scim_utility.cpp:898
msgid "Arabic (Tunisia)"
msgstr "阿拉伯文(突尼斯)"
-#: ism/src/scim_utility.cpp:898
+#: ism/src/scim_utility.cpp:899
msgid "Arabic (Oman)"
msgstr "阿拉伯文(阿曼)"
-#: ism/src/scim_utility.cpp:899
+#: ism/src/scim_utility.cpp:900
msgid "Arabic (Yemen)"
msgstr "阿拉伯文(也門)"
-#: ism/src/scim_utility.cpp:900
+#: ism/src/scim_utility.cpp:901
msgid "Arabic (Syria)"
msgstr "阿拉伯文(敘利亞)"
-#: ism/src/scim_utility.cpp:901
+#: ism/src/scim_utility.cpp:902
msgid "Arabic (Jordan)"
msgstr "阿拉伯文(約旦)"
-#: ism/src/scim_utility.cpp:903
+#: ism/src/scim_utility.cpp:904
msgid "Arabic (Kuwait)"
msgstr "阿拉伯文(科威特)"
-#: ism/src/scim_utility.cpp:904
+#: ism/src/scim_utility.cpp:905
msgid "Arabic (UAE)"
msgstr "阿拉伯文(阿聯酋)"
-#: ism/src/scim_utility.cpp:905
+#: ism/src/scim_utility.cpp:906
msgid "Arabic (Bahrain)"
msgstr "阿拉伯文(巴林)"
-#: ism/src/scim_utility.cpp:906
+#: ism/src/scim_utility.cpp:907
msgid "Arabic (Qatar)"
msgstr "阿拉伯文(卡塔爾)"
-#: ism/src/scim_utility.cpp:920
+#: ism/src/scim_utility.cpp:921
msgid "Hausa"
msgstr "豪薩文"
-#: ism/src/scim_utility.cpp:924
+#: ism/src/scim_utility.cpp:925
msgid "Xhosa"
msgstr "科薩語"
-#: ism/src/scim_utility.cpp:925
+#: ism/src/scim_utility.cpp:926
msgid "Yoruba"
msgstr "約魯巴語"
-#: ism/src/scim_utility.cpp:926
+#: ism/src/scim_utility.cpp:927
msgid "Zulu"
msgstr "祖魯語"
-#: ism/src/scim_utility.cpp:1024
+#: ism/src/scim_utility.cpp:1025
msgid "Other"
msgstr "其它語"
#: ism/src/scim_keyboard_layout_data.h:4592
-#: ism/modules/imengine/scim_socket_imengine.cpp:408
-#: ism/modules/imengine/scim_socket_imengine.cpp:438
-#: ism/modules/imengine/scim_socket_imengine.cpp:523
-#: ism/modules/imengine/scim_socket_imengine.cpp:553
-#: ism/modules/imengine/scim_socket_imengine.cpp:583
+#: ism/modules/imengine/scim_socket_imengine.cpp:409
+#: ism/modules/imengine/scim_socket_imengine.cpp:466
+#: ism/modules/imengine/scim_socket_imengine.cpp:496
+#: ism/modules/imengine/scim_socket_imengine.cpp:526
msgid "Unknown"
msgstr "未知"
msgid "TC->SC"
msgstr "繁轉簡體"
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1693
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1665
msgid "Smart Common Input Method platform "
msgstr "泛用智慧型輸入法平台"
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1695
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1667
msgid ""
"\n"
"(C) 2002-2005 James Su <suzhe@tsinghua.org.cn>\n"
"(C) 2002-2005 蘇哲 <suzhe@tsinghua.org.cn>\n"
"\n"
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1700
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1673
msgid ""
":\n"
"\n"
":\n"
"\n"
-#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1703
+#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1676
msgid ""
"\n"
"\n"
"\n"
"\n"
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:963
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:951
msgid "Enable"
msgstr "開啟"
#. gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_FIXED);
#. gtk_tree_view_column_set_fixed_width (column, 232);
-#: ism/extras/gtk_panel/scim_panel_gtk.cpp:984
+#: ism/extras/gtk_panel/scim_panel_gtk.cpp:972
msgid "Name"
msgstr "名稱"
msgid "The orientation of the tray."
msgstr "狀態列的方位。"
-#~ msgid "Automatic"
-#~ msgstr "自動"
+#. Normal Layout
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "NORMAL LAYOUT"
+msgstr ""
-#~ msgid "Always used"
-#~ msgstr "永遠"
+#: ism/demos/isf_layout_efl.cpp:184
+msgid "click to enter TEXT"
+msgstr ""
-#~ msgid "%s Option"
-#~ msgstr "選項設定"
+#. Number Layout
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "NUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:188
+msgid "click to enter NUMBER"
+msgstr ""
+
+#. Email Layout
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "EMAIL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:192
+msgid "click to enter EMAIL"
+msgstr ""
+
+#. URL Layout
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "URL LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:196
+msgid "click to enter URL"
+msgstr ""
+
+#. Phonenumber Layout
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "PHONENUMBER LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:200
+msgid "click to enter PHONENUMBER"
+msgstr ""
+
+#. IP Layout
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "IP LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:204
+msgid "click to enter IP"
+msgstr ""
+
+#. Month Layout
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "MONTH LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:208
+msgid "click to enter MONTH"
+msgstr ""
+
+#. Number Only Layout
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "NUMBERONLY LAYOUT"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:212
+msgid "click to enter NUMBERONLY"
+msgstr ""
+
+#: ism/demos/isf_layout_efl.cpp:230
+msgid "Layout"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:140
+msgid "Previous"
+msgstr ""
+
+#. bundle_add(ad->data, "navi_btn_left", NULL);
+#: ism/demos/isf_demo_efl.cpp:142
+msgid "Next"
+msgstr ""
+
+#: ism/demos/isf_demo_efl.cpp:196
+msgid "ISF Demo"
+msgstr ""
+
+#: ism/demos/isf_entry_event_efl.cpp:151
+msgid "Entry Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:232
+msgid "Label Event"
+msgstr ""
+
+#: ism/demos/isf_event_efl.cpp:262
+msgid "Event"
+msgstr ""
+
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
+msgstr ""
#~ msgid "Keyboards"
#~ msgstr "英文鍵盤"
msgstr ""
"Project-Id-Version: scim 0.1.4\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-03-19 12:43+0900\n"
+"POT-Creation-Date: 2012-05-19 16:44+0900\n"
"PO-Revision-Date: 2005-07-06 22:41+0800\n"
"Last-Translator: Jim Huang <jserv@kaffe.org>\n"
"Language-Team: scim@freedesktop.org\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:663
-#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4159
+#: ism/src/scim_compose_key.cpp:126 ism/src/scim_imengine.cpp:668
+#: ism/src/scim_panel_agent.cpp:341 ism/src/scim_panel_agent.cpp:4016
#: ism/src/scim_utility.cpp:702
#: ism/extras/gtk2_immodule/gtkimcontextscim.cpp:1715
msgid "English/Keyboard"
msgid "Danish"
msgstr "丹麥語"
-#: ism/src/scim_utility.cpp:720 ism/src/scim_keyboard_layout_data.h:4606
+#: ism/src/scim_utility.cpp:720 ism/src/scim_utility.cpp:825
+#: ism/src/scim_keyboard_layout_data.h:4606
msgid "German"
msgstr "德文"
msgid "Finnish"
msgstr "芬蘭文"
-#: ism/src/scim_utility.cpp:736 ism/src/scim_keyboard_layout_data.h:4603
+#: ism/src/scim_utility.cpp:736 ism/src/scim_utility.cpp:819
+#: ism/src/scim_keyboard_layout_data.h:4603
msgid "French"
msgstr "法文"
msgid "Icelandic"
msgstr "冰島語"
-#: ism/src/scim_utility.cpp:748 ism/src/scim_keyboard_layout_data.h:4611
+#: ism/src/scim_utility.cpp:748 ism/src/scim_utility.cpp:830
+#: ism/src/scim_keyboard_layout_data.h:4611
msgid "Italian"
msgstr "義大利文"
msgid "Nepali"
msgstr "尼泊爾語"
-#: ism/src/scim_utility.cpp:766 ism/src/scim_keyboard_layout_data.h:4599
+#: ism/src/scim_utility.cpp:766 ism/src/scim_utility.cpp:805
+#: ism/src/scim_keyboard_layout_data.h:4599
msgid "Dutch"
msgstr "荷蘭文"
msgstr "波蘭文"
#: ism/src/scim_utility.cpp:772 ism/src/scim_utility.cpp:774
-#: ism/src/scim_keyboard_layout_data.h:4615
+#: ism/src/scim_utility.cpp:833 ism/src/scim_keyboard_layout_data.h:4615
msgid "Portuguese"
msgstr "葡萄牙文"
msgid "Chinese (Traditional)"
msgstr "繁體中文"
-#: ism/src/scim_utility.cpp:805
-msgid "Dutch (Standard)"
-msgstr "荷蘭語(標準)"
-
#: ism/src/scim_utility.cpp:806
msgid "Dutch (Belgian)"
msgstr "荷蘭語(比利時)"
msgid "English (Philippines)"
msgstr "英文(菲律賓)"
-#: ism/src/scim_utility.cpp:819
-msgid "French (Standard)"
-msgstr "法文(標準)"
-
#: ism/src/scim_utility.cpp:820
msgid "French (Belgian)"
msgstr "法文(比利時)"
msgid "French (Monaco)"
msgstr "法文(摩納哥)"
-#: ism/src/scim_utility.cpp:825
-msgid "German (Standard)"
-msgstr "德文(標準)"
-
#: ism/src/scim_utility.cpp:826 ism/src/scim_keyboard_layout_data.h:4608
msgid "German (Swiss)"
msgstr "德文(瑞士)"
msgid "German (Liechtenstein)"
msgstr "德文(列支敦士登)"
-#: ism/src/scim_utility.cpp:830
-msgid "Italian (Standard)"
-msgstr "意大利文(標準)"
-
#: ism/src/scim_utility.cpp:831
msgid "Italian (Swiss)"
msgstr "意大利文(瑞士)"
msgid "Portuguese (Brazilian)"
msgstr "葡萄牙文(巴西)"
-#: ism/src/scim_utility.cpp:833
-msgid "Portuguese (Standard)"
-msgstr "葡萄牙文(標準)"
-
#: ism/src/scim_utility.cpp:834
msgid "Spanish (Traditional Sort)"
msgstr "西班牙文(傳統)"
msgstr ""
#: ism/demos/isf_demo_efl.cpp:196
-msgid "isf demo"
+msgid "ISF Demo"
msgstr ""
#: ism/demos/isf_entry_event_efl.cpp:151
-msgid "entry event demo"
+msgid "Entry Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:232
-msgid "label event demo"
+msgid "Label Event"
msgstr ""
#: ism/demos/isf_event_efl.cpp:262
-msgid "ise event demo"
+msgid "Event"
msgstr ""
-#: ism/demos/isf_imcontrol_efl.cpp:234
-msgid "isfimcontrol api"
+#: ism/demos/isf_imcontrol_efl.cpp:236
+msgid "IM Control"
msgstr ""
-#~ msgid "Automatic"
-#~ msgstr "自動"
-
-#~ msgid "Always used"
-#~ msgstr "永遠"
-
-#~ msgid "%s Option"
-#~ msgstr "選項設定"
-
#~ msgid "Keyboards"
#~ msgstr "英文鍵盤"
+ISF 2.3.5617 :
+ 1. [isf-panel-efl] Update input panel geometry when soft ISE is hidden
+ 2. [isf_imf_context] Remove unused start_default_ise
+ 3. [immodule] fix bug that affect to receive any event of other window
+ 4. [setting] display fullstop menu optionally
+
+
+ISF 2.3.5608 :
+ 1. Add update_preedit_caret method for HelperAgent class
+
+
+ISF 2.3.5607 :
+ 1. Add expand/contract candidate APIs for soft ISE
+
+
+ISF 2.3.5602 :
+ 1. [isf_imf_context] Fix forward_key_event defect
+
+
+ISF 2.3.5531 :
+ 1. [isf-panel-efl] Improve autoscroll performance for elm_conformant widget
+ 2. [isf_imf_context] Call set_layout when turn on
+ 3. [isf-panel-efl] Remove elm_win_raise ()
+ 4. [isf_imf_context] Remove reset_option ()
+
+
+ISF 2.3.5526 :
+ 1. Add set_layout for IMEngineInstanceBase
+ 2. [scim_x11_frontend] Implement preedit function for helper ISE
+
+
+ISF 2.3.5520 :
+ 1. Reverse arrow image for USB keyboard > ON
+ 2. Update CommonLookupTable for add_attributes () and remove_attributes ()
+
+
+ISF 2.3.5517 :
+ 1. [isf-panel-efl] Add ForeGround color and BackGround color
+
+
+ISF 2.3.5509 :
+ 1. [immodule] fix bug related to input_panel_event_callback_del
+ 2. add Ecore_X.h in ise_context.h
+
+
+ISF 2.3.5506 :
+ 1. [immodule] supplement dlog
+ 2. [immodule] remove code to handle 'HOME' key
+
+
+ISF 2.3.5505 :
+ 1. fix candidate window doesn't show when BT keyboard is connected.
+ 2. [isf-panel-efl] Update input panel geometry
+
+
+ISF 2.3.5503 :
+ 1. [immodule] fix extended latin character input issue
+
+
+ISF 2.3.5502 :
+ 1. [isf-panel-efl] Update rule for highlight item
+ 2. [isf-panel-efl] Fix panel geometry defect
+
+
+ISF 2.3.5429 :
+ 1. [immodule] add client X window ID in ise_context structure
+ 2. [isf-panel-efl] Fix autoscroll defect
+
+
+ISF 2.3.5428 :
+ 1. [isf-panel-efl] Implement fixed style;
+ 2. [immodule] fix autocapital inssue in preediting
+
+
+ISF 2.3.5420 :
+ 1. Update panel according to [Tizen_720x1280]Textinput GUI_v0.6_120426.ppt;
+
+
+ISF 2.3.5407 :
+ 1. Change autocapital, autoperiod vconf key name
+
+
+ISF 2.3.5404 :
+ 1. Replace hibernation vconf key with file
+ 2. Fix default ISE random defect
+
+
+ISF 2.3.5401 :
+ 1. remove input_lang vconf key
+ 2. Use process key event of IMEngine instead of evas_event_feed
+ 3. remove 'scim -d' in /etc/init.d/isf-panel-efl boot script
+
+
+ISF 2.3.5329 :
+ 1. execute 'scim -d' in /etc/init.d/isf-panel-efl script for reducing booting time
+
+
+ISF 2.3.5326 :
+ 1. Function keys event use XSendEvent
+
+
+ISF 2.3.5324 :
+ 1. bug fix : not to insert some language such as japanese, russian
+
+
+ISF 2.3.5321 :
+ 1. Update text in setting according to UI guide 2.4
+
+
+ISF 2.3.5320 :
+ 1. set ECORE_IMF_MODULE explicitly
+
+
+ISF 2.3.5319 :
+ 1. Update po files
+
+
+ISF 2.3.5318 :
+ 1. [isf-setting-efl] Add hardware ise option
+ 2. [isf-panel-efl] Remove disable language related source codes
+ 3. [isf-demo-efl] Format text
+ 4. Update en.po for Keyboard option
+ 5. Set environment variable for GTK, X application
+
+
+ISF 2.3.5317 :
+ 1. Remove theme vconf key
+ 2. Update programming guide
+
+
+ISF 2.3.5316 :
+ 1. Bug fix : uppercase letter wasn't inserted.
+
+
+ISF 2.3.5315 :
+ 1. Enable X11 frontend for support Mobile PC
+ 2. Set prediction allow as FALSE in case of EMAIL and URL layout
+ 3. Use X key event to generate ecore key event
+
+
+ISF 2.3.5310 :
+ 1. Add self-recovery feature;
+ 2. Fix ABI issue in scim_imengine.h;
+
+
+ISF 2.3.5307 :
+ 1. set prediction allow as FALSE in case of password mode
+ 2. cleanup even though immodule unloads abnormally
+
+
+ISF 2.3.5225 :
+ 1. support autoperiod in webkit based editor
+
+
+ISF 2.3.5223 :
+ 1. fix shift key blink issue related to autocapital
+
+
+ISF 2.3.5218 :
+ 1. Fix bug input panel doesn't hide
+ 2. Use private vconfkey
+ 3. Add X11 frontend
+
+
+ISF 2.3.5211 :
+ 1. update po
+ 2. Remove VCONFKEY_ISF_INPUT_LANG_STR
+
+
+ISF 2.3.5210 :
+ 1. update po
+
+
+ISF 2.3.5209 :
+ 1. Add password_mode for soft ISE
+ 2. Check duplicated ise_show request
+ 3. bug fix: wrong context was passed when IME is swept down
+
+
ISF 2.3.5205 :
- 1. Tizen 1.0 Release
+ 1. Add prediction_allow for soft ISE
+
+
+ISF 2.3.5204 :
+ 1. [immodule] bug fix about ise_show
+ 2. [setting] disable autocapital option when H/W keyboard is detected.
+
+
+ISF 2.3.5129 :
+ 1. [immodule] check the status of ISE
+ 2. remove isf-panel-efl.desktop
+
+
+ISF 2.3.5126 :
+ 1. Code cleanup for scim_helper.h and scim_helper.cpp
+ 2. [isf-setting-efl] Remove hard codes for XT9 ISE
+ 3. [immodule] fix bug : input_panel_show is called twice
+ 4. [isf-setting-efl] Rename setup module name for soft ISE
+ 5. [immodule] fix bug : candidate widnow sometimes covers compositing string
+
+
+ISF 2.3.5119 :
+ 1. fix bug related to XSelectInput
+
+
+ISF 2.3.5115 :
+ 1. Add notification feature for candidate window
+ 2. Add isf_imf_context_candidate_window_geometry_get ()
+ 3. Add isf_imf_context_input_panel_language_locale_get ()
+ 4. Update po files ()
+
+
+ISF 2.3.5113 :
+ 1. [demo][setting][panel] efl update
+
+ISF 2.3.5112 :
+ 1. [demo] apply the change of ecore_imf_context_input_panel_language_locale_get parameter
+
+
+ISF 2.3.5106 :
+ 1. [immodule] deliver imdata when slot_ise_show is called
+ 2. [demo] add language changed event demo
+ 3. disable syslog
+
+
+ISF 2.3.5102 :
+ 1. add return key type, disabled in ise_context
+
+
+ISF 2.3.5029 :
+ 1. add caps_lock_mode
+ 2. Change deprecated elm_editfield APIs
+
+
+ISF 2.3.5022 :
+ 1. add return key type, disabled in ise_context
+
+
+ISF 2.3.5020 :
+ 1. Support return_key_type_set, return_key_disabled_set
ISF 2.3.5016 :
- 1. Tizen beta Release
+ 1. [panel] fix candidate window size issue
+
+
+ISF 2.3.5015 :
+ 1. Applied EFL migration
+
+
+ISF 2.3.5009 :
+ 1. fix according to the change of imdata_set/get API
+
+
+ISF 2.3.5002 :
+ 1. fix bug not to insert some languages
+ 2. feed capital letter instead of 'Shift+character'
+
+
+ISF 2.3.5001 :
+ 1. Add control_privilege () in isf_query_engines.cpp
+ 2. Create folder before saving engine list
+
+
+ISF 2.3.4931 :
+ 1. Use synchronous ecore_imf callback API
+
+
+ISF 2.3.4926 :
+ 1. Support to feed X key event in case of using only client window without canvas
+ 2. Feed keyname, key, keystring, compose in evas_event_feed_key_{down/up}
+
+
+ISF 2.3.4919 :
+ 1. Add get_surrounding_text() for soft ISE
+
+
+ISF 2.3.4912 :
+ 1. change priviledge from root to inhouse
+
+
+ISF 2.3.4903 :
+ 1. remove ECORE_IMF_INPUT_PANEL_ORIENT
+ 2. Decrease socket IME creation time
+ 3. [demo] fix parameter of client_window_set
ISF 2.3.4821 :
- 1. Tizen alpha Release
+ 1. [demo] remove OCR, barcode demo.
+
+
+ISF 2.3.4816 :
+ 1. [immodule] support autocapital in webkit editor
+ 2. [panel] change theme name
+
+
+ISF 2.3.4809 :
+ 1. [isf-panel-efl/isfsetting] codes cleanup
+
+
+ISF 2.3.4807 :
+ 1. Change initial ISE
+ 2. remove CommonISE UUID
+ 3. [isf-panel-efl] Fix rotation defect
+
+
+ISF 2.3.4806 :
+ 1. Clean source codes
+
+
+ISF 2.3.4805 :
+ 1. Implement prediction allow set/get functions
+ 2. Remove license issue files
+
+
+ISF 2.3.4801 :
+ 1. [isfsetting] add setting option reset
+ 2. [isf-panel-efl] elm api update
+ 3. [isfsetting] elm api update
+
+
+ISF 2.3.4721 :
+ 1. [isf-panel-efl] Remove resize timer;
+ 2. [isf-panel-efl] Remove unused source codes;
+
+
+ISF 2.3.4718 :
+ 1. [immodule] use dlog for writing show/hide log;
+ 2. [isf-panel-efl] apply show/hide for candidate window;
+ 3. [isf-panel-efl] adjust rotation and show sequence;
+ 4. Remove unused source codes;
+ 5. Support custom global file for localization;
+
+
+ISF 2.3.4714 :
+ 1. [immodule] remove unused interfaces
+
+
+ISF 2.3.4711 :
+ 1. [isfwizard] change button to label in controlbar
+
+
+ISF 2.3.4709 :
+ 1. change hide delay from 200ms to 50ms
+ 2. [demo] editentry update
+ 3. [isfwizard] naviframe update
+
+
+ISF 2.3.4704 :
+ 1. Add reset option command for setting
+
+
+ISF 2.3.4703 :
+ 1. [isfwizard] fix bug
+
+
+ISF 2.3.4702 :
+ 1. [isfwizard] change isfwizard.log to /tmp directory
+ 2. [isf-panel-efl] Fix empty candidate defect when click "More" button for landscape
+
+
+ISF 2.3.4701 :
+ 1. [isf-panel-efl] Update "More" and "Close" buttons.
+
+
+ISF 2.3.4631 :
+ 1. add wizard log file to analyze loading problem in 1st time booting
+
+
+ISF 2.3.4628 :
+ 1. update po
+ 2. remove instant hide in shutdown.
+
+
+ISF 2.2.4627 :
+ 1. [immodule] hide input panel instantly when program is terminated.
+
+
+ISF 2.2.4625 :
+ 1. [immodule] support autocapital type
+ 2. [demo] add autocapital type demo
+ 3. disable common ISE feature
+
+
+ISF 2.2.4624 :
+ 1. [immodule] fix autoperid bug
+
+
+ISF 2.2.4620 :
+ 1. [immodule] use hide timer for supporting entry's theme change
+
+
+ISF 2.2.4619 :
+ 1. [isfsetting] update padding to 25 pixels
+
+
+ISF 2.2.4617 :
+ 1. [immodule] check whether cursor position is changed or not
+
+
+ISF 2.2.4614 :
+ 1. [demo] set scale factor
+ 2. [isfsetting] fix naviframe popup item problem
+ 3. [immodule] support autocapital related to CR and PS
+
+
+ISF 2.2.4613 :
+ 1. [isf-panel-efl] Fix candidate UI broken when rotation
+ 2. [isf-panel-efl] Update aux for ise-engine-xt9-chinese 2.0
+ 3. [isf-panel-efl] Update tizen-black-hd and tizen-hd
+ 4. [immodule] Implement ISF control APIs
+ 5. [isf-demo-efl] modify demo code for Nbeat layout
+ 6. [immodule] fix autocapital bugs
+
+
+ISF 2.2.4606 :
+ 1. Use Naviframe widget
+
+
+ISF 2.2.4604 :
+ 1. [isfsetting] fix option title : Option -> Options
+ 2. [immodule] do not hide input panel even though end key is pressed.
+
+
+ISF 2.2.4529 :
+ 1. [settingwizard] Use dlog for collecting log
+
+
+ISF 2.2.4520 :
+ 1. [isfsetting] fix supporting languages wrap
+
+
+ISF 2.2.4515 :
+ 1. [immodule] fix callback issue
+ 2. [immodule] reduce redundant vconf API call
+
+
+ISF 2.2.4506 :
+ 1. [immodule] hide input panel when the canvas loses focus
+
+
+ISF 2.2.4505 :
+ 1. [immodule] call imcontrol API after checking whether the context has focus
+ 2. [immodule] change the double space interval from 0.6 sec to 1 sec
+ 3. Fix defects according to klocwork test report
+
+
+ISF 2.2.4418 :
+ 1. [setting] genlist seperator style api update
+ 2. remove STK demo and document
+ 3. [immodule] set hide request input context after checking state
+
+
+ISF 2.2.4403 :
+ 1. [setting-wizard] bug fix white screen
+ 2. [immodule] add cursor position api
+
+ISF 2.2.4402 :
+ 1. tizen layout update
+ 2. [isfwizard] Fix socket config defect
+ 3. [setting] change 2 line text style
+ 4. [socket frontend] Use cache file
+ 5. [immodule] Cursor location is transfered by ecore_imf_context_cursor_location_set
+
+
+ISF 2.2.4325 :
+ 1. [efl_setting] Fix socket config defect
+ 2. [immodule] Add autoperiod, autocapital function
+
+
+ISF 2.2.4321 :
+ 1. Update for Elementary API Changes
+
+
+ISF 2.2.4314 :
+ 1. [immodule] include appropriate header
+ 2. [isf-panel-efl] Fix defect according to prevent report
+ 3. Update boilerplate
+
+
+ISF 2.2.4311 :
+ 1. [immodule] add cursor_location_set.
+ 2. [immodule] change client_canvas type
+
+
+ISF 2.2.4306 :
+ 1. [immodule] bug fix : input panel was not hidden when input_panel_hide is called during show animation is being progressed.
+
+
+ISF 2.2.4230 :
+ 1. [setting-wizard] remove icon and modify alignment of text in the navibar button
+ 2. [immodule] hide input panel instantly when context is destoryed or END key is preassed.
+
+
+ISF 2.2.4229 :
+ 1. [immodule] move IME control to immodule
+
+
+ISF 2.2.4227 :
+ 1. [setting] use default back button instead of text button
+
+
+ISF 2.2.4223 :
+ 1. apply tizen-black theme in the candidate window
+
+
+ISF 2.2.4222 :
+ 1. update for genlist API changes;
+
+
+ISF 2.2.4215 :
+ 1. update po;
+ 2. update language label (Hong Kong) and group title
+
+
+ISF 2.2.4207 :
+ 1. Fix language issue for ISE cache file;
+ 2. [isf-panel-efl] update aux scroll issue;
+ 3. Update Chinese po files;
+
+
+ISF 2.2.4131 :
+ 1. [immodule] bug fix : hide state is not delivered when ecore_imf_context_input_panel_hide is called
+
+
+ISF 2.2.4130 :
+ 1. Fix hibernation issue for ISE cache file
+ 2. Fix defects according to K9 test report
+ 3. fix defect caused by common ISE switch while setting layout in app
+
+
+ISF 2.2.4125 :
+ 1. Use ISE info cache file
+ 2. Inject key event such as tab, backspace regardless of focus for controlling UI
+
+
+ISF 2.2.4118 :
+ 1. Delete elm_dialoguegroup APIs
+ 2. Bug fix : hide/show context is passed wrong
+
+
+ISF 2.2.4104 :
+ 1. Upload the dynamic load/unload of keyboardISE
+
+
+ISF 2.2.4027 :
+ 1. [isf-setting/wizard]remove ise_option_view_back_cb()
+ 2. [isf-setting/wizard]move the ug clear up work to on_destroy() func
+ 3. [isf-panel-efl] Reset flag when candidate window is destroyed
+ 4. fix debian/rules according to mike's noticement
+
+
+ISF 2.2.4025 :
+ 1. [isf-setting/wizard] use genlist "dialogue" style
+ 2. [isf-setting] module delete move to back_cb()
+ 3. fix 2 scim-helper-launcher processes bug when boot up
+
+
+ISF 2.2.4019 :
+ 1. [isf-setting] hide "XT9" item in hw ise list
+ 2. [isf-panel-efl] fix hw/sw switch bug when reboot target with hw keyboard connected and actived
+
+
+ISF 2.2.4014 :
+ 1. [isf-setting/wizard] config read error caused bs
+
+
+ISF 2.2.4012 :
+ 1. [isf-setting/wizard] remove beat theme;
+ 2. [isf-setting/wizard] click on text to select the genlist item;
+
+
+ISF 2.2.4011 :
+ 1. [efl_immodule] Bug fix in isf_imf_context_filter_event
+
+
+ISF 2.2.4007 :
+ 1. [isf-panel-efl] Fix candidate GUI faults
+ 2. [efl_immodule] Turn on hotkey to support H/W keyboard
+
+
+ISF 2.2.4005 :
+ 1. [setting-wizard] add previous / next icon
+ 2. [setting] change genlist style
+
+
+ISF 2.2.4002 :
+ 1. [immodule] event callback bug fix;
+ 2. [immodule] add the method to get the root window even though the canvas is NULL
+ 3. [isf-setting] Fix AUTO_PERIOD bug
+ 4. [Programming Guide] write the description of the reason why ecore_imf_context_canvas_set
+
+
+ISF 2.2.3931 :
+ 1. rollback to 3923;
+
+
+ISF 2.2.3928 :
+ 1. [isf-panel-efl] Add 90 and 180 rotation support;
+ 2. [isf-setting-efl] Change dialoggroup to genlist; Add h/w listener;
+ 3. [isf-setting-efl] Use check widget instead of toggle widget; Fix tizen title_ellipsize style;
+ 4. Implementation of dynamic load/unload of keyboardISE;
+ 5. Fix c++ test defects;
+
+
+ISF 2.2.3923 :
+ 1. [isf-panel-efl] wait until window manager is launched in normal boot
+ 2. [isf-setting/wizard] fix dummy config problem
+ 3. code refactoring
+
+
+ISF 2.2.3921 :
+ 1. [isf-setting/wizard] add tizen theme
+ 2. [isf-setting/wizard] ecore_imf_context_del/add pair to fix memory issue
+ 3. [isf-setting/wizard] ecore_imf_context_init/shutdown remove
+
+
+ISF 2.2.3918 :
+ 1. [isf-panel-efl] add tizen theme
+ 2. remove trailing whitespace and tab
+
+
+ISF 2.2.3915 :
+ 1. [isf-panel-efl] change boot sequence in normal boot
+
+
+ISF 2.2.3911 :
+ 1. [isf-panel-efl] fix _ecore_main_fd_handlers_bads_rem() error log
+ 2. [setting] change Keyboard to Back for left button
+
+
+ISF 2.2.3909 :
+ 1. [isf-panel-efl] Add reload when hibernation leave
+
+
+ISF 2.2.3907 :
+ 1. Create candidate window on focus-in, delete it on focus-out event for minimizing the usage of memory
+ 2. [immodule] add canvas, window NULL check routine
+ 3. [efl_setting] Fix BS issue;
+ 4. [isf-panel-efl] Fix defect for vconf and hibernation;
+
+
+ISF 2.2.3825 :
+ 1. Fix candidate dummy window defect; Fix ISE name defect when display language is changed;
+ 2. modify h/w keyboard setting, apply title_ellipsize style
+
+
+ISF 2.2.3823 :
+ 1. add script for normal booting
+
+
+ISF 2.2.3821 :
+ 1. [isf-panel-efl] Optimize .png files
+ 2. [scim_utility] add NULL checker
+
+
+ISF 2.2.3816 :
+ 1. [isf] support imengine installed in /opt path
+ 2. [isf-panel-efl] fix locale bug
+ 3. [Programming guide] change the image of each layout
+
+
+ISF 2.2.3807 :
+ 1. [isfsetting] Rollback feature related to END KEY
+
+
+ISF 2.2.3727 :
+ 1. [isfsetting] fix isfsetting bs problem
+ 2. [isfsetting] fix KEY_END exit problem
+ 3. [isf-panel-efl] update locale info when display language is changed
+ 4. [scim-panel-agent] Fix reload command for IMControl
+ 5. [isf.sh] replace SCIM_MODULE_PATH
+ 6. [isfsetting] fix active name is blank in setting app
+ 7. [isfsetting] isfsetting bug about key_end event
+
+
+ISF 2.2.3721 :
+ 1. [scim-panel-agent] Fix the bug that mutiple common processes run will be
+ be invoked after switching ISEs.
+
+
+ISF 2.2.3720 :
+ 1. [isf-panel-efl] change the sequence of launching common and default ISE
+ 2. [immodule] key down event is generated
+ 3. Remove hard coded png file name from src file
+ 4. change ug path and seperate the ug locale file from scim.mo
+
+
+ISF 2.2.3719 :
+ 1. Fix defects according to prevent result
+ 2. [isf-setting-wizard] Add end key event callback function
+ 3. [isf-panel-efl] Update More/Close press event
+
+
+ISF 2.2.3718 :
+ 1. i18n update
+ 2. [isfsetting] using one navigationbar
+
+
+ISF 2.2.3714 :
+ 1. Support ISEs installed in /opt path
+
+
+ISF 2.2.3713 :
+ 1. [efl_immodule] hide keyboard when END KEY is pressed
+ 2. fix libisf-bin.postinst because of vconf security
+
+
+ISF 2.2.3712 :
+ 1. [efl_setting] fix isf setting bs problem in case of no optimization
+ 2. [efl_immodule] detect bluetooth keyboard
+ 3. [isf-panel-efl] fix build error
+ 4. [demo] Change the deprecated API
+
+
+ISF 2.2.3711 :
+ 1. [efl_immodule] fix BS in C++ application;
+
+
+ISF 2.2.3707 :
+ 1. [efl_immodule] fix crash;
+ 2. [efl_immodule] fix ecore magic check bug in key_press_cb
+ 3. [isf-demo-efl] Fix BS defect
+
+
+ISF 2.2.3704 :
+ 1. [setting] item will be highlighted when it is pressed;
+ 2. [Programming guide] stk examples are modified
+
+
+ISF 2.2.3630 :
+ 1. [isf-panel-efl] Replace evas_object_hide with evas_object_move for lockup issue
+
+
+ISF 2.2.3622 :
+ 1. [setting] change UI
+
+
+ISF 2.2.3621 :
+ 1. [Programming guide] Fix example code
+ 2. [Programming guide] Add return value of key press callback
+ 3. Add libisf-bin.postinst for vconf key
+
+
+ISF 2.2.3616 :
+ 1. [isf-panel-efl] add malloc_trim
+
+
+ISF 2.2.3615 :
+ 1. [isf-setting-efl] Change the order of menu in S/W keyboard group
+ 2. Modify ISF programming guide
+
+
+ISF 2.2.3614 :
+ 1. [isf-setting-efl] Add keyboard select wizard
+ 2. Fix defects according to prevent result
+ 3. Fix isf-setting BS issue
+ 4. [efl_immodule] use idler instead of timer
+ 5. [isf-demo-efk] add test code related to language
+
+
+ISF 2.2.3613 :
+ 1. [isf-panel-efl] runtime memory optimization
+ 2. [isf-immodule-efl] fix crash related to timer
+
+
+ISF 2.2.3610 :
+ 1. [isfsetting-ug] 'Quit' -> 'Back' in left button of navigationbar
+
+
+ISF 2.2.3609 :
+ 1. [isf-panel-efl] defer to create candidate window until hibernation leave
+ 2. modify Makefile.am files in each directory
+
+
+ISF 2.2.3606 :
+ 1. apply as-needed option;
+
+
+ISF 2.2.3601 :
+ 1. Change the initial ise when the initial ise in global files doesn't exist
+ 2. Fix ISF programming guide document
+
+
+ISF 2.2.3526 :
+ 1. Fix loading added keyboard ISE issue;
+ 2. Update isf-demo-efl for layout test;
+ 3. [efl_immodule] fix attribute;
+ 4. Add image of private key set in ISF programming guide
+
+
+ISF 2.2.3523 :
+ 1. Use common ISE;
+ 2. Support new ISE installation for hibernation booting;
+ 3. Fix defects according to prevent result;
+ 4. add ise_context.h
+ 5. Change hibernation ready key
+
+
+ISF 2.2.3522 :
+ 1. [efl_immodule] support attribute of imengine;
+
+
+ISF 2.2.3518 :
+ 1. Add idm source codes;
+ 2. Cleanup source codes for LiMo Contribution;
+ 3. Update contacts;
+ 4. [efl_panel] Fix "More" button highlight defect;
+
+
+ISF 2.2.3515 :
+ 1. set hibernation ready flag in vconf
+ 2. [efl_immodule] commit preedit string when mouse down event is occured
+
+
+ISF 2.2.3509 :
+ 1. add set_ise_language for supporting password mode
+
+
+ISF 2.2.3508 :
+ 1. Modify ISF Programming guide
+
+
+ISF 2.2.3504 :
+ 1. [isf-panel-efl] Modify hibernation_leave callback
+
+
+ISF 2.2.3503 :
+
+ 1. [isf-panel-efl] Revert isf-panel-efl.desktop
+ 2. [STK] set autoperiod, autocapital to root window's property
+
+
+ISF 2.2.3502 :
+ 1. [isf-panel-efl] support hibernation
+ 2. [isf-panel-efl] set ELM_ENGINE, ELM_FPS to avoid to use gles backend
+ 3. [efl_immodule] fix 3rd parameter in preedit_string_get
+ 4. Change /usr/lib/scim-1.0/ to /opt/lib/scim-1.0, change /usr/share/scim to /opt/share/scim
+ 5. Update for LiMo Contribution
+
+
+ISF 2.2.3427 :
+ 1. Modify ISF Programming guide
+ 2. remove evas_font_path_prepend from isf-panel-efl
+
+
+ISF 2.2.3421 :
+ 1. Use evas_font_path_prepend;
+
+
+ISF 2.2.3418 :
+ 1. Add each layout image in doxygen;
+
+
+ISF 2.2.3413 :
+ 1. [setting] add autocapital, autoperiod option menu;
+ 2. [efl_immodule] change return type;
+ 3. Change font : GT font -> SLP:style=medium;
+
+
+ISF 2.2.3406 :
+ 1. Add libisf-bin.postinst for gtkimmodule;
+
+
+ISF 2.2.3330 :
+ 1. Fix build error related to the change of Ecore_IMF;
+
+
+ISF 2.2.3328 :
+ 1. Set window role for not using effect;
+
+
+ISF 2.2.3327 :
+ 1. Bug fix about back button in isfsetting;
+
+
+ISF 2.2.3317 :
+ 1. Support autocapital, autoperiod;
+
+
+ISF 2.2.3310 :
+ 1. Fix for EFL 1.0 alpha;
+ 2. efl_immodule refactoring;
+
+
+ISF 2.2.3307 :
+ 1. Fix isfsetting;
+
+
+ISF 2.2.3307 :
+ 1. Add multi-selected ISEs function in efl-setting;
+ 2. [isf-demo-stk] fix build error;
+
+
+ISF 2.2.3301 :
+ 1. [isfsetting] fix for i18n;
+ 2. [efl_immodule] Bug fix : key up event
+ 3. [isf-demo-efl] add example code about IP layout
+
+
+ISF 2.2.3231 :
+ 1. [isf-demo-stk] fix build errors for stk_main_window_new () and so on;
+
+
+ISF 2.2.3225 :
+ 1. [isf-demo-efl] code refactoring;
+ 2. [isf-demo-efl] add MONTH, NUMBERONLY layout test code;
+ 3. [isf-demo-stk] add IP, MONTH, NUMBERONLY Layout;
+ 4. Added experimental modification for avoiding multiple scim process problem;
+ 5. [isfsetting] set background;
+ 6. Remove GTK word from IMControl;
+
+
+ISF 2.2.3219 :
+ 1. Fix the bug not to install libui-isfsetting-efl.so;
+ 2. Update efl_setting;
+
+
+ISF 2.2.3218 :
+ 1. Update candidate images for beat;
+ 2. Update efl_setting according to Beat GUI PPT;
+
+
+ISF 2.2.3207 :
+ 1. Remove kessler ELM_THEME and intl folder;
+ 2. Update efl_setting according to appcore change;
+ 3. Remove applog from efl_setting;
+
+
+ISF 2.2.3202 :
+ 1. Add hardware keyboard support;
+ 2. Remove unused functions of efl_immodule;
+
+
+ISF 2.2.3120 :
+ 1. Change deprecated Ecore_IMF API in isf_imf_context
+ 2. Fix rotating code in isf-demo-efl
+
+
+ISF 2.2.3112 :
+ 1. Fix the routine about event_callback_add;
+ 2. Modify isf-demo-efl example code;
+ 3. Bug fix about event_callback_add and event_callback_del
+
+
+ISF 2.2.3108 :
+ 1. Support revised Ecore_IMF;
+
+
+ISF 2.2.3107 :
+ 1. Fix defects according to klocwork report and c++ test report;
+ 2. Update isf-panel-efl for multi-resolution;
+
+
+ISF 2.2.3025 :
+ 1. Fix defects according to klocwork report;
+ 2. Add ingroup and defgroup;
+
+
+ISF 2.2.3017 :
+ 1. Change font name to "GT45_ArabCJK_TouchWiz" in isf_panel_efl.cpp;
+ 2. Update isf-demo for build issue;
+ 3. Fix defects according to klocwork report;
+ 4. Add comments;
+
+
+ISF 2.2.3011 :
+ 1. Update efl_setting for share gadget;
+ 2. Update isf-demo-stk for build issue;
+
+
+ISF 2.2.3004 :
+ 1. Change appfwk to appcore;
+ 2. Remove "app-fwk.h";
+
+
+ISF 2.2.3002 :
+ 1. Update isf_imf_context.cpp to fix backspace problem;
+ 2. Add comments;
+ 3. Fix one defect for isf-setting-efl;
+
+
+ISF 2.2.2930 :
+ 1. Rollback to 2.2.2919 because of backspace problem;
+
+
+ISF 2.2.2928 :
+ 1. Fix defects according to prevent and klocwork result;
+ 2. Add logs in scim_panel_client.cpp;
+
+ISF 2.2.2919 :
+ 1. Fix to problem not to find vconf.h;
+
+
+ISF 2.2.2913 :
+ 1. Fix candidate window resize issue;
+ 2. Add CUSTOM1_CANDIDATE_STYLE;
+ 3. Add isf-demo-stk;
+
+
+ISF 2.2.2906 :
+ 1. Fix candidate scrolling defect;
+ 2. Merge aux window into candidate window;
+ 3. Update isf-demo-efl;
+ 4. Remove idm directory;
+ 5. Fix preedit cursor position defect;
+
+
+ISF 2.2.2822 :
+ 1. Update isf_imf_context.cpp for focused IC;
+ 2. Fix aux select issue;
+ 3. Add more window for Chinese ISE;
+ 4. Fix cursor position can not updated when commit string;
+ 5. Add ISE switch function from ISE window;
+
+
+ISF 2.2.2819 :
+ 1. Update isf_imf_context.cpp;
+
+
+ISF 2.2.2815 :
+ 1. Update isf_panel_efl.cpp;
+
+
+ISF 2.2.2807 :
+ 1. Fix the issue that char is displaying twice in RSS;
+ 2. Hide ISE when application is crashed;
+ 3. Update isf-setting;
+
+
+ISF 2.2.2801 :
+ 1. Update isf-setting and isf_candidate.edc;
+ 2. Remove unused source codes from isf_panel_efl.cpp;
+
+
+ISF 2.2.2723 :
+ 1. Change how to grab key
+
+ISF 2.2.2722 :
+ 1. Fix isfsetting bug;
+ 2. Fix isf-panel-efl memory leak issue;
+
+ISF 2.2.2717 :
+ 1. Add elementary dependency in isf-imf-module
+ 2. Append transparent rectangle to avoid overwrapping with softkey
+
+ISF 2.2.2716 :
+ 1. Fix isfsetting bug;
+ 2. Update candidate positon when indicator and candidate are overlapped;
+
+
+ISF 2.2.2711 :
+ 1. Change isfsetting into shared gadget;
+ 2. Change ISF theme from pantheon to kessler;
+ 3. Fix candidate background defect;
+ 4. Update Chinese ISE;
+
+
+ISF 2.2.2704 :
+ 1. Update IMControl;
+ 2. Add multi-candidates for each row of candidate UI;
+ 3. Update isf-setting;
+ 4. Fix defects according to prevent report;
+
+
+ISF 2.2.2625 :
+ 1. Update IMControl;
+ 2. Add candidate auto-adjust location and landscape mode;
+ 3. Add HelperAgent::update_input_context, remove two unused APIs;
+ 4. Update isf-setting;
+ 5. Update Chinese ISE;
+
+
+ISF 2.2.2610 :
+ 1. Add libisf-dbg;
+ 2. Update isf-setting;
+ 3. Update candidate aux for Chinese ISE;
+
+
+ISF 2.2.2609 :
+ 1. Update isf-setting;
+ 2. Update isf_panel_efl.cpp for aux;
+
+
+ISF 2.2.2608 :
+ 1. Remove UI_softkey, UI_titlebar and so on from isf-setting;
+
+
+ISF 2.2.2607 :
+ 1. Update isf-setting for BS issue when press "Back";
+
+
+ISF 2.2.2605 :
+ 1. Update isf-setting;
+ 2. Update isf_event_demo.cpp
+
+
+ISF 2.2.2604 :
+ 1. Update isf_imf_context.cpp for Home ane End keyevent;
+
+
+ISF 2.2.2603 :
+ 1. Update isf-setting;
+
+
+ISF 2.2.2602 :
+ 1. Update language po files;
+
+
+ISF 2.2.2601 :
+ 1. Update language po files;
+ 2. Update efl_setting;
+
+
+ISF 2.2.2530 :
+ 1. Add SYSLOG for ISF launching;
+
+
+ISF 2.2.2529 :
+ 1. Add GTK in ISF depends;
+
+
+ISF 2.2.2528 :
+ 1. Fix BlueScreen issue when switching ISEs;
+ 2. Update aux UI of candidate;
+
+
+ISF 2.2.2526 :
+ 1. Update isfimcontrolapi.cpp;
+ 2. Change SLP functions according to KHQ release;
+ 3. Update chinese ISE;
+ 4. Add fifty one alpha languages in xt9 ISE;
+ 5. Add setup module in input-pad ISE;
+
+
+ISF 2.2.2523 :
+ 1. Update efl_setting;
+ 2. Update xt9/xt9chinese/chinese ISEs;
+
+
+ISF 2.2.2522 :
+ 1. Fix isf_demo crash issue;
+ 2. Fix issue of candidate window shows on lock screen;
+ 3. Update isf-setting;
+ 4. Support candidate window move according to cursor position;
+
+
+ISF 2.2.2520 :
+ 1. Update isf_demo;
+ 2. Add isf_imf_context_preedit_string_get () in efl_immodule;
+
+
+ISF 2.2.2515 :
+ 1. Update isf_setting;
+ 2. Update isf_candidate.edc;
+ 3. Fix one defect for IM Control;
+
+
+ISF 2.2.2514 :
+ 1. Add efl_setting;
+
+
+ISF 2.2.2513 :
+ 1. Fix browser crash issue;
+
+
+ISF 2.0.2513 :
+ 1. Add PORTRAIT_VERTICAL_CANDIDATE_MODE for EFL candidate UI;
+ 2. Fix two candidate defects;
+ 3. Update IMControl functions;
+ 4. Update keyboard ise when application calls get_ise_list ();
+ 5. Update xt9 ise;
+ 6. Add xt9_chinese ISE and Chinese ISE;
+
+
+ISF 2.0.2506 :
+ 1. Seperate isf package to libisf-bin and libisf-dev;
+ 2. Add aux string in EFL candidate UI;
+ 3. Remove Ecore_X_Rectangle related functions in IMControl;
+ 4. Update ise list when application calls get_ise_list ();
+
+
+ISF 2.0.2429 :
+ 1. Add new functions in IMControl;
+
+
+ISF 2.0.2424 :
+ 1. Add IMControl in efl_immodule;
+ 2. Fix the issue that ISF/ISE are activated twice by application;
+ 3. Set pantheon as Candidate UI theme;
+
+
+ISF 2.0.2422 :
+ 1. Fix the issue that space cannot be input;
+ 2. Move PanelAgent thread into main thread;
+ 3. Provide temp candidate UI;
+
+
+ISF 2.0.2418 :
+ 1. Fix some EFL IMModule's bugs;
+ 2. Update EFL panel;
+ 3. Set European ISE as default ISE;
+
+
+ISF 2.0.2414 :
+ 1. isf_panel_efl.cpp is written by EFL, isf-panel-efl process can run;
+ 2. Set input-pad ISE as default ISE;
+ 3. Fix one EFL IMModule's bug;
+ 4. Add EFL supporting in input-pad ISE;
+ 5. Fix XT9 ISE error in Aquila simulator environment;
+ 6. Update ISF debian files;
+
+
+ISF 2.0.2403 :
+ 1. Begin to porting ISF into slp 2.0 platform;
+ 2. Add EFL Panel and EFL IMModule;
+
+
+ISF 1.0.2226 :
+ 1. Remove New ISEs related source codes;
+ 2. Remove uncessary source codes for scim-panel-gtk;
+ 3. Update ISF according to review result;
+ 4. Fix one candudate UI defect;
+ 5. Merge KHQ ISF;
+
+
+ISF 1.0.2219 :
+ 1. Add 200ms timer to show candidate for volans target;
+ 2. Fix two PanelAgent defects for Gesture ISE;
+ 3. This is the final version for volans target;
+
+
+ISF 1.0.2125 :
+ 1. Add check condition for panel_agent->stop () and config->flush ();
+ 2. Adjust helper manager reconnection number from 6 to 200;
+ 3. Improve focus-in speed in gtkimcontextscim.cpp;
+ 4. Update xt9 ISE;
+ 5. This is the final version for protector target;
+
+
+ISF 1.0.2110 :
+ 1. Fix memory leak when scim-launcher and scim-panel-gtk exit;
+ 2. Add isf-log to enable/disable ISF log online;
+ 3. Set PanelAgent to non-block mode;
+ 4. Improve input speed for embedded editor;
+ 5. Update xt9 ISE;
+
+
+ISF 1.0.2031 :
+ 1. Fix defects according to prevent result;
+ 2. Update xt9 ISE;
+
+
+ISF 1.0.2025 :
+ 1. Fix defects according to prevent result;
+ 2. Improve input speed;
+ 3. Update xt9 ISE;
+
+
+ISF 1.0.2018 :
+ 1. Remove redundant source codes for candidate window;
+ 2. Fix two memory leak issues for scim-panel-gtk exception;
+ 3. Change preedit fg color and bg color according to theme color;
+ 4. Update xt9 ISE;
+
+
+ISF 1.0.2010 :
+ 1. Reduce booting time of scim and scim-panel-gtk;
+ 2. Fix defects according to prevent result;
+
+
+ISF 1.0.2003 :
+ 1. Change candidate background color;
+ 2. Remove scim_get_newise_module_list from scim.cpp and scim_panel_gtk.cpp;
+ 3. Fix the issue (control panel can not be showed in target);
+ 4. Show candidate window when update candidate string;
+ 5. xt9 ISE : fixed auto-substitution function;
+ 6. xt9 ISE : fixed only english char committed defect, when the input sequence char length exceeds 72;
+ 7. xt9 ISE : fixed defect of inexplicable string to be displayed, when using delete key to remove all normal input sequence chars;
+
+
+ISF 1.0.1928 :
+ 1. Fix defects according to prevent result;
+ 2. Fix XT9 config reload issue;
+ 3. Reduce gtkimcontextscim loading time;
+ 4. Update candidate according to GUI spec;
+ 5. Remove unnessary ISE_SHOWED message;
+ 6. Change dynamic_cast to static_cast for scim_signals;
+ 7. Update xt9 ISE;
+
+
+ISF 1.0.1920 :
+ 1. Fix two "preedit-changed" issue;
+ 2. Removing unnessary ACK message;
+ 3. Fix the issue "When using GtkIMEmbeddedEditor, clicking the hide button of ISE does not refresh the app window."
+ 4. Fix HelperAgent memory leak issue;
+ 5. Update candidate UI;
+ 6. Change candidate display method;
+ 7. Update xt9 ISE;
+
+
+ISF 1.0.1913 :
+ 1. Support ISE without GtkSocket/GtkPlug;
+ 2. Update xt9 and input-pad ISE;
+
+
+ISF 1.0.1906 :
+ 1. Remove gtk_im_context_scim_set_ime_window_rectangle;
+ 2. Add XT9 option subscribe in scim-panel-gtk;
+ 3. Update xt9 and input-pad ISE;
+
+
+ISF 1.0.1829 :
+ 1. Add macro "USING_ISF_MAINWINDOW_AUTOSCROLL";
+ 2. Add gtk_im_context_scim_set_ime_window_rectangle;
+ 3. Update xt9 ISE;
+
+
+ISF 1.0.1828 :
+ 1. Fix build errors for volans;
+ 2. Improve candidate scroll;
+ 3. Update xt9 ISE;
+
+
+ISF 1.0.1825 :
+ 1. Fix candidate flick issue;
+ 2. Remove debug information;
+ 3. Update xt9 ISE;
+
+
+ISF 1.0.1822 :
+ 1. Add landscape mode supporting for candidate UI;
+ 2. Update xt9, handwriting and input-pad ISEs;
+
+
+ISF 1.0.1819 :
+ 1. Fix memory leak issue for HelperAgent;
+ 2. Change HelperAgent IPC from block mode to non-block mode;
+ 3. Change read_from_socket's timeout from infinity to 3 seconds;
+ 4. Change ISM_TRAN_CMD_SET_ISE_SCREEN_DIRECTION to ISM_TRANS_CMD_SET_ISE_SCREEN_DIRECTION;
+ 5. Optimize candidate moving;
+ 6. Set mfc-now as default helper ISE;
+ 7. Update xt9, and input-pad ISEs;
+ 8. Add moakey-chinese ISE (It should work with Chinese pinyin keyboard ISE);
+
+
+ISF 1.0.1815 :
+ 1. Fix one dead lock issue and memory leak issue for PanelAgent;
+ 2. Add HelperAgent::get_candidate_window_rect (const String &uuid) and update_candidate_rect signal;
+ 3. Add reset_ise_context signal and set_screen_direction signal for helper ISE;
+ 4. Improve candidate UI for height and scroll bar;
+ 5. Set xt9 as default keyboard ISE and set now+ as default helper ISE;
+ 6. Update xt9, now+, handwriting and input-pad ISEs;
+
+
+ISF 1.0.1810 :
+ 1. Fix one issue for Helper ISE restart;
+ 2. Add HelperAgent::set_candidate_position (int left, int top) and HelperAgent::candidate_hide ();
+ 3. Fix one language setting issue;
+ 4. Fix one issue for gtk_ise_set_active_ise_by_uuid;
+ 5. Improve key event process of panel_slot_process_key_event ();
+ 6. Update handwriting, XT9 and input-pad ISEs;
+ 7. Add gesture and now+ ISEs;
+
+
+ISF 1.0.1721 :
+ 1. Fix embedded editor issue;
+ 2. Support that helper ISE sends key event to Non-GTKIMContext application;
+ 3. Support shared ISE for all entrys;
+ We can set shared ISE to true or false by "/FrontEnd/SharedInputMethod" of config file "isf/ism/configs/config"
+ 4. Fix some bugs for ISF;
+ 5. Update handwriting, XT9 and input-pad ISEs;
+
+
+ISF 1.0.1710 :
+ 1. Update handwriting, xt9 and input-pad ISEs;
+ 2. Update PanelAgent for context management;
+ 3. Fix one issue for candidate position;
+ 4. Fix one issue for default ise starting;
+
+
+ISF 1.0.1703 :
+ 1. Update handwriting, xt9 and input-pad ISEs;
+ 2. Change get_candidate_ui (), get_keyboard_ise () and get_keyboard_ise_list () for HelperAgent and PanelAgent;
+ 3. Update ISF for xt9 language;
+ 4. Fix 2 bugs for ISF;
+
+
+ISF 1.0.1626 :
+ 1. Add postrm.in for automaticlly remove "/usr/lib/scim-1.0" when uninstall isf*.ipk.
+ 2. Update ISF.
+ 3. Fix bugs for input-pad and pinyin.
+ 4. Update handwriting for using ISF 2.0 candidate.
+ 5. Add XT9 ISE
+
+
+ISF 1.0.1621 :
+ 1. Add isf.pc.in for ISF version management, current ISF version is 1.0.1621;
+ After you build and install isf, you can run below command to find ISF version.
+ [sbox-floater-i686: ~] > pkg-config isf --modversion
+ 1.0.1621
+ 2. Change HelperAgent::set_keyboard_ise () to HelperAgent::set_keyboard_ise_by_name (), add HelperAgent::set_keyboard_ise_by_uuid ();
+ Update input-pad for this modification;
+ 3. Add ISM_ISE_HIDE_IN_CONTROL_PANEL for helper ISE option;
+ 4. Fix one bug for control panel;