The new »acro«

My »acro« package (which I have described earlier already) has – to a certain degree – grown up and reached version 1.0. Why is that and what is new?

From update to update »acro« got new features, mostly due to user requests. This often meant new properties of acronyms as well. So pretty soon I began to regret the user interface I chose for the v0.* series: a user command with a lot of arguments. That approach made new commands necessary for new properties. So the decision has been there for a while to change the interface into a key-value based one. That is why starting with v1.0 an acronym is declared as follows:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{acro}

\DeclareAcronym{pdf}{
  short     = pdf ,
  long      = portable document format ,
  format    = \scshape ,
  pdfstring = PDF
}

\begin{document}
first time: \ac{pdf},
subsequent times: \ac{pdf}
\end{document
}

acro1-0.a

The syntax change alone justifies that »acro« has been stepped to version 1.0 but there is more. »acro« also got a few new features such as internal usage of the accsupp package and more importantly: recording of every page number and proper display of these in terms of lists and ranges.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{acro}
\acsetup{
  page-ref = comma
}

\DeclareAcronym{pdf}{
  short     = pdf ,
  long      = portable document format ,
  format    = \scshape ,
  pdfstring = PDF
}

\begin{document}
first time: \ac{pdf
},\newpage% 1
subsequent times: \ac{pdf}% 2

\newpage\null\newpage
\ac{pdf}\newpage% 4
\ac{pdf}\newpage% 5
\ac{pdf}\newpage% 6
\ac{pdf}\newpage% 7

\newpage\null\newpage
\ac{pdf}\newpage% 7

\printacronyms
\end{document}

acro1-0.b

Or, the same code but with option page-ranges=false:

acro1-0.c

Since some of the changes are breaking ones (most notably the syntax change) »acro« now provides the option version=0 which should provide compatibility for documents set with a prior version of the package.

There are still open issues so development will continue. I am not particularly content with the way the list layout is chosen. I will need to rethink and rewrite the internal macros. But this is a task for some time in the future and a version 2.0… There are no concrete plans for this, so you will be able to use »acro« as it is now for quite a while. And I will – if possible – try to keep backwards compatibility then, too.

Leave a Reply

Your email address will not be published. Required fields are marked *