fcitx5-mozc

From: Tomoaki AOKI <junchoon_at_dec.sakura.ne.jp>
Date: Mon, 08 Jul 2024 13:01:03 UTC
青木@名古屋です。

現在、FreeBSD関係ではports-mgmt/pkg_replaceの開発・メンテナンス等を
されている出口さんがgithubでfcitx5-mozcやportsにあるものより新しい
x11-wm/compiz関連その他諸々の移植作業をしておられ、portsのoverlay機能
を使う前提のリポジトリ[1]が公開されています。
このリポジトリを発見して以降やりとりさせて頂いている中で、ここやForums
等で紹介する許可を頂きました。

[1] https://github.com/kdeguchi/ports
[2] https://kdeguchi.lsv.jp/2023/09/06/post-1233/

注意点としては、

 ・pkgの形では提供されていない。
 ・そのまま利用するにはportsのoverlay機能の使い方を理解している
  必要がある。
 ・fcitx4にあったIMEパネルはfcitx5では無くなった。(mateの場合、mateの
  パネル上の状態表示アイコンは残っている)
 ・辞書データの中に頻繁に更新されているものがあるため、タイミングに
  よってはファイルの取得に失敗することがある。
 ・mozc自体が新しいバージョンになるため、出口さんご自身が使わない
  ため未着手のibus-mozcやuim-mozcはビルドできなくなる。
 ・現状、現在の理屈通りの対応ではpoudriereでのビルドがうまくいかない。
  (古典的なBUILD_DEPENDSへの追加が必要なものがある)

といったところです。 私の場合、依存関係の絡みであえてportsの
バージョンを使いたいものもあったためoverlay機能を使わず、
出口さんのoverlayとportsツリーの差分から欲しい物だけ切り出した
diffを適用(削除されるファイルへの対応の関係でgdiffとgpatchを
使う必要あり)しています。

一応ポイントとしては、「overlayに存在するディレクトリについては
portsや下(より大元のportsに近い段階)のoverlayの内容は無視される
ものの、/usr/ports/Mk/以下は例外らしい」というところでしょうか。
portsツリーに存在してoverlayには無いファイルを残すようにパッチを
当ててしまうと基本的にビルドに失敗します。 当初、ファイル単位で
マスクされるものと思ってパッチを生成していてうまくいきませんでした。


ここから先は、出口さんのリポジトリを発見するに至った経緯ですので、
読み飛ばして頂いて全く問題ありません。

久しく日本語入力にはfcitx-mozcを使ってきたのですが、これは旧バージョンの
chinese/fcitx (所謂fcitx4) に対するもので、先行きに不安があります。

また、試しに入れてみたx11/kittyで日本語入力できず、調べてみるとibusの
インターフェースしかサポートせず、現行のfcitx5 (textproc/fcitx) なら
ibusのインターフェースに対応しているものの、旧バージョンのfcitx4では
できないことも判明しました。 これがターミナルエミュレータ全般なり
(違う類でも)Rustで書かれたソフトウェア全般がその方向になると、
今のトレンドのままRustが普及すると日本語入力したくてもできないケースが
懸念されます。

現行のjapanese/mozc-serverのMakefileを見るとfcitx5の機能を無効にして
fcitx4を活かすように設定されているようだったので、最も安直な形で
fcitx5を使う形に書き直してみてもうまくいかず、腰を据えてできるときに
少しずつやってみる...前に、誰かやっていないか久しぶりに確認してみようと
探していて出口さんのサイトに行き当たりました。

さらに、現メンテナの手が回っていなくてportsが古いバージョンで止まって
いるため設定ツールが使えなくて他の方にお薦めできなかったcompizまで
後継バージョン(0.8系)の新しいものが用意されていたことに嬉しくなって
しまい、pkg_replaceのバグレポートの関係でご縁のあった出口さんだった
こともあって連絡を取らせて頂いて今に至る形です。


-- 
青木 知明  [Tomoaki AOKI]    <junchoon@dec.sakura.ne.jp>