このスレッドはクローズされています。記事の閲覧のみとなります。
ターミナルで日本語が入力できない |
|
- æ¥æï¼ 2006/09/22 01:57
- ååï¼ ぎゃばんぬ
- はじめまして、ぎゃばんぬと申します。
いろいろと手を尽くして調べてみたのですが どうしてもわからなかったので質問させてください・・・。
現在FedoraCore5を利用しているのですが、 ターミナルで日本語が表示されません。 たとえば $> vim test.txt とやって い のように日本語を入力しようとすると ~D のように表示されてしまいます。 ただrootで同様の事を行うと、ちゃんと日本語が表示されます・・・。
.vimrcの日本語設定は↓ set encoding=japan if has('iconv') set fileencodings+=iso-2022-jp set fileencodings+=utf-8,ucs-2le,ucs-2 if &encoding ==# 'euc-jp' set fileencodings+=sjis else set fileencodings+=euc-jp endif endif
/etc/sysconfig/i18n は↓ LANG="ja_JP.eucJP" SYSFONT=none
以上です。 初心者の質問ですみません。 宜しくお願いします。
|
■ コンテンツ関連情報
Re: ターミナルで日本語が入力できない ( No.1 ) |
|
- æ¥æï¼ 2006/09/22 06:47
- ååï¼ 管理者
- ぎゃばんぬさん、はじめまして。
「.vimrc」ファイルはそのユーザで読み取りできる権限となっていますか? また、ターミナルソフト側で文字のエンコーディングはあっていますか? (その文字化けを起こす一般ユーザで、「date」コマンド実行時に文字化けを起こしますか?)
この他にそのユーザで以下の実行結果を教えてください。
$ locale $ env | grep LANG
|
Re: ターミナルで日本語が入力できない ( No.2 ) |
|
- æ¥æï¼ 2006/09/22 08:35
- ååï¼ ぎゃばんぬ
- ご返答ありがとうございます
「.vimrc」ファイルは当ユーザで読み取りできる権限となっているようです。 4 -rw-rw-r-- 1 gavan gavan 2927 Sep 22 01:40 .vimrc
ターミナルはPoderosaを使用しており、メニューバーの「コンソール」から「エンコーディング」を見ると「utf-8」になっています。
また、以下コマンド実行結果です。
$date Fri Sep 22 08:30:04 JST 2006
$locale ↓ちょっと怪しい結果になっています。原因はこのあたりでしょうか・・・? locale: Cannot set LC_CTYPE to default locale: No such file or directory locale: Cannot set LC_MESSAGES to default locale: No such file or directory locale: Cannot set LC_ALL to default locale: No such file or directory LANG=ja_JP.SJIS LC_CTYPE="ja_JP.SJIS" LC_NUMERIC="ja_JP.SJIS" LC_TIME="ja_JP.SJIS" LC_COLLATE="ja_JP.SJIS" LC_MONETARY="ja_JP.SJIS" LC_MESSAGES="ja_JP.SJIS" LC_PAPER="ja_JP.SJIS" LC_NAME="ja_JP.SJIS" LC_ADDRESS="ja_JP.SJIS" LC_TELEPHONE="ja_JP.SJIS" LC_MEASUREMENT="ja_JP.SJIS" LC_IDENTIFICATION="ja_JP.SJIS" LC_ALL=
$ env | grep LANG LANG=ja_JP.SJIS
以上です。宜しくお願いします。
|
Re: ターミナルで日本語が入力できない ( No.3 ) |
|
- æ¥æï¼ 2006/09/22 08:56
- ååï¼ 管理者
- > /etc/sysconfig/i18n は↓
> LANG="ja_JP.eucJP" システム自体は「eucJP」でそのユーザは「SJIS」、ターミナルの「エンコーディング」が「utf-8」で統一されていないからではないでしょうか? (システム「euc」、ユーザー毎に「SJIS」や「utf-8」など異なるケースは問題ありません・・)
ターミナルの「エンコーディング」を「S-JIS」にして確認してみて下さい。
※:ただ、そのユーザ「SJIS」で「date」コマンドを入力した時に「LANG=C(英語)」で表示される分が気になりますが・・・
|
Re: ターミナルで日本語が入力できない ( No.4 ) |
|
- æ¥æï¼ 2006/09/23 01:13
- ååï¼ ぎゃばんぬ
- お世話になっております。ぎゃばんぬです。
ターミナルのエンコーディングを「S-JIS」にして確認してみましたが やはり文字化けします。 今度は「い」と打つと「~B」に変換されました。
また、localeの結果ですがroot権限で行うと以下の3行のエラーが出ないようです。 locale: Cannot set LC_CTYPE to default locale: No such file or directory locale: Cannot set LC_MESSAGES to default locale: No such file or directory locale: Cannot set LC_ALL to default locale: No such file or directory
そこで上記エラーを検索し、以下のサイトを参考にいろいろ試してみましたが、 やはり文字化けしてしまいます・・・。 http://bbs.fedora.jp/read.php?FID=2&TID=695 http://buxus.s31.xrea.com/pukiwiki/?cmd=read&page=debootstrap%2Ftest1
|
Re: ターミナルで日本語が入力できない ( No.5 ) |
|
- æ¥æï¼ 2006/09/23 22:55
- ååï¼ Jin
- はじめまして、Jinです。
こちらのサイトを拝見させていただき参考にさせていただいています。
未熟な知識ですが参考にしてください。
(現象) 以下のエラーが表示されShift-JISが使用できない。
locale: Cannot set LC_CTYPE to default locale: No such file or directory locale: Cannot set LC_MESSAGES to default locale: No such file or directory locale: Cannot set LC_ALL to default locale: No such file or directory
今回の場合、OSで「ja_JP.SJIS」がサポートされていないのが原因だと思います。
以下のコマンドを実行しください。
$ locale -a | grep ja ja_JP ja_JP.eucjp ja_JP.ujis ja_JP.utf8 japanese japanese.euc
実行結果に「ja_JP.sjis」が表示されていない場合は、Shift-JISを使用することができません。
root環境で問題ないのは、システムのデフォルト(/etc/sysconfig/i18n)が「ja_JP.eucJP」に なっていることからデフォルトの「ja_JP.eucJP」を使用しているのではないでしょうか? rootでlocaleコマンドを実行して確認してください。
(解決策1)
Red Hat Enterprise Linux ES4、Vine Linux、FedoraCore3などでは、標準で「ja_JP.SJIS」は サポートされていませんでした(確認済み)。
・ご使用している一般ユーザの環境(.bashrcなど)を、以前使用していたシステムなどからそのまま 移行していませんでしょうか? ・Windowsとの互換の為にSHIFT-SJISをどうしても使用したいのでしょうか?
出来れば、システムデフォルトの「ja_JP.eucJP」を使用することをお勧めします。
(解決策2)
どうしても「ja_JP.SJIS」を使用したいのであれば、以下のコマンドを rootの権限で実行してください。
# localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS
(メッセージが出力されても無視してください。)
# locale -a | grep ja ja_JP ja_JP.eucjp ja_JP.sjis ja_JP.ujis ja_JP.utf8 japanese japanese.euc
ロケールに「ja_JP.sjis」が追加されたことを確認します。
管理者さんよりの指摘にあるようにターミナルソフトの「エンコーディング」が「shift-jis」で あることを確認して動作確認を行ってみてください。
|
■ その他