是否有一个宏可以告诉我们正在使用哪个操作系统?

是否有一个宏可以告诉我们正在使用哪个操作系统?

我有一些 LaTeX 文档,需要在不同的 TeX Live 下编译,比如 MacTeX 或 TeX Live。但在不同的操作系统下,字体似乎也不同,例如,在 Windows 中,我更喜欢使用Cambria,但在 Mac 中,我更喜欢Lucida Grande

是否有一个宏可以区分操作系统?


答案更新

作为公认的答案,我们需要对这个问题添加更多评论,正如我所读到的包装手册,我们需要更多的设置来使用这些宏:

% packages we need
\usepackage{pdftexcmds}
\usepackage{catchfile}
\usepackage{ifluatex}
\usepackage{ifplatform}

然后我们像这样使用这些宏

\ifwindows
% add settings
\fi
\iflinux
% add settings
\fi
\ifmacosx
% add settings
\fi % This needs to be \fi, not \if

现在,它运行良好,重点是你不仅需要更多的包ifplatform

还有一件事,-shell-escape需要使用选项编译你的 tex 文件:

xelatex -shell-escape file.tex

答案1

ifplatform软件包提供了\ifwindows\iflinux和条件。我认为这就足够了\ifmacosx\ifcygwin该软件包要求启用 shell 转义。

相关内容