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 -----------------------------------------------------------------