vimについての質問です。


通常はOS(CENTOS)を含み、vimもすべてEUC-JPで作業していますが、特定のディレクトリ配下のファイルだけ、vimで開くと何の追加コマンドもなしにUTF-8として扱いたいです。それを実現する方法を教えてください。(~/の.vimrcをいじるだけが理想)

ちなみに、現状ですと、poderosa(ターミナル)の文字コードをEUC-JPからUTF-8に変更し、更にvi /特定DIR/hoge.txtを開いて、:set encoding=UTF-8とコマンドして初めてUTF-8のファイルを編集できます。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2008/09/05 13:25:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:ttamo No.1

回答回数175ベストアンサー獲得回数29

ポイント60pt

au BufNewFile,BufRead tokuteidir/*.txt setlocal fenc=utf-8

でいいんじゃないでしょうか。enc, tenc は euc-jp のままで OK かと。

http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/autocmd.html

http://www.ac.cyberhome.ne.jp/~yakahaira/vimdoc/filetype.html#ne...

fencs, fenc, tenc, enc については、以下などいろいろあります。

http://www.kawaz.jp/pukiwiki/?vim#cb691f26

id:logihot

poderosaでutf-8を指定してやると、上記を.vimrcに追加すると自動認識出来ましたが、poderosaの切り替え処理が必要です。

http://www.kawaz.jp/pukiwiki/?vim#cb691f26

の自動認識コードを挿入すると自動認識しつつ、utf-8で開けました。

もう少しシンプルに書く方法はないものでしょうか。

ちなみに、試したのは以下です。

au BufNewFile,BufRead hoge/**/* setlocal fenc=utf-8 enc=utf-8

2008/08/29 17:28:36
  • id:ttamo
    んむむ? poderosa の切り替えをせず tenc=euc-jp にすればいい、とかいうことでしょうか?
    (LANG とか LC_CTYPE とかがどうなってるのかよくわかりませんが)


    au BufNewFile,BufRead hoge/**/* setlocal fenc=utf-8 enc=utf-8 tenc=euc-jp

  • id:ttamo
    ちなみに私の vimrc はこんな感じです。
    enc は utf-8 一本で、tenc は LC_CTYPE に合わせてます。
    これで euc-jp と utf-8 どちらからも使えています。

    set encoding=utf-8
    if $LC_CTYPE=='ja_JP.UTF-8'
    set termencoding=utf-8
    else
    set ambiwidth=double
    set termencoding=2byte-eucJP
    endif

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません