Adobe Reader and SCIM (was: Re: Adobe Reader 8 ports)
Nikola Lečić
nikola.lecic at anthesphoria.net
Mon Jan 7 13:57:47 PST 2008
On Sat, 05 Jan 2008 15:00:27 +0900 (JST)
Hiroki Sato <hrs at FreeBSD.org> wrote:
[...]
> - XIM does not work at least in japanese/acroread8 even if
> GTK_IM_MODULE=xim is defined. Since several Linux users around me
> pointed out this, this seems not FreeBSD-specific. I have heard
> that SCIM works, but I do not check it yet.
Unfortunately, SCIM doesn't work in Acrobat Reader 8. Neither with
GTK_IM_MODULE=xim, nor with GTK_IM_MODULE=scim.
However, getting SCIM to run even with Adobe Reader 7 is a bit tricky
if one wants to keep recommended GTK_IM_MODULE=scim. I have a question
and a suggestion:
1. Is the purpose of
case ${ADOBE_LANG} in
.....
JPN) : ${GTK_IM_MODULE:=xim}; export GTK_IM_MODULE ;;
to override any other existing value?
2. My suggestion is to enhance this idea to all languages in the
following way (that overcomes one SCIM problem described below).
Namely, if you have this in xinitrc:
GTK_IM_MODULE=xim
QT_IM_MODULE=xim
XMODIFIERS=@im=SCIM
SCIM will work everywhere (incl. Reader 7), but it will behave very
badly in GTK applications. If you use SCIM's recommended values:
GTK_IM_MODULE=scim
QT_IM_MODULE=scim
XMODIFIERS=@im=SCIM
it will not work in Linux and QT apps (incl. Reader 7). The problem
is (I don't know if this is FreeBSD specific) that GTK_IM_MODULE,
once set to 'scim', can't be changed to 'xim' in the same X session,
so the line like aforementioned JPN-specific setting will not have
any effect in such environment. The same goes for XMODIFIERS once set
to @im=SCIM.
The workaround I found is to use the following unusual values:
GTK_IM_MODULE=scim
QT_IM_MODULE=scim
XMODIFIERS=@im=XIM
(start "scim -d" manually in ~/.xinitrc)
and to use this code in /usr/local/bin/acroread (for all languages):
if [ "${GTK_IM_MODULE}" = "scim" ]; then
if [ "x$XIM_PROGRAM" != "x" ]; then
export XIM_PROGRAM=""
echo "WARNING: \$XIM_PROGRAM variable sometimes can't be"
echo "effectively changed. If you have problems running"
echo "SCIM, don't define it in your xinitrc."
fi
if [ "$XMODIFIERS" = "@im=SCIM" ]; then
echo "WARNING: If you have problems running SCIM, please"
echo "try to set \$XMODIFIERS to \"@im=XIM\" (instead of"
echo "\"@im=SCIM\") in your xinitrc."
fi
export GTK_IM_MODULE=xim
export XMODIFIERS=@im=SCIM
fi
This way, SCIM will work optimally in both GTK apps and Acrobat
Reader 7.
Best regards.
--
Nikola Lečić :: Никола Лечић
More information about the freebsd-ports
mailing list