home ホーム search 検索 -  login ログイン  | reload edit datainfo version cmd icon diff delete  | help ヘルプ

技術/Linux/kinput2+Cannaで「半角・全角」「変換」キーを使う

技術/Linux/kinput2+Cannaで「半角・全角」「変換」キーを使う

技術 / Linux / kinput2+Cannaで「半角・全角」「変換」キーを使う
id: 353 所有者: msakamoto-sf    作成日: 2003-12-14 21:46:45
カテゴリ: Linux UNIX 

※TurboLinux 8 Workstation 使用当時のメモ
※なお、2003年のTLX8WS使用当時の ".canna" 設定ファイルは 添付ファイル/2003/08/29/dot_canna 参照。

TLX8WS使用当時、非力なマシンを使用していたこともあり、ATOKXではなくてkinput2 + Cannaの組み合わせを使っていました。
Ctrl + o や Ctrl + Space でCannaをON/OFFする習慣にどうしてもなじめなかった為、どうにかしてWindowsでのATOK風に、「半角・全角」でCannaをON/OFFし、ON中は「変換」(JP106キーボードでスペースの右にあるキー)で英数字入力モードにしたい。

色々と試行錯誤しまして、その一部が

です。
上記ページの後半にもある通り、パッチを作る程ではなくてxmodmapを使ったキーコードの変換だけで実現しました。

kinput2のソースを読んでいて気づいたのですが、やはり、想定しているキーボードがJP106のような日本語キーボードではない、というのが重要でした。
一部Solarisのキーボードには「漢字」キーというのがあります。他にも基本的にPC/AT互換機上での日本語キーボードとは無縁の、英語キーボードの世界で発達してきたUNIXの影響をkinputは強く受けています。

ここでxevコマンドで調べた、X上での関連キーコードを載せます。

半角・全角 49 (デフォルト定義:Zenkaku_Hankaku)
変換 129 (Henkan_Mode)
無変換 131 (Muhenkan)

※「無変換」はJP106キーボードで、スペースバーの左に位置するキーです。

これに加え、Solarisなどのコンピュータで長年使われているキーボードには、「漢字」というキーが存在します。

漢字 (不明) (Kanji)

ソースを調べたところ、kinput2が想定しているのは「漢字」と「無変換」キーです。
よって、一番簡単なやり方は xmodmap を使って「半角・全角」を「漢字」キーのコードに、「変換」を「無変換」キーのコードに変換することです。

xmodmapコマンド :

$ xmodmap -e "keycode 49 = Kanji"
$ xmodmap -e "keycode 129 = Muhenkan"

"$HOME/.Xmodmap"をつかうなら、上記""の中をそのまま記述すれば大丈夫でした。

...
keycode 49 = Kanji
keycode 129 = Muhenkan
...

2009年現在は、殆どをWindows上で過ごし、Linux/UNIXを使う場合はSSHターミナルでログインしての作業となる為、XWindowSystem上での日本語入力に悩む場面は滅多にない。
それでも2003年当時はデスクトップLinuxに結構はまっていて、かなり苦労もしていた。上記エントリを含め、関連エントリを整理していたらkinput2 + Cannnaにまつわる苦闘は 2003/06月頃に端を発し、2003/09月にパッチ作成で一旦落着した後、xmodmapによる最終決着は2003/12月と、実に半年にわたり延々とCannaやkinput2が心の引っかかりとして頭の中にあったことになる。

Linux/UNIXのXWindowSystem、というかデスクトップ環境について恨み言しか喋れないのは、さんざん苦労させられた上、結局デスクトップLinuxの夢はいつまで経っても実現せず、Linux/UNIXサーバもWindows上でVMwareを入れれば使えるようになり・・・結局、あれだけ苦労したのが全て徒労に終わった、終わらせられた感が強いから。
gccやMake, サーバ環境などでの苦労はその後お仕事で報われる事も多かったが、ことデスクトップ環境やXWindowSystem関連については殆どその後役に立たなかった、というのが実情。



プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-04-19 22:26:28
md5:9d16a130a0fd3aabeae16743704afd81
sha1:8b0311e921f7b952050f1153fe03ba435128b096
コメント
コメントを投稿するにはログインして下さい。