
私はLinux上でLuaTeXとTexLive 2016を使用していますが、私の質問はどのプラットフォーム上のLaTeXにも当てはまると思います。XeTeXに切り替えることはできません。ここに来る前に、パッケージ内から MiKTeX が使用されていることを検出する方法はありますか? しかし、それは私を安心させませんでした。
fontspec
とを使用しunicode-math
ています\setmathfont{Asana Math}
。これで動作します。問題はありません。質問:
私の TeX システムには、その時点で必要なパッケージのみがインストールされていました。そのため、他のパッケージも入手していました。正しいパッケージは、でもでもなく、でもないことtlmgr
がわかりました。大文字の A と M が付いた だけです。これを受け入れるか、受け入れないかはあなた次第です。asana
asana-math
Asana-math
Asana-Math
CTAN によると、MiKTeX ではパッケージ名は ですasana-math
。a と m は小文字です。これは、ドキュメントを MiKTeX システムに転送すると、必要なものが見つからないことを意味しますか? または、MiKTeX はパッケージ名を検出して自動的に取得する際に大文字と小文字を区別しないのでしょうか?
ディストリビューション間で大文字と小文字の区別に問題がある場合、TeX ドキュメント内から、どのディストリビューションが使用されているかを確実に知る方法はありますか? その場合、シェル コマンドは機能しません。バナー全体を見ることは、時々変更される可能性があるため、機能しない可能性があります。
理想的な解決策は次の疑似コードのようになります。
\IfPackageExists{Asana-Math} % not necessarily installed
\usepackage{Asana-Math} % if not installed, get it or error message
\else
\IfPackageExists{asana-math} % not necessarily installed
\usepackage{asana-math} % if not installed, get it or error message
\else
% some suitable error message
\fi\fi
答え1
miktex と TeXLive (および texlive をさまざまな方法で再パッケージ化することが多い Linux ディストリビューション) で使用される「パッケージ名」は、インストールおよび更新オプションの選択に影響しますが、TeX で使用されるマークアップにはまったく影響しません。TeXlive では、フォントまたはパッケージが見つからない場合、tex にはフォントまたはパッケージが texlive のアンインストールされた部分にインストールできるという情報がなく、ファイルが見つからないというエラーが表示されます。(miktex にはオンデマンドでダウンロードする機能がありますが、それでもドキュメントのマークアップには影響しません)。