cgnieder / acro

acronyms for LaTeX
LaTeX Project Public License v1.3c
41 stars 9 forks source link

Docs: incorrect initial value for case-sensitive #206

Closed bersbersbers closed 3 years ago

bersbersbers commented 3 years ago
\documentclass{article}
\usepackage{acro}
\acsetup{case-sensitive=false}
\DeclareAcronym{id}{short=short, long=long}
\begin{document}
\ac{ID}
\end{document}

compiles, but

\documentclass{article}
\usepackage{acro}
%\acsetup{case-sensitive=false} -  edit
\DeclareAcronym{id}{short=short, long=long}
\begin{document}
\ac{ID}
\end{document}

does not.

Hence, I would conclude that the "initial" setting for case-sensitive is not false, as it appears in the docs: image

By the way, all other tools that I can think of name this setting "case-insensitive", especially when case-sensitivity is the default. Just think of the abundance of -i flags in *nix tools.

cgnieder commented 3 years ago

You have two times the same example…

Anyway: the examples

\documentclass{article}
\usepackage{acro}

\DeclareAcronym{id}{short=short, long=long}
\begin{document}
\ac{ID}
\end{document}

and

\documentclass{article}
\usepackage{acro}
\acsetup{case-sensitive=true}
\DeclareAcronym{id}{short=short, long=long}
\begin{document}
\ac{ID}
\end{document}

and

\documentclass{article}
\usepackage{acro}
\acsetup{case-sensitive}
\DeclareAcronym{id}{short=short, long=long}
\begin{document}
\ac{ID}
\end{document}

give

./test.tex:6: Package acro Error: You've requested acronym `ID' on line 6 but you
(acro)                apparently haven't defined it, yet!
(acro)                Maybe you've misspelled `ID'?

as intended. On the other hand

\documentclass{article}
\usepackage{acro}
\acsetup{case-sensitive=false}
\DeclareAcronym{id}{short=short, long=long}
\begin{document}
\ac{ID}
\end{document}

compiles without error.

This is an error in the manual. The option was introduced in v2.11 (2020/01/11) and you are the first to notice it so I guess it is not a big problem. I'll correct the manual for the next update. Since it is a one-liner to add the inverse option I'll add it as well:

\documentclass{article}
\usepackage{acro}
\ExplSyntaxOn
\keys_define:nn {acro} { case-insensitive .bool_gset_inverse:N = \g__acro_case_sensitive_bool }
\ExplSyntaxOff

\acsetup{case-insensitive=true}

\DeclareAcronym{id}{short=short, long=long}
\begin{document}
\ac{ID}
\end{document}
bersbersbers commented 3 years ago

Agreed - I posted the same example twice (corrected now), and your analysis is correct. Fix LGTM.