(1)<arg>
我需要提供什么参数\ltx@ifpackageloaded{<arg>}
来专门捕获法语 babel? (2) 您介意编译注释掉的
MWE 吗?如果它像我遇到的那样产生编译器错误,我想知道为什么?! \usepackage{siunitx}
! Undefined control sequence.<argument> \text{loaded} ...eLoaded[babel]+: \myIsPackageLoaded[babel]
\documentclass{minimal}
%RN. 10Aug16. MWE_17_04
\usepackage{ltxcmds}
\usepackage[frenchb,english]{babel}
%\usepackage{siunitx}
\usepackage{MyUtilities}
\begin{document}
\verb+\myIsPackageLoaded[babel]+: \myIsPackageLoaded[babel]
\verb+\myIsPackageLoaded[frenchb]+: \myIsPackageLoaded[frenchb]
\verb+\myIsPackageLoaded[french-babel]+: \myIsPackageLoaded[french-babel]
\end{document}
\ProvidesPackage{MyUtilities}
%\usepackage{expl3}
\usepackage{xparse}
\ExplSyntaxOn
\NewDocumentCommand\myIsPackageLoaded{O{}}{\myIsPackageLoaded_Main:nn {#1}}
\cs_new:Npn \myIsPackageLoaded_Main:nn #1
{
\ltx@ifpackageloaded{#1}{\text{loaded}}{\text{not~loaded}}
}
\ExplSyntaxOff
答案1
LaTeX 对此有内置支持。例如,请参阅这篇文章,其中有您正在寻找的内容:测试包(或包选项)是否已加载