CygwinのXサーバーはデフォルトでキーボードの種類をWindowsのレジストリから読み出すのだが、
日本語キーボードはjp106しかないと思っているのが困る。
私はUSキーボードをAX配列で利用しているのだが、cygwinをそのまま起動すると
X11のアプリケーションでキーボードが106として認識されてしまう。
通常、setxkbmap us とでもすればいいように思えるのだが、
実は落とし穴があって、先にXserverが106だと思って、キーコードを
一つ変更しているので、そのキー(バックスラッシュ)だけが使えなくなるのであった。
(余分なことをしてくれるものだ)
これは、Xwinのオプションに
-xkbdmodel xfree86 -xkblayout us
を入れて解決できる(はず)。
本質的な解決は、CygwinにAXキーボードを認識させることだが、
開発チームにフィードバックする必要があるので、これは誰かに任せよう。
Cygwinの嫌いなところは、setupを動かすと、ユーザ設定があろうとなかろうと
ファイルを完全に上書きで変更するので、せっかく設定をしたつもりが
アップデートで壊れてしまうところだ。
X11もはまるが、ghostscriptも日本語関係の設定を独自にやると
ある日突然アップデートで使えなくなるという羽目に陥る。
他にも動作の微妙な部分がいくつもあるのであるが、相当良くなっているのも確かで、
最近、仕事でやたらとワードやエクセルのファイルを送りつけられる関係上、
メインのマシンはWindowsにしておかないと対応が難しいので、cygwinは
生産性向上のキーパーツになっている。
(Openoffice.orgでは複数の人間で編集するようなファイルの互換性には実際無理がある)
Windowsにもかかわらず、X11を立ち上げて、図の作成にはTgifを用いて、
vimでテキスト編集を行い、pLaTeXでフォーマッティングしているので、
微妙なcygwinの落とし穴を除けばかなり快適な環境を構築できつつある。
ただ、これはネットワークにオンラインで、開発系の仕事をsshでリモートに
飛ばせるから使い物になるのであって、一台だけなら相当ストレスたまるのは
目に見えているね。