🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.editor.vi
Article #72

Re: [Q]cat では文字化けしないファイルが vi だと文字化け

#72
From: Anonymous Buddha
Date: Wed, 22 Sep 2004 18:41
60 lines
3999 bytes
返信を行ったところ、何故か改行がメチャクチャになってしまいましたので、
再度投稿します。
失礼しました。。

> ここでの議論に使える特徴的な部分は
>
> > autodetect="jp+"
> > displayencoding="euc-jp"
> > fileencoding="iso-2022-jp"
> > inputencoding="euc-jp"
>
> の4行だと思います。

参考になる情報をいただき、ありがとうございました。
おかげさまで、とりあえず解決しました。

頂いたアドバイスを参考にググった所、下記ホームページで、
http://pcmania.jp/~moraz/howto/install.html#japanese
下記の記述を見つけました。
*********************************
日本語を使うための設定
自分でソースからインストールした場合には、日本語が通るように設定ファイルに手を入れる
必要があります。
設定ファイル(~/.vimrc)に次のように書いてください。
" 日本語を扱うために必要
set encoding=japan
" ファイルの漢字コード自動判別のために必要。(要iconv)
if has('iconv')
  set fileencodings+=iso-2022-jp
  set fileencodings+=utf-8,ucs-2le,ucs-2
  if &encoding ==# 'euc-jp'
    set fileencodings+=cp932
  else
    set fileencodings+=euc-jp
  endif
endif
*********************************
この記述を追加した後、nkf で jis 変換したファイルを開いたところ、文字化けしていました。
変換前のファイルを開いても、文字化けしていました。
少し考えた後、ターミナルの文字コードを euc-jis に変更して試したところ、変換後(jis)ファイ
ルは文字化け、変換前ファイル(euc)は正しく表示する事が出来ました。
私が最初に問題に直面した時の状況は、おそらく下記と思います。
① 日本語に関する設定をしていなかった為に、vi(m) は決め打ちで文字コード=UTF-8でファイ
ルを解釈していた。
※ホームディレクトリに.vimrcを置いていなかった為、/etc/vimrc などがデフォルトで使用されて
いたのかと憶測しているのですが、そのファイルに下記の記述があります。
if v:lang=~ "utf8$" || v:lang =~ "UTF-8$"
   set fileencodings=utf-8,latin1
endif
.vimrc の文法を知らないのですが、上記は入力ファイルの文字コードを utf-8,latin1 に強制して
いる記述ではないかと強く憶測します。

② 元のファイルのコードはEUCだった。

③ cat はただファイルを吐くだけなので、nkf で jis に変換した後、端末の文字コードを jis にすれ
ば正しく表示できた。しかし、vi(m)では入力ファイルを UTF-8 で決め打ちしていた為、jis 変換した
ファイルも、変換前の euc-jis のファイルも正しく表示する事が出来なかった。

以上、何かお気づきの点や余談、補足などあれば、ご指摘をお願いします。有用なアドバイスを頂
き、ありがとうございました。(゜゜)(。。)ペコッ
Technical Details
Message-ID: <nHj4d.3$Gx4.1727@newsall.dti.ne.jp>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newsfeed.media.kyoto-u.ac.jp!newsfeed2.dti.ad.jp!dnews00.dti.ne.jp!newsall.dti.ne.jp.POSTED!not-for-mail
References: <cipcpu$4tf$1@newsl.dti.ne.jp> <41503A72.471279DB@dd.iij4u.or.jp> <cipgnj$6uu$1@newsl.dti.ne.jp> <41517450.C187C6AB@dd.iij4u.or.jp>

Show Full Headers
Complete Article Headers
X-Google-Thread: f7c9f,4def0920565cb844
X-Google-Attributes: gidf7c9f,public
X-Google-Language: Japanese,JIS
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newsfeed.media.kyoto-u.ac.jp!newsfeed2.dti.ad.jp!dnews00.dti.ne.jp!newsall.dti.ne.jp.POSTED!not-for-mail
From: "Anonymous Buddha" <gobtma@yahoo.co.jp>
Newsgroups: fj.editor.vi
References: <cipcpu$4tf$1@newsl.dti.ne.jp> <41503A72.471279DB@dd.iij4u.or.jp> <cipgnj$6uu$1@newsl.dti.ne.jp> <41517450.C187C6AB@dd.iij4u.or.jp>
Subject: Re: [Q]cat では文字化けしないファイルが vi だと文字化け
Lines: 61
MIME-Version: 1.0
Content-Type: text/plain;
 charset="iso-2022-jp"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1437
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441
Message-ID: <nHj4d.3$Gx4.1727@newsall.dti.ne.jp>
Date: Thu, 23 Sep 2004 03:41:24 +0900
NNTP-Posting-Host: 219.109.87.220
X-Complaints-To: abuse@dti.ad.jp
X-Trace: newsall.dti.ne.jp 1095878483 219.109.87.220 (Thu, 23 Sep 2004 03:41:23 JST)
NNTP-Posting-Date: Thu, 23 Sep 2004 03:41:23 JST
Organization: Dream Train Internet