[NTG-context] Size of fences, factor key

Hans Hagen j.hagen at xs4all.nl
Wed Apr 25 22:18:28 CEST 2018


On 4/25/2018 7:29 AM, Mikael P. Sundqvist wrote:
> On Sat, Apr 21, 2018 at 7:30 PM, Mikael P. Sundqvist <mickep at gmail.com 
> <mailto:mickep at gmail.com>> wrote:
> 
>     Dear Hans and others,
> 
>     I'm usually use the \big, \Big, \bigg etc to get the size of
>     parentheses, brackets and braces to be the size I want. I realize
>     that the fences machinery is probably a cleaner way of doing this.
> 
>     I tried it a bit, and it usually gives the result I like. But
>     sometimes not, and it seems that the way to change the size of the
>     parentheses/brackets/braces is to use the factor key.
> 
>     1) Are the different options none, auto NUMBER explained somehere?
>     2) Could one have, for exceptional cases where the default is not
>     satisfactory, a keyword like factor=big for example, to get the same
>     size as if one would have used \big?
> 
>     I am a bit confused. See the example below, with output (from latest
>     standalone) attached.
> 
>     /Mikael
> 
>     PS: I would suggest to have
>       italic       = { feature = 'ss01', value = 1, comment =
>     "Mathematical Alternative Lowercase Italic" },
>     set in lucida-opentype-math.lfg. In all books (on math) I have seen,
>     I think this is what is used.
> 
>     %%% Example file:
> 
>     \setupbodyfont[lucidaot]
> 
>     \definemathfence[Set][left="007B,right="007D,command=yes]
> 
>     \startbuffer
>     \startformula
>     \Set{x\in\mathbb R~:~x^2=1}
>     \stopformula
>     \stopbuffer
> 
> 
>     \startTEXpage[offset=3bp]
> 
>     \startformula
>     \{x\in\mathbb R~:~ x^2=1\}%Too small
>     \stopformula
> 
>     \startformula
>     \bigl\{x\in\mathbb R~:~ x^2=1\bigr\}%I like this one
>     \stopformula
> 
>     \startformula
>     \Bigl\{x\in\mathbb R~:~ x^2=1\Bigr\}%Too big
>     \stopformula
> 
>     \getbuffer
> 
>     \setupmathfence[Set][factor=1]%I like this one
>     \getbuffer
> 
>     \setupmathfence[Set][factor=auto]%Too big
>     \getbuffer
> 
>     %\setupmathfence[Set][factor=big]%Perhaps this could work? Or
>     size=big or something
>     %\getbuffer
>     \stopTEXpage
> 
> 
> I hate to do this, but a small *bump*
> 
> (If it is unclear what I'm asking for, I could try to clarify)

sort of unclear indeed


these big things are tricky as in plain tex they depends on font 
dimensions and forced scaling but in context we have abit more control 
over these sizes

you can add this to cont-new.mkiv

\unprotect

\unexpanded\def\math_fenced_fenced_indeed[#1]#2%
   {\iffirstargument\setupcurrentmathfence[#1]\fi
    \math_fenced_fenced_common
    \edef\p_size{\mathfenceparameter\c!size}%
    \ifx\p_size\empty\else
 
\attribute\mathsizeattribute\numexpr\bigmathdelimitervariant*\plushundred+\p_size\relax
    \fi
    \math_fenced_left
    #2%
    \math_fenced_right
    \stopusemathstyleparameter
    \endgroup
    \advance\c_math_fenced_nesting\minusone}

\protect

and then do

\setupbodyfont[lucidaot]

\definemathfence[Set][left="007B,right="007D,command=yes]

\startTEXpage[offset=1ex]
     \startformula
         \Set{x\in\mathbb R~:~x^2=1}
     \stopformula
     \startformula
         \Set[size=2]{x\in\mathbb R~:~x^2=1}
     \stopformula
     \startformula
         \Set[size=3]{x\in\mathbb R~:~x^2=1}
     \stopformula
     \startformula
         \Set[size=4]{x\in\mathbb R~:~x^2=1}
     \stopformula
\stopTEXpage




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


More information about the ntg-context mailing list