-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ordering rules for cleveref
and various other packages
#2
Conversation
Most of these come from `\@ifpackageloaded` checks in `cleveref.sty` that add special support if the other package is already loaded. One is also mentioned explicitly in the `cleveref` documentation.
The `cleveref` documentation explicitly states the order in which these must be loaded if all three are used. Other rules already put `hyperref` and `varioref` before `cleveref`. This adds the final necessary constraint to enforce the correct total ordering among all three packages.
\Load {listings} before {cleveref} if loaded because {cleveref adds special support for this package if it is already loaded} | ||
\Load {ntheorem} before {cleveref} if loaded because {cleveref adds special support for this package if it is already loaded} | ||
\Load {subfig} before {cleveref} if loaded because {cleveref adds special support for this package if it is already loaded} | ||
\Load {varioref} before {cleveref} if loaded because {cleveref adds special support for this package if it is already loaded} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi. Thanks for this contribution! Three comments:
-
I can't find the loading order preference of
amsmath
andcaption
in thecleveref
docs. It mentions them in other places, but (how) are you certain they have to be loaded first? -
Most
cleveref
rules are very similar and can be abbreviated as follows:\Load {cleveref} after {algorithm2e,algorithmicx,...} if loaded because {...}
-
At this point it would make sense to group these rules by source. Could you please separate your new rules from the pre-existing ones and specify their source with a simple comment block (with a URL)? I should have done the same for the existing rules a while ago. (Maybe, while you're at it, could you specify that those came from "http://www.macfreek.nl/memory/LaTeX_package_conflicts"?)
Thanks!
The preference to load I like your suggested reorganization of the many similar rules. I will make that change, which should then propagate into this existing pull request. I'll add the clarifying attribution for the existing rules too, per your request. |
Actually, one clarification regarding |
Is it possible that That said, if you are reasonably confident about these, please keep them in.
I'm thinking about a feature where a rule can be conditional on package date/version/options. But that's not implemented yet. |
Ordering rules for `cleveref` and various other packages
Thanks again! I've merged your changes, and I'll release a new version to CTAN soon(ish). |
I definitely see what you're saying about whether I'll definitely want to send you another pull request (since you already merged this one) that removes the |
In fact, it seems to me that both rules are probably fine (for now), since the The recommended ruleset doesn't have a cycle in it yet, so let's keep it the way it is for the moment. In the future, we'll want to come up with some proper guidelines about which rules should be included. |
OK, sounds good to me. We're done here! |
No description provided.