myChemistry

chemistry, typesetting and LaTeX

»acro« – a new acronym package

| 6 Comments

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 \DeclareAcronym{id}{ID}{identification number} then you can either use \ac{id} or \id 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 Comments

  1. 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.
    <to be read again>
                       \bool_g__acro_BASS_label_bool_1:w

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

    Thanks,

    Toby

  2. 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.
    <to be read again>
                       \bool_g__acro_TLA_label_bool_1:w
    l.8 \acs{TLA}
                  stands for \acl{TLA}
    ?
    ./texttest.tex:8: Missing \endcsname inserted.
    <to be read again>
                       \bool_g__acro_TLA_label_bool_1:w
    l.8 \acs{TLA}
                  stands for \acl{TLA}
    ?
    ./texttest.tex:8: Missing number, treated as zero.
    <to be read again>
                       \bool_
    l.8 \acs{TLA}
                  stands for \acl{TLA}
    ?
  3. I also seem to suffer this error when compiling either of the examples on the bitbucket page.

  4. 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. Looks like a reboot over the weekend has got things working. Thanks for all your help. The package is great.

Leave a Reply

Required fields are marked *.