0

またはNotepad++でファイルを開くと、ファイルvimがどのファイルエンコーディングを持っているかを推測できます。

最近Linuxでvimを使用して行末を置き換えたファイルが\rあり、後でそれがどのタイプのエンコーディングであるかを知る必要があると判断しました。

VIM(Linuxの場合)とNotepad ++(Windowsの場合)を使用してファイルのエンコードを決定しようとしました。

vimであると判断しfileencoding=latin1、Notepad++であると判断しますANSI

行末はエンコーディングの決定と関係がありますか?行末を変更したことは、検出された文字エンコードに影響しますか?

4

1 に答える 1

1

テキストファイルの先頭にバイト順マーク(BOM)がない場合、エディターはファイルのエンコードを決定するためにいくつかのヒューリスティックを適用する必要があります。Vimでは、これは'fileencodings'設定によって制御されます。

ファイルの行末(CRとCR-LF)がヒューリスティックに影響を与える可能性はほとんどありません。むしろ、エンコーディング名は標準化されていないため、さまざまなエディタやツールが独自の名前を考え出します。

Vimの命名スキームについては、を介して確認できます:help encoding-values。おそらく、はNotepad ++でlatin1呼ばれるものに対応し、ISO8859-1と呼ばれることがよくあります。ANSI

于 2012-06-22T07:18:18.560 に答える