siunitx 和形容词

siunitx 和形容词

我想知道该siunitx包是否提供了在单位后添加形容词的可能性,以获得带连字符的复合形容词。

例如,在排版“一条10公里长的道路”时,我想将形容词作为可选参数传递给\SI{1}{\kilo\meter},如\SI[[adj=long]{1}{\kilo\meter},而不必输入\SI{1}{\kilo\meter}-long

请理解,语法没有任何问题\SI{1}{\kilo\meter}-long。只是“感觉”用连字符连接命令和单词是错误的。此外,我认为这会让更正变得更直接一些。

如果没有提供此功能,那么软件包的作者是否想到了或者计划实现此功能?

答案1

你可以定义自己的宏:

\newcommand*\SIadj[4][]{\SI[#1]{#3}{#4}-#2}

并将其用作

\SIadj{long}{1}{\kilo\metre}

如果你想防止连字符使用

\newcommand*\SIadj[4][]{\mbox{\SI[#1]{#3}{#4}-#2}}

或者

\newcommand*\SIadj[4][]{\SI[#1]{#3}{#4}\hbox{-}#2}

相关内容