将选项传递给作为 tabularray 库加载的包

将选项传递给作为 tabularray 库加载的包

Tabularray 模拟了其他一些软件包中的命令,因此要求您改为启用它们\UseTblrLibrary。 siunitx 就是这样一个软件包。 正常加载 siunitx 时,可以向其传递选项;不幸的是,当将 siunitx 作为 tabularray 库加载时,无法向其传递选项,或者至少我不知道如何传递。 证明如下。

\documentclass{article}

\usepackage{tabularray}
\UseTblrLibrary{siunitx}
\PassOptionsToPackage{retain-explicit-plus}{siunitx}

\begin{document}

\num{+5}

\begin{tblr}{
    colspec = {lS}
    }
        Hey & +1 \\
        Ho & +2 \\
        Hee & +40 \\
\end{tblr}

\end{document}

编译时,生成的文档没有前导加号。我该如何解决此问题?

(我个人的问题与领先的优势有关,但我认为问题的形式更为普遍,因此我希望得到同样普遍的答案。)

答案1

您必须改变事物的顺序,如果您\PassOptionsToPackage在包运行其代码之后使用,那么已经太晚了,您必须在加载包之前使用该宏才能使其工作。

因此,如果你使用以下内容,你就会得到领先标志:

\documentclass{article}

\usepackage{tabularray}
\PassOptionsToPackage{retain-explicit-plus}{siunitx}
\UseTblrLibrary{siunitx}

\begin{document}

\num{+5}

\begin{tblr}{
    colspec = {lS}
    }
        Hey & +1 \\
        Ho & +2 \\
        Hee & +40 \\
\end{tblr}

\end{document}

相关内容