
Я использую TexLive 2016 с LuaTeX на Linux, но я считаю, что мой вопрос в целом применим к LaTeX на любой платформе. Я не могу переключиться на XeTeX. Перед тем, как прийти сюда, я нашелЕсть ли способ определить изнутри пакета, используется ли MiKTeX? но меня это не успокоило.
Используя fontspec
и unicode-math
у меня есть \setmathfont{Asana Math}
. Это работает. Никаких проблем. Мой вопрос:
Моя система TeX была установлена только с теми пакетами, которые мне были нужны в то время. Поэтому я использую tlmgr
другие, чтобы получить их. Оказывается, правильный пакет — ни то, 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 (и дистрибутивами Linux, которые часто переупаковывают texlive разными способами), влияют на выбор во время установки и обновления, но не влияют на разметку, используемую в TeX. В TeXlive, если шрифт или пакет отсутствует, tex не будет иметь никакой информации о том, что шрифт или пакет может быть установлен в неустановленной части texlive, вы просто получите ошибку «файл не найден». (miktex имеет возможность загружать вещи по запросу, но даже там это не влияет на разметку документа).