[Dev-luatex] Cron <luatex at boekplan> /var/www/luatex.org/www/bin/luatex-svn

Hans Hagen pragma at wxs.nl
Fri Apr 27 13:01:15 CEST 2012


On 27-4-2012 09:59, Khaled Hosny wrote:
> On Fri, Apr 27, 2012 at 09:28:45AM +0200, Hans Hagen wrote:
>> On 27-4-2012 05:26, Khaled Hosny wrote:
>>> Hi Taco,
>>>
>>> With this commit arbitrary number of top and/or bottom accents can be
>>> nested and still be positioned properly, so I think there is no need for
>>> `\Umathaccent both` anymore, so do you object if we deprecated it now,
>>> and later when it is completely removed math accent code can be
>>> simplified again (no need for separate field for bottom accents with all
>>> its complexity), what do you think?
>>>
>>> On Thu, Apr 26, 2012 at 10:28:29PM +0200, Cron Daemon wrote:
>>>> ------------------------------------------------------------------------
>>>> r4371 | khaled | 2012-04-26 18:18:10 +0200 (Thu, 26 Apr 2012) | 5 lines
>>>> Changed paths:
>>>>     M /trunk/source/texk/web2c/luatexdir/tex/mlist.w
>>>>
>>>> Properly position stacked math accents
>>>>
>>>> If the accentee is a |sub_math_list|, we check if it is composed of an
>>>> |accent_noad| we use the positioning of its nucleus, up to the inner
>>>> most |accent_noad|.
>>
>> it was introduced with a reason (also proabably inspired by mathml):
>> with 'both' we only need to pick up the argument (math expression)
>> once
>
> Not sure I understand this.
>
>> can you be a bit more explicit about removing the bottom option? how
>> does one position at the bottom then (as Umathbotaccent was
>> removed)?
>
> Currently we have:
> \Umathaccent<top_accent>  <accentee>
> \Umathaccent bottom<bottom_accent>  <accentee>
> \Umathaccent both<top_accent>  <accentee>  <bottom_accent>  <accentee>
>
> The only reason I see for having `both` is to be able to apply top and
> bottom accents simultaneously and keep them properly positioned, but
> with that commit we can nest any number of accents and they will be
> properly positioned, i.e. the same effect can be achieved with:
>
> \Umathaccent<top_accent>  {\Umathaccent bottom<bottom_accent>  <accentee>}
>
> (the order of accents does not matter), so `both` is redundant and can
> be removed and when removed we can simplify the implementation (with no
> user visible change). Am I missing anything here?

One of the conceptual differences is

\def\xxx#1{...{#1}}

and

\def\xxx{...} % {#1} picked up by the scanner and not passed as argument

a variant would be

\Umathaccent [bottom] <accent>  [bottom] <accent> ... \relax <accentee>

i.e. keep reading specifications till an accentee or \relax is seen.

Anyhow, we shouldn't discard functionality that was introduced for a 
reason too fast,

Hans

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
     tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
                                              | www.pragma-pod.nl
-----------------------------------------------------------------


More information about the dev-luatex mailing list