• ベストアンサー

viで開くと、utf8で保存した文書が文字化けして読めない

vine linux4.2を使用しています。 vi(vim?)をutf8で使いたいと思います。どのようにしたらよいでしょうか? まずは、utf8で保存したファイルを読めるようにしたいと思って、今までに試したことは以下です。 */etc/vim/vimrcを~/にコピーして set fileencoding=utf-8 set fileencodings=iso-2022-jp,euc-jp,utf-8,ucs2le,ucs-2,cp932 の行を追加したが、読めなかった。 *evimで起動するとutf8で保存したファイルが開けた(が、モードが使用できないので迷っています)

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

  • ベストアンサー
noname#136147
noname#136147
回答No.2

~/.vimrc にリンク先の記述を入れておくと 文字コードを自動認識してくれます。 http://www.kawaz.jp/pukiwiki/?vim#cb691f26

love_vb
質問者

お礼

返事が遅くなって申し訳ありません。。 回答どうもありがとうございました。 早速試してみます! ありがとうございました!!

その他の回答 (1)

回答No.1

GNOME端末の文字コードをUTF-8にしてからviを起動すると幸せかも alt+t c

love_vb
質問者

お礼

返事が遅くなって申し訳ありません。 回答どうもありがとうございました。 説明が抜けていました・・・すみません。。。 vine linuxのetc/sysconfig/i18nをutf-8に変更していましたので、 GNOME端末の文字コードはutf-8にはできていたのです。。 どうもありがとうございました。

