とある GitHub プロジェクトのとある issue において、「inputenc パッケージを読み込まずに Latin-1 のテキストを通す」というアレな LaTeX 文書を紹介した。これは「inputenc 非読込の状態では、高位バイト("80〜"FF)についても入力した符号値の文字がそのまま出力される」という LaTeX の挙動を流用したもの(恐らくバッドノウハウ)である。
% encoded in Latin-1 \documentclass[a4paper]{article} \usepackage{lmodern} % because LY1 is compatible with Latin-1... \usepackage[LY1]{fontenc} % inputenc not loaded \begin{document} ``¿But aren't Kafka's Schloß and Æsop's {\OE}uvres often naïve vis-à-vis the dæmonic ph{\oe}nix's official rôle in fluffy soufflés?'' \end{document}
事のついでに、これの“和文版”といえるものを紹介しておく。
% pLaTeX文書; 文字コードはSJIS \documentclass[a4paper]{jsarticle} \begin{document} % 仮に, "jisank-r" というJIS X 0208互換の"欧文"フォント % ("A1〜"DFに半角カナがある)が存在したとする \newfont{\fJisAnk}{jisank-r} \begin{center}アンケート\end{center} 次の中で開催が最も望まれるイベントを選んでください。 \fJisAnk \begin{enumerate} \item \TeX{}Conf 2018 \item ナントカConf 2018 %pLaTeXだけど \item カントカConf 2018 %半角カナを直接入力! \end{enumerate} \end{document}
最初の Latin-1 の文書がバッドノウハウなのであれば、こちらもバッドノウハウであろう。
上掲の pLaTeX 文書は、仕様を満たす欧文論理フォント「jisank-r」を用意しないとコンパイルできない。しかし、某 pxchfon パッケージの機能を用いれば「シフト JIS で書いた半角カナを platex で“直接出力”する」という同様の挙動が実現できるので、これを紹介しておく。
- LaTeX: シフトJISの半角カナを“直接出力”するアレなやつ(Gist/zr-tex8r)