English help on website



エンコード1(Ver9.35対応版)
目次動作環境ファイル− エンコード1
ここの設定は、上級者向け設定をONにすると設定できます。
自動判定で開くとき
ファイルの内容を解析してエンコードの種類を自動認識する
以下の操作をするとき、エンコードの種類の自動認識をします。

  • 開くダイアログで、エンコードの種類の指定に「自動判定」を選んでいるとき。
  • grepでファイルを検索するとき。
  • ヒストリからファイルを開く場合は、前回のエンコードの種類で開く設定が無効のとき。
    ([動作環境]-[ファイル]-[ヒストリ2])

OFFにしていても、UnicodeとEUCコード指定ドライブ([その他]-[動作環境]-[ファイル]-[エンコード2])は認識します。

複数のエンコードの種類に適合する場合
複数のエンコードの種類に適合する場合、どのように判定するかを決めます。

最初に確定したものにする(推奨)
ファイルの最後まで全て解析せず、最初に確定できる要素が見つかった場合、確定します。
例えば最初にShift-JISと思わしき文字があって、最後のほうにEUCがあったとしても、最初に判定されたShift-JISになります。
この選択が一番高速です。
同時に複数のエンコードに適合する場合は、指定した優先順位にはならず、よく使われそうな文字の頻度によって優先度が決まります。
(ひらがな、カタカナ、第一水準の漢字として解釈可能な文字が優先度が高い)

優先順位に従う
ファイルの最後まで解析して、最適なものが選択されます。
複数候補がある場合は優先順位に従います。
ファイルをいったん最後まで読み込んで判断するので、遅くなります。

V8.90以降では、grepで自動判定にしている場合でも、開く場合と同じように優先順位に従う設定が適用できます。
(V8.90未満では、文字数制限の設定を「制限なし」にする必要がありました)

候補の一覧を表示
ファイルの最後まで解析して、最適なものが選択されます。
複数候補がある場合は一覧を表示します。
ファイルをいったん最後まで読み込んで判断するので、遅くなります。

grepで自動判定にしている場合は、「最初に確定したものにする」と同じになります。



新規作成やASCIIのとき(旧設定名:標準のエンコードの種類)
自動判定できなかった場合と、新規作成時とASCIIのファイルに適用されるエンコードの種類です。
UTF-16、UTF-32、UTF-7が設定されている場合ついては、新規作成時のみの適用で、1文字1バイトのASCII文字だけのファイルを読み込んだときは適用されません。

XML宣言の認識
ファイルの先頭が <?xml encoding="..."?> で始まるファイルの場合、encodingの部分を解析して、エンコードの種類を決定します。

HTMLのmetaタグを認識
HTMLファイルと思わしき場合、

<meta http-equiv="Content-Type" content="text/html; charset=...">
<meta charset="...">

というような感じで書かれている部分のcharsetを解析して、エンコードの種類を決定します。

V8.50より、CSSの@charset "...";という記述にも対応しています。

UnicodeのBOMを認識
ファイルの先頭にBOM(Byte Order Mark)がある場合、認識してエンコードの種類を決定します。
ファイルの先頭が16進数で FF FE または FE FF の場合、Unicode(UTF-16)またはUnicode(UTF-16,Big-Endian)として認識します。
FE FF をUTF-8エンコードしてしまった場合にみられる EF BB BF も認識します。

Shift-JISの外字を除外
日本語(Shift-JIS)の外字は適合しない扱いにします。ONにするとUTF-8の認識精度が上がります。


参考:
coding等のコメントの認識
ファイルタイプ別の設定に、「自動判定で開くとき、coding等のコメントの認識」という設定があります。