関連するQ&A

  • vimrc.jaとvimrc

    Vine Linux3.2を使用しています。 vimの設定ファイルを/etc/vim からコピーしてホームディレクトリに置こうと思うのですが、設定ファイルらしきものが2つあります。 vimrc.jaとvimrcですが、片方が日本語対応?なのでしょうか? ファイル内容を比べると、最後の方が異なり、vimrc.jaの方には次のような段落があります。 if $LANG =~ "ja.*" if has("multi_byte") set encoding=japan set termencoding=japan set fileencodings=iso-2022-jp,utf-8,utf-16,ucs-2-internal,ucs-2,shift-jis,euc-jp,japan endif endif この2つのファイルの違いは何でしょうか?場合によって使い分けられるのでしょうか?

  • Vimエディタ:新規ファイルのfileencodingについて

    OS: Fedora Core4 editor: Vim version 6.3 shell: bash 3.00.16 私は.vimrcファイルに文字コードの設定を次のようにしています。 set encoding=euc-jp set fileencodings=iso-2022-jp,sjis,utf-8 この設定で新規ファイルを作って、「set fenc?」でファイルの文字コード(fileencoding)を調べると当然ながら何も指定されていません。 しかし、このファイルを保存した後に再び開くと「fenc=iso-2022-jp」となって、ファイルの文字コードがiso-2022-jpに設定されています。 fileencodingsが新規ファイルには使用されないことは分かっているのですが、Vimのhelpを参照(:h fileencoding)すると、 「"fileencoding"が空のときには、"encoding"が使用される」(意訳) と書かれています。 従って、(encodingをeuc-jpに設定した)私の環境では自動的にfileencodingがeuc-jpに設定されると思ったのですが、上記のように、ファイルを保存後に再び開くとiso-2022-jpに設定されていました。 なぜこのような現象が起こるかご存知の方がいらっしゃいましたら是非教えてください。(おそらく私が勘違いしている部分もあると思うので、そういった点も含めて指摘していただけるとありがたいです)

  • viの設定ファイルについて

    viとvim、設定ファイルについてお聞きします。 FedoraCore6を利用していますが、設定ファイルの.exrcと.vimrcなのですが、これはviを起動した際はどちらの設定が反映されるのでしょうか。 viで行番号を表示させたかったので.exrcに「set number」を記入しましたが、反映されませんでした。 あとから気づいたのですが、すでに「set nu」(numberの短略版)と記述されてたのでどちらにしても行番号が反映されていないようでした。でも、同じファイルに「syntax on」は記述があり、viを起動するときちんと色が付いて表示されます。 しかたなく、.vimrcに「set number」を記入したところ、viでファイルを開いたらきちんと行番号まで表示されました。 .vimrcには「set number」しか記入してないのに、色もきちんと反映されます。しかもviを起動したのであって、vimを起動したのではないのに行番号も反映されます。 viとvim、.vimrcと.exrcそれぞれの仕組みをご教示いただけますでしょうか。

  • viでバックスペースがおかしい

    viでバックスペースを押すと^?と入力されるようになってしまいました。 .vimrcをつくりset t_kb=^? とすると直るのですが、それぞれのユーザのホームに作らなければいけないようです。 以前はどのユーザでも問題なくバックスペースが使えていたのですが、もとに直したいです。 vimを一度コマンドで入力したことは関係ありますか? 環境はmacbook(英字キーボード)のターミナルからsshでcentOS5.1に入ってviをいじっています。

  • centos5にてiconvコマンド

    いつもお世話になっております。 すみません。 centos5にて、utf8のファイルをeucjpにiconvで変換しようとしていますが、 下記のコマンド実行後、eucではなく、ISO-8859になってしまいます。 こちら、バグなのでしょうか。 お手数をおかけしますが、ご存知の方、ご教授いただけると助かります。。 [foo@localhost ~]$ file /tmp/in.dat /tmp/in.dat: UTF-8 Unicode text [foo@localhost ~]$ iconv -f utf8 -t eucjp < /tmp/in.dat > /tmp/in.euc.dat [foo@localhost ~]$ file /tmp/in.euc.dat /tmp/in.euc.dat: ISO-8859 text [foo@localhost ~]$ iconv --list | grep UTF ISO-10646/UTF-8/ ISO-10646/UTF8/ UTF-7// UTF-8// UTF-16// UTF-16BE// UTF-16LE// UTF-32// UTF-32BE// UTF-32LE// UTF7// UTF8// UTF16// UTF16BE// UTF16LE// UTF32// UTF32BE// UTF32LE// [foo@localhost ~]$ iconv --list | grep EUC CSEUCKR// CSEUCPKDFMTJAPANESE// EUC-CN// EUC-JISX0213// EUC-JP-MS// EUC-JP// EUC-KR// EUC-TW// EUCCN// EUCJP-MS// EUCJP-OPEN// EUCJP-WIN// EUCJP// EUCKR// EUCTW//

  • vi で文字化け

    Vine3.1のviを使っています。 日本語を含むテキストを作成したとき、作成中はちゃんと漢字が表示されていて、編集もできます。 でも保存したファイルを開くと、漢字が文字化けしています。 何処を確認すればいいのでしょうか? 宜しくお願いします。

  • vimの環境設定について

    http://www.kawaz.jp/pukiwiki/?vim#cb691f26 こちらのサイトを見ながら(というか自動認識の部分をコピペ)で文字コードの自動認識はクリアでき,文字化けは起こりませんでした.ですが,新しくファイルをvim上で作るときにまでそれが影響してきて*.texファイルはEUC-JPでコンパイルしないといけないのにUTF-8になってしまいます.:set fileenc~でEUCを指定しても結局はUTF-8で開かれてしまいます.しかもfile2でそのtexファイルの文字コードを確認してもASCIIとなりnkfで変換しても変わりませんでした. *質問:文字コードASCIIはnkfで変換できないのでしょうか? *質問:どうにか自動認識を保ったまま*.texファイルをeuc-jpで保存する方法はありませんか?

  • UTF-8のファイルをviで開くと日本語が文字化け

    centos5.6 32bit版でUTF-8のファイルをviで開くと 日本語が文字化けします。 どうしたら直るのでしょうか。 (fonts-japaneseはインストールしてあります) /etc/sysconfig/i18nのファイルを下記のように設定 LANG="ja_JP.UTF-8" #LANG="C" SUPPORTED="ja_JP.UTF-8:ja_JP:ja" SYSFONT"latarcyrheb-sun16" /etc/man.configのファイルを下記のように設定 PAGER /usr/bin/less -isr ↓ PAGER /usr/bin/lv

  • MFCで、UTF-8で保存したい

    すいません。 またまた教えて下さい。 MFCで、UTF-8でファイルを保存しようとしていますが、うまくいきません。 下記のプログラムで、添付のエラーが出ます。 // UTF-8ファイル書き込み FILE* pFile1; fopen_s(&pFile1,"C:\\app\\8a.txt", "w, ccs=UTF-8"); //fopen_s(&pFile1,"C:\\app\\8a.txt", "w"); //UTF-8でないのでOK if (pFile1) { CStdioFile file(pFile1); file.WriteString(_T("abcあいうえお")); file.Close(); } <環境> windows8 visual studio2012(2008でも同じでした) MFCで、文字セットはマルチバイト文字セットを使用するにしています。 参考にしたHP http://faithandbrave.hateblo.jp/entry/20080724/1216890457 なぜでしょうか? よろしくお願い致します。

  • UTF-8で文字化け

    いつもお世話になっております。 全てのファイルをEUC-JP で作成しております。 Googleマップを使用することになり、1ページだけ UTF-8 で出力したいと思います。 php.ini の設定は以下のようになっております。 -------------------------------------------------- default_charset EUC-JP mbstring.detect_order no value mbstring.encoding_translation Off mbstring.func_overload 0 mbstring.http_input pass mbstring.http_output EUC-JP mbstring.internal_encoding EUC-JP mbstring.language Japanese mbstring.substitute_character no value -------------------------------------------------- Googleマップを出力するページで以下のようにしたのですが 文字化けが直りません。 map.php -------------------------------------------------- ini_set("default_charset", "UTF-8"); mb_internal_encoding("UTF-8"); 他に設定する箇所はありますでしょうか。 よろしくご教示お願いいたします。 <環境> PHP:4.3.1

    • ベストアンサー
    • PHP