Hi, I've added support for the excelent new fourier fonts by Michel Bovani, based on utopia. So, we have another math font! \usetypescript[fourier][ec] \setupbodyfont[fourier] \starttext test $x=1+\sqrt{x}$ test \type {test} \stoptext I expect math experts to look into math-fou.tex and complete the vectors. == from here only for font lovers == Now, since these fonts have quite some expert and oldstyle options, it makes sense to think of how to use them. Michel cleverly defined: \definefontsynonym [Fourier-Regular] [futr8t] [encoding=ec] \definefontsynonym [Fourier-Slanted] [futro8t] [encoding=ec] \definefontsynonym [Fourier-Italic] [futri8t] [encoding=ec] \definefontsynonym [Fourier-RegularCaps] [futrc8t] [encoding=ec] \definefontsynonym [Fourier-Bold] [futb8t] [encoding=ec] \definefontsynonym [Fourier-BoldSlanted] [futbo8t] [encoding=ec] \definefontsynonym [Fourier-BoldItalic] [futbi8t] [encoding=ec] \definefontsynonym [Fourier-BoldCaps] [futbc8t] [encoding=ec] \definefontsynonym [Fourier-Regular-Expert] [futr9e] [encoding=ec] \definefontsynonym [Fourier-Slanted-Expert] [futro9e] [encoding=ec] \definefontsynonym [Fourier-Italic-Expert] [futri9e] [encoding=ec] \definefontsynonym [Fourier-RegularCaps-Expert] [futrc9e] [encoding=ec] \definefontsynonym [Fourier-Semi-Expert] [futs9e] [encoding=ec] \definefontsynonym [Fourier-SemiSlanted-Expert] [futso9e] [encoding=ec] \definefontsynonym [Fourier-SemiItalic-Expert] [futsi9e] [encoding=ec] \definefontsynonym [Fourier-SemiCaps-Expert] [futsc9e] [encoding=ec] \definefontsynonym [Fourier-Bold-Expert] [futb9e] [encoding=ec] \definefontsynonym [Fourier-BoldSlanted-Expert] [futbo9e] [encoding=ec] \definefontsynonym [Fourier-BoldItalic-Expert] [futbi9e] [encoding=ec] \definefontsynonym [Fourier-Black-Expert] [futc9e] [encoding=ec] \definefontsynonym [Fourier-Regular-OldStyle] [futr9d] [encoding=ec] \definefontsynonym [Fourier-Slanted-OldStyle] [futro9d] [encoding=ec] \definefontsynonym [Fourier-Italic-OldStyle] [futri9d] [encoding=ec] \definefontsynonym [Fourier-RegularCaps-OldStyle] [futrc9d] [encoding=ec] \definefontsynonym [Fourier-Semi-OldStyle] [futs9d] [encoding=ec] \definefontsynonym [Fourier-SemiSlanted-OldStyle] [futso9d] [encoding=ec] \definefontsynonym [Fourier-SemiItalic-OldStyle] [futsi9d] [encoding=ec] \definefontsynonym [Fourier-SemiCaps-OldStyle] [futsc9d] [encoding=ec] \definefontsynonym [Fourier-Bold-OldStyle] [futb9d] [encoding=ec] \definefontsynonym [Fourier-BoldSlanted-OldStyle] [futbo9d] [encoding=ec] \definefontsynonym [Fourier-BoldItalic-OldStyle] [futbi9d] [encoding=ec] \definefontsynonym [Fourier-Black-OldStyle] [futc9d] [encoding=ec] and \definefontsynonym [Serif] [Fourier-Regular] \definefontsynonym [SerifSlanted] [Fourier-Slanted] \definefontsynonym [SerifItalic] [Fourier-Italic] \definefontsynonym [SerifCaps] [Fourier-RegularCaps] \definefontsynonym [SerifBold] [Fourier-Bold] \definefontsynonym [SerifBoldSlanted] [Fourier-BoldSlanted] \definefontsynonym [SerifBoldItalic] [Fourier-BoldItalic] \definefontsynonym [SerifBoldCaps] [Fourier-BoldCaps] \definefontsynonym [Serif-Expert] [Fourier-Regular-Expert] \definefontsynonym [SerifSlanted-Expert] [Fourier-Slanted-Expert] \definefontsynonym [SerifItalic-Expert] [Fourier-Italic-Expert] \definefontsynonym [SerifCaps-Expert] [Fourier-RegularCaps-Expert] \definefontsynonym [SerifSemiBold-Expert] [Fourier-Semi-Expert] \definefontsynonym [SerifSemiSlanted-Expert] [Fourier-SemiSlanted-Expert] \definefontsynonym [SerifSemiItalic-Expert] [Fourier-SemiItalic-Expert] \definefontsynonym [SerifSemiCaps-Expert] [Fourier-SemiCaps-Expert] \definefontsynonym [SerifBold-Expert] [Fourier-Bold-Expert] \definefontsynonym [SerifBoldSlanted-Expert] [Fourier-BoldSlanted-Expert] \definefontsynonym [SerifBoldItalic-Expert] [Fourier-BoldItalic-Expert] \definefontsynonym [SerifBlack-Expert] [Fourier-Black-Expert] \definefontsynonym [Serif-OldStyle] [Fourier-Regular-OldStyle] \definefontsynonym [SerifSlanted-OldStyle] [Fourier-Slanted-OldStyle] \definefontsynonym [SerifItalic-OldStyle] [Fourier-Italic-OldStyle] \definefontsynonym [SerifCaps-OldStyle] [Fourier-RegularCaps-OldStyle] \definefontsynonym [SerifSemiBold-OldStyle] [Fourier-Semi-OldStyle] \definefontsynonym [SerifSemiSlanted-OldStyle] [Fourier-SemiSlanted-OldStyle] \definefontsynonym [SerifSemiItalic-OldStyle] [Fourier-SemiItalic-OldStyle] \definefontsynonym [SerifSemiCaps-OldStyle] [Fourier-SemiCaps-OldStyle] \definefontsynonym [SerifBold-OldStyle] [Fourier-Bold-OldStyle] \definefontsynonym [SerifBoldSlanted-OldStyle] [Fourier-BoldSlanted-OldStyle] \definefontsynonym [SerifBoldItalic-OldStyle] [Fourier-BoldItalic-OldStyle] \definefontsynonym [SerifBlack-OldStyle] [Fourier-Black-OldStyle] \definefontsynonym [SerifBlackSlanted-OldStyle] [Fourier-BlackSlanted-OldStyle] with \definebodyfont [17.3pt,14.4pt,12pt,11pt,10pt,9pt,8pt,7pt,6pt,5pt,4pt] [rm] [ tf=Serif sa 1, it=SerifItalic sa 1, sl=SerifSlanted sa 1, sc=SerifCaps sa 1, bf=SerifBold sa 1, bi=SerifBoldItalic sa 1, bs=SerifBoldSlanted sa 1, bc=SerifBoldCaps sa 1, bca=SerifBoldCaps sa a, bcb=SerifBoldCaps sa b, bcc=SerifBoldCaps sa c, bcd=SerifBoldCaps sa d, bcx=SerifBoldCaps sa x, bcxx=SerifBoldCaps sa xx ] \definebodyfont [17.3pt,14.4pt,12pt,11pt,10pt,9pt,8pt,7pt,6pt,5pt,4pt] [rmx] [ tf=Serif-Expert sa 1, it=SerifItalic-Expert sa 1, sl=SerifSlanted-Expert sa 1, sc=SerifCaps-Expert sa 1, db=SerifSemiBold-Expert sa 1, dba=SerifSemiBold-Expert sa a,dbb=SerifSemiBold-Expert sa b, dbc=SerifSemiBold-Expert sa c,dbd=SerifSemiBold-Expert sa d, dbx=SerifSemiBold-Expert sa x,dbxx=SerifSemiBold-Expert sa xx, di=SerifSemiItalic-Expert sa 1, dia=SerifSemiItalic-Expert sa a,dib=SerifSemiItalic-Expert sa b, dic=SerifSemiItalic-Expert sa c,did=SerifSemiItalic-Expert sa d, dix=SerifSemiItalic-Expert sa x,dixx=SerifSemiItalic-Expert sa xx, ds=SerifSemiSlanted-Expert sa 1, dsa=SerifSemiSlanted-Expert sa a,dsb=SerifSemiSlanted-Expert sa b, dsc=SerifSemiSlanted-Expert sa c,dsd=SerifSemiSlanted-Expert sa d, dsx=SerifSemiSlanted-Expert sa x,dsxx=SerifSemiSlanted-Expert sa xx, dc=SerifSemiCaps-Expert sa 1, dca=SerifSemiCaps-Expert sa a,dcb=SerifSemiCaps-Expert sa b, dcc=SerifSemiCaps-Expert sa c,dcd=SerifSemiCaps-Expert sa d, dcx=SerifSemiCaps-Expert sa x,dcxx=SerifSemiCaps-Expert sa xx, bf=SerifBold-Expert sa 1, bi=SerifBoldItalic-Expert sa 1, bs=SerifBoldSlanted-Expert sa 1, eb=SerifBlack-Expert sa 1, eba=SerifBlack-Expert sa a,ebb=SerifBlack-Expert sa b, ebc=SerifBlack-Expert sa c,ebd=SerifBlack-Expert sa d, ebx=SerifBlack-Expert sa x,ebxx=SerifBlack-Expert sa xx ] \definebodyfont [17.3pt,14.4pt,12pt,11pt,10pt,9pt,8pt,7pt,6pt,5pt,4pt] [rmo] [ tf=Serif-OldStyle sa 1, it=SerifItalic-OldStyle sa 1, sl=SerifSlanted-OldStyle sa 1, sc=SerifCaps-OldStyle sa 1, db=SerifSemiBold-OldStyle sa 1, dba=SerifSemiBold-OldStyle sa a,dbb=SerifSemiBold-OldStyle sa b, dbc=SerifSemiBold-OldStyle sa c,dbd=SerifSemiBold-OldStyle sa d, dbx=SerifSemiBold-OldStyle sa x,dbxx=SerifSemiBold-OldStyle sa xx, di=SerifSemiItalic-OldStyle sa 1, dia=SerifSemiItalic-OldStyle sa a,dib=SerifSemiItalic-OldStyle sa b, dic=SerifSemiItalic-OldStyle sa c,did=SerifSemiItalic-OldStyle sa d, dix=SerifSemiItalic-OldStyle sa x,dixx=SerifSemiItalic-OldStyle sa xx, ds=SerifSemiSlanted-OldStyle sa 1, dsa=SerifSemiSlanted-OldStyle sa a,dsb=SerifSemiSlanted-OldStyle sa b, dsc=SerifSemiSlanted-OldStyle sa c,dsd=SerifSemiSlanted-OldStyle sa d, dsx=SerifSemiSlanted-OldStyle sa x,dsxx=SerifSemiSlanted-OldStyle sa xx, dc=SerifSemiCaps-OldStyle sa 1, dca=SerifSemiCaps-OldStyle sa a,dcb=SerifSemiCaps-OldStyle sa b, dcc=SerifSemiCaps-OldStyle sa c,dcd=SerifSemiCaps-OldStyle sa d, dcx=SerifSemiCaps-OldStyle sa x,dcxx=SerifSemiCaps-OldStyle sa xx, eb=SerifBlack-OldStyle sa 1, eba=SerifBlack-OldStyle sa a,ebb=SerifBlack-OldStyle sa b, ebc=SerifBlack-OldStyle sa c,ebd=SerifBlack-OldStyle sa d, ebx=SerifBlack-OldStyle sa x,ebxx=SerifBlack-OldStyle sa xx, bf=SerifBold-OldStyle sa 1, bi=SerifBoldItalic-OldStyle sa 1, bs=SerifBoldSlanted-OldStyle sa 1 ] the following works quite well: ==== beware: it demonstrates that one can build much more font switches in the low level mechanism than one would expect! ==== \rm \midaligned{\bcc Standard} {\tf Text1234} {\tfa Text1234} {\tfb Text1234} {\tfc Text1234} {\tfx Text1234} {\tfxx Text1234} {\it Text1234} {\ita Text1234} {\itb Text1234} {\itc Text1234} {\itx Text1234} {\itxx Text1234} {\sl Text1234} {\sla Text1234} {\slb Text1234} {\slc Text1234} {\slx Text1234} {\slxx Text1234} {\sc Text1234} {\sca Text1234} {\scb Text1234} {\scc Text1234} {\scx Text1234} {\scxx Text1234} {\bf Text1234} {\bfa Text1234} {\bfb Text1234} {\bfc Text1234} {\bfx Text1234} {\bfxx Text1234} {\bs Text1234} {\bsa Text1234} {\bsb Text1234} {\bsc Text1234} {\bsx Text1234} {\bsxx Text1234} {\bi Text1234} {\bia Text1234} {\bib Text1234} {\bic Text1234} {\bix Text1234} {\bixx Text1234} {\bc Text1234} {\bca Text1234} {\bcb Text1234} {\bcc Text1234} {\bcx Text1234} {\bcxx Text1234} \page \rmx \midaligned{\dcc Expert} {\tf Text1234} {\tfa Text1234} {\tfb Text1234} {\tfc Text1234} {\tfx Text1234} {\tfxx Text1234} {\it Text1234} {\ita Text1234} {\itb Text1234} {\itc Text1234} {\itx Text1234} {\itxx Text1234} {\sl Text1234} {\sla Text1234} {\slb Text1234} {\slc Text1234} {\slx Text1234} {\slxx Text1234} {\sc Text1234} {\sca Text1234} {\scb Text1234} {\scc Text1234} {\scx Text1234} {\scxx Text1234} {\bf Text1234} {\bfa Text1234} {\bfb Text1234} {\bfc Text1234} {\bfx Text1234} {\bfxx Text1234} {\bs Text1234} {\bsa Text1234} {\bsb Text1234} {\bsc Text1234} {\bsx Text1234} {\bsxx Text1234} {\bi Text1234} {\bia Text1234} {\bib Text1234} {\bic Text1234} {\bix Text1234} {\bixx Text1234} {\db Text1234} {\dba Text1234} {\dbb Text1234} {\dbc Text1234} {\dbx Text1234} {\dbxx Text1234} {\di Text1234} {\dia Text1234} {\dib Text1234} {\dic Text1234} {\dix Text1234} {\dixx Text1234} {\ds Text1234} {\dsa Text1234} {\dsb Text1234} {\dsc Text1234} {\dsx Text1234} {\dsxx Text1234} {\dc Text1234} {\dca Text1234} {\dcb Text1234} {\dcc Text1234} {\dcx Text1234} {\dcxx Text1234} {\eb Text1234} {\eba Text1234} {\ebb Text1234} {\ebc Text1234} {\ebx Text1234} {\ebxx Text1234} \page \rmo \midaligned{\dcc Old style} {\tf Text1234} {\tfa Text1234} {\tfb Text1234} {\tfc Text1234} {\tfx Text1234} {\tfxx Text1234} {\it Text1234} {\ita Text1234} {\itb Text1234} {\itc Text1234} {\itx Text1234} {\itxx Text1234} {\sl Text1234} {\sla Text1234} {\slb Text1234} {\slc Text1234} {\slx Text1234} {\slxx Text1234} {\sc Text1234} {\sca Text1234} {\scb Text1234} {\scc Text1234} {\scx Text1234} {\scxx Text1234} {\bf Text1234} {\bfa Text1234} {\bfb Text1234} {\bfc Text1234} {\bfx Text1234} {\bfxx Text1234} {\bs Text1234} {\bsa Text1234} {\bsb Text1234} {\bsc Text1234} {\bsx Text1234} {\bsxx Text1234} {\bi Text1234} {\bia Text1234} {\bib Text1234} {\bic Text1234} {\bix Text1234} {\bixx Text1234} {\db Text1234} {\dba Text1234} {\dbb Text1234} {\dbc Text1234} {\dbx Text1234} {\dbxx Text1234} {\di Text1234} {\dia Text1234} {\dib Text1234} {\dic Text1234} {\dix Text1234} {\dixx Text1234} {\ds Text1234} {\dsa Text1234} {\dsb Text1234} {\dsc Text1234} {\dsx Text1234} {\dsxx Text1234} {\dc Text1234} {\dca Text1234} {\dcb Text1234} {\dcc Text1234} {\dcx Text1234} {\dcxx Text1234} {\eb Text1234} {\eba Text1234} {\ebb Text1234} {\ebc Text1234} {\ebx Text1234} {\ebxx Text1234} Now, another approach is to use typescripts and something \definetypeface [fourier] [serif] [rm] [fourier] ... \definetypeface [fourier-expert] [serif] [rm] [fourier-expert] ... etc, i.e. let expert and oldstyel live in their own namespace For that i need to add a couple of more general mappings and this si what we should discuss: how are we going to deal with 'black' 'oldstyle' 'expert' 'semi' in the sense of prefixes and suffixes? Actually, \definefontsynonym [Serif-Expert] [Fourier-Regular-Expert] \definefontsynonym [SerifSlanted-Expert] [Fourier-Slanted-Expert] \definefontsynonym [SerifItalic-Expert] [Fourier-Italic-Expert] \definefontsynonym [SerifCaps-Expert] [Fourier-RegularCaps-Expert] \definefontsynonym [SerifSemiBold-Expert] [Fourier-Semi-Expert] \definefontsynonym [SerifSemiSlanted-Expert] [Fourier-SemiSlanted-Expert] \definefontsynonym [SerifSemiItalic-Expert] [Fourier-SemiItalic-Expert] \definefontsynonym [SerifSemiCaps-Expert] [Fourier-SemiCaps-Expert] \definefontsynonym [SerifBold-Expert] [Fourier-Bold-Expert] \definefontsynonym [SerifBoldSlanted-Expert] [Fourier-BoldSlanted-Expert] \definefontsynonym [SerifBoldItalic-Expert] [Fourier-BoldItalic-Expert] \definefontsynonym [SerifBlack-Expert] [Fourier-Black-Expert] can as well become \definefontsynonym [Serif] [Fourier-Regular-Expert] \definefontsynonym [SerifSlanted] [Fourier-Slanted-Expert] \definefontsynonym [SerifItalic] [Fourier-Italic-Expert] \definefontsynonym [SerifCaps] [Fourier-RegularCaps-Expert] \definefontsynonym [SerifSemiBold] [Fourier-Semi-Expert] \definefontsynonym [SerifSemiSlanted] [Fourier-SemiSlanted-Expert] \definefontsynonym [SerifSemiItalic] [Fourier-SemiItalic-Expert] \definefontsynonym [SerifSemiCaps] [Fourier-SemiCaps-Expert] \definefontsynonym [SerifBold] [Fourier-Bold-Expert] \definefontsynonym [SerifBoldSlanted] [Fourier-BoldSlanted-Expert] \definefontsynonym [SerifBoldItalic] [Fourier-BoldItalic-Expert] \definefontsynonym [SerifBlack] [Fourier-Black-Expert] i.e. we don't need the -Expert here because it can live in a typeface; but how to deal with Black and Semi? Hans ------------------------------------------------------------------------- Hans Hagen | PRAGMA ADE | pragma@wxs.nl Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: +31 (0)38 477 53 69 | fax: +31 (0)38 477 53 74 | www.pragma-ade.com ------------------------------------------------------------------------- information: http://www.pragma-ade.com/roadmap.pdf documentation: http://www.pragma-ade.com/showcase.pdf -------------------------------------------------------------------------