MacBookでvimを使っているのですが、日本語が中途半端に文字化けします。

入力→変換→ENTER をすると何故かタブを押したようにスペースが空いてしまったり、
一度しか入力していないはずの文字が複数入力されていたり、
日本語を消すと1byteずつ消している?かのように化けながら消えたり、
よくわからない動作をしています。
これの解決方法をご教授いただけますでしょうか。
よろしくお願いいたします。

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

ベストアンサー

id:pahoo No.2

回答回数5960ベストアンサー獲得回数633

ポイント40pt

手元の 10.5 の vim は正常に動作するのですが‥‥いずれにしても、MacOS X の terminal は UTF-8 なので EUC-JP のファイルを扱うには少々工夫が必要です。

UTF-8なターミナルからEUC-JPベースのサーバーにログインする」を参考に、cocotを使ってみてください。

id:n_maco2

ご回答ありがとうございます。

参考にして試してみたいと思います!

それにしても最近開発者の間ではMacがはやっているかと思うんですが、

みなさんperlでプログラム書く時もソースの文字コードはUTF-8で書いていらっしゃるんでしょうか。

レンタルーサーバーとかにあげた時にUTF-8困ることってあんまりなくなっているんでしょうか。

自分は昔からeucで書いているというだけの理由で、引き続きeucで書きたいと思っただけなんですが、

このこだわりってもはや意味がないんですかね。。。

ありがとうございました

2008/11/01 12:58:28

その他の回答2件)

id:pahoo No.1

回答回数5960ベストアンサー獲得回数633

ポイント27pt

vim は MacOS X 標準添付のもを使っているということですね

また、MacBook ということですから、MacOS X のバージョンは 10.4 以降ですよね。


であれば、multibyte有効でコンパイルされているため、vimの再コンパイルは必要ありません。

Mac OS Xの上のVimで日本語を使う」を参考に、設定ファイルを調整してみてください。

id:n_maco2

ご回答ありがとうございます。

こちら拝見して設定したことがあるのですが、

:set enc=utf-8

:set fenc=utf-8

:set fencs=iso-2022-jp,euc-jp,cp932

これを設定すると逆に完全に文字化けが発生してしまいます

今の設定は

set enc=euc-jp

set fencs=iso-2022-jp,euc-jp,cp932

この設定でやっていると一応日本語も表示できますが、

質問にあるとおり中途半端に文字化けが発生するような状態です。

それとperlでプログラムを書いている関係上できれば

ファイルの文字コードはeucにしたいと思っているのですが。。。

※おっしゃる通りMacOS 10.4.11を使用しています。

たびたび申し訳ありませんがまた助言いただけますと幸いです。

よろしくお願いいたします

2008/11/01 11:56:56
id:pahoo No.2

回答回数5960ベストアンサー獲得回数633ここでベストアンサー

ポイント40pt

手元の 10.5 の vim は正常に動作するのですが‥‥いずれにしても、MacOS X の terminal は UTF-8 なので EUC-JP のファイルを扱うには少々工夫が必要です。

UTF-8なターミナルからEUC-JPベースのサーバーにログインする」を参考に、cocotを使ってみてください。

id:n_maco2

ご回答ありがとうございます。

参考にして試してみたいと思います!

それにしても最近開発者の間ではMacがはやっているかと思うんですが、

みなさんperlでプログラム書く時もソースの文字コードはUTF-8で書いていらっしゃるんでしょうか。

レンタルーサーバーとかにあげた時にUTF-8困ることってあんまりなくなっているんでしょうか。

自分は昔からeucで書いているというだけの理由で、引き続きeucで書きたいと思っただけなんですが、

このこだわりってもはや意味がないんですかね。。。

ありがとうございました

2008/11/01 12:58:28
id:startkit No.3

回答回数166ベストアンサー獲得回数1

ポイント19pt

別にターミナルがutf-8だから、ファイルもそうでなければならないということはありません。表示をutf-8に指定すればいいだけです。

あと、文字がずれるのは、フォントの幅などが違うときにそうなります。使っているフォントを変えてみてください。

id:n_maco2

ご指摘ありがとうございます。

文字コードに対する理解がしっかりできていないもので。。。

難しい。。。

表示と保存の文字コードが違うことがあるという理解であっていますでしょうか。

保存時に変換して保存とかできるのは知っていましたが。。。

2008/11/01 13:34:20
  • id:n_maco2
    お騒がせして申し訳なかったのですが結局
    「ワイドグリフは2桁とカウントする」
    のチェックが抜けていることに気づきました。。。
    チェックいれたらちゃんとvimの日本語処理もeucままでうまくいったようです
    本当に初歩的なミスで申し訳ないです。
    みなさん、ありがとうございました
  • id:pahoo
    問題解決したようで何よりです。

    余談ですが、私も UTF-8 にシフトした一人です。
    一番大きな理由は、「xml のエンコード指定では UTF-8 が標準であることが多い」ためです。
    個人的には、Unicode の文字セットは漢字文化圏を侮蔑した代物だと考えているのですが‥‥泣く子と米国には勝てないわけでして。
  • id:n_maco2
    > 泣く子と米国には勝てないわけでして。

    笑わせていただきましたw

    あrがとうございましたw

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

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

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

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