# How to tweak acronym.sty to longtable width format and appearance?

Is it possible to tweak the acronym.sty to accept the same width format as passed to the long table example below?

In other words going from

    %\begin{acronym}[USA]
%\acro{USA}{United States of America}
%\end{acronym}


to

    %\begin{acronym}{@{}p{50pt} p{250pt}} % <-- direct example
%\acro{USA}{United States of America}
%\end{acronym}


The intention is to make the appearance of the acronym list identical to the longtable I am using for nomenclature (see example below). I would like to keep the functionality of the acronym package.

    \begin{longtable}[l]{@{}p{50pt} p{250pt}}
\textsc{Acronym} & \textsc{Description}\\
\textsc{USA} & {United States of America}
\end{longtable}


How to change the format of acronyms? came somewhat close, but I am not near having the necessary know how for tweaking that .sty modification to something looking like the example given above. I am aware that the line spacing and column widths might make things rather complicated. Perhaps it would be simpler to redefine the acronym.sty to use longtable instead?

I am using the classicthesis.sty https://www.ctan.org/pkg/classicthesis with no modifications; i.e. I am tweaking the ClassicThesis.tex.

Suggestions are much appreciated!

• I might suggest switching to the acro package which is very similar but more powerful and (most relevantly) has an option to print the list of acronyms in a longtable environment. – Dai Bowen Sep 11 '16 at 20:44

Having spent a while looking at Gonzalo Medina's answer to the question you link to I think it will at least be very difficult to adapt the acronym package to be used in a longtable.

Instead I'm going to provide one of those annoying answers which tells you how to do what you want in a different package. In this case, the acro package which is not too dissimilar from acronym (same macros for using acronyms, slightly different way of defining them and generally more powerful).

The advantage acro offers is that you can define styles for how the acronym list is printed by

\DeclareAcroListStyle{ThomasStyle}{table}{
table = longtable,
table-spec = | @{} p{50pt} | p{250pt} |
}


The first argument provides a name for the list, the second specifies the general type (i.e. list or table) then this is followed by a key-value list, the table key sets which table-like environment is used and table-spec sets the column types

Then we can set the acronym list to be printed with this style with \acsetup{list-style=ThomasStyle}

This will now print the entire list in a longtable environment with the column specifications given.

\documentclass{article}

\usepackage{acro}

\usepackage{longtable}

\DeclareAcroListStyle{ThomasStyle}{table}{
table = longtable,
table-spec = | @{}p{50pt} | p{250pt} |
}

\acsetup{list-style=ThomasStyle}

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

\begin{document}
This is a \ac{pdf}

\printacronyms
\end{document}


As far as generally switching from acronym to acro, it should be sufficient to replace \acro{shortname}{longname} with \DeclareAcronym{key}{short=shortname,long=longname} for the simplest cases, the \ac{key} macro works in the same manner with both packages.