skeleton.el の件の1行

まず。
Plus たん,ありがとう。
latin-1 でのぞいたところ,たしかに確認できました。

本日のへぇ。

ASCII と latin-1 は同じじゃないのら〜。

経た過程

  • 件の1行を,od でのぞいてみることにしました。

skeleton.el の485行目にあることはわかっているので,

% head -485 | tail -1 | sed 's/\s\s*/g' | od -t x1z -A ## 大袈裟すぎる?
000000 28 3f ab 5f 3f bb 29 28 3f 5c bb 29 0a           >(?._?.)(?\.).<
00000d

ほうほう。化けている文字コードは,0xab, 0xbb。
で,見た目は,半角カナで,ちっこい`オ',と,'サ'。

man ascii の SEE ALSO に,iso_8859-1 があったのと,
Plus たんのおかげで頭に latin-1 という単語があり,
この2つって確かおんなじだったような記憶があったので,
man iso_8859-1 してみます。
一部を引用するぜよ。

DESCRIPTION
The ISO 8859 standard includes several 8-bit extensions to the ASCII
character set (also known as ISO 646-IRV). Especially important is ISO
8859-1, the "Latin Alphabet No. 1", which has become widely implemented
and may already be seen as the de-facto standard ASCII replacement.

なるほど。ASCII 文字セットの拡張と。
で,several 8-bit extensions 。わかってきましたね〜。
0xab, 0xbb が登場する理由が。

Oct   Dec   Hex    Char  Description
----------------------------------------------------------------------
253   171   AB     <<    LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
273   187   BB     >>    RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK

ま,これでほとんど解決だけど,一応半角カタカナも。
これは,man にあるのかどうかしらんので,Web から。

SJIS|  0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
----+------------------------------------------------
  A |    。「  」 、 ・ ヲ ァ ィ ゥ ェ ォ ャ ュ ョ ッ
  B | ー ア イ ウ エ オ カ キ ク ケ コ サ シ ス セ ソ
  C | タ チ ツ テ ト ナ ニ ヌ ネ ノ ハ ヒ フ ヘ ホ マ
  D | ミ ム メ モ ヤ ユ ヨ ラ リ ル レ ロ ワ ン ゛

で,0xab, 0xbb がそれぞれ何に対応しているかと,
眺めてみると・・・。

  • 0xab が,ちっこいオ。
  • 0xbb が,でっかいサ。

おぉ〜。ぱちぱちぱち。

結論

  • 別に文字化けしているわけではなかった?
    • nkf --guess の結果が,間違っていたわけではない。
    • nkf さんごめんなさい。一時,あなたを疑っていた父さんを許しておくれ。
  • ascii と latin-1(ISO8859-1) は同じではない。
    • ただ,ISO 8859-1 may already be seen as the de-facto standard ASCII replacement.

という記述が非常に気になる。その前も気になるけど。日本ははぶ?

  • 半角カタカナと latin-1 の区別ってつけらんねーんじゃん? 必ずというわけではないだろうけど。


というわけで,今回も Plus のおかげで,無事,悪の手先をやっつけるとができました。
Plus たんありがとう!!