
В соответствии с1с версии 3 acro произошли изменения в определении стилей списков. Я ищу решение, которое допускает различные определения в зависимости от версии пакета acro (версии 2 или 3). Имеет ли смысл пакет ifthen? Как получить версию пакета acro для условного оператора?
Спасибо заранее!
Редактировать: это мое фактическое решение, которое работает для версии 3, но, к сожалению, не работает для версии 2 (при загрузке acro с опцией «version=2»):
% etoolbox:
\newcommand\ifacroversionThree{%
\ifnumequal{\csuse{c_acro_version_major_number_tl}}{3}%
}
\ifacroversionThree{%version 3
\newlength\myitemwidth
\setlength\myitemwidth{5em}
\newlist{listabbrev}{description}{1}
\setlist[listabbrev]{
labelindent = 0pt,
labelsep = 0pt,
leftmargin = \myitemwidth,
labelwidth = \myitemwidth,
format = \normalfont
}
\NewAcroTemplate[list]{styleabbrev}{%
\let\description\listabbrev
\let\enddescription\endlistabbrev
\UseAcroTemplate[list]{description}[0]%
}
\acsetup{
% list/template = styleabbrev,
make-links = true,
list/template = longtabu,
list/heading = section*,
list/sort = true,
list/name = {\IfLanguageName{ngerman}{Abkürzungen}{Acronyms}}
}
\printacronyms
\newpage
}
{%not version 3
%\input{mandatory/acronyms}
\DeclareAcroListStyle{longtabu}{table}{
table = longtabu ,
table-spec = @{}>{\bfseries}lX@{}
}
\acsetup{list-style=longtabu,
hyperref=true,
extra-style=comma}
\printacronyms[name={\IfLanguageName{ngerman}{Abkürzungen}{Acronyms}},
sort={true},
heading={section*}]
\newpage
}
Может ли кто-нибудь сказать мне, что делают следующие строки?
\ExplSyntaxOn
\cs_undefine:N\__acro_declare_long:nn
\acro_declare_property:nnn {long} {long}
{
\acro_for_endings_do:n
{ \prop_put:cnn {l__acro_long_##1_form_prop} {#1} { \c_false_bool } }
\prop_put:NnV \l__acro_long_indefinite_prop
{#1}
\l__acro_default_indefinite_tl
\acro_for_endings_do:n
{
\bool_if_exist:cTF {l__acro_#1_long-##1_set_bool}
{
\bool_if:cF {l__acro_#1_long-##1_set_bool}
{
\prop_put:cnv {l__acro_long_##1_prop} {#1} {l__acro_default_long_##1_tl}
}
}
{
\prop_put:cnv {l__acro_long_##1_prop} {#1} {l__acro_default_long_##1_tl}
}
}
}
\ExplSyntaxOff