Hi folks, A question relating to TEX. Previously, I used to use this: thTEX("\thframed {" & textsize & plaintext & "}") Where textsize was something like \thnormalsize This worked until recently. But now (Therion 6?) it returns nothing. After some trial and error (and looking through the -d output), I managed to make it work again like this: thTEX("\thframed {" & textsize & " \thfb " & plaintext & "}") But I have no idea why that works, and was hoping someone could explain to me: 1. What is \thfb ? 2. Why does it need that, and not a space? 3. How come it works without the whitespace, when plaintext could be anything, and that could construct a btex like: \thframed {\thnormalsize\thfbfoo} I would have expected \thfbfoo to be a command, but it seems to know that it is "\thfb" and "foo", not a single command. 4. Is there a better way to construct a btex "string" that can be used to create a p_label.urt piece of text that can work with the p_label_mode_passageheight style? For reference, this is what Therion itself creates: p_label(btex \thframed {\thsmallsize \thfb\char54 \mainfont{}} etex,(16.93,13.78),0.0,p_label_mode_passageheight); Stabbing in the dark here, and cannot find any explanations. Cheers Tarquin
Why do I always do this to myself? Send a mail, then work out the answer...
But I have no idea why that works, and was hoping someone could explain to me: 1. What is \thfb ?
thTMPDIR\th_enc.tex \def\mainfont{\thfb} It is telling it to use TeX's "mainfont". There are also some others defined in that file, like \rm which can be used instead of \thfb
2. Why does it need that, and not a space?
Because it used to default to using the mainfont, now it defaults to using no font.
3. How come it works without the whitespace, when plaintext could be anything, and that could construct a btex like: \thframed {\thnormalsize\thfbfoo} I would have expected \thfbfoo to be a command, but it seems to know that it is "\thfb" and "foo", not a single command.
Because "foo" was numbers. \thfb123 = "\thfb" and "123", while that is not the case for letters. With letters, they are all assumed to be part of the command. Therefore it needs a space so it knows where the command name ends.
4. Is there a better way to construct a btex "string" that can be used to create a p_label.urt piece of text that can work with the p_label_mode_passageheight style?
Leaving this question open, because I don't have an answer.
participants (1)
-
Tarquin Wilton-Jones