otfパッケージのexpertオプションを有効にすると異体字が出力されません

Re: otfパッケージのexpertオプションを有効にすると異体字が出力されません

- ya ra の投稿
返信数: 2

t tkさま、ありがとうございます。

1と2は upTeX(u1.35)開発時に開発者の私が意図した書き方です。今後とも動作を維持していきます。

ありがとうございます。よろしくお願いいたします。

\symbol は、LaTeXのコマンドでしょうか? (u)pLaTeX では和文向けの仕様が追加されているのでしょうか? そちらの仕様が変わらない前提が期待できるのであれば、動作は維持されると思います。

私の調べによると、latex.ltx から提供されているコマンドでした。ただ、このコマンドが (u)pLaTeX で和文向けの仕様を持っているのかは分かりませんでした。

この辺り、分かる方がいれば教えていただけると幸いです。

ya ra への返信

Re: otfパッケージのexpertオプションを有効にすると異体字が出力されません

- はやて (h20y6m) の投稿

\symbol は以下のように定義されています。 (latex2e/base/ltfssini.dtx

\ifdefined\XeTeXversion
  \DeclareRobustCommand\symbol[1]{\Ucharcat#1 12\relax}
\else
  \DeclareRobustCommand\symbol[1]{\char#1\relax}
\fi

つまりupLaTeXでは 葛\char"E0100\relax になります。和文向けの特別な実装はありません。 現在の e-upTeXでは \char"E0100\kchar"E0100 と同じになるはずです。

ya ra への返信

Re: otfパッケージのexpertオプションを有効にすると異体字が出力されません

- 本田 知亮 の投稿
\symbol{#1} は \char#1\relax に展開されます.
実際のところは \symbol はrobustなので \protect\symbol(space) を経由しますが
これは今回は関係ないと思います.
・・・て投稿したら,はやてさんとかぶってました.


ところで,tlmgr update -all を 2025/11/16 現在で実行した後で 

\documentclass[uplatex, dvipdfmx]{jsarticle}
%\usepackage{otf}
\begin{document}

あ葛\kchar"E0100い葛う、
あ塚\kchar"FE00い塚う。

あ曙い曙\kchar"E0101う、
あ社い社\kchar"FE00う。

\end{document}

と otf を外したり,otf で noreplace オプションをつけると異体字セレクタのところが
欠落しますね.
upjisr-h.vf のときにうまくいってないのでしょうか?

dvipdfmxが

[1
char=0x80845b(8422491)
Tried to set a nonexistent character in a virtual font
char=0x40585a(4216922)
Tried to set a nonexistent character in a virtual font
char=0x8466d9(8677081)
Tried to set a nonexistent character in a virtual font
char=0x40793e(4225342)
Tried to set a nonexistent character in a virtual font]

と四つほど対応しているであろう警告を出します.