2018年2月4日日曜日

[FreeBSD] uim-anthyは動きます(FreeBSD 11.1、 2018年2月)

0. 要旨

2018年2月、FreeBSD環境で、portupgradeからpoudriereに乗り換えてportsを全体的に入れ直したら、日本語が入力ができなくなった。
MATEのStartup ApplicationsとしてiBusが立たないようにして、
# uim-module-manager --register anthy
して、
$ uim-pref-gtk
で設定を直したら、また日本語が入力できるようになった。

1. 環境

OS:FreeBSD 11.1-STABLE
PackageとPorts: portupgradeからpoudriereに乗り換えた
input method: uim※

※uimは昔から使っている。
~/.xsessionに以下を書いている。
export GTK_IM_MODULE=uim
export XMODIFIERS=@im=uim
uim-xim &
~/.uimに以下を書いている。
(define default-im-name 'anthy)

2. 状況と検索と試行錯誤

FreeBSD環境で、portupgradeからpoudriereに乗り換えてportsを全体的に入れ直したら、日本語が入力ができなくなった。

2.0 設定の上書き?

設定が上書きされた可能性があるので、確認する。
(System->Preferences->Personal->Input Methodで、uim-pref-gtkというuim設定用のAplicationが立ち上がる。)
Hotkeyが変わっている気がしたので直したが、解決しない。

2.1 iBus

こういうときはiBusがhotkeyを食べている可能性がある。
$ ps -aux |grep ibus
したらibus daemonがいる。ibus daemonはいらないので、killする。
それからMATEのStartup Apllicationsを確認したらそこにもいたので、削除する。
(System->Preferences->Personal->Startup Applicationsで、MATEが立ち上がった時に立ち上げるデーモン類を設定する)

2.2 状況調査

  • atril(MATEのpdf/ps viewer、gnomeのevinceにあたる、いつの間にかgtk3に依存するようになっている)の検索窓にも入力できない。
    ということは、2017年5月とは違いgtk3まわりの問題ではなさそうだ。
  • よく見ると
    uim-pref-gtk
    のGlobal SettingでAnthyが選べない。
    Canna, SKK, Ajaxとかあるのに、Anthyがない。
  • いろいろ検索していると、ある nakagami の日記 で~/.uimに
    (require-module "anthy")
    という見慣れない記述を見つける。これは何だ?
  • さらに色々検索していると、
    CustomizeUim で~/.uim.d/custom/というディレクトリが出てくる。
    ls ~/.uim.d/custom/
    すると
    custom-skk-keys1.scm
    ...
    custom-tutcode-keys1.scm
    とかあるのに、
    custom-anthy-*.scm
    は1つもない。
  • 何の気はなしに、
    $ uim-
    でタブを押してどんなコマンドがあるかなと見ていたら uim-module-managerというコマンドを発見する。
    $ uim-module-manager
    Usage:
      uim-module-manager [options]

    Options:
      --register <modules>   Register the modules
      --unregister <modules> Unregister the modules
      --path <path>          Target path where installed-modules.scm
                             and loader.scm to be installed
      --unregister-all       Unregister all modules

    Example:
      uim-module-manager --register anthy skk
      uim-module-manager --register prime --path /usr/local/share/uim
      uim-module-manager --register personal-module --path ~/.uim.d/plugin

    Note:
      Registeration and unregistration cannot be done simultaneously.

    やってみる。
    $ uim-module-manager --register anthy
    ファイルのパーミッションがないと言われた。

3 解決

$ sudo -s
# uim-module-manager --register anthy
をする。

~/.uim.d/custom/
の下に
custom-anthy-*.scm
が一式できた。(他のcustom-skk-*.scmなどの一式も更新された)

$ uim-pref-gtk
左側にAnthyが登場した。
Enabled input methodsには並んでいないが、 Editを押すと、disableにAnthyが登場していた。
Anthyをenableに、それ以外をDisableに移動した。 他のセッティングも下の画像のとおりに直した。



これで、元のように日本語が入力できるようになった。
めでたしめでたし。