パッケージバージョンに基づいた Acro リスト スタイル

パッケージバージョンに基づいた Acro リスト スタイル

によると1acro バージョン 3 では、リスト スタイルの定義が変更されました。acro パッケージのバージョン (バージョン 2 または 3) に応じて異なる定義を可能にするソリューションを探しています。ifthen パッケージは意味がありますか? 条件文の acro パッケージのバージョンを取得するにはどうすればよいですか?

よろしくお願いします!

編集: これはバージョン 3 では機能しますが、残念ながらバージョン 2 では機能しません (オプション "version=2" を使用して acro をロードする場合)。

% 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 

関連情報