cygtermで日本語入力ができない場合の対処
WindowsXP + Cygwin1.7.x + teraterm(cygterm) を準備する。
ここで SJIS を使う場合、
/etc/profile で、環境変数 LANG をSJISに設定し、viの設定もSJISにあわせると、viで日本語の読み書きができる。
lsでも日本語が表示できる。
しかし、コマンドラインで日本語が入力できず、日本語をパスに含むディレクトリに移動できない。
cygtermを使わない、素のcygwinシェルであれば日本語のパスも問題なく扱える。
延べ2,3時間は悩んだが、解決できなかった。
最後に試した方法はシンボリックリンクを張ること。
しかし、シェル上でlnコマンドを使ってもエラーになるため、
以下のようなシェルスクリプトを(SJISで)作って実行した。
$ vi link.sh
ln -s "/cygdrive/c/あめ/" rain
$ sh link.sh
$ cd rain
utf-8 であれば、teratermでも日本語入力が可能なので、なかなかに混乱させられましたが、とりあえず快適な作業環境が作れたようです。
ああ、疲れた……