依存パッケージしたい(RequirePackage
)
% プリアンブル
\RequirePackage[オプション]{パッケージ名}
自作パッケージで外部パッケージを読み込む際には、
\RequirePackage{}
コマンドで設定します。
注釈
ドキュメントに読み込む際は \usepackage{}を使い、 プリアンブルに記述します。
バージョンを指定したい
\RequirePackage[オプション]{パッケージ名}[yyyy/mm/dd]
行末に[yyyy/mm/dd]
をつけて、
その日付以降にリリースされたパッケージを利用できます。
注釈
特定のバージョンに固定することはできないみたいです。
依存パッケージを確認したい
$ kpsewhich パッケージ名.sty | xargs cat | rg RequirePackage
パッケージ内のRequirePackage
で依存パッケージを確認できます。
依存関係をリストできるコマンドがないようなので、
いくつかのコマンドを組み合わせて確認しています。
$ kpsewhich luatexja-fontspec | xargs cat | rg Require
\RequirePackage{l3keys2e,luatexja}
\RequirePackage{fontspec}[2019/03/15]% v2.7c
\RequirePackage{luatexja-fontspec-29e} % v2.9e
\RequirePackage{luatexja-fontspec-29c} % v2.9c
\RequirePackage{luatexja-fontspec-27c} % v2.7c
luatexja-fontspecの中で luatexjaと fontspecが読み込まれていることが確認できました。
\RequirePackage{iflang}
\RequirePackage{iftex}
\RequirePackage{fontspec}
\RequirePackage{unicode-math}
\@ifpackagewith{fontsetup}{gfsdidotclassic}{\RequirePackage{ucharclasses}}{}
\@ifpackagewith{fontsetup}{minion}{\RequirePackage{ucharclasses}}{}
\@ifpackagewith{fontsetup}{msgaramond}{\RequirePackage{ucharclasses}}{}
\@ifpackagewith{fontsetup}{palatino}{\RequirePackage{ucharclasses}}{}
\RequirePackage{fourier-otf}
\RequirePackage{xcharter-otf}
\RequirePackage{libertinus-otf}
fontsetup
の中で
fontspecと
unicode-mathが
読み込まれていることが確認できました。
注釈
依存パッケージを確認することで、パッケージ読み込みの重複を回避できます。 また、読み込む順番の間違いなどに気をつけることができます。