Bug Tracker
I’m currently working on a major new version of the datatool package. This may take a while. Please be patient. (Experimental version available for testing.)
ID | 92🔗 |
---|---|
Date: | 2015-07-31 08:52:24 |
Status | Closed (Can Not Implement) |
Category | glossaries |
Version | 4.17 |
Summary | To early usage of \hsize |
Sign in to subscribe to notifications about this report.
Description
Several glossaries styles use\hsize
to set length before \begin{document}
but the official setup of \hsize
is in \begin{document}
after calculation of \columnwidth
in \begin{document}
. This results in wrong lengths if e.g. geometry.sty or typearea.sty is used. Sometimes the value is almost correct, so it doesn't matter, but e.g. using a6paper with geometry results in completely unusable lists.
A workaround but be to use \AtBeginDocument
for the lengths settings, e.g.
\AtBeginDocument{\setlength{\glslistdottedwidth}{.5\columnwidth}}
MWE
Download (334B)
\listfiles \documentclass{article} \usepackage[a6paper]{geometry} \usepackage[acronym, style=listdotted, toc]{glossaries} \makeglossaries \newacronym{SOEP}{SOEP}{Sozio-Oekonomisches Panel} %\AtBeginDocument{\setlength{\glslistdottedwidth}{.5\columnwidth}} \begin{document} \printacronyms \section{Test} \gls{SOEP} \end{document}
Evaluation
Unfortunately changing the current code to use \AtBeginDocument
could break existing documents that change the length in the preamble. I'll leave this open for now, but I think it's better to just consider .5\hsize
as a default value that may need changing depending on the document.
Update: I've closed this as "Can not Implement" because I can't implement it in glossaries (for the above reason), but it's addressed in glossaries-extra.
Comments
2 comments.
Date: 2015-12-09 20:51:00
I've implemented your suggestion into glossaries-extra.sty. Since this extension to the glossaries package changes the defaults, backward-compatibility isn't an issue, so it seems the best solution. I'll close this after I upload glossaries-extra.sty to CTAN (once it has stabilized).
Add Comment
Page permalink: https://www.dickimaw-books.com/bugtracker.php?key=92
Date: 2015-08-01 06:42:47
You could additionally (to documentation of the problem) put
before your first usage of\hsize
. This shouldn't break anything, but would at least do it as long as the user does not change geometry e.g. using\geometry
or\typearea
or another\setlength{\textwidth}{…}
after loading glossaries. So this would not be a real fix of the problem but it would decrease the probability of the event.You could do something like:
In real live values < 0 of\glslistdottedwidth
mostly make no sense. So a very special value < 0 could be used as a marker value. Nevertheless, this would change documents, iff the user has not recognized, that the default has not been the intended choice. So maybe the other suggestion would be better.PS: Many thanks for glossaries. It is a very useful package!