我一直在使用带有 acro 版本 2.9 的 texlive 2019,当我将 latex 发行版升级到带有 acro V3.5 的 2021 时,出现了太多错误,这是一个 300 页的文档,如何解决错误而不逐一解决。
\documentclass[12pt, oneside]{book}
\usepackage[colorlinks]{hyperref}
\usepackage{acro}
\acsetup{
sort = true ,
page-style = comma ,
extra-style = paren ,
hyperref =true
}
\DeclareAcronym{CDMA}{
short = CDMA ,
long = Code Division Multiple Access ,
long-plural = es,
class= foo
}
\DeclareAcronym{GSM}{
short = GSM ,
long = Global System for Mobile communication,
class= foo
}
\DeclareAcronym{NA}{
short = {\ensuremath{N_{\mathrm{A}}}} ,
long = Number of Avogadro ,
extra = see \S\ref{Chem} ,
pdfstring = NA,
class= foo
}
\DeclareAcronym{NAD+}{
short = {NAD\textsuperscript{+}} ,
short-plural = ,
long = Nicotinamide Adenine Dinucleotide ,
pdfstring = NAD+ ,
class= baz
}
\DeclareAcronym{NUA}{
short = NUA ,
long = Not Used Acronym,
class= baz
}
\DeclareAcronym{TDMA}{
short = TDMA ,
long = Time Division Multiple Access ,
long-plural = es,
class= baz
}
\DeclareAcronym{UA}{
short = UA ,
long = Used Acronym,
class= baz
}
\DeclareAcronym{lox}{
short = {\emph{LOX}} ,
long = Liquid Oxygen ,
pdfstring = LOX,
class= baz
}
\DeclareAcronym{lh2}{
short = {\emph{LH\textsubscript{2}}} ,
long = Liquid Hydrogen ,
pdfstring = LH2,
class= baz
}
\DeclareAcronym{IC}{
short = IC ,
long = Integrated Circuit,
class= baz
}
\DeclareAcronym{BUT}{
short = BUT ,
long = Block Under Test ,
long-plural-form = Blocks Under Test ,
class= baz
}
\usepackage{xepersian}
\settextfont[Scale=1.3]{Amiri}
\setlatintextfont[Scale=1.3]{Arial}
\defpersianfont\Sayeh[Scale=1.5]{Arial}
\begin{document}
\printacronyms[name=Foo,include=foo]
\printacronyms[name=Baz,include=baz]
\newpage
\acs{GSM}
\ac{TDMA}
\acs{GSM}
\ac{CDMA}
\ac{TDMA}
\ac{GSM}
\acs{GSM}\ac{GSM}\ac{TDMA}.
\ac{CDMA}\acs{GSM}
\acs{GSM} \ac{TDMA}
\end{document}
答案1
在将软件包从版本 2.X 更正为 3.X 后,acro
我可以无错误地编译以下代码(请参阅标有 的更改<======
):
\documentclass[12pt, oneside]{book}
\usepackage[colorlinks]{hyperref}
\usepackage{acro}
\acsetup{
list/sort = true , % <==============================================
% page-style = comma , % <========================== removed from acro
% extra-style = paren , % <========================= removed from acro
make-links = true % <==============================================
}
\DeclareAcronym{CDMA}{
short = CDMA ,
long = Code Division Multiple Access ,
long-plural = es,
tag= foo % <========================================================
}
\DeclareAcronym{GSM}{
short = GSM ,
long = Global System for Mobile communication,
tag= foo % <========================================================
}
\DeclareAcronym{NA}{
short = {\ensuremath{N_{\mathrm{A}}}} ,
long = Number of Avogadro ,
extra = see \S\ref{Chem} ,
pdfstring = NA,
tag= foo
}
\DeclareAcronym{NAD+}{
short = {NAD\textsuperscript{+}} ,
short-plural = ,
long = Nicotinamide Adenine Dinucleotide ,
pdfstring = NAD+ ,
tag= baz
}
\DeclareAcronym{NUA}{
short = NUA ,
long = Not Used Acronym,
tag= baz
}
\DeclareAcronym{TDMA}{
short = TDMA ,
long = Time Division Multiple Access ,
long-plural = es,
tag= baz
}
\DeclareAcronym{UA}{
short = UA ,
long = Used Acronym,
tag= baz
}
\DeclareAcronym{lox}{
short = {\emph{LOX}} ,
long = Liquid Oxygen ,
pdfstring = LOX,
tag= baz
}
\DeclareAcronym{lh2}{
short = {\emph{LH\textsubscript{2}}} ,
long = Liquid Hydrogen ,
pdfstring = LH2,
tag= baz
}
\DeclareAcronym{IC}{
short = IC ,
long = Integrated Circuit,
tag= baz
}
\DeclareAcronym{BUT}{
short = BUT ,
long = Block Under Test ,
long-plural-form = Blocks Under Test ,
tag= baz
}
\usepackage{xepersian}
\settextfont[Scale=1.3]{Amiri}
\setlatintextfont[Scale=1.3]{Arial}
\defpersianfont\Sayeh[Scale=1.5]{Arial}
\begin{document}
\printacronyms[name=Foo,include=foo]
\printacronyms[name=Baz,include=baz]
\newpage
\acs{GSM}
\ac{TDMA}
\acs{GSM}
\ac{CDMA}
\ac{TDMA}
\ac{GSM}
\acs{GSM}\ac{GSM}\ac{TDMA}.
\ac{CDMA}\acs{GSM}
\acs{GSM} \ac{TDMA}
\end{document}