Hi,
End of the week so time to wrap up.
(1) As follow up on the primt/quote discussions I played a bit with
additional font features. We already had a partial case feature but that
one is also better. The camelcaser is more an experiment (and example).
% \definefontfeature[primes] [primes=yes]
% \definefontfeature[uppercasing][uppercasing=yes]
% \definefontfeature[lowercasing][lowercasing=yes]
% \definefontfeature[camelcasing][camelcasing=yes]
\setupbodyfont[dejavu]
\starttext
\startTEXpage[align={tolerant,stretch},offset=1ex]
{\addff{camelcasing} \samplefile{tufte}\par}
{\addff{uppercasing} \samplefile{tufte}\par}
{\addff{lowercasing} \samplefile{tufte}\par}
{\addff{primes} 123'345''\par}
\stopTEXpage
\stoptext
(2) (Pablo:) There is some pogress with facing floats that Thomas will
check out for real usage. So, still experimental.
(3) Already for some 'mails' I mention playing with modifiers in math.
The openup varianst are now a bit more tolerant in the sense that they
work for more classes.
For a while I hav ebeen wondering about the prescripts and to what
extend they should be controlled independent. For instance, we can mess
with \Umathsupshiftup and such to get some displacement and it can even
be done local, but still ... these are normally kind of font drive. So I
decided to add a few more parameters, like \Umathextrasupshift for
each of the four possible scripts. For convenience I added \supsubscr,
\subsupscr, \supscr, and \subscr commands with an optional argument.
Basically we can now control quite a lot also because all defaults can
be also influenced with \Umath*variant if needed; I probably need to
check again if there are any (traditional tex math) hardwired
properties. I know that not all of that is really needed (also because
much of tex math is chisseled in stone and not supposed to be controlled
although in context i suppose we have a bit more freedom) but it simply
fit in the luametatex effort to do so.
Of course there might be math fields that need such things (so I might
add some more modifiers, also because it's kind of fun to do).
Hans
======== test file for math stuff ========
\setupbodyfont[newcomputermodern-book]
\enableexperiments[math.extensibles]
\starttext
% \displaylimits
% \limits
% \nolimits
% \ordlimits (maybe replace that one now or maybe no longer needed anyway)
% \Umathadapttoleft \Umathadapttoright
% \Umathaxis \Umathnoaxis
% \Umathphantom \Umathvoid
% \Umathopenupheight <dimension> \Umathopenupdepth <dimension>
% \Umathlimits \Umathnolimits
% we can influence the location of sript with the open up modifiers but
% how about a different pre/post scripts anchoring ... as a first step
% i added these \Umathextra..shift parameters but maybe we need some more
% (we have this script control mode already, so maybe we need one for the
% prescripts too .. next todo i guess) .. we need examples of usage (like
% chemistry) .. maybe we also need a way to set the whole lot of styles
% at once .. again user demand driven)
\startTEXpage
$
x^1_2^^3__4
= \normalmathop{x}^1_2^^3__4
= \normalmathop{x}\Umathopenupheight5mm^1_2^^3__4
= x\Umathopenupheight5mm\Umathopenupdepth2mm^1_2^^3__4
= {\frozen\Umathsupshiftup\textstyle10pt x^1}
= {x\frozen\Umathsupshiftup\textstyle10pt^1}
= {\frozen\Umathsupshiftup\textstyle12pt x^1_2^^3__4}
= {\frozen\Umathsupshiftup\textstyle12pt
x\Umathopenupheight5mm^1_2^^3__4}
$
\stopTEXpage
\startTEXpage
$
x^1_2^^3__4
=
\frozen\Umathextrasupshift \textstyle2pt
\frozen\Umathextrasubshift \textstyle4pt
\frozen\Umathextrasuppreshift\textstyle6pt
\frozen\Umathextrasubpreshift\textstyle8pt
x^1_2^^3__4
\frozen\Umathextrasupshift \textstyle\zeropoint
\frozen\Umathextrasubshift \textstyle\zeropoint
\frozen\Umathextrasuppreshift\textstyle\zeropoint
\frozen\Umathextrasubpreshift\textstyle\zeropoint
=
\mathord {
\frozen\Umathextrasupshift \textstyle2pt
\frozen\Umathextrasubshift \textstyle4pt
\frozen\Umathextrasuppreshift\textstyle6pt
\frozen\Umathextrasubpreshift\textstyle8pt
x^1_2^^3__4
}
=
x^1_2^^3__4
$
\stopTEXpage
% a few helpers ... do we need more like that ... we realy want to avoid
% ugly low level messing around (these \, etc are also kind of ugly)
\startTEXpage
$
x\supscr [2pt]{1}
\subscr [3pt]{2}
= x\supsubscr[2pt]{1}{2}
= x\supsubscr[2pt]{1}{2}\supsubprescr{1}{2}
= x\supsubscr[2pt]{1}{2}\supsubprescr[5pt]{1}{2}
= x\subsupscr[2pt]{2}{1}
= x\supscr {1}
\subscr [2pt]{2}
= x\supsubscr {1}{2}
= x\subsupscr {2}{1}
$
\stopTEXpage
\startTEXpage[offset=5mm]
\startformula
x = \integral^1_2 \mathinner{\vrule height 10mm depth 10mm width 5mm} =
x = \integral^1_2 \mathinner{\vrule height 20mm depth 20mm width 5mm} =
x = \integral^1_2 \mathinner{\vrule height 30mm depth 30mm width 5mm} =
x = \integral^1_2 \mathinner{x} =
x = \integral^1_2 x
\stopformula
\stopTEXpage
\startTEXpage[offset=5mm]
$
x = \integral^1_2 \mathinner{\vrule height 10mm depth 10mm width 5mm} =
x = \integral^1_2 \mathinner{\vrule height 20mm depth 20mm width 5mm} =
x = \integral^1_2 \mathinner{\vrule height 30mm depth 30mm width 5mm} =
x = \integral^1_2 x =
$
\stopTEXpage
\def\rab {\Umathchar"1"00"007C }
\def\lrab{\Umathchar"4"00"007C }
\def\rrab{\Umathchar"5"00"007C }
% \Umathmodifier : plus\minus
\definecolor[mtestcolor][a=1,t=.5,s=.5]
\startTEXpage[offset=5mm]
$
\color[green]{\rab\Umathadapttoright^{\black 1}_{\black 2}^^3__4}
\color[blue] {\mathinner{\vrule height 30mm depth 30mm width 5mm}}
\color[red] {\rab\Umathadapttoleft ^5_6^^{\black 7}__{\black 8}}
$
\quad
$
\rab\Umathadapttoright^1_2^^3__4
\mathinner{\vrule height 30mm depth 30mm width 5mm}
\rab\Umathadapttoleft^5_6^^7__8
$
\quad
$ \showboxes
\rab\Umathadapttoright\Umathnoaxis^1_2^^3__4
\mathinner{\vrule height 30mm depth 30mm width 5mm}
\rab\Umathadapttoleft\Umathnoaxis^5_6^^7__8
$
\quad
$ \showboxes
\rab\Umathadapttoright\Umathnoaxis\Umathphantom^1_2^^3__4
\mathinner{\vrule height 30mm depth 30mm width 5mm}
\rab\Umathadapttoleft\Umathnoaxis\Umathphantom^5_6^^7__8
$
\quad
$ \showboxes
\rab\Umathadapttoright\Umathnoaxis\Umathvoid^1_2^^3__4
\mathinner{\vrule height 30mm depth 30mm width 5mm}
\rab\Umathadapttoleft\Umathnoaxis\Umathvoid^5_6^^7__8
$
\quad
$ \showboxes
\rab\Umathadapttoright\Umathnoaxis\Umathvoid\Umathopenupheight5mm^1_2^^3__4
\mathinner{\vrule height 30mm depth 30mm width 5mm}
\rab\Umathadapttoleft \Umathnoaxis\Umathvoid\Umathopenupdepth
5mm^5_6^^7__8
$
\stopTEXpage
\startTEXpage[offset=5mm]
$ \showmakeup[math]
\rab\Umathadapttoright\Umathnoaxis\Umathopenupheight 5mm^1_2^^3__4
\mathinner{\mtestcolor\vrule height 10mm depth 10mm width 5mm}
\rab\Umathadapttoleft \Umathnoaxis\Umathopenupdepth 5mm^5_6^^7__8
$
\quad
$ \showmakeup[math]
\openinnerspacing \textstyle 5mu
\innerclosespacing\textstyle 5mu
\lrab\Umathadapttoright\Umathnoaxis\Umathopenupheight 5mm^1_2^^3__4
\mathinner{\mtestcolor\vrule height 10mm depth 10mm width 5mm}
\rrab\Umathadapttoleft \Umathnoaxis\Umathopenupdepth 5mm^5_6^^7__8
$
\quad
$ \showmakeup[math]
\openinnerspacing \textstyle 5mu
\innerclosespacing\textstyle 5mu
\lrab\Umathnolimits\Umathadapttoright\Umathnoaxis\Umathopenupheight
5mm^1_2^^3__4
\mathinner{\mtestcolor\vrule height 10mm depth 10mm width 5mm}
\rrab\Umathlimits \Umathadapttoleft \Umathnoaxis\Umathopenupdepth
5mm^5_6^^7__8
$
\stopTEXpage
\startTEXpage[offset=5mm]
$ \showmakeup[math]
\frozen\openinnerspacing \textstyle 10mu
\frozen\innerclosespacing\textstyle 10mu
\lrab\Umathnolimits\Umathadapttoright\Umathnoaxis^1_2^^3__4
\mathinner{\mtestcolor\vrule height 10mm depth 10mm width 5mm}
\rrab\Umathlimits \Umathadapttoleft \Umathnoaxis^5_6^^7__8
=
\frozen\openinnerspacing \textstyle 2mu
\frozen\innerclosespacing\textstyle 2mu
\lrab\Umathnolimits\Umathadapttoright\Umathnoaxis^1_2^^3__4
\mathinner{\mtestcolor\vrule height 10mm depth 10mm width 5mm}
\rrab\Umathlimits \Umathadapttoleft \Umathnoaxis^5_6^^7__8
$
\stopTEXpage
\stoptext
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://context.aanhet.net
archive : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___________________________________________________________________________________