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/08/29 13:23:48
  • 終了:2008/09/05 13:25:02

回答(1件)

id:ttamo No.1

たも回答回数175ベストアンサー獲得回数292008/08/29 16:35:08

ポイント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

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

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

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

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません