[NTG-context] “bodyfont %s is defined (can better be done global)”
Wolfgang Schuster
schuster.wolfgang at googlemail.com
Sun Jun 3 15:58:57 CEST 2012
Am 03.06.2012 um 12:01 schrieb Philipp Gesang:
> Hi Wolfgang!
>
> ···<date: 2012-06-03, Sunday>···<from: Wolfgang Schuster>···
>
>> Am 02.06.2012 um 20:13 schrieb Philipp Gesang:
>>
>>> Dear listmates,
>>>
>>> with \switchtobodyfont I get the interface message “fonts:14”
>>> from mult-mes.lua (“bodyfont %s is defined (can better be done
>>> global)”) which is kinda hard to grep for :( Example:
>>>
>>> \definebodyfont[42pt][rm][default]
>>> \starttext
>>> \switchtobodyfont [42pt]
>>> \setupbodyfont [42pt]
>>> \stoptext
>>>
>>> Which results in:
>>>
>>> ········································································
>>> <... />
>>> fonts > bodyfont 42pt is defined (can better be done global)
>>> fonts > bodyfont 50.4pt is defined (can better be done global)
>>> fonts > bodyfont 40.32pt is defined (can better be done global)
>>> <... />
>>> ········································································
>>>
>>> (\setupbodyfont doesn’t cause it.) It seems harmless but (a) I
>>> have a conditional font change that may repeat hundreds of times
>>> over the course of a document and it clutters my terminal, and
>>> (b) it’s a warning after all, so everything is not as it is
>>> supposed to be. What’s it telling me, and why?
>>
>>
>> Add \definebodyfontenvironment:
>>
>> \definebodyfontenvironment[42pt]
>> \starttext
>> \setupbodyfont[42pt]
>> \stoptext
>
> This is getting interesting now. I already do as you say, but a
> bit differently: I’m defining font sizes on the fly, however they
> are created from dimensions, so my macros actually expand to
> something like:
>
> ········································································
> \definebodyfontenvironment[42.0pt] %% a dozen times
> \starttext
> \switchtobodyfont[42.0pt] %% hundreds of times
> %\switchtobodyfont[42pt] %% <- this works, though
> foo
> \stoptext
> ········································································
>
> Which then results in this warning:
> ········································································
> fonts > bodyfont 42.0pt is defined (can better be done global)
> ········································································
>
> Although the size has been „defined“. My problem appears to be
> that I’m abusing dimensions as makeshift floats to calculate
> relative font sizes, interlinespace etc. via \dimexpr.
???
> Hadn’t thought about \switchtobodyfont expecting integers.
Don’t know what’s the problem but the message doesn’t appear
when you use for example 42.1pt.
Wolfgang
More information about the ntg-context
mailing list