jbf schrieb am 10.09.2024 um 02:36:

Here is a really odd one that I have a simple workaround for, but for the life of me I cannot work out why this is happening. Is 'p' (or 'P') some sort of restricted letter in certain circumstances?

Here is the issue:

\startdocument

[metadata:author={Author name},

metadata:title={Psalms}]


1. This is *not* a complete minimal working example.

2. The following example works (with and without \setupinteraction) here with the latest version.

\setupinteraction[state=start]

\startdocument
  [metadata:author={Author name},
   metadata:title={Psalms}]

Psalms.

\stopdocument

And I get an error. Document will not compile. Any other initial letter than 'p' (in Psalms) does not produce the error.

So if I do something like:

\startdocument

[metadata:author={Janet Dawson},

metadata:title={~Psalms}]

Then I no longer get the problem. Which just seems to confirm the fact that it is the initial letter 'p' that is the problem. I can also change the spelling of 'psalms' (anything really, asalms, xsalms) and there is no problem, but of course that would be silly.

I have never had this issue before, so while it looks like 'p' is the problem (it can hardly be the Psalms!), it is possibly something else, but what, I would not know. If it helps, I am calling in that metadata:title in the header in the usual way, e.g.:

\setupheadertexts

[ ] [{\getmarking[chapter]\hskip1em \pagenumber}]

[] [ {\pagenumber \hskip1em \documentvariable{metadata:title}}]

But that should not be a problem.


The \hskip is a problem because the commands is looking for additional parameters and when it encounters the "p" at the beginning of metadata:title it assumes you set the plus parameter.

To prevent the error either add a \relax after the dimension (i.e. \hskip1em\relax) or use \quad which inserts a horizontal space of 1em.

Wolfgang