uim/Troubleshooting
uim | Introduction | Installation | Setup | Usage | Configuration | Support | Manuals | Development License
A conversion engine doesn't work
[edit | edit source]First, check if you installed conversion engines you want to use. With uim-sh
, you can see the list of conversion engines you installed:
$ uim-sh uim> installed-im-list
or
$ uim-sh uim> installed-im-module-list
You can make use of the -e option in uim-sh if you are using uim 1.5 or later.[1]
$ uim-sh -e installed-im-list $ uim-sh -e installed-im-module-list
If you can't find engines you want to use, install them.
Second, check if the engines are enabled. You can do it with uim-sh:
$ uim-sh uim> enabled-im-list
or (uim 1.5 or later)
$ uim-sh -e enabled-im-list
You can also use a GUI tool (uim-pref-gtk
, uim-pref-qt
or uim-pref-qt4
):
$ uim-pref-gtk
"Global settings" -> "Input method deployment" -> "Enabled input methods" -> "Edit..."
Third, if you want to use Canna, Sj3 or Wnn, check if cannaserver, sj3server or jserver is running respectively.
$ ps aux | grep cannaserver # Canna $ ps aux | grep sj3server # Sj3 $ ps aux | grep jserver # Wnn
Uim doesn't work with an application
[edit | edit source]First, check if required bridges are installed.[2]
uim-xim
: X applicationsuim-gtk
: GTK+ applications, including GNOME applicationsuim-qt3
: Qt 3 (or earlier) applications, including KDE 3 applicationsuim-qt4
: Qt 4 applications, including KDE 4 applicationsuim-fep
: consolesuim.el
: Emacs
In some distributions, uim-qt
means uim-qt3
. In others, it means uim-qt4
.
X applications include GTK+ and Qt applications and you can use uim-xim
to input in GTK+ and Qt applications, but using uim-xim
isn't recommended because uim-xim
has many limitations compared with uim-gtk
, uim-qt3
and uim-qt4
.
Some X applications don't use GTK+ or Qt. You need to install uim-xim
to input in such applications.
You can check if uim-xim
is running as follows:
$ ps aux | grep uim-xim
If uim-xim
isn't running, run it:
$ uim-xim &
If the GTK+ immodule (uim-gtk
) causes GTK+ application crashes or it doesn't work, try to force uim to use XIM in GTK+ applications:
$ GTK_IM_MODULE=xim firefox # force uim to use XIM in Firefox
If the Qt immodule (uim-qt3
and uim-qt4
) causes Qt application crashes or it doesn't work, try to force uim to use XIM in Qt applications:
$ QT_IM_MODULE=xim opera # force uim to use XIM in Opera
Forcing uim to use XIM in GTK+ or Qt applications is not a true fix but just a workaround. If you notice a bug in uim-gtk
, uim-qt3
or uim-qt4
, report it to the freedesktop.org bugzilla, mailto:uim-en@googlegroups.com (English) or mailto:uim-ja@googlegroups.com (Japanese).
Second, check your environment variables:[3]
$ echo $XMODIFIERS @im=uim $ echo $GTK_IM_MODULE uim $ echo $QT_IM_MODULE uim
If these environment variables aren't correctly set, see Uim/Setup.
Third, check what conversion engine you are using. You can use an IM switcher or a toolbar to do it:
$ uim-toolbar-gtk
You may want to specify a default conversion engine:[3]
$ uim-pref-gtk
"Global settings" -> "Input method deployment" -> "Specify default IM" (Check) -> "Default input method"
For GTK+ applications, see also Uim doesn't work with GTK+.
Uim doesn't work with GTK+
[edit | edit source]If you can use uim everywhere except in GTK+ applications, the problem lies most likely with the GTK immodule. You will need to:
- 1. Run the following commands:
$ gtk-query-immodules-2.0 > /tmp/gtk.immodules.current $ diff -u /tmp/gtk.immodules.current $(locate gtk.immodules | grep gtk-2.0) > /tmp/gtk.immodules.diff
- 2. Send the following files and information to mailto:uim-en@googlegroups.com
/tmp/gtk.immodules.current
/tmp/gtk.immodules.diff
- Your OS distribution and version
Last resort
[edit | edit source]If you have tried everything in the book and nothing helps you can always:
- Remove all uim-related packages (uim, dictionaries, GTK+ and Qt).
- Reboot
- Reinstall
This is, naturally, a lousy solution to any problem and it is impossible to predict its effectiveness, but we shouldn't complain if it gets the job done.