@cfr yes although you may note my edited comment above my recollection was that it used undefined command (and the doc link I gave says same) but you are getting the doesn't match case. I could check when it used that form, but I'm going to bed:-)
\documentclass{article}
\ExplSyntaxOn
\typeout{% expansion context can't use normal errors here
aaa
\msg_expandable_error:nn{wibble}{don't ~do ~this}
bbb
}
\ExplSyntaxOff
\begin{document}
\end{document}
@JosephWright has the above changed? The doc in interface3 implies the underlying error will be undefined command, but it's "doesn't match definition" ? (@cfr) ^^^
Hello! hyperref. .out-files have these \BOOKMARK-entries. Does hyperref provide means for hooking into processing them? I'd like to examine the names of the destinations/targets and have some bookmarks not link to a target in the pdf but link to another pdf where target/anchor of same name exists. I thought about patching \ReadBookmarks so that \ReadBookmarks temporarily redefines \@@BOOKMARK. But I wonder if this is really needed.
@UlrikeFischer The bookmarks in question come from a .toc file which is processed via \tableofcontents to have a separate pdf-file only holding the table of contents, links turned into links to the pdf-file holding the complete document. I did not yet see how the bookmark-package would let me hook into the hyperlink-creating part of the\tableofcontents-mechanism.
@UlrichDiez the contentsline entries do not create the bookmarks, that is done by the \addcontentsline command. If you want that a \contentsline also (or instead of the normal link) creates a bookmark you should redefine these two commands (and use the bookmark package to actually create them):
@UlrikeFischer The problem is: The same .tex-file is used for creating different .pdf-output-files: a) The entire document. In that scenario before tableofcontents a checkpoint is written to .aux-file. b) a .pdf-file only holding the table of contents. Here\nofiles is used, the checkpoint is read and only \tableofcontents is issued. I managed hyperlinks in the text of the .toc-pdf to be url-links to the pdf-file with the complete document. I did not yet manage this with the bookmarks.
@DavidCarlisle It confused me because the error which followed didn't seem to relate to te \??? error. The 'doesn't match' suggested a control sequence, but the error was an undefined variable in every case. But I assume that's just luck and it could be a cs in other cases ....
I recently noticed a subtle issue while working on a paper: with savetrees enabled, when you use \tt inside running text, LaTeX switches to the monospace font before inserting the interword space, but then when it returns to the prevailing font it uses that font's interword space. If you use \te...
@cfr you have to generate some primitive text error we experimented with using an undefined token and other things and finally this does not match error. the idea is to use the least intrusive error possible (as it's unrelated to the actual error), and then put the actual required message somewhere tex will add it to the error context. The options here are extremely limited (unless you use luatex) the main thing is it's not my fault blame Knuth, or Bruno or @JosephWright
@UlrichDiez if you know which document you just produce, it is trivial to enable or disable the needed code for the bookmarks. You can simply read in the toc, extract the data and create the bookmarks.
@Skillmon e-type plan is looking good I think: expect a branch to appear during the next few days (I've done all of core expl3 except l3basics, so that plus the docs is a minimum)
Interface 3 p32: 'For backward compatibility it is currently possible to make ... or N or c-type variants of an n-type argument. Both are deprecated. ... The second because programmers who use that most often want to access the value of a variable given its name, hence should use a V-type or v-type variant instead of c-type. In those cases, using the lower-level \exp_args:No or \exp_args:Nc functions explicitly is preferred to defining confusing variants.'
What does 'those cases' refer to? It seems to refer to cases where people want to access the value of a variable, but that would suggest avoiding V/v, which seems at odds with the previous sentence's endorsement (and the next page and elsewhere). Have I misunderstood or is the reference to 'those cases' to something else?