- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:cygwinのtschで日本語文字化け)
cygwinのtschで日本語文字化け
このQ&Aのポイント
- tcshでバッチを実行した際に、echoで表示される日本語が文字化けします。
- nkfをインストールしても解決せず、別のPCからtcshをコピーしても文字化けします。
- cygwinフォルダ丸ごとコピー以外にも日本語表示できる環境移行の方法を探しています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
localeコマンドの結果を補足してください。 当方では LANG=ja_JP.SJIS LC_CTYPE="C" LC_NUMERIC="C" LC_TIME="C" LC_COLLATE="C" LC_MONETARY="C" LC_MESSAGES="C" LC_ALL= の状況ならechoコマンドでシェル変数は化けませんでした。
その他の回答 (2)
- kmee
- ベストアンサー率55% (1857/3366)
回答No.3
2.738はSetup.exeのバージョンでCygwinのバージョンでは無いので、この情報は無意味。 まず、その日本語が使えるPCでのCygwinとtcshのバージョン、そして今回のPCのCygwinとtcshのバージョンをもう一度確認すること。 Cygwin の1.5と1.7では大きく変わりました。特にlocaleがある程度使えるようになったり、内部処理がUnicodeになったりしてます。 標準の端末も、たしかUTF-8に変わっていたような気がします(全然使ってないので曖昧です) あと、nkfを使ったとありますが、具体的にどんな風に使いましたか? nkfでは文字コードの指定ができます。その出力の指定と端末のコードはあってますか? nkfの出力はtcshの設定とは関係無いはずです。 あと、tcshのechoって文字コードの変換までやってたかどうか。 たぶんやってない気がするのですが。dspmとは関係無い気がします。
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.2
LANG とかの値が C.UTF-8 になっている (つまり UTF-8 だと思っている) のに dspmbyte が sjis になっている (つまり shift_jis) のが原因だったりしませんかね. あとは「バッチ」の文字コードとか.
お礼
下記でレジストリの場所2つが解りまして、フォルダとレジストをコピーしたら日本語表示されました。 localeは使えなくなりましたが。 http://nova-memo.blogspot.com/2009/05/cygwin.html お騒がせしました。 すでにある環境のおかげですが、新規インストールする事になった場合はまた試行錯誤しそうですが・・・ ありがとうございました。
補足
LANG=C.UTF-8 LC_CTYPE="C.UTF-8" LC_NUMERIC="C.UTF-8" LC_TIME="C.UTF-8" LC_COLLATE="C.UTF-8" LC_MONETARY="C.UTF-8" LC_MESSAGES="C.UTF-8" LC_ALL= となってます。 setで見ると、dspmbyteはsjisになっています。 別の日本語表示されているPCではlocaleは使えませんでした。