I finished a new package: »acro«. This package extends the functionality of the existing »acronym« package but is considerably smaller than the great »glossaries« package.

acro

Its basic functionality is very similar to the »acronym« package. Many commands have the same name (which only shows that the names were well chosen in the first place 🙂 ). Additional features include

  1. the `single’ option, that allows to treat acronyms differently that are used only once in a document.
  2. the `macros’ option, that defines additional shortcuts for the acronyms.
  3. commands are provided that allow to display the long form of an acronym with the first letter capitalized.
  4. the `sort’ option, that automatically sorts the list of acronyms by the ID of the acronyms.
  5. acronyms can be divided into different classes.

The first option is inspired by a question on TeX.SE which I haven’t answered yet (a possibility for someone to earn some reputation).

I use the acronym package for managing acronyms. There is one option I am missing (couldn’t find it in the manual): that is, suppressing the abbreviated form if the acronym occurs only once throughout the text.

The second option is just for convenience. Suppose you have defined an acronym with [cce inline=”true” lang=”latex”]\DeclareAcronym{id}{ID}{identification number}[/cce] then you can either use [cce inline=”true” lang=”latex”]\ac{id}[/cce] or [cce inline=”true” lang=”latex”]\id[/cce] in your document to refer to it.

The third option might come in handy if you need the long form at the beginning of a sentence (like in this post on latex-community.org).

The fourth option is somewhat experimental. It needs the »l3sort« package from the »l3experimental« bundle. While writing the documentation (and through reading for example this post) it became clear to me that this would be an “must-have” feature.

The package has not been uploaded to CTAN, yet. Before I do that there has to be some more testing and ideally feedback from you! 🙂

Edit: please see my follow-up post on the new version and the new syntax.

6 thoughts on “»acro« – a new acronym package

  1. Toby says:

    Looks like this package may turn out to be more useful to me than ‘acronym’ in the long term. However, I’m trying to switch but having difficulties. So far I’ve written a python script to convert my acronym definitions and added the package and definitions to my document.

    When trying to compile my document I am encountering these errors at each acronym.

    ! Missing number, treated as zero.

    \bool_g__acro_BASS_label_bool_1:w

    If you’ve got any thoughts I’d greatly appreciate them.

    Thanks,

    Toby

    1. cgnieder says:

      Can you show me a minimal example that produces this error?

  2. Toby says:

    Sure,

    This snippet exhibits the described behaviour.

    \documentclass{report}
    \usepackage{acro}
    \DeclareAcronym{TLA}{
    short = TLA ,
    long = three letter acronym
    }
    \begin{document}
    \acs{TLA} stands for \acl{TLA}
    \end{document}

    Generates these errors:

    ./texttest.tex:8: Missing number, treated as zero.

    \bool_g__acro_TLA_label_bool_1:w
    l.8 \acs{TLA}
    stands for \acl{TLA}
    ?
    ./texttest.tex:8: Missing \endcsname inserted.

    \bool_g__acro_TLA_label_bool_1:w
    l.8 \acs{TLA}
    stands for \acl{TLA}
    ?
    ./texttest.tex:8: Missing number, treated as zero.

    \bool_
    l.8 \acs{TLA}
    stands for \acl{TLA}
    ?

  3. Toby says:

    I also seem to suffer this error when compiling either of the examples on the bitbucket page.

  4. cgnieder says:

    This compiles flawlessly on my system (up to date TeX Live 2012). My guess is that your TeX system is not up to date. »acro« depends on up to date versions a number of packages, especially l3kernel, l3packages and l3experimental.

  5. Toby says:

    Looks like a reboot over the weekend has got things working. Thanks for all your help. The package is great.

Leave a Reply

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