FreeBSD 7.1でのEmacs+Tamago+canna

サーバの機械を入れ替えて、OSを新しくした。
これまでFreeBSD 5.4あたりだった。
周りのFreeBSDウィザードに聞いたら、7にしてもいいと思うと言われたので、思い切って7.1に変更した。
そうしたら、emacsで日本語を入れようとしてはまってしまった。
まず、emacsをPackageから入れたものでは日本語変換がもともとできない。
そら日本語対応してないんだから仕方がない。
そこで、emacs-emcwsに変更したが、うまく変換されない。
この時点では、cannaserverが動いてなかったので、当たり前・・・
特にcannaにこだわりがある訳じゃないんだけど、今までcannaを使ってたので
cannaserver を入れて動かす。(デフォルトではUnix domain socket)
でもうまく日本語変換ができない。
そこで、Google先生に尋ねたら、tamagoを使うのが今風だという話だった。
じゃぁ、ということで、いったんemacs-emcwsをdeinstallしてportsからtamagoを入れて動かしてみた。
したら、・・・
ひらがなは入るんだけど、
「egg Japanese backend: サーバと接続できませんでした」
と言われて変換できない。
また、Google先生に伺ったら、tamagoはUnix domain socketに対応してないから・・・
という記述があった。
でも、tamagoの開発関連の話を見ていると最新のtamagoでは、unix domain socketに対応したと書いてある。
どうなんだろう?
まずは試しに
cannaを-inetフラグをつけて再起動
nmapやtelnetでcannaserverがlocalからアクセスできることを確認したが
やはり同じエラーを出してしまう。
/etc/hosts.canna
とか
/etc/hosts.allow
とか
(setq canna-hostname “localhost”)
とかいろいろやってみたんだけど、うまくいかない。
仕方がないので、eggのcanna.elを見てみた
(defcustom canna-hostname “unix/”
“Hostname of CANNA server”
:group ‘canna :type ‘string)
やはりちゃんとunix domain socketに対応してるじゃん
(defcustom canna-server-port “/tmp/.iroha_unix/IROHA”
“A service name or a port number (should be a string) of CANNA server”
:group ‘canna :type ‘string)
ポートも正しいじゃないか
あれ??
group canna
ってなってる。
FreeBSD 7.0でportsからcannaserver を入れると
cannaserverはuser binで起動されている。
もしかしてこれが原因?
pw useradd canna
でユーザを足して
/usr/local/etc/rc.d/cannaのbinとなっているところをcannaに書き換えたところ
うまく変換できるようになった。
Google先生に聞く前に自力でソースを見た方が早かったかも
ということで、ほかの人もはまりそうな内容だったので、ここで曝しておこう

カテゴリー: しすてむ パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です