Category: "Input Methods"
gnucashの日本語入力時のバグ
Gnucashという会計ソフトがあり、複式簿記ができる。Windowsのバイナリもあり、sqlite3やmysql, PostgresQLもバックエンドに使えるようになってきているんで、共同作業にも使えるようになっている。
メッセージの日本語化も進んでいるので、いろいろ使えると思うが、入力メソッドを使ったときに、変換候補がインラインで表示されない、という仕様になっている。
これは、GTKのインライン要素を不可視にした上で、入力内容をパースして、セルに記入するという動作をしているためである。
gnucashのシートイメージは、gnome officeのひとつ、gnumericのシートのコードが祖先になっているようだ。gnumericのほうでは、入力メソッドを使ったときの動作は改良されているので、同じような改良をgnucashに行う必要がある。
ソースは以下から入手可能
http://svn.gnucash.org/repo/gnucash/trunk
問題のコードは、
gnucash/src/register/register-gnome/gnucash-sheet.c
とおもわれる。
修正内容は、IM Contextの使い方を参照すると酔い。
XsaneとAtok3 on Debian Sid
xsane (SANEというスキャナーフレームワークのフロントエンドの一つ)が、SegFaultでおちる。落ちる原因は、Atok3 のiiimp.soだったりする。
env GTK_IM_MODULE= xsane とすると、落ちない。
Dell mini (ubuntu)用debianパッケージの作り方
Link: http://ubuntuforums.org/showthread.php?t=962835
このリンクにあるように、dell miniのubuntuでは、アーキテクチャがlpia となっていて、i386用パッケージは、アーキテクチャが違うから使えない、とでる。しかし、強制的にインストールすれば使える。というのはとくにアーキテクチャが違うわけでもないから。
でも、強制するのは気分わるいので、パッケージを変換してエラーでないように使用という話。
Ubuntuフォーラムの説明では、1このパッケージを処理するにはいいが、たくさんあるときには、面倒である。たとえば、 ATOKX3を入れたいときとか。
ということで、スクリプトを書いてみた。repack-deb.sh
usage: repack-deb.sh [-t target directory] debian packages..
使い方はこんな感じで、i386用パッケージを複数指定すると、/tmpディレクトリに作業ディレクトリを作成して、元の投稿にあるような処理を自動的におこなう。結果は、実行したカレントディレクトリにパッケージを作成する。また、 -tオプションでディレクトリを指定すると、そのディレクトリに作成したパッケージをおいてくれる。使い方は、-hオプションをつけてみてください。
このスクリプトを使えば、UbuntuのリポジトリにないskypeやATOKなどを容易に導入することができる。
WindowsXP での英語キーボード配列への変更(日本語キーボードからrdesktop後)
Link: http://yoosee.net/d/archives/2007/12/11/003.html
会社にあるDesktopPCには、悲しいかな規定によりMicrosoft Windows XPが搭載されている。普段、Oki mini keyboard (US)を使ってまあまあ快適に仕事をしているが、規定により専用端末よりリモートからデスクトップに安全に接続すると、キーボード設定が日本語106キーボードになってしまった。
英語キーボード搭載なのに「地域と言語の設定」が [EN] と [JP] の 2種類存在し、[JP] を選ぶと配列が日本語106キー配列(例えばShift+2が@でなく")になってしまう。[EN] で使うと英語キー配列だが MSIME が利用できない。ドライバは101英語キーボードになっているのだが。これはキーボードを途中で日本語106から英語101に変更したときによく出会う状況だ。
ということだが、rdesktopで日本語キーボードのクライアントから接続するときは、同じ目に遭うことに気がついた方がいい。
実際には、とあるWindows Server 2003 ターミナルサーバから、デスクトップにremote desktop接続したのである。
新年、自分の端末で、Ctrl-Plusが打てない、括弧が逆、とか、いろいろストレスであったが、yooseeさんのおかげで、助かった。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\E0010411\Layout File を見てみると、案の定 KBDJPN.DLL だったので、KBDUS.DLL に変更して再起動
おなじように見てみたら、この項目が案の定の設定になっていたので、アドバイス通りに直して再起動した。もう一つのほうは、従前よりkbd101.dllの設定であった。
もう一つのストレスは、MSIME を殺してATOKを使っているのに、勝手にMSIMEがゾンビのように復活することだ。本当にいらいらする。
IIIMF/ATOK/SCIM
Link: http://tach.arege.net/d/20070510.html#p01
最近のiiimf関係の活動は、放置気味で、かつdebian packageのメンテナーであるRoger Soとの連絡もうまくいっていない。(連絡のほうは別件であるが)
しかも、iiimfのメジャーバージョンアップに伴う構成変更でATOKとの相性(?)がとても悪い。
とおもったら、iiimf-client-elも直さないと行けないことが判明して、これは僕の仕事だな。
週末に最新状況をキャッチアップすべく、動きます。
入力周りが(フリーもビジネスも)もっとすっきりするといいんだが...sigh
tachさんのブログでは以下のように記されている
最新の iiimf 関連のパッケージのできがよくなくて,libgtk のアップグレードにともない,gtk immodule が使えなくなってしまった.しばらく xim(iiimf-client-xim)を使っていたんだけど,これが超不安定.ときどき入力が変になることがあって,復旧させるにはアプリの再起動しかない(結局,X のログインセッションからやりなおしたりとか…).
なので,この不安定さに嫌気が差して,scim-anthy を使っていたんだけど….これは自分の使い方ではストレスがたくさんたまってしまう….助詞立ち上がりとかをよく使うので,最初の候補が悲惨な変換になってしまう.しばらく学習させればいけるかなと思ったけど,そう言うレベルではなさそう.なので,強引に問題を解決させて,ATOK を使うことにした.
最新の iiimf deb package で atokx2 を使うには以下の問題がある.
1. iiimf-client-gtk がインストールできない(Bug#419307)
2. iiimf-client-el でつなぐと iiimd が落ちる
3. XIM を立ち上げても,ATOKX のツールバーが出ない
Atok for Linux 2年前にアップデート
Link: http://www3.justsystem.co.jp/download/atok/up/lin/050615.html
2年前にATOK for Linuxがアップデートしていたことに気がつかず。
IIIMFにも、2行ほどパッチが増えていた。
ということで、Debianパッケージを再構成した。ATOKX2パッケージは
対応しているのだろうか。
ATOK同梱相当のIIIMFのdebianパッケージは、後ほどアップロード予定。
PRNG is not seeded
Debian Upgrade
Debian sargeからetchへアップデートを行ったところ、次のようなエラーでログインできんかったり、ターミナルがひらかなくなったりした。
/etc/gdm/Xsession: Beginning session setup...
Setting IM through im-switch for locale=ja_JP.
Start IM through /etc/X11/xinit/xinput.d/ja_JP linked to /etc/X11/xinit/xinput.d/iiimf_atokx2.
PRNG is not seeded
このPRNG is not seededというエラーは、
/dev/urandom
/dev/random
のパーミッションが不正であったために発生。
どうように、ターミナルエミュレータが開けないのは、/dev/ptyのパーミッションが不正になったためだった。
実は、アップグレードしたときに、/etc/udev/permissions.rulesファイルを置き換えるか聞かれたはず。
今回、自前で設定をもっていたので、アップグレードしなかった。
udevシステムのファイル書式が変更になったために、発生していたのだった。
以前は、 KERNEL="misc", MODE="0666"
のような設定書式だったのが、代入と条件判断の書式を分離し、ACTION=="add", KERNEL=="misc", MODE="0666"
のようになったのだ。
そのほかにも
IM-switchの設定関係が増えている。
/etc/alternatives/xinput-ja_JP
/etc/alternatives/xinput-all_ALL
あたりでシステムデフォルトのIM関係環境変数の設定がされるようになった。
ちなみに、iiimfでATOKを使うには、
/etc/X11/xinit/xinput.d/iiimf_atokx2
を準備し、xinput-ja_JPへとリンクされるようにすればよい。
XIM=htt
XIM_PROGRAM=/usr/bin/httx
XIM_ARGS="-if atokx2 -xim htt_xbe"
XIM_PROGRAM_XTRA=
GTK_IM_MODULE=iiim
QT_IM_MODULE=iiim
DEPENDS=atokx2
HTT_DISABLE_STATUS_WINDOW=t
HTT_GENERATES_KANAKEY=t
HTT_USES_LINUX_XKEYSYM=t
export HTT_DISABLE_STATUS_WINDOW
export HTT_GENERATES_KANAKEY
export HTT_USES_LINUX_XKEYSYM
のようにすればよい。
:: Next >>