在 biocon 包中使用 \c{c} 字符

在 biocon 包中使用 \c{c} 字符

我创建了一个名为 popular 的新分类单元,用于 biocon 包。但是,该包似乎不接受 'ç' 字符。

最小工作示例如下:

\documentclass{article}
\usepackage{biocon}

\usepackage[utf8]{inputenc}

\newtaxon{popular}
\newtaxastyle{OnlyPopular}{\taxon{!popular!}}

\newplant{araca}{genus=Psidium, epithet=cattleianum, author= Sabine, popular=Araçá}
\newplant{alecrim}{genus=Rosmarinus, epithet=officinalis, author=L., popular=Alecrim}

\begin{document}

Working: \plant[OnlyPopular]{alecrim}

Not working: \plant[OnlyPopular]{araca}

\end{document}

我收到的错误是:

./test.tex:9: \Paraca@popular 定义中的参数编号非法。\crcr l.9 ...ttleianum,作者= Sabine,popular=Araçá}

“alecrim” 植物工作正常,因此我相信我的问题只出在“ç” char 上。此外,我注意到“á” char 也工作正常。

有人知道如何让包装适用于俗名中带有“ç”字符的植物吗?

答案1

该错误取决于biocon包中的概念性错误,该错误在需要文本输入的地方使用\edef。重音字符的宏(使用 UTF-8 输入时是隐式的)通常不会保留\edef,事实上,LaTeX 已\protected@edef为此目的保留了宏。

我做了一个实验:我编辑了一份副本biocon.sty,将每个都改为\edef\protected@edef然后您的文档编译成功。

您可以使用以下方法解决该错误\unexpanded

\documentclass{article}
\usepackage{biocon}

\usepackage[utf8]{inputenc}

\newtaxon{popular}
\newtaxastyle{OnlyPopular}{\taxon{!popular!}}

\newplant{araca}{genus=Psidium, epithet=cattleianum, author= Sabine, popular=\unexpanded{Araçá}}
\newplant{alecrim}{genus=Rosmarinus, epithet=officinalis, author=L., popular=Alecrim}

\begin{document}

Working: \plant[OnlyPopular]{alecrim}

Not working: \plant[OnlyPopular]{araca}

\end{document}

文本所声称的内容现在是错误的。;-)

在此处输入图片描述

笔记。对于这种特殊情况,添加也\usepackage[T1]{fontenc}可以解决问题。如果您使用重音字符,我建议无论如何都加载它。

相关内容