Hey, how you're all doing? Came by to say hi and tell you that TeX StackExchange is the best StackExchange. The worse is Chemistry one: a bunch of good for nothing, condescending people. But that was a year and a half ago. Now, after being away for many months, I decided to log in to my StackOverflow account to ask a question, but was surprised to find out I'm banned from asking any: some (or all) of the 13 questions I'd asked since 2018 were supposedly making StackOverflow worse (they hinted).
So remembering my entire experience on StackExchange I realize how good you people actually are, so wanted to say thanks for everything you've done for me (and others).
2
I think that's because TeX StackExchange mostly consists of first-hand experts and developers of TeX system who aren't here only as users but as mods, which is very important. If other StackExchange resouces, like Chemistry and Mathematics, had professors as users and mods, they would've been so much better than they are. I know there are famous developers on StackOverflow who are directly involved in big projects but the resource is so big (covering entire IT industry) that...
they don't pull the shots there, in general.
Very disappointed with StackExchange. What a waste (of something that could definitely be so much better). But, again, there's TeX (thanks God). See you later, friends.
@HenriMenke it is not a bug. It is by design. If you want a specific order you have to setup a rule. Or you will have to use another hook, e.g. \AddToHook{begindocument/end}{\renewcommand\vec{\mathbfit}}.
@HenriMenke that isn't the same as saying the issue was not being considered or wouldn't result in changes. As you may note your gh issue isn't closed. It was in response to the suggestion you made here that we just made arbitrary untested changes and didn't care about users. This was a known change not a bug, there are reasonable questions you could have asked about whether the judgement was right this case, but that was not the approach you chose to take. Your gh issue was a lot more reasonable
@DavidCarlisle Frank's remark above wasn't about the AtBeginDocument business but about the shading issue. See the link from texnician above the comment.
@HenriMenke sorry, but you are mixing up statements here. you listed the shading issue and claimed the whole team said it doesn't care about the issue that shading vanished. Which is fundamentally untrue. The problem there was that atbegshi code was moved from a package to the kernel but this way it turned out that it couldn't be used for patching stuff in precisely the same way as before.
@HenriMenke what you are here referring to is something totally different. It is an design extension that brought change. So yes, it is by design and you encountered an edge case.
Whether that edge case should be caught with a loud warning or otherwise catered is something to discuss, but that doesn't alter the fact that by design code added to hooks added by one package independent of code added by other packages and there is no guaranteed order (unless a rule is being set up). That design was chosen to make it possible to manage such code chunks in better ways then telling users put package A after B but before C etc.
@UlrikeFischer you are right clock goes the other way around ...
@FrankMittelbach I used to eat on a fancy German restaurant in São Paulo in which the clock had a reversed mechanism, such that \let\clockwise\counterclockwise. :)
@PauloCereda Hi duck person! And also: you ate "on" a restaurant? :p Do you say that in Brazilian? Cause for example in Icelandic you would say "I always read a little bit on the evenings." Instead of in the evenings like you would in English.:p
@AlexG Well, depends. These days we have sunrise around 10:30 and sunset around 16:00 (around the winter solstice it's about 11:00 to 15:00). And if it's cloudy it isn't that bright. However, if it's sunny you could have the sun shining right into your face the whole six hours cause it never goes that high. :p
@AlexG No, I think people tend to exaggerate these things for "exotic effect" :p If you want to check the numbers you can look at almanak.hi.is/solgang.html :)
Is there a particular reason you've picked simplekv over keyval, pgfkeys, expkv or l3keys (to my mind the four serious candidates when creating keyvals)? — Joseph Wright ♦Aug 25 at 20:59
@JosephWright aww <3 ^^^ you consider expkv a serious candidate.
@Skillmon I guess kvoptions could also get a mention, as Heiko’s code is always solid. But it’s rather specialist and I think people get the impression options are not the same as general keyvals
@LaTeXereXeTaL I concentrate so hard on getting that right I also suffer from the related problem of forgetting that SVN commands do not start with git
@PauloCereda Fun fact: Somewhere in my garage I have a large stack of 5 1/4 floppies containing the contents of a magnetic tape I got from the Bureau des Longitudes in Paris in 1987 or 1988. Someone had to read the tape on a university mainframe and I copied all the data one floppy at a time.
@MarcelKrüger on revision 211136 in svn in a repository with tens of thousands of files, it may move to git one day but no one is in a rush to move it:-)
@AlexG interesting. Not something I wanna deal with at Overleaf support :-) (Not that I'd deal with media9 much, we simply pointed users to the example and told them that debugging media9 is out of our support scope.)
@JosephWright I'm asking you, since you would be aware of recent changes in TeX/LaTeX in the last month or two. I realize it may be no recommended to \usepackage inside a cls file, but humor me. Let's assume the included package uses \AtBeginDocument to change a definition.
Previously, I could in the cls file, issue my own \AtBeginDocumentafter loading the package to counteract the definitional change of the package. Now, it seems like the package's definitional change takes precidence, even if my \AtBeginDocument occurs in the cls file after loading the package. Does this question make sense, and did something change to bring this about?
@StevenB.Segletes I think it would be useful if you could outline the detail either here or (preferably) on GitHub: @FrankMittelbach and @PhelypeOleinik are trying to find a way to balance the desire to have improved behaviour for ordering packages with the ability to override in the preamble
@StevenB.Segletes Er, somewhere in between I think: current plans are to address some aspects but keep the ability to sort the hook. But I'm not sure your case has come up, so details would be good: what package(s) are you setting up?
@JosephWright I am loading tocloft inside a cls file to get some features, which redefines \tableofcontents. I am now unable to reset in my cls file a desired definition for \tableofcontents. Same applies to \listoffigures and \listoftables.
@JosephWright how about not changing the behaviour of \AtBeginDocument to use the new hooks, but provide the new hooks as well? That way, new code could use the auto-sorting hook mechanism (and provide rules), while all the legacy code still works.
@StevenB.Segletes The current issue is (as far as we know) restricted to usages of \AtBeginDocumentoutside packages... Inside a package should work as it always have, so an example would be great
(or, add a new hook for it and do \def\AtBeginDocument{\AddToHook{legacy/atbegindocument}})
@StevenB.Segletes the correct "workaround" (well, not a workaround but the way the new hook mechanism is intended to be used), would be to provide a new rule which sorts your hooks after the hooks added by tocloft.
@PhelypeOleinik Yes, my issue is I am using \AtBeginDocument in a cls file to change a definition. Under the new scheme, package redefinitions of the variable change take precedence.
@PhelypeOleinik wouldn't you get inside a class the same, if you do \AtBeginDocument{something} load a package \AtBeginDocument{something else}? Then both would have the class label and be before the package by default? You need to use rules here aren't you?
@UlrikeFischer Yes if both \AtBeginDocument can go after the package, otherwise you'd need a different label (kind of the same situation as in the preamble...
I'd have an idea how the user-level (preamble-level) \AtBeginDocument calls could be handled to allow backwards compatibility with older code (doesn't work for package-level hooks, though).
But I don't know how to turn my idea into words in this chat...
@StevenB.Segletes Basically you do \AddToHook{begindocument}[myclass-tocloft-cor]{...} and then you can define a rule that the myclass-tocloft-cor label is always behind the tocloft label.
Basically, the idea is to automatically use a new label for preamble-level \AtBeginDocument whenever one or more package-level \AtBeginDocument happens, and sort this new preamble-level label after the package-level labels added in the meantime. This way, the package sorting things can still be used (and package authors still need to check for such incompatibilities), but the user-level behaves somewhat like the old \AtBeginDocument.
Obvious drawback: Predicting user-level ordering, when the labels added at package-level have some extensive sorting rules themselves, gets way harder. (but then the user could as well just label by hand and add a rule to sort things out in those probably few cases)
@StevenB.Segletes same is true for me, I still only have a basic understanding of it, and know that it exists. I'm nowhere near confident in using it myself :) texdoc lthooks it is.
@StevenB.Segletes Another quick fix that wouldn't need to resort to begindocument/end is to do \AtBeginDocument[stevens-tocloft-patch]{...}
@StevenB.Segletes That should be enough (giving it a different label). You could make sure that it always goes after tocloft by doing \DeclareHookRule{begindocument}{stevens-tocloft-patch}{after}{tocloft}
@StevenB.Segletes We encourage people to use the class/package name in the label, so it's easily identifiable, so better than stevens-tocloft-patch would be \AtBeginDocument[./tocloft-patch]{...} (the . gets replaced by your class's name)
@StevenB.Segletes Yes, those commands (and the optional argument to \AtBeginDocument) are only available starting with the 2020-10-01 release. You can use something like this to be compatible with older releases:
\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
\IfFormatAtLeastTF{2020-10-01}%
{% code for LaTeX > 2020-10-01
\AtBeginDocument[./tocloft-patch]{...}%
\DeclareHookRule{begindocument}{./tocloft-patch}{after}{tocloft}%
}{% code for older releases
\AtBeginDocument{...}%
}
@PhelypeOleinik wouldn't reducing code-duplication be more favourable here, using \IfFormatAtLeastTF{2020-10-01}{\DeclareHookRule{begindocument}{./tocloft-patch}{after}{tocloft}\AtBeginDocument[./tocloft-patch]}{\AtBeginDocument}{...}, or is \DeclareHookRule not valid for a label not being used yet?
@Skillmon The hook system is designed so that you don't need to know when a hook is defined to be able to do things to it. Everything should work the same way either before or after the hook/label is there
@PhelypeOleinik there is just a tiny issue with this: \IfFormatAtLeastTF isn't the oldest of all macros. Chances are that if a user doesn't have \AddToHook, he also doesn't have \IfFormatAtLeastTF :)
One of our major open source book publishers has created a Word - TeX converter for people who haven't seen the light. langsci-press-gug.org/doc2tex (problems with the security cert, but it's a legitimate website).
@Skillmon No, the've just announced it. I assume it's semi-optimized for the kinds of typesetting linguists use a lot, so it's not likely to be entirely general. I'm not likely to have much time to try it for a while.
Rats! I was on the verge of being in palindrome territory when someone gave me the gift of a downvote. (tex.stackexchange.com/a/22563 ) Life is unfair. Does anyone think that I should further edit my answer to say that it's not considered necessary to add \@ after a capital letter before a comma? And can anyone confirm that neither the TeXbook nor Lamport says anything at all about that situation?
@AlanMunn -- This is really interesting news. Do you see any problem with my announcing it in my column in the next issue of TUGboat?
@Plergux -- What? You're almost there. You've turned in a substantial draft, and you said that its appearance, at least, met with a favorable reaction from your adviser.
@barbarabeeton I would probably contact LSP directly; I think they intend this as a tool for authors submitting manuscripts to them rather than a general purpose tool. But they've advertised it on their Facebook page, so I expect they wouldn't mind another mention in TUGBoat.
@StevenB.Segletes what is still missing beside lthooks-doc ltshipout-doc and ltfilehook-doc which are more reference docs is an article about use cases and examples. It's on our list, but we are still in collecting phase and learning --- besides the days still have only 24 hours here (and not much sunshine :-( which makes you sleepy)
@AlanMunn -- Thanks. What I had in mind, really, was not to advertise it for general use, but to cite it as recognition by another discipline that LaTeX gives results that are preferable to those from Word. In other words, LaTeX may be creeping into the mainstream.
@barbarabeeton Yes, that I think is definitely worthwhile. Did you also announce the Journal of Historical Syntax announcement that I posted a while ago?
From the Open Access Journal of Historical Syntax: "For all articles and squibs submitted from 1st September 2020 onwards, we've therefore decided to require authors to submit the post-review version of their accepted manuscripts in LaTeX, using the JHS submission template." https://ojs.ub.uni-konstanz.de/hs/index.php/hs/announcement/view/1
@AlanMunn -- Thanks, and that's a really great manifesto to authors. I think I'll ask the editors to permit me to quote it. (I can attest to the time it takes to do a creditable editing job even when a manuscript is submitted in LaTeX!)
Is there a way (I always feel bad when asking this kind of question with LaTeX) to display both the final number and the original reference name in a document with biblatex? Let's say I have a reference like @article{myref,...} in my .bib, I would like \cite{myref} to be typeset as e.g. [myref:1].
I could not find posts on this
I am revising a document with someone very not used to LaTeX, which has trouble with the whole reference name different than final number thing.
@AlexG Apparently they're a clothing company. I just got one of their sweaters from Amazon. The first attempt yielded a counterfeit item that I had to return. This one seems genuine and I'm just trying to find more about the company.
@DavidCarlisle Your css would be better than hiding in a hamburger menu - given that every other day someone asks where to find the logout button, they should have learned by now that this does not work...