マクロツイーター

はてダから移行した記事の表示が崩れてますが、そのうちに直せればいいのに(えっ)

LaTeX の文字コードと Unicode を対応させる話

「おれは Adobe 製の某フォントに関するネタを作ったと思ったら、いつの間にか LaTeX エンコーディングUnicodeマッピング表を作っていた」
な…(ry

これは何?

LaTeX で使われるエンコーディングUnicode の間の対応を機械可読な形式にまとめたテキストファイルの集まりである。主要なエンコーディング(OT1、T1、TS1、LY1、T2A 等)のほとんどを含んでいるが、LGR と T3 は欠けている。ファイルの各行は以下の書式に従っている。

0x27    0x2019  #(quoteright)RIGHT SINGLE QUOTATION MARK
元符号  先符号    グリフ名   Unicode文字名
位置    位置

グリフ名は “Adobe Glyph List for New Fonts”(aglfn.txt)((TeX な人にはお馴染みの(?)“Adobe Glyph List”(glyphlist.txt)の部分マッピングに相当するもので、新しいフォントのグリフ名として使用が推奨されるもの。各 Unicode 文字につき高々 1 つ存在し、存在しない文字のグリフ名は汎用形式(uni〜u〜)を用いることが推奨される。))に掲載されているか、或いは PUA の文字((PUA の文字には「Unicode 文字名」がない(ファイルでは「<PUA」の表記)ので、意図的にグリフ名を与えて識別可能にしておいた。))である場合にのみ記した。

このマッピングでは、何より「LaTeX のグリフと Unicode 符号位置を一対一に対応させる」ことを(Unicode 適合性とかより)優先している。なので、Unicode に未収録の文字はもちろん、「Unicode で複数文字で表現されるグリフ」や「別の文字の異体字であるグリフ」にも PUA の符号位置を充てているので、それに注意が必要である。*1

*1:PUA の符号位置は、「Adobe の PUA 規定」→「LM Fonts の符号位置」→「独自定義」の順で最初に利用可能なものに従った。