Hi all, I just wanted to run this technique by you all, and get a bit of feedback, both on the utility as well as the style of the solution. I'm a bit unhealthily obsessed by fonts, especially with getting the most out of the various features. Unfortunately, each vendor expresses different features in different ways, so that leads to font-sensitive markup. This problem explodes in the OpenType and XeTeX world, because of the number of features each font exposes. However, it's relevant in the pdfTeX/type1 world as well. Just last night, I discovered the FPL fonts (SC/OsF for URW Palladio) on CTAN (). How does one access the old style figures in this font without knowing intimately about the font? I took inspiration (and code) from the Unicode font mechanisms and the new font effects. The code is in the attached test-psc, the typescript in type-psc. The result is at . What this does and doesn't do: - generalises font access to features in associated fonts - adapts itself to current size/family/alternative - doesn't allow further adaptation (e.g., \it \Var[osf] 123 \bf 456) - best for short runs of associated fonts (e.g., OsF, sub/superscripts) - can insert arbitrary features into existing typescripts - relies on a couple special naming conventions within typescripts - can be defined based on Serif/Sans/Mono family - is not currently defined based on bodyfont namespace. Is this more desirable with people \switchbodyfont ing in a doc? - allows expansion beyond \tf\bf\it\bi\sl\bs\sc choices. Any thoughts? (If anyone wants to give pointers on the correct usage/relevance of [#1][#2]#3 parameters, pushfont/popfont, and adapting to bodyfont namespaces, please feel free!) [Hans, if you see the general utility of this kind of solution, I'd appreciate the addition of Caps to the \fontstylesuffix.] -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Adam T. Lindsay, Computing Dept. atl@comp.lancs.ac.uk Lancaster University, InfoLab21 +44(0)1524/510.514 Lancaster, LA1 4WA, UK Fax:+44(0)1524/510.492 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-