• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:linux日本語入出力の仕組み)

Linux日本語入出力の仕組みと設定方法

このQ&Aのポイント
  • 外部からLinuxにSSH接続して日本語入出力を行う方法について詳しく知りたいです。Debian lennyでの問題や設定方法についても解説してください。
  • Linuxの外部からのSSH接続時に、日本語でコマンドを使用する方法や設定するプログラム・モジュールについて教えてください。さらに、Debian lennyでの具体的な問題や解決策についてもお願いします。
  • Linuxで外部からSSH接続し、Bashで日本語でlsやmanを表示したり、日本語を入力したりする方法について詳しく教えてください。Debian lenny上での問題や設定方法もお教えいただけると助かります。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

よく言われることなのですが 「うまくできない」だけでは、原因も対処法もわかりません。 ○入力 ・そもそも日本語入力そのものが出来ない場合は、ローカルマシン側の設定の問題かもしれません。 ・どのIMを使っているか、わかりません。それぞれに設定があるはず。 ・PuTTYが、IMからどのコードで受けてどのコードでbashまで渡すのか(あるいは、単に8bitスルーするか) ・bashがどのコードで受けることを期待しているのか ・編集でおかしい(BSで文字が消えない、とか文字化けするとか)ならinputrc関連かもしれない ○出力 ・bashやls,manがどのコードで出力しているか ・その出力を受け取ったPuTTYがどう解釈するのか ○その他の環境 ・LANGは確実に設定できているのか。他のLC_*関係で上書きされていないか ・現状でログインして cat > inputcheck.txt として、適当に日本語を入力。文字化けとかしても気にせずに+Ctrl-Dで終了 ・(以下ログインしたままで) 日本語ファイル名があるなら LC_ALL=C /bin/ls -b > filecheck.txt としてファイル名のコードを確認する(/bin/ls はalias等を無効にするため。パスが違う場合はあわせる) ・以下のような感じでいくつかの出力を保存する ls --help > outcheck_0.txt ls -l > outcheck_1.txt man --help > outcheck_2.txt man man > outcheck_3.txt ... → これらの結果をftp等でバイナリー無変換で手許に転送する → エディタで開いたり、nkf --guess等を使ったりして文字コードを確認する。 ・inputcheck.txt の文字コードがutf-8で正常に読めるなら、bashまではutf-8で送られている ・filecheck.txt でエスケープされたファイル名を解読して、使われている文字コードを調べる。これがutf-8でなかったら(EUC等のケースもある)utf-8に設定することが間違い ・outcheck*.txtの文字コードがutf-8なら、各コマンドの出力は期待通り。文字化けするなら、PuTTY側の問題 > set kanji-code sjis これは /etc/inputrcや ~/.inputrcに記述する内容で、bashで実行するものではありません。 また、kanji-codeはreadlineが日本語対応していない場合は意味が無いそうです。 日本語対応版だとしても、utf-8で使うならsjis→utf-8です

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.1

>bashの環境変数はLANG=jp_JP.UTF-8です。utf-8が使いたい文字コードです。 お調べになったとおり、PuTTY を使うなら puttyjp がお薦めです。 せっかく先人が、「苦労せずに日本語が扱える」バイナリを作ってくれたんですから素直に、それを使いましょう。 ログインしたら、設定>ウィンドウ>変換 で「受信されるデータの文字セット変換」を UTF-8 に変えるだけ。これだけです。 設定したらセッションを保存しておきましょう。

ssk38
質問者

お礼

ご回答ありがとうございます。今ちょっと確認できないのですが、それで問題自体は解決しそうです。。。そんな設定があったんですね。 ただ、私の日本語で意図がちゃんと伝わってなかったかもしれません。 今できないのを解決したいのもありますが、linuxで日本語を扱うときに気にすべき項目について、知識として教えていただきたいという質問です。項目の列挙レベルで十分なので、ご存知だったら教えてください。

すると、全ての回答が全文表示されます。

関連するQ&A