LaTeX2e 2020-02-02 がリリースされ,CTAN に登録されました。
% 開発版 latex-dev の方ではなく 本物 の方です。
% てっきり TeX Live 2020 pretest の開始までは保留されるだろうとばかり思っていたのですが…。
そこで,慌てて
・pLaTeX2e 2020-02-02
・upLaTeX2e 2020-02-02
・jsclasses 2020-02-02
をリリースしました。新しいバージョンでは,LaTeX2e 2020-02-02 の下記の新機能が
pLaTeX と upLaTeX でも正常にサポートされます(のはず)。
(1) シリーズの多軸化(← fontaxes パッケージの一部機能に相当)
(2) シェープの多軸化(← fontaxes パッケージの一部機能に相当)
(3) ファミリ毎の実際のシリーズ値の設定(← mweights パッケージの機能に相当)
(4) \em, \emph の入れ子の書体のカスタマイズ
細かい解説は(今日はもう眠いので)しませんが,
https://github.com/texjporg/platex/issues/88
がいくぶん参考になると思います。
----
(補足1) forum:2763 で提起した
「jsarticle 系クラス + newtxtext で \sffamily で和文がゴシックにならない」
という問題への対策も施しました。
(補足2) forum:902 で提起された
「TeX Gyre フォントを使うと警告が出て OTF パッケージが太字にならない」
という挙動が,新しいバージョンでは少し改善して
「警告は出るけど一応太字にはなる」
という挙動に変わります。理由は
https://github.com/texjporg/japanese-otf-mirror/issues/7
に書いていますのでご参考まで。
アップデートお疲れ様です.
当方の環境とソースで試したところ,プリアンブルに
\usepackage[deluxe]{otf}
\usepackage[noto-otc,unicode,noalphabet]{pxchfon}
があると大量に
LaTeX Font Warning: Font shape `JY2/hmc/b/n' undefined
(Font) using `JY2/hmc/bx/n' instead on input line 1607.
(Font) using `JY2/hmc/bx/n' instead on input line 1607.
という警告が出るようになりました.dvipdfmx によるタイプセット自体はできているようですが,何かが新しいNFSSに対応していないためと思われます.b というサフィックスではだめで,bx というサフィックスに置き換えられているようです.
なお,プリアンブルから上記2行を取り去ると,何の警告も出ずにスムーズに処理が行われます.
端的には,pLaTeX に入った仕様変更
「太字はシリーズ bx ではなく b とする」
に OTF パッケージ又は pxchfon パッケージが対応していないのが原因だと思います。
-----
冒頭の投稿に書いた通り,LaTeX の「新 NFSS」には
> (3) ファミリ毎の実際のシリーズ値の設定(← mweights パッケージの機能に相当)
が含まれています。LaTeX チームがこの拡張を施した真の意図は,
* 欧文の太字を b (bold) に変えたい
* しかし,互換性のため「Computer Modern と Latin Modern の場合だけ」は bx (bold-extended) のままにしたい
→そこで,ファミリ毎に太字を選べる機能を導入することにした
だと推測しています。
この LaTeX チームの意図をくみ取ると,pLaTeX についても
* 和文の太字を bx ではなく b に変えるべきだ
と考えるのは至って自然です。
(実際,和文の太字は「線が太い」だけで「横幅が広がる」わけではないですものね。)
今回の pLaTeX2e 2020-02-02 の仕様変更は,以上の考えに基づきます。
仕様変更ではありますが,全体としては正しい方向に進んでいますし,しかも
> (1) シリーズの多軸化(← fontaxes パッケージの一部機能に相当)
> (2) シェープの多軸化(← fontaxes パッケージの一部機能に相当)
の変更も同時に入ったお陰で
「警告は出るけど一応太字にはなる」
ため,組版結果への影響は限定される(実質起きない)と考えています。
「太字はシリーズ bx ではなく b とする」
に OTF パッケージ又は pxchfon パッケージが対応していないのが原因だと思います。
-----
冒頭の投稿に書いた通り,LaTeX の「新 NFSS」には
> (3) ファミリ毎の実際のシリーズ値の設定(← mweights パッケージの機能に相当)
が含まれています。LaTeX チームがこの拡張を施した真の意図は,
* 欧文の太字を b (bold) に変えたい
* しかし,互換性のため「Computer Modern と Latin Modern の場合だけ」は bx (bold-extended) のままにしたい
→そこで,ファミリ毎に太字を選べる機能を導入することにした
だと推測しています。
この LaTeX チームの意図をくみ取ると,pLaTeX についても
* 和文の太字を bx ではなく b に変えるべきだ
と考えるのは至って自然です。
(実際,和文の太字は「線が太い」だけで「横幅が広がる」わけではないですものね。)
今回の pLaTeX2e 2020-02-02 の仕様変更は,以上の考えに基づきます。
仕様変更ではありますが,全体としては正しい方向に進んでいますし,しかも
> (1) シリーズの多軸化(← fontaxes パッケージの一部機能に相当)
> (2) シェープの多軸化(← fontaxes パッケージの一部機能に相当)
の変更も同時に入ったお陰で
「警告は出るけど一応太字にはなる」
ため,組版結果への影響は限定される(実質起きない)と考えています。
LaTeX2e 2020-02-02 のもう一つの重要な変更点の一つとして,
「expl3 の機能が最初から利用可能になっている」
という点があります。つまり従来は \usepackage{expl3} としないと使えなかった LaTeX3 の
優れたプログラミング機能が,何もしなくても使える状態です。
これに付随する変化として,LaTeX2e 2020-02-02 では
\documentclass[dvipdfmx]{jsarticle}
\begin{document}
ドライバ依存性はなさそうなソース
\end{document}
を処理しても Unused global option(s): dvipdfmx の警告は出なくなっています。
なぜなら,expl3 が持つドライバのコードが [dvipdfmx] オプションに応じているからです。
(現時点では大したドライバ依存性はありませんが,今後の expl3 の機能強化に伴い
依存性が増える可能性があります。)
このことからわかるように,今後は
「ドライバオプションは常に必須」
つまり graphicx や color や hyperref や tikz などを何も使っていなくてもとにかく
\documentclass[dvipdfmx]{jsarticle}
のように「グローバルにオプション指定しておく」習慣を今のうちにつけましょう。
「expl3 の機能が最初から利用可能になっている」
という点があります。つまり従来は \usepackage{expl3} としないと使えなかった LaTeX3 の
優れたプログラミング機能が,何もしなくても使える状態です。
これに付随する変化として,LaTeX2e 2020-02-02 では
\documentclass[dvipdfmx]{jsarticle}
\begin{document}
ドライバ依存性はなさそうなソース
\end{document}
を処理しても Unused global option(s): dvipdfmx の警告は出なくなっています。
なぜなら,expl3 が持つドライバのコードが [dvipdfmx] オプションに応じているからです。
(現時点では大したドライバ依存性はありませんが,今後の expl3 の機能強化に伴い
依存性が増える可能性があります。)
このことからわかるように,今後は
「ドライバオプションは常に必須」
つまり graphicx や color や hyperref や tikz などを何も使っていなくてもとにかく
\documentclass[dvipdfmx]{jsarticle}
のように「グローバルにオプション指定しておく」習慣を今のうちにつけましょう。