用語集で を使用すると、次のような問題が発生しますmhchem
。文頭に頭字語が使用されているかどうかを気にしなくて済むようにしたいのですが、では\Gls
うまく機能しないようです。頭字語をすでに使用しているかどうかを追跡することで回避できますが、定義を編集して機能させることができればと思います。ご提案があれば、ぜひお願いします。mhchem
glossaries
\newacronym
\documentclass{article}
\usepackage[acronym]{glossaries} % Load the package
\makeglossaries % Prepare the glossary
\usepackage[version=3]{mhchem}
\newacronym{CO2}{\ce{CO2}}{carbon dioxide}
\newacronym{CH4}{CH$_4$}{methane}
\newacronym{H2SO4}{\NoCaseChange{\ce{H2SO4}}}{sulfuric acid}
\begin{document}
%I'd like the following to work, but it doesn't...
\Gls{CO2} in the environment \ldots
\Gls{CO2} now generates an error
\Gls{CH4} in the environment \ldots
\Gls{CH4} works fine.
%\gls works fine
Calculation of the corresponding \gls{CO2} emissions to cover the surplus in electricity demand.
%I also tried
\Gls{H2SO4} is an acid. We use \gls{H2SO4} everyday.
\Gls{H2SO4} generates an error \ldots
\gls{H2SO4} is okay.
\printglossary[type=acronym,title={List of Abbreviations}]
%\printglossaries
\end{document}
答え1
基礎となる大文字マクロ ( \makefirstuc
) に、その処理の最初の「トークン」として空のグループを与えると、次のようになります。
\newacronym{CO2}{{}\ce{CO2}}{carbon dioxide}
それがなければ\ce
議論は起こり\makefirstuc
、物事はうまくいかなくなります。