From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- .../doc/fonts/poltawski/GUST-FONT-LICENSE.txt | 30 + .../poltawski/MANIFEST-Antykwa-Poltawskiego.txt | 1063 +++++++++++ .../poltawski/README-Antykwa-Poltawskiego.txt | 322 ++++ fonts/poltawski/doc/fonts/poltawski/antpb10.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpb12.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpb17.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpb6.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpb8.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpbi10.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpbi12.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpbi17.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpbi6.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpbi8.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpl10.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpl12.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpl17.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpl6.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpl8.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpli10.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpli12.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpli17.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpli6.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpli8.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpm10.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpm12.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpm17.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpm6.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpm8.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpmi10.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpmi12.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpmi17.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpmi6.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpmi8.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpr10.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpr12.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpr17.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpr6.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpr8.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpri10.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpri12.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpri17.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpri6.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/antpri8.fea | 519 +++++ fonts/poltawski/doc/fonts/poltawski/ap-hist.txt | 21 + fonts/poltawski/doc/fonts/poltawski/ap-info.pdf | Bin 0 -> 694443 bytes fonts/poltawski/doc/fonts/poltawski/ap-logo.pdf | Bin 0 -> 88998 bytes fonts/poltawski/doc/fonts/poltawski/goadb100.nam | 2015 ++++++++++++++++++++ fonts/poltawski/doc/fonts/poltawski/tstapot1.pdf | Bin 0 -> 313930 bytes fonts/poltawski/doc/fonts/poltawski/tstapot1.tex | 60 + fonts/poltawski/doc/fonts/poltawski/tstapot4.pdf | Bin 0 -> 279268 bytes fonts/poltawski/doc/fonts/poltawski/tstapot4.tex | 62 + fonts/poltawski/doc/fonts/poltawski/tstapqx.pdf | Bin 0 -> 279319 bytes fonts/poltawski/doc/fonts/poltawski/tstapqx.tex | 62 + fonts/poltawski/doc/fonts/poltawski/tstapt1.pdf | Bin 0 -> 278802 bytes fonts/poltawski/doc/fonts/poltawski/tstapt1.tex | 62 + fonts/poltawski/doc/fonts/poltawski/tstapts1.pdf | Bin 0 -> 296665 bytes fonts/poltawski/doc/fonts/poltawski/tstapts1.tex | 81 + 57 files changed, 24538 insertions(+) create mode 100644 fonts/poltawski/doc/fonts/poltawski/GUST-FONT-LICENSE.txt create mode 100644 fonts/poltawski/doc/fonts/poltawski/MANIFEST-Antykwa-Poltawskiego.txt create mode 100644 fonts/poltawski/doc/fonts/poltawski/README-Antykwa-Poltawskiego.txt create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpb10.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpb12.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpb17.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpb6.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpb8.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpbi10.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpbi12.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpbi17.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpbi6.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpbi8.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpl10.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpl12.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpl17.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpl6.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpl8.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpli10.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpli12.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpli17.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpli6.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpli8.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpm10.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpm12.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpm17.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpm6.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpm8.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpmi10.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpmi12.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpmi17.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpmi6.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpmi8.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpr10.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpr12.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpr17.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpr6.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpr8.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpri10.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpri12.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpri17.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpri6.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/antpri8.fea create mode 100644 fonts/poltawski/doc/fonts/poltawski/ap-hist.txt create mode 100644 fonts/poltawski/doc/fonts/poltawski/ap-info.pdf create mode 100644 fonts/poltawski/doc/fonts/poltawski/ap-logo.pdf create mode 100644 fonts/poltawski/doc/fonts/poltawski/goadb100.nam create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapot1.pdf create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapot1.tex create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapot4.pdf create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapot4.tex create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapqx.pdf create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapqx.tex create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapt1.pdf create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapt1.tex create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapts1.pdf create mode 100644 fonts/poltawski/doc/fonts/poltawski/tstapts1.tex (limited to 'fonts/poltawski/doc') diff --git a/fonts/poltawski/doc/fonts/poltawski/GUST-FONT-LICENSE.txt b/fonts/poltawski/doc/fonts/poltawski/GUST-FONT-LICENSE.txt new file mode 100644 index 0000000000..60b55002ee --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/GUST-FONT-LICENSE.txt @@ -0,0 +1,30 @@ +% This is a preliminary version (2006-09-30), barring acceptance from +% the LaTeX Project Team and other feedback, of the GUST Font License. +% (GUST is the Polish TeX Users Group, http://www.gust.org.pl) +% +% For the most recent version of this license see +% http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt +% or +% http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt +% +% This work may be distributed and/or modified under the conditions +% of the LaTeX Project Public License, either version 1.3c of this +% license or (at your option) any later version. +% +% Please also observe the following clause: +% 1) it is requested, but not legally required, that derived works be +% distributed only after changing the names of the fonts comprising this +% work and given in an accompanying "manifest", and that the +% files comprising the Work, as listed in the manifest, also be given +% new names. Any exceptions to this request are also given in the +% manifest. +% +% We recommend the manifest be given in a separate file named +% MANIFEST-.txt, where is some unique identification +% of the font family. If a separate "readme" file accompanies the Work, +% we recommend a name of the form README-.txt. +% +% The latest version of the LaTeX Project Public License is in +% http://www.latex-project.org/lppl.txt and version 1.3c or later +% is part of all distributions of LaTeX version 2006/05/20 or later. + diff --git a/fonts/poltawski/doc/fonts/poltawski/MANIFEST-Antykwa-Poltawskiego.txt b/fonts/poltawski/doc/fonts/poltawski/MANIFEST-Antykwa-Poltawskiego.txt new file mode 100644 index 0000000000..3fd1a40ceb --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/MANIFEST-Antykwa-Poltawskiego.txt @@ -0,0 +1,1063 @@ +########################################################################### +############ The Antykwa Poltawskiego Family of Fonts ############ +########################################################################### + +Font: Antykwa Poltawskiego +Authors: Bogus\l{}aw Jackowski and Janusz M. Nowacki +Version: 1.101 +Date: 9 X 2010 +Downloads: http://www.gust.org.pl/projects/e-foundry/poltawski/ + +License: + % Copyright 1999--2010 for Antykwa Poltawskiego digital form by B. Jackowski, + % J.M. Nowacki and P. Strzelczyk (on behalf of the TeX Users Groups). + % + % This work can be freely used and distributed under + % the GUST Font License (GFL -- see GUST-FONT-LICENSE.txt) + % which legally equivalent to the LaTeX Project Public License + % (LPPL -- see http://www.latex-project.org/lppl.txt ). + % + % This work has the maintenance status "maintained". The Current Maintainer + % of this work is Bogus\l{}aw Jackowski and Janusz M. Nowacki. + % + % This work consists of the files listed + % in the MANIFEST-Antykwa-Poltawskiego.txt file. + +This work consists of the files listed in this file. + +Below, in three sections required by the GUST Font License, +font names and file names specific for the Antykwa Poltawskiego +Family of Fonts are listed. + +NOTE: the names of the directories are not subject to the renaming +restrictions. + +1. Fonts whose names should be changed in derived works as requested + by clause 1 of GUST-FONT-LICENSE.txt + + 1.1 PostScript names + 1.1.1 PostScript family names + AntPolt + AntPoltCond + AntPoltExpd + AntPoltLt + AntPoltLtCond + AntPoltLtExpd + AntPoltLtSemiCond + AntPoltLtSemiExpd + AntPoltSemiCond + AntPoltSemiExpd + + 1.1.2 PostScript font and full names + AntPolt-Bold + AntPolt-BoldItalic + AntPolt-Italic + AntPolt-Regular + AntPoltCond-Bold + AntPoltCond-BoldItalic + AntPoltCond-Italic + AntPoltCond-Regular + AntPoltExpd-Bold + AntPoltExpd-BoldItalic + AntPoltExpd-Italic + AntPoltExpd-Regular + AntPoltLt-Bold + AntPoltLt-BoldItalic + AntPoltLt-Italic + AntPoltLt-Regular + AntPoltLtCond-Bold + AntPoltLtCond-BoldItalic + AntPoltLtCond-Italic + AntPoltLtCond-Regular + AntPoltLtExpd-Bold + AntPoltLtExpd-BoldItalic + AntPoltLtExpd-Italic + AntPoltLtExpd-Regular + AntPoltLtSemiCond-Bold + AntPoltLtSemiCond-BoldItalic + AntPoltLtSemiCond-Italic + AntPoltLtSemiCond-Regular + AntPoltLtSemiExpd-Bold + AntPoltLtSemiExpd-BoldItalic + AntPoltLtSemiExpd-Italic + AntPoltLtSemiExpd-Regular + AntPoltSemiCond-Bold + AntPoltSemiCond-BoldItalic + AntPoltSemiCond-Italic + AntPoltSemiCond-Regular + AntPoltSemiExpd-Bold + AntPoltSemiExpd-BoldItalic + AntPoltSemiExpd-Italic + AntPoltSemiExpd-Regular + + 1.2 PFM names + AntPolt + AntPoltCond + AntPoltExpd + AntPoltLt + AntPoltLtCond + AntPoltLtExpd + AntPoltLtSemiCond + AntPoltLtSemiExpd + AntPoltSemiCond + AntPoltSemiExpd + + 1.3 OTF full menu names + Antykwa Poltawskiego Bold + Antykwa Poltawskiego Bold Italic + Antykwa Poltawskiego Cond Bold + Antykwa Poltawskiego Cond Bold Italic + Antykwa Poltawskiego Cond Italic + Antykwa Poltawskiego Cond Regular + Antykwa Poltawskiego Expd Bold + Antykwa Poltawskiego Expd Bold Italic + Antykwa Poltawskiego Expd Italic + Antykwa Poltawskiego Expd Regular + Antykwa Poltawskiego Italic + Antykwa Poltawskiego Light Bold + Antykwa Poltawskiego Light Bold Italic + Antykwa Poltawskiego Light Cond Bold + Antykwa Poltawskiego Light Cond Bold Italic + Antykwa Poltawskiego Light Cond Italic + Antykwa Poltawskiego Light Cond Regular + Antykwa Poltawskiego Light Expd Bold + Antykwa Poltawskiego Light Expd Bold Italic + Antykwa Poltawskiego Light Expd Italic + Antykwa Poltawskiego Light Expd Regular + Antykwa Poltawskiego Light Italic + Antykwa Poltawskiego Light Regular + Antykwa Poltawskiego Light SemiCond Bold + Antykwa Poltawskiego Light SemiCond Bold Italic + Antykwa Poltawskiego Light SemiCond Italic + Antykwa Poltawskiego Light SemiCond Regular + Antykwa Poltawskiego Light SemiExpd Bold + Antykwa Poltawskiego Light SemiExpd Bold Italic + Antykwa Poltawskiego Light SemiExpd Italic + Antykwa Poltawskiego Light SemiExpd Regular + Antykwa Poltawskiego Regular + Antykwa Poltawskiego SemiCond Bold + Antykwa Poltawskiego SemiCond Bold Italic + Antykwa Poltawskiego SemiCond Italic + Antykwa Poltawskiego SemiCond Regular + Antykwa Poltawskiego SemiExpd Bold + Antykwa Poltawskiego SemiExpd Bold Italic + Antykwa Poltawskiego SemiExpd Italic + Antykwa Poltawskiego SemiExpd Regular + + 1.4 OTF Macintosh menu names + AntPolt Bold + AntPolt Bold Italic + AntPolt Italic + AntPolt Regular + AntPolt Cond Bold + AntPolt Cond Bold Italic + AntPolt Cond Italic + AntPolt Cond Regular + AntPolt Expd Bold + AntPolt Expd Bold Italic + AntPolt Expd Italic + AntPolt Expd Regular + AntPolt SemiCond Bold + AntPolt SemiCond Bold Italic + AntPolt SemiCond Italic + AntPolt SemiCond Regular + AntPolt SemiExpd Bold + AntPolt SemiExpd Bold Italic + AntPolt SemiExpd Italic + AntPolt SemiExpd Regular + AntPoltLt Bold + AntPoltLt Bold Italic + AntPoltLt Cond Bold + AntPoltLt Cond Bold Italic + AntPoltLt Cond Italic + AntPoltLt Cond Regular + AntPoltLt Expd Bold + AntPoltLt Expd Bold Italic + AntPoltLt Expd Italic + AntPoltLt Expd Regular + AntPoltLt Italic + AntPoltLt Regular + AntPoltLt SemiCond Bold + AntPoltLt SemiCond Bold Italic + AntPoltLt SemiCond Italic + AntPoltLt SemiCond Regular + AntPoltLt SemiExpd Bold + AntPoltLt SemiExpd Bold Italic + AntPoltLt SemiExpd Italic + AntPoltLt SemiExpd Regular + +2. Files whose names should be changed in derived works as requested + by clause 1 of GUST-FONT-LICENSE.txt + + 2.1 fonts/afm/gust/poltawski/antpb10.afm + fonts/afm/gust/poltawski/antpb12.afm + fonts/afm/gust/poltawski/antpb17.afm + fonts/afm/gust/poltawski/antpb6.afm + fonts/afm/gust/poltawski/antpb8.afm + fonts/afm/gust/poltawski/antpbi10.afm + fonts/afm/gust/poltawski/antpbi12.afm + fonts/afm/gust/poltawski/antpbi17.afm + fonts/afm/gust/poltawski/antpbi6.afm + fonts/afm/gust/poltawski/antpbi8.afm + fonts/afm/gust/poltawski/antpl10.afm + fonts/afm/gust/poltawski/antpl12.afm + fonts/afm/gust/poltawski/antpl17.afm + fonts/afm/gust/poltawski/antpl6.afm + fonts/afm/gust/poltawski/antpl8.afm + fonts/afm/gust/poltawski/antpli10.afm + fonts/afm/gust/poltawski/antpli12.afm + fonts/afm/gust/poltawski/antpli17.afm + fonts/afm/gust/poltawski/antpli6.afm + fonts/afm/gust/poltawski/antpli8.afm + fonts/afm/gust/poltawski/antpm10.afm + fonts/afm/gust/poltawski/antpm12.afm + fonts/afm/gust/poltawski/antpm17.afm + fonts/afm/gust/poltawski/antpm6.afm + fonts/afm/gust/poltawski/antpm8.afm + fonts/afm/gust/poltawski/antpmi10.afm + fonts/afm/gust/poltawski/antpmi12.afm + fonts/afm/gust/poltawski/antpmi17.afm + fonts/afm/gust/poltawski/antpmi6.afm + fonts/afm/gust/poltawski/antpmi8.afm + fonts/afm/gust/poltawski/antpr10.afm + fonts/afm/gust/poltawski/antpr12.afm + fonts/afm/gust/poltawski/antpr17.afm + fonts/afm/gust/poltawski/antpr6.afm + fonts/afm/gust/poltawski/antpr8.afm + fonts/afm/gust/poltawski/antpri10.afm + fonts/afm/gust/poltawski/antpri12.afm + fonts/afm/gust/poltawski/antpri17.afm + fonts/afm/gust/poltawski/antpri6.afm + fonts/afm/gust/poltawski/antpri8.afm + + fonts/enc/dvips/poltawski/ap-cs-sc.enc + fonts/enc/dvips/poltawski/ap-cs.enc + fonts/enc/dvips/poltawski/ap-ec-sc.enc + fonts/enc/dvips/poltawski/ap-ec.enc + fonts/enc/dvips/poltawski/ap-l7x-sc.enc + fonts/enc/dvips/poltawski/ap-l7x.enc + fonts/enc/dvips/poltawski/ap-qx-sc.enc + fonts/enc/dvips/poltawski/ap-qx.enc + fonts/enc/dvips/poltawski/ap-rm-sc.enc + fonts/enc/dvips/poltawski/ap-rm.enc + fonts/enc/dvips/poltawski/ap-t5-sc.enc + fonts/enc/dvips/poltawski/ap-t5.enc + fonts/enc/dvips/poltawski/ap-texnansi-sc.enc + fonts/enc/dvips/poltawski/ap-texnansi.enc + fonts/enc/dvips/poltawski/ap-ts1.enc + + fonts/map/dvips/poltawski/ap-cs.map + fonts/map/dvips/poltawski/ap-ec.map + fonts/map/dvips/poltawski/ap-l7x.map + fonts/map/dvips/poltawski/ap-qx.map + fonts/map/dvips/poltawski/ap-rm.map + fonts/map/dvips/poltawski/ap-t5.map + fonts/map/dvips/poltawski/ap-texnansi.map + fonts/map/dvips/poltawski/ap-ts1.map + fonts/map/dvips/poltawski/ap.map + + fonts/opentype/gust/poltawski/antpolt-bold.otf + fonts/opentype/gust/poltawski/antpolt-bolditalic.otf + fonts/opentype/gust/poltawski/antpolt-italic.otf + fonts/opentype/gust/poltawski/antpolt-regular.otf + fonts/opentype/gust/poltawski/antpoltcond-bold.otf + fonts/opentype/gust/poltawski/antpoltcond-bolditalic.otf + fonts/opentype/gust/poltawski/antpoltcond-italic.otf + fonts/opentype/gust/poltawski/antpoltcond-regular.otf + fonts/opentype/gust/poltawski/antpoltexpd-bold.otf + fonts/opentype/gust/poltawski/antpoltexpd-bolditalic.otf + fonts/opentype/gust/poltawski/antpoltexpd-italic.otf + fonts/opentype/gust/poltawski/antpoltexpd-regular.otf + fonts/opentype/gust/poltawski/antpoltlt-bold.otf + fonts/opentype/gust/poltawski/antpoltlt-bolditalic.otf + fonts/opentype/gust/poltawski/antpoltlt-italic.otf + fonts/opentype/gust/poltawski/antpoltlt-regular.otf + fonts/opentype/gust/poltawski/antpoltltcond-bold.otf + fonts/opentype/gust/poltawski/antpoltltcond-bolditalic.otf + fonts/opentype/gust/poltawski/antpoltltcond-italic.otf + fonts/opentype/gust/poltawski/antpoltltcond-regular.otf + fonts/opentype/gust/poltawski/antpoltltexpd-bold.otf + fonts/opentype/gust/poltawski/antpoltltexpd-bolditalic.otf + fonts/opentype/gust/poltawski/antpoltltexpd-italic.otf + fonts/opentype/gust/poltawski/antpoltltexpd-regular.otf + fonts/opentype/gust/poltawski/antpoltltsemicond-bold.otf + fonts/opentype/gust/poltawski/antpoltltsemicond-bolditalic.otf + fonts/opentype/gust/poltawski/antpoltltsemicond-italic.otf + fonts/opentype/gust/poltawski/antpoltltsemicond-regular.otf + fonts/opentype/gust/poltawski/antpoltltsemiexpd-bold.otf + fonts/opentype/gust/poltawski/antpoltltsemiexpd-bolditalic.otf + fonts/opentype/gust/poltawski/antpoltltsemiexpd-italic.otf + fonts/opentype/gust/poltawski/antpoltltsemiexpd-regular.otf + fonts/opentype/gust/poltawski/antpoltsemicond-bold.otf + fonts/opentype/gust/poltawski/antpoltsemicond-bolditalic.otf + fonts/opentype/gust/poltawski/antpoltsemicond-italic.otf + fonts/opentype/gust/poltawski/antpoltsemicond-regular.otf + fonts/opentype/gust/poltawski/antpoltsemiexpd-bold.otf + fonts/opentype/gust/poltawski/antpoltsemiexpd-bolditalic.otf + fonts/opentype/gust/poltawski/antpoltsemiexpd-italic.otf + fonts/opentype/gust/poltawski/antpoltsemiexpd-regular.otf + + fonts/tfm/gust/poltawski/cs-antpb10-sc.tfm + fonts/tfm/gust/poltawski/cs-antpb10.tfm + fonts/tfm/gust/poltawski/cs-antpb12-sc.tfm + fonts/tfm/gust/poltawski/cs-antpb12.tfm + fonts/tfm/gust/poltawski/cs-antpb17-sc.tfm + fonts/tfm/gust/poltawski/cs-antpb17.tfm + fonts/tfm/gust/poltawski/cs-antpb6-sc.tfm + fonts/tfm/gust/poltawski/cs-antpb6.tfm + fonts/tfm/gust/poltawski/cs-antpb8-sc.tfm + fonts/tfm/gust/poltawski/cs-antpb8.tfm + fonts/tfm/gust/poltawski/cs-antpbi10-sc.tfm + fonts/tfm/gust/poltawski/cs-antpbi10.tfm + fonts/tfm/gust/poltawski/cs-antpbi12-sc.tfm + fonts/tfm/gust/poltawski/cs-antpbi12.tfm + fonts/tfm/gust/poltawski/cs-antpbi17-sc.tfm + fonts/tfm/gust/poltawski/cs-antpbi17.tfm + fonts/tfm/gust/poltawski/cs-antpbi6-sc.tfm + fonts/tfm/gust/poltawski/cs-antpbi6.tfm + fonts/tfm/gust/poltawski/cs-antpbi8-sc.tfm + fonts/tfm/gust/poltawski/cs-antpbi8.tfm + fonts/tfm/gust/poltawski/cs-antpl10-sc.tfm + fonts/tfm/gust/poltawski/cs-antpl10.tfm + fonts/tfm/gust/poltawski/cs-antpl12-sc.tfm + fonts/tfm/gust/poltawski/cs-antpl12.tfm + fonts/tfm/gust/poltawski/cs-antpl17-sc.tfm + fonts/tfm/gust/poltawski/cs-antpl17.tfm + fonts/tfm/gust/poltawski/cs-antpl6-sc.tfm + fonts/tfm/gust/poltawski/cs-antpl6.tfm + fonts/tfm/gust/poltawski/cs-antpl8-sc.tfm + fonts/tfm/gust/poltawski/cs-antpl8.tfm + fonts/tfm/gust/poltawski/cs-antpli10-sc.tfm + fonts/tfm/gust/poltawski/cs-antpli10.tfm + fonts/tfm/gust/poltawski/cs-antpli12-sc.tfm + fonts/tfm/gust/poltawski/cs-antpli12.tfm + fonts/tfm/gust/poltawski/cs-antpli17-sc.tfm + fonts/tfm/gust/poltawski/cs-antpli17.tfm + fonts/tfm/gust/poltawski/cs-antpli6-sc.tfm + fonts/tfm/gust/poltawski/cs-antpli6.tfm + fonts/tfm/gust/poltawski/cs-antpli8-sc.tfm + fonts/tfm/gust/poltawski/cs-antpli8.tfm + fonts/tfm/gust/poltawski/cs-antpm10-sc.tfm + fonts/tfm/gust/poltawski/cs-antpm10.tfm + fonts/tfm/gust/poltawski/cs-antpm12-sc.tfm + fonts/tfm/gust/poltawski/cs-antpm12.tfm + fonts/tfm/gust/poltawski/cs-antpm17-sc.tfm + fonts/tfm/gust/poltawski/cs-antpm17.tfm + fonts/tfm/gust/poltawski/cs-antpm6-sc.tfm + fonts/tfm/gust/poltawski/cs-antpm6.tfm + fonts/tfm/gust/poltawski/cs-antpm8-sc.tfm + fonts/tfm/gust/poltawski/cs-antpm8.tfm + fonts/tfm/gust/poltawski/cs-antpmi10-sc.tfm + fonts/tfm/gust/poltawski/cs-antpmi10.tfm + fonts/tfm/gust/poltawski/cs-antpmi12-sc.tfm + fonts/tfm/gust/poltawski/cs-antpmi12.tfm + fonts/tfm/gust/poltawski/cs-antpmi17-sc.tfm + fonts/tfm/gust/poltawski/cs-antpmi17.tfm + fonts/tfm/gust/poltawski/cs-antpmi6-sc.tfm + fonts/tfm/gust/poltawski/cs-antpmi6.tfm + fonts/tfm/gust/poltawski/cs-antpmi8-sc.tfm + fonts/tfm/gust/poltawski/cs-antpmi8.tfm + fonts/tfm/gust/poltawski/cs-antpr10-sc.tfm + fonts/tfm/gust/poltawski/cs-antpr10.tfm + fonts/tfm/gust/poltawski/cs-antpr12-sc.tfm + fonts/tfm/gust/poltawski/cs-antpr12.tfm + fonts/tfm/gust/poltawski/cs-antpr17-sc.tfm + fonts/tfm/gust/poltawski/cs-antpr17.tfm + fonts/tfm/gust/poltawski/cs-antpr6-sc.tfm + fonts/tfm/gust/poltawski/cs-antpr6.tfm + fonts/tfm/gust/poltawski/cs-antpr8-sc.tfm + fonts/tfm/gust/poltawski/cs-antpr8.tfm + fonts/tfm/gust/poltawski/cs-antpri10-sc.tfm + fonts/tfm/gust/poltawski/cs-antpri10.tfm + fonts/tfm/gust/poltawski/cs-antpri12-sc.tfm + fonts/tfm/gust/poltawski/cs-antpri12.tfm + fonts/tfm/gust/poltawski/cs-antpri17-sc.tfm + fonts/tfm/gust/poltawski/cs-antpri17.tfm + fonts/tfm/gust/poltawski/cs-antpri6-sc.tfm + fonts/tfm/gust/poltawski/cs-antpri6.tfm + fonts/tfm/gust/poltawski/cs-antpri8-sc.tfm + fonts/tfm/gust/poltawski/cs-antpri8.tfm + fonts/tfm/gust/poltawski/ec-antpb10-sc.tfm + fonts/tfm/gust/poltawski/ec-antpb10.tfm + fonts/tfm/gust/poltawski/ec-antpb12-sc.tfm + fonts/tfm/gust/poltawski/ec-antpb12.tfm + fonts/tfm/gust/poltawski/ec-antpb17-sc.tfm + fonts/tfm/gust/poltawski/ec-antpb17.tfm + fonts/tfm/gust/poltawski/ec-antpb6-sc.tfm + fonts/tfm/gust/poltawski/ec-antpb6.tfm + fonts/tfm/gust/poltawski/ec-antpb8-sc.tfm + fonts/tfm/gust/poltawski/ec-antpb8.tfm + fonts/tfm/gust/poltawski/ec-antpbi10-sc.tfm + fonts/tfm/gust/poltawski/ec-antpbi10.tfm + fonts/tfm/gust/poltawski/ec-antpbi12-sc.tfm + fonts/tfm/gust/poltawski/ec-antpbi12.tfm + fonts/tfm/gust/poltawski/ec-antpbi17-sc.tfm + fonts/tfm/gust/poltawski/ec-antpbi17.tfm + fonts/tfm/gust/poltawski/ec-antpbi6-sc.tfm + fonts/tfm/gust/poltawski/ec-antpbi6.tfm + fonts/tfm/gust/poltawski/ec-antpbi8-sc.tfm + fonts/tfm/gust/poltawski/ec-antpbi8.tfm + fonts/tfm/gust/poltawski/ec-antpl10-sc.tfm + fonts/tfm/gust/poltawski/ec-antpl10.tfm + fonts/tfm/gust/poltawski/ec-antpl12-sc.tfm + fonts/tfm/gust/poltawski/ec-antpl12.tfm + fonts/tfm/gust/poltawski/ec-antpl17-sc.tfm + fonts/tfm/gust/poltawski/ec-antpl17.tfm + fonts/tfm/gust/poltawski/ec-antpl6-sc.tfm + fonts/tfm/gust/poltawski/ec-antpl6.tfm + fonts/tfm/gust/poltawski/ec-antpl8-sc.tfm + fonts/tfm/gust/poltawski/ec-antpl8.tfm + fonts/tfm/gust/poltawski/ec-antpli10-sc.tfm + fonts/tfm/gust/poltawski/ec-antpli10.tfm + fonts/tfm/gust/poltawski/ec-antpli12-sc.tfm + fonts/tfm/gust/poltawski/ec-antpli12.tfm + fonts/tfm/gust/poltawski/ec-antpli17-sc.tfm + fonts/tfm/gust/poltawski/ec-antpli17.tfm + fonts/tfm/gust/poltawski/ec-antpli6-sc.tfm + fonts/tfm/gust/poltawski/ec-antpli6.tfm + fonts/tfm/gust/poltawski/ec-antpli8-sc.tfm + fonts/tfm/gust/poltawski/ec-antpli8.tfm + fonts/tfm/gust/poltawski/ec-antpm10-sc.tfm + fonts/tfm/gust/poltawski/ec-antpm10.tfm + fonts/tfm/gust/poltawski/ec-antpm12-sc.tfm + fonts/tfm/gust/poltawski/ec-antpm12.tfm + fonts/tfm/gust/poltawski/ec-antpm17-sc.tfm + fonts/tfm/gust/poltawski/ec-antpm17.tfm + fonts/tfm/gust/poltawski/ec-antpm6-sc.tfm + fonts/tfm/gust/poltawski/ec-antpm6.tfm + fonts/tfm/gust/poltawski/ec-antpm8-sc.tfm + fonts/tfm/gust/poltawski/ec-antpm8.tfm + fonts/tfm/gust/poltawski/ec-antpmi10-sc.tfm + fonts/tfm/gust/poltawski/ec-antpmi10.tfm + fonts/tfm/gust/poltawski/ec-antpmi12-sc.tfm + fonts/tfm/gust/poltawski/ec-antpmi12.tfm + fonts/tfm/gust/poltawski/ec-antpmi17-sc.tfm + fonts/tfm/gust/poltawski/ec-antpmi17.tfm + fonts/tfm/gust/poltawski/ec-antpmi6-sc.tfm + fonts/tfm/gust/poltawski/ec-antpmi6.tfm + fonts/tfm/gust/poltawski/ec-antpmi8-sc.tfm + fonts/tfm/gust/poltawski/ec-antpmi8.tfm + fonts/tfm/gust/poltawski/ec-antpr10-sc.tfm + fonts/tfm/gust/poltawski/ec-antpr10.tfm + fonts/tfm/gust/poltawski/ec-antpr12-sc.tfm + fonts/tfm/gust/poltawski/ec-antpr12.tfm + fonts/tfm/gust/poltawski/ec-antpr17-sc.tfm + fonts/tfm/gust/poltawski/ec-antpr17.tfm + fonts/tfm/gust/poltawski/ec-antpr6-sc.tfm + fonts/tfm/gust/poltawski/ec-antpr6.tfm + fonts/tfm/gust/poltawski/ec-antpr8-sc.tfm + fonts/tfm/gust/poltawski/ec-antpr8.tfm + fonts/tfm/gust/poltawski/ec-antpri10-sc.tfm + fonts/tfm/gust/poltawski/ec-antpri10.tfm + fonts/tfm/gust/poltawski/ec-antpri12-sc.tfm + fonts/tfm/gust/poltawski/ec-antpri12.tfm + fonts/tfm/gust/poltawski/ec-antpri17-sc.tfm + fonts/tfm/gust/poltawski/ec-antpri17.tfm + fonts/tfm/gust/poltawski/ec-antpri6-sc.tfm + fonts/tfm/gust/poltawski/ec-antpri6.tfm + fonts/tfm/gust/poltawski/ec-antpri8-sc.tfm + fonts/tfm/gust/poltawski/ec-antpri8.tfm + fonts/tfm/gust/poltawski/l7x-antpb10-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpb10.tfm + fonts/tfm/gust/poltawski/l7x-antpb12-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpb12.tfm + fonts/tfm/gust/poltawski/l7x-antpb17-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpb17.tfm + fonts/tfm/gust/poltawski/l7x-antpb6-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpb6.tfm + fonts/tfm/gust/poltawski/l7x-antpb8-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpb8.tfm + fonts/tfm/gust/poltawski/l7x-antpbi10-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpbi10.tfm + fonts/tfm/gust/poltawski/l7x-antpbi12-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpbi12.tfm + fonts/tfm/gust/poltawski/l7x-antpbi17-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpbi17.tfm + fonts/tfm/gust/poltawski/l7x-antpbi6-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpbi6.tfm + fonts/tfm/gust/poltawski/l7x-antpbi8-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpbi8.tfm + fonts/tfm/gust/poltawski/l7x-antpl10-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpl10.tfm + fonts/tfm/gust/poltawski/l7x-antpl12-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpl12.tfm + fonts/tfm/gust/poltawski/l7x-antpl17-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpl17.tfm + fonts/tfm/gust/poltawski/l7x-antpl6-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpl6.tfm + fonts/tfm/gust/poltawski/l7x-antpl8-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpl8.tfm + fonts/tfm/gust/poltawski/l7x-antpli10-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpli10.tfm + fonts/tfm/gust/poltawski/l7x-antpli12-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpli12.tfm + fonts/tfm/gust/poltawski/l7x-antpli17-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpli17.tfm + fonts/tfm/gust/poltawski/l7x-antpli6-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpli6.tfm + fonts/tfm/gust/poltawski/l7x-antpli8-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpli8.tfm + fonts/tfm/gust/poltawski/l7x-antpm10-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpm10.tfm + fonts/tfm/gust/poltawski/l7x-antpm12-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpm12.tfm + fonts/tfm/gust/poltawski/l7x-antpm17-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpm17.tfm + fonts/tfm/gust/poltawski/l7x-antpm6-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpm6.tfm + fonts/tfm/gust/poltawski/l7x-antpm8-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpm8.tfm + fonts/tfm/gust/poltawski/l7x-antpmi10-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpmi10.tfm + fonts/tfm/gust/poltawski/l7x-antpmi12-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpmi12.tfm + fonts/tfm/gust/poltawski/l7x-antpmi17-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpmi17.tfm + fonts/tfm/gust/poltawski/l7x-antpmi6-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpmi6.tfm + fonts/tfm/gust/poltawski/l7x-antpmi8-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpmi8.tfm + fonts/tfm/gust/poltawski/l7x-antpr10-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpr10.tfm + fonts/tfm/gust/poltawski/l7x-antpr12-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpr12.tfm + fonts/tfm/gust/poltawski/l7x-antpr17-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpr17.tfm + fonts/tfm/gust/poltawski/l7x-antpr6-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpr6.tfm + fonts/tfm/gust/poltawski/l7x-antpr8-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpr8.tfm + fonts/tfm/gust/poltawski/l7x-antpri10-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpri10.tfm + fonts/tfm/gust/poltawski/l7x-antpri12-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpri12.tfm + fonts/tfm/gust/poltawski/l7x-antpri17-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpri17.tfm + fonts/tfm/gust/poltawski/l7x-antpri6-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpri6.tfm + fonts/tfm/gust/poltawski/l7x-antpri8-sc.tfm + fonts/tfm/gust/poltawski/l7x-antpri8.tfm + fonts/tfm/gust/poltawski/qx-antpb10-sc.tfm + fonts/tfm/gust/poltawski/qx-antpb10.tfm + fonts/tfm/gust/poltawski/qx-antpb12-sc.tfm + fonts/tfm/gust/poltawski/qx-antpb12.tfm + fonts/tfm/gust/poltawski/qx-antpb17-sc.tfm + fonts/tfm/gust/poltawski/qx-antpb17.tfm + fonts/tfm/gust/poltawski/qx-antpb6-sc.tfm + fonts/tfm/gust/poltawski/qx-antpb6.tfm + fonts/tfm/gust/poltawski/qx-antpb8-sc.tfm + fonts/tfm/gust/poltawski/qx-antpb8.tfm + fonts/tfm/gust/poltawski/qx-antpbi10-sc.tfm + fonts/tfm/gust/poltawski/qx-antpbi10.tfm + fonts/tfm/gust/poltawski/qx-antpbi12-sc.tfm + fonts/tfm/gust/poltawski/qx-antpbi12.tfm + fonts/tfm/gust/poltawski/qx-antpbi17-sc.tfm + fonts/tfm/gust/poltawski/qx-antpbi17.tfm + fonts/tfm/gust/poltawski/qx-antpbi6-sc.tfm + fonts/tfm/gust/poltawski/qx-antpbi6.tfm + fonts/tfm/gust/poltawski/qx-antpbi8-sc.tfm + fonts/tfm/gust/poltawski/qx-antpbi8.tfm + fonts/tfm/gust/poltawski/qx-antpl10-sc.tfm + fonts/tfm/gust/poltawski/qx-antpl10.tfm + fonts/tfm/gust/poltawski/qx-antpl12-sc.tfm + fonts/tfm/gust/poltawski/qx-antpl12.tfm + fonts/tfm/gust/poltawski/qx-antpl17-sc.tfm + fonts/tfm/gust/poltawski/qx-antpl17.tfm + fonts/tfm/gust/poltawski/qx-antpl6-sc.tfm + fonts/tfm/gust/poltawski/qx-antpl6.tfm + fonts/tfm/gust/poltawski/qx-antpl8-sc.tfm + fonts/tfm/gust/poltawski/qx-antpl8.tfm + fonts/tfm/gust/poltawski/qx-antpli10-sc.tfm + fonts/tfm/gust/poltawski/qx-antpli10.tfm + fonts/tfm/gust/poltawski/qx-antpli12-sc.tfm + fonts/tfm/gust/poltawski/qx-antpli12.tfm + fonts/tfm/gust/poltawski/qx-antpli17-sc.tfm + fonts/tfm/gust/poltawski/qx-antpli17.tfm + fonts/tfm/gust/poltawski/qx-antpli6-sc.tfm + fonts/tfm/gust/poltawski/qx-antpli6.tfm + fonts/tfm/gust/poltawski/qx-antpli8-sc.tfm + fonts/tfm/gust/poltawski/qx-antpli8.tfm + fonts/tfm/gust/poltawski/qx-antpm10-sc.tfm + fonts/tfm/gust/poltawski/qx-antpm10.tfm + fonts/tfm/gust/poltawski/qx-antpm12-sc.tfm + fonts/tfm/gust/poltawski/qx-antpm12.tfm + fonts/tfm/gust/poltawski/qx-antpm17-sc.tfm + fonts/tfm/gust/poltawski/qx-antpm17.tfm + fonts/tfm/gust/poltawski/qx-antpm6-sc.tfm + fonts/tfm/gust/poltawski/qx-antpm6.tfm + fonts/tfm/gust/poltawski/qx-antpm8-sc.tfm + fonts/tfm/gust/poltawski/qx-antpm8.tfm + fonts/tfm/gust/poltawski/qx-antpmi10-sc.tfm + fonts/tfm/gust/poltawski/qx-antpmi10.tfm + fonts/tfm/gust/poltawski/qx-antpmi12-sc.tfm + fonts/tfm/gust/poltawski/qx-antpmi12.tfm + fonts/tfm/gust/poltawski/qx-antpmi17-sc.tfm + fonts/tfm/gust/poltawski/qx-antpmi17.tfm + fonts/tfm/gust/poltawski/qx-antpmi6-sc.tfm + fonts/tfm/gust/poltawski/qx-antpmi6.tfm + fonts/tfm/gust/poltawski/qx-antpmi8-sc.tfm + fonts/tfm/gust/poltawski/qx-antpmi8.tfm + fonts/tfm/gust/poltawski/qx-antpr10-sc.tfm + fonts/tfm/gust/poltawski/qx-antpr10.tfm + fonts/tfm/gust/poltawski/qx-antpr12-sc.tfm + fonts/tfm/gust/poltawski/qx-antpr12.tfm + fonts/tfm/gust/poltawski/qx-antpr17-sc.tfm + fonts/tfm/gust/poltawski/qx-antpr17.tfm + fonts/tfm/gust/poltawski/qx-antpr6-sc.tfm + fonts/tfm/gust/poltawski/qx-antpr6.tfm + fonts/tfm/gust/poltawski/qx-antpr8-sc.tfm + fonts/tfm/gust/poltawski/qx-antpr8.tfm + fonts/tfm/gust/poltawski/qx-antpri10-sc.tfm + fonts/tfm/gust/poltawski/qx-antpri10.tfm + fonts/tfm/gust/poltawski/qx-antpri12-sc.tfm + fonts/tfm/gust/poltawski/qx-antpri12.tfm + fonts/tfm/gust/poltawski/qx-antpri17-sc.tfm + fonts/tfm/gust/poltawski/qx-antpri17.tfm + fonts/tfm/gust/poltawski/qx-antpri6-sc.tfm + fonts/tfm/gust/poltawski/qx-antpri6.tfm + fonts/tfm/gust/poltawski/qx-antpri8-sc.tfm + fonts/tfm/gust/poltawski/qx-antpri8.tfm + fonts/tfm/gust/poltawski/rm-antpb10-sc.tfm + fonts/tfm/gust/poltawski/rm-antpb10.tfm + fonts/tfm/gust/poltawski/rm-antpb12-sc.tfm + fonts/tfm/gust/poltawski/rm-antpb12.tfm + fonts/tfm/gust/poltawski/rm-antpb17-sc.tfm + fonts/tfm/gust/poltawski/rm-antpb17.tfm + fonts/tfm/gust/poltawski/rm-antpb6-sc.tfm + fonts/tfm/gust/poltawski/rm-antpb6.tfm + fonts/tfm/gust/poltawski/rm-antpb8-sc.tfm + fonts/tfm/gust/poltawski/rm-antpb8.tfm + fonts/tfm/gust/poltawski/rm-antpbi10-sc.tfm + fonts/tfm/gust/poltawski/rm-antpbi10.tfm + fonts/tfm/gust/poltawski/rm-antpbi12-sc.tfm + fonts/tfm/gust/poltawski/rm-antpbi12.tfm + fonts/tfm/gust/poltawski/rm-antpbi17-sc.tfm + fonts/tfm/gust/poltawski/rm-antpbi17.tfm + fonts/tfm/gust/poltawski/rm-antpbi6-sc.tfm + fonts/tfm/gust/poltawski/rm-antpbi6.tfm + fonts/tfm/gust/poltawski/rm-antpbi8-sc.tfm + fonts/tfm/gust/poltawski/rm-antpbi8.tfm + fonts/tfm/gust/poltawski/rm-antpl10-sc.tfm + fonts/tfm/gust/poltawski/rm-antpl10.tfm + fonts/tfm/gust/poltawski/rm-antpl12-sc.tfm + fonts/tfm/gust/poltawski/rm-antpl12.tfm + fonts/tfm/gust/poltawski/rm-antpl17-sc.tfm + fonts/tfm/gust/poltawski/rm-antpl17.tfm + fonts/tfm/gust/poltawski/rm-antpl6-sc.tfm + fonts/tfm/gust/poltawski/rm-antpl6.tfm + fonts/tfm/gust/poltawski/rm-antpl8-sc.tfm + fonts/tfm/gust/poltawski/rm-antpl8.tfm + fonts/tfm/gust/poltawski/rm-antpli10-sc.tfm + fonts/tfm/gust/poltawski/rm-antpli10.tfm + fonts/tfm/gust/poltawski/rm-antpli12-sc.tfm + fonts/tfm/gust/poltawski/rm-antpli12.tfm + fonts/tfm/gust/poltawski/rm-antpli17-sc.tfm + fonts/tfm/gust/poltawski/rm-antpli17.tfm + fonts/tfm/gust/poltawski/rm-antpli6-sc.tfm + fonts/tfm/gust/poltawski/rm-antpli6.tfm + fonts/tfm/gust/poltawski/rm-antpli8-sc.tfm + fonts/tfm/gust/poltawski/rm-antpli8.tfm + fonts/tfm/gust/poltawski/rm-antpm10-sc.tfm + fonts/tfm/gust/poltawski/rm-antpm10.tfm + fonts/tfm/gust/poltawski/rm-antpm12-sc.tfm + fonts/tfm/gust/poltawski/rm-antpm12.tfm + fonts/tfm/gust/poltawski/rm-antpm17-sc.tfm + fonts/tfm/gust/poltawski/rm-antpm17.tfm + fonts/tfm/gust/poltawski/rm-antpm6-sc.tfm + fonts/tfm/gust/poltawski/rm-antpm6.tfm + fonts/tfm/gust/poltawski/rm-antpm8-sc.tfm + fonts/tfm/gust/poltawski/rm-antpm8.tfm + fonts/tfm/gust/poltawski/rm-antpmi10-sc.tfm + fonts/tfm/gust/poltawski/rm-antpmi10.tfm + fonts/tfm/gust/poltawski/rm-antpmi12-sc.tfm + fonts/tfm/gust/poltawski/rm-antpmi12.tfm + fonts/tfm/gust/poltawski/rm-antpmi17-sc.tfm + fonts/tfm/gust/poltawski/rm-antpmi17.tfm + fonts/tfm/gust/poltawski/rm-antpmi6-sc.tfm + fonts/tfm/gust/poltawski/rm-antpmi6.tfm + fonts/tfm/gust/poltawski/rm-antpmi8-sc.tfm + fonts/tfm/gust/poltawski/rm-antpmi8.tfm + fonts/tfm/gust/poltawski/rm-antpr10-sc.tfm + fonts/tfm/gust/poltawski/rm-antpr10.tfm + fonts/tfm/gust/poltawski/rm-antpr12-sc.tfm + fonts/tfm/gust/poltawski/rm-antpr12.tfm + fonts/tfm/gust/poltawski/rm-antpr17-sc.tfm + fonts/tfm/gust/poltawski/rm-antpr17.tfm + fonts/tfm/gust/poltawski/rm-antpr6-sc.tfm + fonts/tfm/gust/poltawski/rm-antpr6.tfm + fonts/tfm/gust/poltawski/rm-antpr8-sc.tfm + fonts/tfm/gust/poltawski/rm-antpr8.tfm + fonts/tfm/gust/poltawski/rm-antpri10-sc.tfm + fonts/tfm/gust/poltawski/rm-antpri10.tfm + fonts/tfm/gust/poltawski/rm-antpri12-sc.tfm + fonts/tfm/gust/poltawski/rm-antpri12.tfm + fonts/tfm/gust/poltawski/rm-antpri17-sc.tfm + fonts/tfm/gust/poltawski/rm-antpri17.tfm + fonts/tfm/gust/poltawski/rm-antpri6-sc.tfm + fonts/tfm/gust/poltawski/rm-antpri6.tfm + fonts/tfm/gust/poltawski/rm-antpri8-sc.tfm + fonts/tfm/gust/poltawski/rm-antpri8.tfm + fonts/tfm/gust/poltawski/t5-antpb10-sc.tfm + fonts/tfm/gust/poltawski/t5-antpb10.tfm + fonts/tfm/gust/poltawski/t5-antpb12-sc.tfm + fonts/tfm/gust/poltawski/t5-antpb12.tfm + fonts/tfm/gust/poltawski/t5-antpb17-sc.tfm + fonts/tfm/gust/poltawski/t5-antpb17.tfm + fonts/tfm/gust/poltawski/t5-antpb6-sc.tfm + fonts/tfm/gust/poltawski/t5-antpb6.tfm + fonts/tfm/gust/poltawski/t5-antpb8-sc.tfm + fonts/tfm/gust/poltawski/t5-antpb8.tfm + fonts/tfm/gust/poltawski/t5-antpbi10-sc.tfm + fonts/tfm/gust/poltawski/t5-antpbi10.tfm + fonts/tfm/gust/poltawski/t5-antpbi12-sc.tfm + fonts/tfm/gust/poltawski/t5-antpbi12.tfm + fonts/tfm/gust/poltawski/t5-antpbi17-sc.tfm + fonts/tfm/gust/poltawski/t5-antpbi17.tfm + fonts/tfm/gust/poltawski/t5-antpbi6-sc.tfm + fonts/tfm/gust/poltawski/t5-antpbi6.tfm + fonts/tfm/gust/poltawski/t5-antpbi8-sc.tfm + fonts/tfm/gust/poltawski/t5-antpbi8.tfm + fonts/tfm/gust/poltawski/t5-antpl10-sc.tfm + fonts/tfm/gust/poltawski/t5-antpl10.tfm + fonts/tfm/gust/poltawski/t5-antpl12-sc.tfm + fonts/tfm/gust/poltawski/t5-antpl12.tfm + fonts/tfm/gust/poltawski/t5-antpl17-sc.tfm + fonts/tfm/gust/poltawski/t5-antpl17.tfm + fonts/tfm/gust/poltawski/t5-antpl6-sc.tfm + fonts/tfm/gust/poltawski/t5-antpl6.tfm + fonts/tfm/gust/poltawski/t5-antpl8-sc.tfm + fonts/tfm/gust/poltawski/t5-antpl8.tfm + fonts/tfm/gust/poltawski/t5-antpli10-sc.tfm + fonts/tfm/gust/poltawski/t5-antpli10.tfm + fonts/tfm/gust/poltawski/t5-antpli12-sc.tfm + fonts/tfm/gust/poltawski/t5-antpli12.tfm + fonts/tfm/gust/poltawski/t5-antpli17-sc.tfm + fonts/tfm/gust/poltawski/t5-antpli17.tfm + fonts/tfm/gust/poltawski/t5-antpli6-sc.tfm + fonts/tfm/gust/poltawski/t5-antpli6.tfm + fonts/tfm/gust/poltawski/t5-antpli8-sc.tfm + fonts/tfm/gust/poltawski/t5-antpli8.tfm + fonts/tfm/gust/poltawski/t5-antpm10-sc.tfm + fonts/tfm/gust/poltawski/t5-antpm10.tfm + fonts/tfm/gust/poltawski/t5-antpm12-sc.tfm + fonts/tfm/gust/poltawski/t5-antpm12.tfm + fonts/tfm/gust/poltawski/t5-antpm17-sc.tfm + fonts/tfm/gust/poltawski/t5-antpm17.tfm + fonts/tfm/gust/poltawski/t5-antpm6-sc.tfm + fonts/tfm/gust/poltawski/t5-antpm6.tfm + fonts/tfm/gust/poltawski/t5-antpm8-sc.tfm + fonts/tfm/gust/poltawski/t5-antpm8.tfm + fonts/tfm/gust/poltawski/t5-antpmi10-sc.tfm + fonts/tfm/gust/poltawski/t5-antpmi10.tfm + fonts/tfm/gust/poltawski/t5-antpmi12-sc.tfm + fonts/tfm/gust/poltawski/t5-antpmi12.tfm + fonts/tfm/gust/poltawski/t5-antpmi17-sc.tfm + fonts/tfm/gust/poltawski/t5-antpmi17.tfm + fonts/tfm/gust/poltawski/t5-antpmi6-sc.tfm + fonts/tfm/gust/poltawski/t5-antpmi6.tfm + fonts/tfm/gust/poltawski/t5-antpmi8-sc.tfm + fonts/tfm/gust/poltawski/t5-antpmi8.tfm + fonts/tfm/gust/poltawski/t5-antpr10-sc.tfm + fonts/tfm/gust/poltawski/t5-antpr10.tfm + fonts/tfm/gust/poltawski/t5-antpr12-sc.tfm + fonts/tfm/gust/poltawski/t5-antpr12.tfm + fonts/tfm/gust/poltawski/t5-antpr17-sc.tfm + fonts/tfm/gust/poltawski/t5-antpr17.tfm + fonts/tfm/gust/poltawski/t5-antpr6-sc.tfm + fonts/tfm/gust/poltawski/t5-antpr6.tfm + fonts/tfm/gust/poltawski/t5-antpr8-sc.tfm + fonts/tfm/gust/poltawski/t5-antpr8.tfm + fonts/tfm/gust/poltawski/t5-antpri10-sc.tfm + fonts/tfm/gust/poltawski/t5-antpri10.tfm + fonts/tfm/gust/poltawski/t5-antpri12-sc.tfm + fonts/tfm/gust/poltawski/t5-antpri12.tfm + fonts/tfm/gust/poltawski/t5-antpri17-sc.tfm + fonts/tfm/gust/poltawski/t5-antpri17.tfm + fonts/tfm/gust/poltawski/t5-antpri6-sc.tfm + fonts/tfm/gust/poltawski/t5-antpri6.tfm + fonts/tfm/gust/poltawski/t5-antpri8-sc.tfm + fonts/tfm/gust/poltawski/t5-antpri8.tfm + fonts/tfm/gust/poltawski/texnansi-antpb10-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpb10.tfm + fonts/tfm/gust/poltawski/texnansi-antpb12-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpb12.tfm + fonts/tfm/gust/poltawski/texnansi-antpb17-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpb17.tfm + fonts/tfm/gust/poltawski/texnansi-antpb6-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpb6.tfm + fonts/tfm/gust/poltawski/texnansi-antpb8-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpb8.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi10-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi10.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi12-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi12.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi17-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi17.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi6-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi6.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi8-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpbi8.tfm + fonts/tfm/gust/poltawski/texnansi-antpl10-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpl10.tfm + fonts/tfm/gust/poltawski/texnansi-antpl12-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpl12.tfm + fonts/tfm/gust/poltawski/texnansi-antpl17-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpl17.tfm + fonts/tfm/gust/poltawski/texnansi-antpl6-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpl6.tfm + fonts/tfm/gust/poltawski/texnansi-antpl8-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpl8.tfm + fonts/tfm/gust/poltawski/texnansi-antpli10-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpli10.tfm + fonts/tfm/gust/poltawski/texnansi-antpli12-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpli12.tfm + fonts/tfm/gust/poltawski/texnansi-antpli17-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpli17.tfm + fonts/tfm/gust/poltawski/texnansi-antpli6-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpli6.tfm + fonts/tfm/gust/poltawski/texnansi-antpli8-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpli8.tfm + fonts/tfm/gust/poltawski/texnansi-antpm10-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpm10.tfm + fonts/tfm/gust/poltawski/texnansi-antpm12-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpm12.tfm + fonts/tfm/gust/poltawski/texnansi-antpm17-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpm17.tfm + fonts/tfm/gust/poltawski/texnansi-antpm6-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpm6.tfm + fonts/tfm/gust/poltawski/texnansi-antpm8-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpm8.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi10-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi10.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi12-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi12.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi17-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi17.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi6-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi6.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi8-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpmi8.tfm + fonts/tfm/gust/poltawski/texnansi-antpr10-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpr10.tfm + fonts/tfm/gust/poltawski/texnansi-antpr12-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpr12.tfm + fonts/tfm/gust/poltawski/texnansi-antpr17-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpr17.tfm + fonts/tfm/gust/poltawski/texnansi-antpr6-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpr6.tfm + fonts/tfm/gust/poltawski/texnansi-antpr8-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpr8.tfm + fonts/tfm/gust/poltawski/texnansi-antpri10-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpri10.tfm + fonts/tfm/gust/poltawski/texnansi-antpri12-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpri12.tfm + fonts/tfm/gust/poltawski/texnansi-antpri17-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpri17.tfm + fonts/tfm/gust/poltawski/texnansi-antpri6-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpri6.tfm + fonts/tfm/gust/poltawski/texnansi-antpri8-sc.tfm + fonts/tfm/gust/poltawski/texnansi-antpri8.tfm + fonts/tfm/gust/poltawski/ts1-antpb10.tfm + fonts/tfm/gust/poltawski/ts1-antpb12.tfm + fonts/tfm/gust/poltawski/ts1-antpb17.tfm + fonts/tfm/gust/poltawski/ts1-antpb6.tfm + fonts/tfm/gust/poltawski/ts1-antpb8.tfm + fonts/tfm/gust/poltawski/ts1-antpbi10.tfm + fonts/tfm/gust/poltawski/ts1-antpbi12.tfm + fonts/tfm/gust/poltawski/ts1-antpbi17.tfm + fonts/tfm/gust/poltawski/ts1-antpbi6.tfm + fonts/tfm/gust/poltawski/ts1-antpbi8.tfm + fonts/tfm/gust/poltawski/ts1-antpl10.tfm + fonts/tfm/gust/poltawski/ts1-antpl12.tfm + fonts/tfm/gust/poltawski/ts1-antpl17.tfm + fonts/tfm/gust/poltawski/ts1-antpl6.tfm + fonts/tfm/gust/poltawski/ts1-antpl8.tfm + fonts/tfm/gust/poltawski/ts1-antpli10.tfm + fonts/tfm/gust/poltawski/ts1-antpli12.tfm + fonts/tfm/gust/poltawski/ts1-antpli17.tfm + fonts/tfm/gust/poltawski/ts1-antpli6.tfm + fonts/tfm/gust/poltawski/ts1-antpli8.tfm + fonts/tfm/gust/poltawski/ts1-antpm10.tfm + fonts/tfm/gust/poltawski/ts1-antpm12.tfm + fonts/tfm/gust/poltawski/ts1-antpm17.tfm + fonts/tfm/gust/poltawski/ts1-antpm6.tfm + fonts/tfm/gust/poltawski/ts1-antpm8.tfm + fonts/tfm/gust/poltawski/ts1-antpmi10.tfm + fonts/tfm/gust/poltawski/ts1-antpmi12.tfm + fonts/tfm/gust/poltawski/ts1-antpmi17.tfm + fonts/tfm/gust/poltawski/ts1-antpmi6.tfm + fonts/tfm/gust/poltawski/ts1-antpmi8.tfm + fonts/tfm/gust/poltawski/ts1-antpr10.tfm + fonts/tfm/gust/poltawski/ts1-antpr12.tfm + fonts/tfm/gust/poltawski/ts1-antpr17.tfm + fonts/tfm/gust/poltawski/ts1-antpr6.tfm + fonts/tfm/gust/poltawski/ts1-antpr8.tfm + fonts/tfm/gust/poltawski/ts1-antpri10.tfm + fonts/tfm/gust/poltawski/ts1-antpri12.tfm + fonts/tfm/gust/poltawski/ts1-antpri17.tfm + fonts/tfm/gust/poltawski/ts1-antpri6.tfm + fonts/tfm/gust/poltawski/ts1-antpri8.tfm + + fonts/type1/gust/poltawski/antpb10.pfb + fonts/type1/gust/poltawski/antpb10.pfm + fonts/type1/gust/poltawski/antpb12.pfb + fonts/type1/gust/poltawski/antpb12.pfm + fonts/type1/gust/poltawski/antpb17.pfb + fonts/type1/gust/poltawski/antpb17.pfm + fonts/type1/gust/poltawski/antpb6.pfb + fonts/type1/gust/poltawski/antpb6.pfm + fonts/type1/gust/poltawski/antpb8.pfb + fonts/type1/gust/poltawski/antpb8.pfm + fonts/type1/gust/poltawski/antpbi10.pfb + fonts/type1/gust/poltawski/antpbi10.pfm + fonts/type1/gust/poltawski/antpbi12.pfb + fonts/type1/gust/poltawski/antpbi12.pfm + fonts/type1/gust/poltawski/antpbi17.pfb + fonts/type1/gust/poltawski/antpbi17.pfm + fonts/type1/gust/poltawski/antpbi6.pfb + fonts/type1/gust/poltawski/antpbi6.pfm + fonts/type1/gust/poltawski/antpbi8.pfb + fonts/type1/gust/poltawski/antpbi8.pfm + fonts/type1/gust/poltawski/antpl10.pfb + fonts/type1/gust/poltawski/antpl10.pfm + fonts/type1/gust/poltawski/antpl12.pfb + fonts/type1/gust/poltawski/antpl12.pfm + fonts/type1/gust/poltawski/antpl17.pfb + fonts/type1/gust/poltawski/antpl17.pfm + fonts/type1/gust/poltawski/antpl6.pfb + fonts/type1/gust/poltawski/antpl6.pfm + fonts/type1/gust/poltawski/antpl8.pfb + fonts/type1/gust/poltawski/antpl8.pfm + fonts/type1/gust/poltawski/antpli10.pfb + fonts/type1/gust/poltawski/antpli10.pfm + fonts/type1/gust/poltawski/antpli12.pfb + fonts/type1/gust/poltawski/antpli12.pfm + fonts/type1/gust/poltawski/antpli17.pfb + fonts/type1/gust/poltawski/antpli17.pfm + fonts/type1/gust/poltawski/antpli6.pfb + fonts/type1/gust/poltawski/antpli6.pfm + fonts/type1/gust/poltawski/antpli8.pfb + fonts/type1/gust/poltawski/antpli8.pfm + fonts/type1/gust/poltawski/antpm10.pfb + fonts/type1/gust/poltawski/antpm10.pfm + fonts/type1/gust/poltawski/antpm12.pfb + fonts/type1/gust/poltawski/antpm12.pfm + fonts/type1/gust/poltawski/antpm17.pfb + fonts/type1/gust/poltawski/antpm17.pfm + fonts/type1/gust/poltawski/antpm6.pfb + fonts/type1/gust/poltawski/antpm6.pfm + fonts/type1/gust/poltawski/antpm8.pfb + fonts/type1/gust/poltawski/antpm8.pfm + fonts/type1/gust/poltawski/antpmi10.pfb + fonts/type1/gust/poltawski/antpmi10.pfm + fonts/type1/gust/poltawski/antpmi12.pfb + fonts/type1/gust/poltawski/antpmi12.pfm + fonts/type1/gust/poltawski/antpmi17.pfb + fonts/type1/gust/poltawski/antpmi17.pfm + fonts/type1/gust/poltawski/antpmi6.pfb + fonts/type1/gust/poltawski/antpmi6.pfm + fonts/type1/gust/poltawski/antpmi8.pfb + fonts/type1/gust/poltawski/antpmi8.pfm + fonts/type1/gust/poltawski/antpr10.pfb + fonts/type1/gust/poltawski/antpr10.pfm + fonts/type1/gust/poltawski/antpr12.pfb + fonts/type1/gust/poltawski/antpr12.pfm + fonts/type1/gust/poltawski/antpr17.pfb + fonts/type1/gust/poltawski/antpr17.pfm + fonts/type1/gust/poltawski/antpr6.pfb + fonts/type1/gust/poltawski/antpr6.pfm + fonts/type1/gust/poltawski/antpr8.pfb + fonts/type1/gust/poltawski/antpr8.pfm + fonts/type1/gust/poltawski/antpri10.pfb + fonts/type1/gust/poltawski/antpri10.pfm + fonts/type1/gust/poltawski/antpri12.pfb + fonts/type1/gust/poltawski/antpri12.pfm + fonts/type1/gust/poltawski/antpri17.pfb + fonts/type1/gust/poltawski/antpri17.pfm + fonts/type1/gust/poltawski/antpri6.pfb + fonts/type1/gust/poltawski/antpri6.pfm + fonts/type1/gust/poltawski/antpri8.pfb + fonts/type1/gust/poltawski/antpri8.pfm + + 2.2 tex/latex/poltawski/antpolt.sty + tex/latex/poltawski/il2antp.fd + tex/latex/poltawski/il2antpl.fd + tex/latex/poltawski/l7xantp.fd + tex/latex/poltawski/l7xantpl.fd + tex/latex/poltawski/ly1antp.fd + tex/latex/poltawski/ly1antpl.fd + tex/latex/poltawski/ot1antp.fd + tex/latex/poltawski/ot1antpl.fd + tex/latex/poltawski/ot4antp.fd + tex/latex/poltawski/ot4antpl.fd + tex/latex/poltawski/qxantp.fd + tex/latex/poltawski/qxantpl.fd + tex/latex/poltawski/t1antp.fd + tex/latex/poltawski/t1antpl.fd + tex/latex/poltawski/t5antp.fd + tex/latex/poltawski/t5antpl.fd + tex/latex/poltawski/ts1antp.fd + tex/latex/poltawski/ts1antpl.fd + + 2.3 doc/fonts/poltawski/GUST-FONT-LICENSE.txt + doc/fonts/poltawski/MANIFEST-Antykwa-Poltawskiego.txt + doc/fonts/poltawski/README-Antykwa-Poltawskiego.txt + doc/fonts/poltawski/ap-hist.txt + doc/fonts/poltawski/ap-info.pdf + doc/fonts/poltawski/goadb100.nam + doc/fonts/poltawski/tstapot1.pdf + doc/fonts/poltawski/tstapot1.tex + doc/fonts/poltawski/tstapot4.pdf + doc/fonts/poltawski/tstapot4.tex + doc/fonts/poltawski/tstapqx.pdf + doc/fonts/poltawski/tstapqx.tex + doc/fonts/poltawski/tstapt1.pdf + doc/fonts/poltawski/tstapt1.tex + doc/fonts/poltawski/tstapts1.pdf + doc/fonts/poltawski/tstapts1.tex + doc/fonts/poltawski/antpb10.fea + doc/fonts/poltawski/antpb12.fea + doc/fonts/poltawski/antpb17.fea + doc/fonts/poltawski/antpb6.fea + doc/fonts/poltawski/antpb8.fea + doc/fonts/poltawski/antpbi10.fea + doc/fonts/poltawski/antpbi12.fea + doc/fonts/poltawski/antpbi17.fea + doc/fonts/poltawski/antpbi6.fea + doc/fonts/poltawski/antpbi8.fea + doc/fonts/poltawski/antpl10.fea + doc/fonts/poltawski/antpl12.fea + doc/fonts/poltawski/antpl17.fea + doc/fonts/poltawski/antpl6.fea + doc/fonts/poltawski/antpl8.fea + doc/fonts/poltawski/antpli10.fea + doc/fonts/poltawski/antpli12.fea + doc/fonts/poltawski/antpli17.fea + doc/fonts/poltawski/antpli6.fea + doc/fonts/poltawski/antpli8.fea + doc/fonts/poltawski/antpm10.fea + doc/fonts/poltawski/antpm12.fea + doc/fonts/poltawski/antpm17.fea + doc/fonts/poltawski/antpm6.fea + doc/fonts/poltawski/antpm8.fea + doc/fonts/poltawski/antpmi10.fea + doc/fonts/poltawski/antpmi12.fea + doc/fonts/poltawski/antpmi17.fea + doc/fonts/poltawski/antpmi6.fea + doc/fonts/poltawski/antpmi8.fea + doc/fonts/poltawski/antpr10.fea + doc/fonts/poltawski/antpr12.fea + doc/fonts/poltawski/antpr17.fea + doc/fonts/poltawski/antpr6.fea + doc/fonts/poltawski/antpr8.fea + doc/fonts/poltawski/antpri10.fea + doc/fonts/poltawski/antpri12.fea + doc/fonts/poltawski/antpri17.fea + doc/fonts/poltawski/antpri6.fea + doc/fonts/poltawski/antpri8.fea + +3. Files whose names need not be changed in derived works as requested + by clause 1 of GUST-FONT-LICENSE.txt + + doc/fonts/poltawski/GUST-FONT-LICENSE.txt + diff --git a/fonts/poltawski/doc/fonts/poltawski/README-Antykwa-Poltawskiego.txt b/fonts/poltawski/doc/fonts/poltawski/README-Antykwa-Poltawskiego.txt new file mode 100644 index 0000000000..5aff30a34a --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/README-Antykwa-Poltawskiego.txt @@ -0,0 +1,322 @@ +########################################################################### +############ The Antykwa Poltawskiego Family of Fonts ############ +########################################################################### + +Font: Antykwa Poltawskiego +Authors: Bogus\l{}aw Jackowski and Janusz M. Nowacki +Version: 1.101 +Date: 9 X 2010 +Downloads: http://www.gust.org.pl/projects/e-foundry/poltawski/ + +License: + % Copyright 1999--2010 for Antykwa Poltawskiego digital form by B. Jackowski, + % J.M. Nowacki and P. Strzelczyk (on behalf of the TeX Users Groups). + % + % This work can be freely used and distributed under + % the GUST Font License (GFL -- see GUST-FONT-LICENSE.txt) + % which legally equivalent to the LaTeX Project Public License + % (LPPL -- see http://www.latex-project.org/lppl.txt ). + % + % This work has the maintenance status "maintained". The Current Maintainer + % of this work is Bogus\l{}aw Jackowski and Janusz M. Nowacki. + % + % This work consists of the files listed + % in the MANIFEST-Antykwa-Poltawskiego.txt file. + +########################################################################### +############ A BRIEF DESCRIPTION OF THE PACKAGE ############ +########################################################################### + +This package contains the Antykwa P\'o{\l}tawskiego family of fonts +in the PostScript Type 1 and OpenType formats. + +The original font was designed in the twenties of the XX century by +the Polish typographer Adam P\'o{\l}tawski (born 15 May 1881 in +Warsaw, died 19 September 1952 in Cracow), hence the name, although +the author named it `antykwa polska'. It is maintained that the +design tried to capture the specific features of the Polish written +language. For example, the letters more frequent in Polish than in +other languages (cf. http://en.wikipedia.org/wiki/Letter_frequency ) +like, e.g., 'w', 'y', `z', and, last but not least, 'lslash', got +specific shapes. + +Antykwa Poltawskiego was first cast in Jan Id\'zkowski's foundry +(Warsaw, Poland) in 1931. Until late seventies of the XX century, Antykwa +Poltawskiego was used in Poland as the chief text type for musical +publications, in particular, in the monumental Ignacy Paderewski's +edition of the complete Fryderyk Chopin works (in XXVII volumes). + + * * * + +Following the route set out by the Latin Modern and TeX Gyre projects +(http://www.gust.org.pl/projects/e-foundry), the Antykwa Poltawskiego +digitisation project aims at providing a rich collection of +diacritical characters in the attempt to cover as many Latin-based +scripts as possible. To our knowledge, the repertoire of characters +covers all European languages as well as some other Latin-based +alphabets such as Vietnamese and Navajo; at the request of users, +recent extensions (following the enhancement of the Latin Modern +collection) provide glyphs sufficient for typesetting of romanized +transliterations of Arabic and Sanskrit scripts. We have frequently +used the information presented by Michael Everson at the ``The +Alphabets of Europe'' ( http://www.evertype.com/alphabets/ ) web +site. If you know about European languages that are not covered +completely or if some glyphs have apparently wrong shapes -- please +let us know. + +The Antykwa Poltawskiego project was launched by the Polish TeX +Users GUST and is supported by TeX USERS GROUPS. Hearty thanks to the +representatives of these groups, especially to Mojca Miklavec, and also +to all people who helped with comments, ideas, remarks, bug reports, +objections, hints, consolations, etc. + + * * * +Note that the digitized Antykwa Poltawskiego is programmed as a fully +parametrized outline font, following in the footsteps of Donald E. Knuth whose +Computer Modern fonts are also parameterized, although bitmapped, fonts +(see http://www.uni-giessen.de/partosch/eurotex99/jackowski.pdf ). + + * * * + +The Antykwa Poltawskiego family consists of 4 weights (light, +normal, medium, bold), each having upright and italic forms and one +of 5 design sizes: 6, 8, 10, 12 and 17pt (in the OTF lingo: extended, +semiextended, normal, semicondensed, and condensed, respectively). +Altogether, the collection comprises 40 font files, i.e.: + + antpl6, antpl8, antpl10, antpl12, antpl17, + antpli6, antpli8, antpli10, antpli12, antpli17, + + antpb6, antpb8, antpb10, antpb12, antpb17 + antpbi6, antpbi8, antpbi10, antpbi12, antpbi17, + + antpm6, antpm8, antpm10, antpm12, antpm17, + antpmi6, antpmi8, antpmi10, antpmi12, antpmi17, + + antpr6, antpr8, antpr10, antpr12, antpr17, + antpri6, antpri8, antpri10, antpri12, antpri17, + +The OTF fonts are equipped with the following "features": + + c2sc, cpsp, dlig, dnom, frac, kern, liga, lnum, locl, + numr, onum, pnum, salt, sinf, size, smcp, ss01, ss02, + ss03, ss04, subs, sups, tnum, zero + +The collection may be freely used and distributed under the GUST Font +License (see above) which is actually an instance of the LaTeX Project +Public License (LPPL; see http://www.latex-project.org/lppl.txt ). + + * * * + +The package consists of the files in the directories conforming +to the TeX Directory Structure (v. 1.1). The directories contain: + +doc/fonts/poltawski this file, manifest, licence, test files, + and, moreover, selected files used as input + for generating OTFs (meant as a technical + documentation of the OTFs) +tex/latex/poltawski support for LaTeX (*.fd and *.sty files, + prepared by Marcin Woli\'nski) +fonts/enc/dvips/poltawski support for dvips (*.enc files); +fonts/map/dvips/poltawski support for dvips (*.map files) +fonts/opentype/gust/poltawski fonts in the OpenType format (*.otf files) +fonts/type1/gust/poltawski PostScript (Type 1) font files and printer + font metric files (*.pfb and *.pfm, + respectively); +fonts/tfm/gust/poltawski TeX font metric files (*.tfm) for: + -- CS (CSTUG) encoding (cs-*.tfm), + -- EC (Cork) encoding (ec-*.tfm), + -- L7x (Lithuanian) encoding (l7x-*.tfm), + -- QX (GUST) encoding (qx-*.tfm), + -- RM (Regular Math or OT1) encoding (rm-*.tfm), + -- Y&Y's TeX'n'ANSI aka LY1 encoding + (texnansi-*.tfm), + -- T5 (Vietnamese) encoding (t5-*.tfm), + -- Text Companion for EC fonts aka TS1 + (ts1-*.tfm). + Encodings CS, EC, L7x, QX, RM, Y&Y, and T5 + have their cap-small-caps counterparts + (*-sc.tfm). +fonts/afm/gust/poltawski Adobe font metric files (*.afm); + +Email contact: Bogus\l{}aw Jackowski aka Jacko, B_Jackowski@gust.org.pl + + * * * + +In ConTeXt, support for the Antykwa Poltawskiego collection can be found +in the typescript definition files: + + ... /tex/context/base/type-enc.tex + ... /tex/context/base/type-syn.tex + ... /tex/context/base/type-exa.tex + ... /tex/context/base/type-map.tex + +Additional encoding and map files may be found in: + + ... /texmf/fonts/map/pdftex/context + ... /texmf/fonts/enc/pdftex/context + + * * * + +All 40 font files contain the same repertoire of 1126 characters, namely +(these are the names used in Type 1 fonts, in alphabetical order): + +A a a.sc Aacute aacute aacute.sc Abreve abreve abreve.sc Abreveacute +abreveacute abreveacute.sc Abrevedotbelow abrevedotbelow abrevedotbelow.sc +Abrevegrave abrevegrave abrevegrave.sc Abrevehookabove abrevehookabove +abrevehookabove.sc Abrevetilde abrevetilde abrevetilde.sc Acaron acaron +acaron.sc Acircumflex acircumflex acircumflex.sc Acircumflexacute +acircumflexacute acircumflexacute.sc Acircumflexdotbelow acircumflexdotbelow +acircumflexdotbelow.sc Acircumflexgrave acircumflexgrave acircumflexgrave.sc +Acircumflexhookabove acircumflexhookabove acircumflexhookabove.sc +Acircumflextilde acircumflextilde acircumflextilde.sc Acute acute acute.dup +acute.ts1 Acutecomb acutecomb Adblgrave adblgrave adblgrave.sc Adieresis +adieresis adieresis.sc Adotbelow adotbelow adotbelow.sc AE ae AE.dup ae.dup +ae.sc AEacute aeacute aeacute.sc Agrave agrave agrave.sc Ahookabove +ahookabove ahookabove.sc Alpha alpha Amacron amacron amacron.sc ampersand +anglearc angleleft angleright Aogonek aogonek aogonek.sc Aogonekacute +aogonekacute aogonekacute.sc approxequal Aring aring aring.sc Aringacute +aringacute aringacute.sc arrowdown arrowleft arrowright arrowup asciicircum +asciitilde asterisk asteriskmath at at.alt Atilde atilde atilde.sc B b b.sc +backslash baht bar Beta beta bigcircle blanksymbol born braceleft braceright +bracketleft bracketright Breve breve breve.ts1 Breveacute breveacute +brevebelow brevebelowcomb brevebelowinverted brevebelowinvertedcomb Brevecomb +brevecomb Brevegrave brevegrave Brevehookabove brevehookabove Breveinverted +breveinverted Breveinvertedcomb breveinvertedcomb Brevetilde brevetilde +brokenbar bullet C c c.sc Cacute cacute cacute.sc Caron caron caron.ts1 +Caroncomb caroncomb Ccaron ccaron ccaron.sc Ccedilla ccedilla ccedilla.sc +Ccircumflex ccircumflex ccircumflex.sc Cdotaccent cdotaccent cdotaccent.sc +cedilla cedilla.dup cent cent.oldstyle centigrade Chi chi Circumflex +circumflex circumflex.dup Circumflexacute circumflexacute Circumflexcomb +circumflexcomb Circumflexgrave circumflexgrave Circumflexhookabove +circumflexhookabove Circumflextilde circumflextilde colon colonmonetary comma +commaaccent commaaccentcomb copyleft copyright copyright.alt currency cwm +cwmascender cwmcapital cyrBreve cyrbreve cyrFlex cyrflex D d d.sc dagger +daggerdbl dblbracketleft dblbracketright dblGrave dblgrave dblgrave.ts1 +dblGravecomb dblgravecomb dblverticalbar Dcaron dcaron dcaron.sc Dcroat +dcroat dcroat.sc Ddotbelow ddotbelow ddotbelow.sc degree Delta delta diameter +died Dieresis dieresis dieresis.dup dieresis.ts1 Dieresisacute dieresisacute +Dieresiscaron dieresiscaron Dieresiscomb dieresiscomb Dieresisgrave +dieresisgrave discount divide divorced Dlinebelow dlinebelow dlinebelow.sc +dollar dollar.oldstyle dong Dotaccent dotaccent Dotaccentcomb dotaccentcomb +dotbelow dotbelowcomb dotlessi dotlessi.sc dotlessj dotlessj.dup dotlessj.sc +E e e.sc Eacute eacute eacute.sc Ebreve ebreve ebreve.sc Ecaron ecaron +ecaron.sc Ecircumflex ecircumflex ecircumflex.sc Ecircumflexacute +ecircumflexacute ecircumflexacute.sc Ecircumflexdotbelow ecircumflexdotbelow +ecircumflexdotbelow.sc Ecircumflexgrave ecircumflexgrave ecircumflexgrave.sc +Ecircumflexhookabove ecircumflexhookabove ecircumflexhookabove.sc +Ecircumflextilde ecircumflextilde ecircumflextilde.sc Edblgrave edblgrave +edblgrave.sc Edieresis edieresis edieresis.sc Edotaccent edotaccent +edotaccent.sc Edotbelow edotbelow edotbelow.sc Egrave egrave egrave.sc +Ehookabove ehookabove ehookabove.sc eight eight.dnom eight.inferior +eight.numr eight.oldstyle eight.prop eight.superior eight.taboldstyle ell +ellipsis Emacron emacron emacron.sc emdash endash Eng eng eng.sc Eogonek +eogonek eogonek.sc Eogonekacute eogonekacute eogonekacute.sc Epsilon epsilon +epsilon.alt equal Ereversed ereversed ereversed.sc estimated Eta eta Eth eth +eth.sc Etilde etilde etilde.sc eturned eturned.sc Euro exclam exclamdown F f +f.sc f_k ff ffi ffl fi five five.dnom five.inferior five.numr five.oldstyle +five.prop five.superior five.taboldstyle fl florin four four.dnom +four.inferior four.numr four.oldstyle four.prop four.superior +four.taboldstyle fraction fraction.alt G g g.sc Gacute gacute gacute.sc Gamma +gamma Gbreve gbreve gbreve.sc Gcaron gcaron gcaron.sc Gcedilla gcedilla +Gcircumflex gcircumflex gcircumflex.sc Gcommaaccent gcommaaccent +gcommaaccent.sc Gdotaccent gdotaccent gdotaccent.sc Germandbls germandbls +germandbls.dup germandbls.sc gnaborretni Grave grave grave.ts1 Gravecomb +gravecomb greater greaterequal greaterorequalslant guarani guillemotleft +guillemotright guilsinglleft guilsinglright H h h.sc Hbar hbar hbar.sc +Hbrevebelow hbrevebelow hbrevebelow.sc Hcircumflex hcircumflex hcircumflex.sc +Hdieresis hdieresis hdieresis.sc Hdotbelow hdotbelow hdotbelow.sc Hookabove +hookabove Hookabovecomb hookabovecomb horn Htilde htilde htilde.sc +Hungarumlaut hungarumlaut hungarumlaut.ts1 Hungarumlautcomb hungarumlautcomb +hyphen hyphen.alt hyphen.dup hyphen.prop hyphendbl hyphendbl.alt I i i.sc +Iacute iacute iacute.sc Ibreve ibreve ibreve.sc Icaron icaron icaron.sc +Icircumflex icircumflex icircumflex.sc Idblgrave idblgrave idblgrave.sc +Idieresis idieresis idieresis.sc Idieresisacute idieresisacute +idieresisacute.sc Idotaccent idotaccent.sc Idotbelow idotbelow idotbelow.sc +Igrave igrave igrave.sc Ihookabove ihookabove ihookabove.sc IJ ij ij.sc +Imacron imacron Imacron.alt imacron.alt imacron.alt.sc imacron.sc infinity +interrobang Iogonek iogonek iogonek.sc Iogonekacute iogonekacute +iogonekacute.sc Iota iota Itilde itilde itilde.sc J j j.sc J_caron Jacute +jacute jacute.sc jcaron jcaron.sc Jcircumflex jcircumflex jcircumflex.sc K k +k.sc Kappa kappa Kcedilla kcedilla Kcommaaccent kcommaaccent kcommaaccent.sc +L l l.sc Lacute lacute lacute.sc Lambda lambda Lcaron lcaron lcaron.sc +Lcedilla lcedilla Lcommaaccent lcommaaccent lcommaaccent.sc Ldot ldot ldot.sc +Ldotbelow ldotbelow ldotbelow.sc Ldotbelowmacron ldotbelowmacron +ldotbelowmacron.sc leaf less lessequal lessorequalslant linebelow +linebelowcomb lira logicalnot longs lozenge lscript Lslash lslash lslash.sc +Ltilde ltilde ltilde.sc M m m.sc Macron macron Macron.alt macron.alt +macron.dup macron.ts1 macronbelow macronbelowcomb Macroncomb macroncomb +married Mdotbelow mdotbelow mdotbelow.sc mho minus minusplus Mu mu mu.alt +multiply musicalnote N n n.sc Nacute nacute nacute.sc naira nbspace Ncaron +ncaron ncaron.sc Ncedilla ncedilla Ncommaaccent ncommaaccent ncommaaccent.sc +Ndotaccent ndotaccent ndotaccent.sc Ndotbelow ndotbelow ndotbelow.sc nine +nine.dnom nine.inferior nine.numr nine.oldstyle nine.prop nine.superior +nine.taboldstyle notequal Ntilde ntilde ntilde.sc Nu nu numbersign numero O o +o.sc Oacute oacute oacute.sc Obreve obreve obreve.sc Ocaron ocaron ocaron.sc +Ocircumflex ocircumflex ocircumflex.sc Ocircumflexacute ocircumflexacute +ocircumflexacute.sc Ocircumflexdotbelow ocircumflexdotbelow +ocircumflexdotbelow.sc Ocircumflexgrave ocircumflexgrave ocircumflexgrave.sc +Ocircumflexhookabove ocircumflexhookabove ocircumflexhookabove.sc +Ocircumflextilde ocircumflextilde ocircumflextilde.sc Odblgrave odblgrave +odblgrave.sc Odieresis odieresis odieresis.sc Odotbelow odotbelow +odotbelow.sc OE oe OE.dup oe.dup oe.sc ogonek Ograve ograve ograve.sc ohm +Ohookabove ohookabove ohookabove.sc Ohorn ohorn ohorn.sc Ohornacute +ohornacute ohornacute.sc Ohorndotbelow ohorndotbelow ohorndotbelow.sc +Ohorngrave ohorngrave ohorngrave.sc Ohornhookabove ohornhookabove +ohornhookabove.sc Ohorntilde ohorntilde ohorntilde.sc Ohungarumlaut +ohungarumlaut ohungarumlaut.sc Omacron omacron omacron.sc Omega omega Omicron +omicron one one.dnom one.inferior one.numr one.oldstyle one.prop one.superior +one.taboldstyle onehalf onequarter Oogonek oogonek oogonek.sc Oogonekacute +oogonekacute oogonekacute.sc openbullet ordfeminine ordmasculine Orogate +orogate orogate.sc Oslash oslash Oslash.dup oslash.dup oslash.sc Oslashacute +oslashacute oslashacute.sc Otilde otilde otilde.sc P p p.sc paragraph +paragraph.alt parenleft parenright partialdiff percent period periodcentered +permyriad perthousand perthousandzero peso Phi phi phi.alt Pi pi pi.alt plus +plusminus Psi psi published Q q q.sc question questiondown quillbracketleft +quillbracketright quotedbl quotedblbase quotedblbase.ts1 quotedblleft +quotedblright quoteleft quoteleft.dup quoteright quoteright.dup +quotesinglbase quotesinglbase.ts1 quotesingle quotesingle.ts1 R r r.sc Racute +racute racute.sc radical Rcaron rcaron rcaron.sc Rcedilla rcedilla +Rcommaaccent rcommaaccent rcommaaccent.sc Rdblgrave rdblgrave rdblgrave.sc +Rdotaccent rdotaccent rdotaccent.sc Rdotbelow rdotbelow rdotbelow.sc +Rdotbelowmacron rdotbelowmacron rdotbelowmacron.sc recipe referencemark +registered registered.alt Rho rho rho.alt Ring ring Ringacute ringacute +Ringcomb ringcomb ringhalfleft ringhalfright S s s.sc Sacute sacute sacute.sc +Scaron scaron scaron.sc Scedilla scedilla scedilla.sc schwa Scircumflex +scircumflex scircumflex.sc Scommaaccent scommaaccent scommaaccent.sc +Sdotbelow sdotbelow sdotbelow.sc section semicolon servicemark seven +seven.dnom seven.inferior seven.numr seven.oldstyle seven.prop seven.superior +seven.taboldstyle sfthyphen Sigma sigma sigma1 six six.dnom six.inferior +six.numr six.oldstyle six.prop six.superior six.taboldstyle slash space star +sterling summation suppress T t t.sc Tau tau Tcaron tcaron tcaron.sc Tcedilla +tcedilla tcedilla.sc Tcommaaccent tcommaaccent tcommaaccent.sc Tdieresis +tdieresis tdieresis.sc Tdotbelow tdotbelow tdotbelow.sc Theta theta theta.alt +Thorn thorn thorn.sc three three.dnom three.inferior three.numr +three.oldstyle three.prop three.superior three.taboldstyle threequarters +threequartersemdash tie tieaccentcapital tieaccentcapital.new +tieaccentlowercase tieaccentlowercase.new Tilde tilde tilde.dup tildebelow +tildebelowcomb Tildecomb tildecomb tildelow Tlinebelow tlinebelow +tlinebelow.sc trademark Ttilde ttilde ttilde.sc twelveudash two two.dnom +two.inferior two.numr two.oldstyle two.prop two.superior two.taboldstyle U u +u.sc Uacute uacute uacute.sc Ubreve ubreve ubreve.sc Ubrevebelowinverted +ubrevebelowinverted ubrevebelowinverted.sc Ucaron ucaron ucaron.sc +Ucircumflex ucircumflex ucircumflex.sc Udblgrave udblgrave udblgrave.sc +Udieresis udieresis udieresis.sc Udieresisacute udieresisacute +udieresisacute.sc Udieresiscaron udieresiscaron udieresiscaron.sc +Udieresisgrave udieresisgrave udieresisgrave.sc Udotbelow udotbelow +udotbelow.sc Ugrave ugrave ugrave.sc Uhookabove uhookabove uhookabove.sc +Uhorn uhorn uhorn.sc Uhornacute uhornacute uhornacute.sc Uhorndotbelow +uhorndotbelow uhorndotbelow.sc Uhorngrave uhorngrave uhorngrave.sc +Uhornhookabove uhornhookabove uhornhookabove.sc Uhorntilde uhorntilde +uhorntilde.sc Uhungarumlaut uhungarumlaut uhungarumlaut.sc Umacron umacron +umacron.sc underscore undertie undertieinverted uni2010 uni2011 uni2423 +Uogonek uogonek uogonek.sc Upsilon upsilon Uring uring uring.sc Utilde utilde +utilde.sc V v v.sc W w w.sc Wacute wacute wacute.sc Wcircumflex wcircumflex +wcircumflex.sc Wdieresis wdieresis wdieresis.sc weierstrass Wgrave wgrave +wgrave.sc won X x x.sc Xi xi Y y y.sc Yacute yacute yacute.sc Ycircumflex +ycircumflex ycircumflex.sc Ydieresis ydieresis ydieresis.sc Ydotbelow +ydotbelow ydotbelow.sc yen Ygrave ygrave ygrave.sc Yhookabove yhookabove +yhookabove.sc Ytilde ytilde ytilde.sc Z z z.sc Zacute zacute zacute.sc Zcaron +zcaron zcaron.sc Zdotaccent zdotaccent zdotaccent.sc Zdotbelow zdotbelow +zdotbelow.sc zero zero.dnom zero.inferior zero.numr zero.oldstyle zero.prop +zero.slash zero.superior zero.taboldstyle Zeta zeta diff --git a/fonts/poltawski/doc/fonts/poltawski/antpb10.fea b/fonts/poltawski/doc/fonts/poltawski/antpb10.fea new file mode 100644 index 0000000000..7049e9bbb1 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpb10.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpb10.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 100 3 95 110; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1091; + Descender -290; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 440; + CapHeight 700; + winAscent 1091; + winDescent 290; + WidthClass 5; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpb12.fea b/fonts/poltawski/doc/fonts/poltawski/antpb12.fea new file mode 100644 index 0000000000..283baf699b --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpb12.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpb12.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 120 3 110 140; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1084; + Descender -291; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 430; + CapHeight 700; + winAscent 1084; + winDescent 291; + WidthClass 4; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpb17.fea b/fonts/poltawski/doc/fonts/poltawski/antpb17.fea new file mode 100644 index 0000000000..20f15de17b --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpb17.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpb17.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 172 3 140 240; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1078; + Descender -294; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 420; + CapHeight 700; + winAscent 1078; + winDescent 294; + WidthClass 3; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpb6.fea b/fonts/poltawski/doc/fonts/poltawski/antpb6.fea new file mode 100644 index 0000000000..e6acec8a3c --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpb6.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpb6.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 60 3 30 65; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1119; + Descender -288; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 460; + CapHeight 700; + winAscent 1119; + winDescent 288; + WidthClass 7; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpb8.fea b/fonts/poltawski/doc/fonts/poltawski/antpb8.fea new file mode 100644 index 0000000000..c5a4d6e499 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpb8.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpb8.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 80 3 75 85; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1105; + Descender -289; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 450; + CapHeight 700; + winAscent 1105; + winDescent 289; + WidthClass 6; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpbi10.fea b/fonts/poltawski/doc/fonts/poltawski/antpbi10.fea new file mode 100644 index 0000000000..2e99e3069b --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpbi10.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpbi10.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 100 4 95 110; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1091; + Descender -290; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 440; + CapHeight 700; + winAscent 1091; + winDescent 290; + WidthClass 5; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpbi12.fea b/fonts/poltawski/doc/fonts/poltawski/antpbi12.fea new file mode 100644 index 0000000000..f1f7501985 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpbi12.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpbi12.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 120 4 110 140; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1084; + Descender -291; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 430; + CapHeight 700; + winAscent 1084; + winDescent 291; + WidthClass 4; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpbi17.fea b/fonts/poltawski/doc/fonts/poltawski/antpbi17.fea new file mode 100644 index 0000000000..c9232e6614 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpbi17.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpbi17.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 172 4 140 240; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1078; + Descender -294; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 420; + CapHeight 700; + winAscent 1078; + winDescent 294; + WidthClass 3; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpbi6.fea b/fonts/poltawski/doc/fonts/poltawski/antpbi6.fea new file mode 100644 index 0000000000..96781558a2 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpbi6.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpbi6.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 60 4 30 65; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1119; + Descender -288; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 460; + CapHeight 700; + winAscent 1119; + winDescent 288; + WidthClass 7; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpbi8.fea b/fonts/poltawski/doc/fonts/poltawski/antpbi8.fea new file mode 100644 index 0000000000..f959bd1ff3 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpbi8.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpbi8.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 80 4 75 85; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1105; + Descender -289; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 450; + CapHeight 700; + winAscent 1105; + winDescent 289; + WidthClass 6; + WeightClass 700; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpl10.fea b/fonts/poltawski/doc/fonts/poltawski/antpl10.fea new file mode 100644 index 0000000000..26c2f18120 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpl10.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpl10.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 100 5 95 110; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1084; + Descender -276; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 440; + CapHeight 700; + winAscent 1084; + winDescent 276; + WidthClass 5; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpl12.fea b/fonts/poltawski/doc/fonts/poltawski/antpl12.fea new file mode 100644 index 0000000000..623d521559 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpl12.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpl12.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 120 5 110 140; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1078; + Descender -283; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 430; + CapHeight 700; + winAscent 1078; + winDescent 283; + WidthClass 4; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpl17.fea b/fonts/poltawski/doc/fonts/poltawski/antpl17.fea new file mode 100644 index 0000000000..fdfef2fc92 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpl17.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpl17.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 172 5 140 240; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1071; + Descender -290; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 420; + CapHeight 700; + winAscent 1071; + winDescent 290; + WidthClass 3; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpl6.fea b/fonts/poltawski/doc/fonts/poltawski/antpl6.fea new file mode 100644 index 0000000000..6f64ecc7ac --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpl6.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpl6.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 60 5 30 65; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1112; + Descender -270; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 460; + CapHeight 700; + winAscent 1112; + winDescent 270; + WidthClass 7; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpl8.fea b/fonts/poltawski/doc/fonts/poltawski/antpl8.fea new file mode 100644 index 0000000000..398ddae508 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpl8.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpl8.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 80 5 75 85; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1098; + Descender -273; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 450; + CapHeight 700; + winAscent 1098; + winDescent 273; + WidthClass 6; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpli10.fea b/fonts/poltawski/doc/fonts/poltawski/antpli10.fea new file mode 100644 index 0000000000..f66e54b95d --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpli10.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpli10.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 100 6 95 110; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1084; + Descender -276; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 440; + CapHeight 700; + winAscent 1084; + winDescent 276; + WidthClass 5; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpli12.fea b/fonts/poltawski/doc/fonts/poltawski/antpli12.fea new file mode 100644 index 0000000000..1497a76e64 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpli12.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpli12.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 120 6 110 140; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1078; + Descender -283; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 430; + CapHeight 700; + winAscent 1078; + winDescent 283; + WidthClass 4; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpli17.fea b/fonts/poltawski/doc/fonts/poltawski/antpli17.fea new file mode 100644 index 0000000000..6c6725c836 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpli17.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpli17.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 172 6 140 240; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1071; + Descender -290; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 420; + CapHeight 700; + winAscent 1071; + winDescent 290; + WidthClass 3; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpli6.fea b/fonts/poltawski/doc/fonts/poltawski/antpli6.fea new file mode 100644 index 0000000000..3c84205b67 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpli6.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpli6.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 60 6 30 65; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1112; + Descender -270; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 460; + CapHeight 700; + winAscent 1112; + winDescent 270; + WidthClass 7; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpli8.fea b/fonts/poltawski/doc/fonts/poltawski/antpli8.fea new file mode 100644 index 0000000000..70877fe316 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpli8.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpli8.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 80 6 75 85; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1098; + Descender -273; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 450; + CapHeight 700; + winAscent 1098; + winDescent 273; + WidthClass 6; + WeightClass 300; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpm10.fea b/fonts/poltawski/doc/fonts/poltawski/antpm10.fea new file mode 100644 index 0000000000..7d2f8cb30b --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpm10.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpm10.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 100 7 95 110; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1084; + Descender -276; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 440; + CapHeight 700; + winAscent 1084; + winDescent 276; + WidthClass 5; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpm12.fea b/fonts/poltawski/doc/fonts/poltawski/antpm12.fea new file mode 100644 index 0000000000..919ffb8942 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpm12.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpm12.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 120 7 110 140; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1078; + Descender -283; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 430; + CapHeight 700; + winAscent 1078; + winDescent 283; + WidthClass 4; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpm17.fea b/fonts/poltawski/doc/fonts/poltawski/antpm17.fea new file mode 100644 index 0000000000..30808f7b9f --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpm17.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpm17.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 172 7 140 240; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1071; + Descender -290; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 420; + CapHeight 700; + winAscent 1071; + winDescent 290; + WidthClass 3; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpm6.fea b/fonts/poltawski/doc/fonts/poltawski/antpm6.fea new file mode 100644 index 0000000000..a15a51425f --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpm6.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpm6.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 60 7 30 65; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1112; + Descender -272; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 460; + CapHeight 700; + winAscent 1112; + winDescent 272; + WidthClass 7; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpm8.fea b/fonts/poltawski/doc/fonts/poltawski/antpm8.fea new file mode 100644 index 0000000000..09fdb385ec --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpm8.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpm8.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 80 7 75 85; + sizemenuname 3 "Bold"; + sizemenuname 1 "Bold"; +} size; + +table hhea { + Ascender 1098; + Descender -273; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 450; + CapHeight 700; + winAscent 1098; + winDescent 273; + WidthClass 6; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpmi10.fea b/fonts/poltawski/doc/fonts/poltawski/antpmi10.fea new file mode 100644 index 0000000000..cbebfd1ffe --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpmi10.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpmi10.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 100 8 95 110; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1084; + Descender -276; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 440; + CapHeight 700; + winAscent 1084; + winDescent 276; + WidthClass 5; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpmi12.fea b/fonts/poltawski/doc/fonts/poltawski/antpmi12.fea new file mode 100644 index 0000000000..56db4243c4 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpmi12.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpmi12.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 120 8 110 140; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1078; + Descender -283; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 430; + CapHeight 700; + winAscent 1078; + winDescent 283; + WidthClass 4; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpmi17.fea b/fonts/poltawski/doc/fonts/poltawski/antpmi17.fea new file mode 100644 index 0000000000..c4d329ab5c --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpmi17.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpmi17.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 172 8 140 240; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1071; + Descender -290; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 420; + CapHeight 700; + winAscent 1071; + winDescent 290; + WidthClass 3; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpmi6.fea b/fonts/poltawski/doc/fonts/poltawski/antpmi6.fea new file mode 100644 index 0000000000..9b7cd85502 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpmi6.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpmi6.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 60 8 30 65; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1112; + Descender -272; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 460; + CapHeight 700; + winAscent 1112; + winDescent 272; + WidthClass 7; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpmi8.fea b/fonts/poltawski/doc/fonts/poltawski/antpmi8.fea new file mode 100644 index 0000000000..b14fc0127a --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpmi8.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpmi8.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 80 8 75 85; + sizemenuname 3 "Bold Italic"; + sizemenuname 1 "Bold Italic"; +} size; + +table hhea { + Ascender 1098; + Descender -273; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 450; + CapHeight 700; + winAscent 1098; + winDescent 273; + WidthClass 6; + WeightClass 600; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpr10.fea b/fonts/poltawski/doc/fonts/poltawski/antpr10.fea new file mode 100644 index 0000000000..e9dbfd234f --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpr10.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpr10.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 100 1 95 110; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1078; + Descender -283; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 440; + CapHeight 700; + winAscent 1078; + winDescent 283; + WidthClass 5; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpr12.fea b/fonts/poltawski/doc/fonts/poltawski/antpr12.fea new file mode 100644 index 0000000000..0c8d2a4270 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpr12.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpr12.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 120 1 110 140; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1071; + Descender -285; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 430; + CapHeight 700; + winAscent 1071; + winDescent 285; + WidthClass 4; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpr17.fea b/fonts/poltawski/doc/fonts/poltawski/antpr17.fea new file mode 100644 index 0000000000..2285ceef35 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpr17.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpr17.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 172 1 140 240; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1064; + Descender -286; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 420; + CapHeight 700; + winAscent 1064; + winDescent 286; + WidthClass 3; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpr6.fea b/fonts/poltawski/doc/fonts/poltawski/antpr6.fea new file mode 100644 index 0000000000..71efeda292 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpr6.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpr6.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 60 1 30 65; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1105; + Descender -280; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 460; + CapHeight 700; + winAscent 1105; + winDescent 280; + WidthClass 7; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpr8.fea b/fonts/poltawski/doc/fonts/poltawski/antpr8.fea new file mode 100644 index 0000000000..d34ce83b83 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpr8.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpr8.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 80 1 75 85; + sizemenuname 3 "Regular"; + sizemenuname 1 "Regular"; +} size; + +table hhea { + Ascender 1091; + Descender -282; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 450; + CapHeight 700; + winAscent 1091; + winDescent 282; + WidthClass 6; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpri10.fea b/fonts/poltawski/doc/fonts/poltawski/antpri10.fea new file mode 100644 index 0000000000..64c51ed16e --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpri10.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpri10.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 100 2 95 110; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1078; + Descender -284; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 440; + CapHeight 700; + winAscent 1078; + winDescent 284; + WidthClass 5; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpri12.fea b/fonts/poltawski/doc/fonts/poltawski/antpri12.fea new file mode 100644 index 0000000000..41d7d67ef7 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpri12.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpri12.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 120 2 110 140; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1071; + Descender -285; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 430; + CapHeight 700; + winAscent 1071; + winDescent 285; + WidthClass 4; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpri17.fea b/fonts/poltawski/doc/fonts/poltawski/antpri17.fea new file mode 100644 index 0000000000..8fc516f82f --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpri17.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpri17.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 172 2 140 240; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1064; + Descender -286; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 420; + CapHeight 700; + winAscent 1064; + winDescent 286; + WidthClass 3; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpri6.fea b/fonts/poltawski/doc/fonts/poltawski/antpri6.fea new file mode 100644 index 0000000000..15ba91716d --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpri6.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpri6.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 60 2 30 65; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1105; + Descender -280; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 460; + CapHeight 700; + winAscent 1105; + winDescent 280; + WidthClass 7; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/antpri8.fea b/fonts/poltawski/doc/fonts/poltawski/antpri8.fea new file mode 100644 index 0000000000..61bd738d31 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/antpri8.fea @@ -0,0 +1,519 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; +languagesystem latn AZE; +languagesystem latn CRT; +languagesystem latn MOL; +languagesystem latn NLD; +languagesystem latn PLK; +languagesystem latn ROM; +languagesystem latn TRK; +languagesystem cyrl dflt; + +# complete features +table head{ +FontRevision 1.101; +} head; + +@altsrc1=[# all alternates +at copyright fraction paragraph registered +epsilon mu pi phi rho theta +macron macron.cap Imacron imacron imacron.sc]; +# +@altsrc2=[# "genuine" alternates +at copyright fraction paragraph registered]; +# +@altsrc3=[# "Greek" alternates +epsilon mu pi phi rho theta]; +# +@altsrc4=[# "Idris" alternates +macron macron.cap Imacron imacron imacron.sc]; + +@altres1=[# all alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1 +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; +# +@altres2=[# "genuine" alternates +at.alt copyright.alt fraction.alt paragraph.alt registered.alt]; +@altres3=[# "Greek" alternates +epsilon.alt mu.greek uni03D6 uni03D5 rho.alt uni03D1]; +# +@altres4=[# "Idris" alternates +macron.alt macron.cap.alt Imacron.alt imacron.alt imacron.alt.sc]; + +@othbas=[ampersand cent dollar]; + +@othold=[ampersand # ampersand.oldstyle in the future? +cent.oldstyle dollar.oldstyle]; + +@figlintab=[zero one two three four five six seven eight nine]; + +@figlinprop=[zero.prop one.prop two.prop three.prop four.prop five.prop +six.prop seven.prop eight.prop nine.prop]; + +@figoldtab=[zero.taboldstyle one.taboldstyle two.taboldstyle three.taboldstyle +four.taboldstyle five.taboldstyle six.taboldstyle seven.taboldstyle +eight.taboldstyle nine.taboldstyle]; + +@figoldprop=[zero.oldstyle one.oldstyle two.oldstyle three.oldstyle +four.oldstyle five.oldstyle six.oldstyle seven.oldstyle eight.oldstyle +nine.oldstyle]; + +@figinfr=[zero.inferior one.inferior two.inferior three.inferior +four.inferior five.inferior six.inferior seven.inferior eight.inferior +nine.inferior]; + +@figsupr=[zero.superior one.superior two.superior three.superior +four.superior five.superior six.superior seven.superior eight.superior +nine.superior]; + +@figdnom=[zero.dnom one.dnom two.dnom three.dnom +four.dnom five.dnom six.dnom seven.dnom eight.dnom +nine.dnom]; + +@fignumr=[zero.numr one.numr two.numr three.numr +four.numr five.numr six.numr seven.numr eight.numr +nine.numr]; + +@allzeros=[zero zero.prop zero.taboldstyle zero.oldstyle zero.inferior +zero.superior zero.dnom zero.numr zero.slash]; # but perthousandzero, just because + +@letcapbas=[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z]; +@letsmabas=[a b c d e f g h i j k l m n o p q r s t u v w x y z]; +@letcscbas=[a.sc b.sc c.sc d.sc e.sc f.sc g.sc h.sc i.sc j.sc k.sc l.sc m.sc +n.sc o.sc p.sc q.sc r.sc s.sc t.sc u.sc v.sc w.sc x.sc y.sc z.sc]; + +@letcapoth=[Aacute Abreve Abreveacute Abrevedotbelow Abrevegrave +Abrevehookabove Abrevetilde Acircumflex Acircumflexacute Acircumflexdotbelow +Acircumflexgrave Acircumflexhookabove Acircumflextilde Adblgrave Adieresis +Adotbelow AE AEacute Agrave Ahookabove Amacron Aogonek Aogonekacute Aring +Aringacute Atilde Cacute Ccaron Ccedilla Ccircumflex Cdotaccent Dcaron Dcroat +Ddotbelow Dlinebelow Eacute Ebreve Ecaron Ecircumflex Ecircumflexacute +Ecircumflexdotbelow Ecircumflexgrave Ecircumflexhookabove Ecircumflextilde +Edblgrave Edieresis Edotaccent Edotbelow Egrave Ehookabove Emacron Eng +Eogonek Eogonekacute Ereversed Eth Etilde Gacute Gbreve Gcaron Gcircumflex +Gcommaaccent Gdotaccent S_S # Germandbls + Hbar Hbrevebelow Hcircumflex Hdieresis Hdotbelow + H_uni0303 # Htilde + I_J Iacute Ibreve Icircumflex Idblgrave Idieresis Idotbelow Igrave +Ihookabove Imacron Imacron.alt Iogonek Iogonekacute Itilde Jacute Jcircumflex +Kcommaaccent Lacute Lcaron Lcommaaccent Ldot Ldotbelow Ldotbelowmacron Lslash + L_uni0303 # Ltilde + Mdotbelow Nacute Ncaron Ncommaaccent Ndotaccent Ndotbelow Ntilde +Oacute Obreve Ocircumflex Ocircumflexacute Ocircumflexdotbelow +Ocircumflexgrave Ocircumflexhookabove Ocircumflextilde Odblgrave Odieresis +Odotbelow OE Ograve Ohookabove Ohorn Ohornacute Ohorndotbelow Ohorngrave +Ohornhookabove Ohorntilde Ohungarumlaut Omacron Oogonek Oogonekacute Oslash +Oslashacute Otilde Racute Rcaron Rcommaaccent Rdblgrave Rdotaccent Rdotbelow +Rdotbelowmacron Sacute Scaron Scedilla Scircumflex + uni0218 # Scommaaccent + Sdotbelow Tcaron Tcedilla + uni021A # Tcommaaccent + T_uni0308 # Tdieresis + Tdotbelow Thorn Tlinebelow T_uni0303 # Ttilde + Uacute Ubreve Ubrevebelowinverted Ucircumflex Udblgrave Udieresis Udotbelow +Ugrave Uhookabove Uhorn Uhornacute Uhorndotbelow Uhorngrave Uhornhookabove +Uhorntilde Uhungarumlaut Umacron Uogonek Uring Utilde Wacute Wcircumflex +Wdieresis Wgrave Yacute Ycircumflex Ydieresis Ydotbelow Ygrave Yhookabove +Ytilde Zacute Zcaron Zdotaccent Zdotbelow]; + +@letsmaoth=[aacute abreve abreveacute abrevedotbelow abrevegrave +abrevehookabove abrevetilde acircumflex acircumflexacute acircumflexdotbelow +acircumflexgrave acircumflexhookabove acircumflextilde adblgrave adieresis +adotbelow ae aeacute agrave ahookabove amacron aogonek aogonekacute aring +aringacute atilde cacute ccaron ccedilla ccircumflex cdotaccent dcaron dcroat +ddotbelow dlinebelow eacute ebreve ecaron ecircumflex ecircumflexacute +ecircumflexdotbelow ecircumflexgrave ecircumflexhookabove ecircumflextilde +edblgrave edieresis edotaccent edotbelow egrave ehookabove emacron eng +eogonek eogonekacute ereversed eth etilde gacute gbreve gcaron gcircumflex +gcommaaccent gdotaccent germandbls hbar hbrevebelow hcircumflex hdieresis + hdotbelow h_uni0303 # htilde + i_j iacute ibreve icircumflex idblgrave idieresis idotbelow igrave +ihookabove imacron imacron.alt iogonek iogonekacute itilde jacute jcircumflex +kcommaaccent lacute lcaron lcommaaccent ldot ldotbelow ldotbelowmacron lslash + l_uni0303 # ltilde + mdotbelow nacute ncaron ncommaaccent ndotaccent ndotbelow ntilde +oacute obreve ocircumflex ocircumflexacute ocircumflexdotbelow +ocircumflexgrave ocircumflexhookabove ocircumflextilde odblgrave odieresis +odotbelow oe ograve ohookabove ohorn ohornacute ohorndotbelow ohorngrave +ohornhookabove ohorntilde ohungarumlaut omacron oogonek oogonekacute oslash +oslashacute otilde racute rcaron rcommaaccent rdblgrave rdotaccent rdotbelow +rdotbelowmacron sacute scaron scedilla scircumflex + uni0219 # scommaaccent + sdotbelow tcaron tcedilla + uni021B # tcommaaccent + tdieresis tdotbelow thorn tlinebelow t_uni0303 # ttilde + uacute ubreve ubrevebelowinverted ucircumflex udblgrave udieresis udotbelow +ugrave uhookabove uhorn uhornacute uhorndotbelow uhorngrave uhornhookabove +uhorntilde uhungarumlaut umacron uogonek uring utilde wacute wcircumflex +wdieresis wgrave yacute ycircumflex ydieresis ydotbelow ygrave yhookabove +ytilde zacute zcaron zdotaccent zdotbelow]; + +@letcscoth=[aacute.sc abreve.sc abreveacute.sc abrevedotbelow.sc +abrevegrave.sc abrevehookabove.sc abrevetilde.sc acircumflex.sc +acircumflexacute.sc acircumflexdotbelow.sc acircumflexgrave.sc +acircumflexhookabove.sc acircumflextilde.sc adblgrave.sc adieresis.sc +adotbelow.sc ae.sc aeacute.sc agrave.sc ahookabove.sc amacron.sc aogonek.sc +aogonekacute.sc aring.sc aringacute.sc atilde.sc cacute.sc ccaron.sc + ccedilla.sc ccircumflex.sc cdotaccent.sc dcaron.sc dcroat.sc ddotbelow.sc +dlinebelow.sc eacute.sc ebreve.sc ecaron.sc ecircumflex.sc +ecircumflexacute.sc ecircumflexdotbelow.sc ecircumflexgrave.sc +ecircumflexhookabove.sc ecircumflextilde.sc edblgrave.sc edieresis.sc +edotaccent.sc edotbelow.sc egrave.sc ehookabove.sc emacron.sc eng.sc +eogonek.sc eogonekacute.sc ereversed.sc eth.sc etilde.sc gacute.sc gbreve.sc +gcaron.sc gcircumflex.sc gcommaaccent.sc gdotaccent.sc germandbls.sc hbar.sc +hbrevebelow.sc hcircumflex.sc hdieresis.sc hdotbelow.sc + h_uni0303.sc # htilde.sc + i_j.sc iacute.sc ibreve.sc icircumflex.sc idblgrave.sc idieresis.sc +idotbelow.sc igrave.sc ihookabove.sc imacron.sc imacron.alt.sc iogonek.sc +iogonekacute.sc itilde.sc jacute.sc jcircumflex.sc kcommaaccent.sc lacute.sc +lcaron.sc lcommaaccent.sc ldot.sc ldotbelow.sc ldotbelowmacron.sc lslash.sc + l_uni0303.sc # ltilde.sc + mdotbelow.sc nacute.sc ncaron.sc ncommaaccent.sc ndotaccent.sc ndotbelow.sc +ntilde.sc oacute.sc obreve.sc ocircumflex.sc ocircumflexacute.sc +ocircumflexdotbelow.sc ocircumflexgrave.sc ocircumflexhookabove.sc +ocircumflextilde.sc odblgrave.sc odieresis.sc odotbelow.sc oe.sc ograve.sc +ohookabove.sc ohorn.sc ohornacute.sc ohorndotbelow.sc ohorngrave.sc +ohornhookabove.sc ohorntilde.sc ohungarumlaut.sc omacron.sc oogonek.sc +oogonekacute.sc oslash.sc oslashacute.sc otilde.sc racute.sc rcaron.sc +rcommaaccent.sc rdblgrave.sc rdotaccent.sc rdotbelow.sc rdotbelowmacron.sc +sacute.sc scaron.sc scedilla.sc scircumflex.sc + uni0219.sc # scommaaccent.sc + sdotbelow.sc tcaron.sc tcedilla.sc + uni021B.sc # tcommaaccent.sc + tdieresis.sc tdotbelow.sc thorn.sc tlinebelow.sc + t_uni0303.sc # ttilde.sc + uacute.sc ubreve.sc ubrevebelowinverted.sc ucircumflex.sc udblgrave.sc +udieresis.sc udotbelow.sc ugrave.sc uhookabove.sc uhorn.sc uhornacute.sc +uhorndotbelow.sc uhorngrave.sc uhornhookabove.sc uhorntilde.sc +uhungarumlaut.sc umacron.sc uogonek.sc uring.sc utilde.sc wacute.sc +wcircumflex.sc wdieresis.sc wgrave.sc yacute.sc ycircumflex.sc ydieresis.sc +ydotbelow.sc ygrave.sc yhookabove.sc ytilde.sc zacute.sc zcaron.sc +zdotaccent.sc zdotbelow.sc]; + +@c2sc1=[@letcapbas @letcapoth]; +@c2sc2=[@letcscbas @letcscoth]; + +@cpsp1=[@letcapbas @letcapoth]; + +@smcp1=[@letsmabas @letsmaoth]; +@smcp2=[@letcscbas @letcscoth]; + +@figprop=[@figlinprop @figoldprop @othbas]; +@figtab=[@figlintab @figoldtab @othbas]; + +@lnum1=[@figoldprop @figoldtab @othold]; +@lnum2=[@figlinprop @figlintab @othbas]; + +@onum1=[@figlinprop @figlintab @othbas]; +@onum2=[@figoldprop @figoldprop @othold]; + +@pnum1=[@figlintab @figoldtab]; +@pnum2=[@figlinprop @figoldprop]; + +@tnum1=[@figlinprop @figoldprop]; +@tnum2=[@figlintab @figoldtab]; + +feature aalt{ + feature locl; # Localized forms +# feature cpsp; # capital spacing +# feature frac; # fractions + feature onum; # old style figures + feature lnum; # lining figures + feature pnum; # proportional figures + feature tnum; # tabular figures + feature sups; # superscripts + feature subs; # subscripts + feature sinf; # "scientific" subscripts (here = subs) + feature numr; # numerators + feature dnum; # denominators +# feature liga; # standard ligatures +# feature dlig; # discretionary ligatures + feature smcp; # Small Capitals + feature c2sc; # Small Capitals From Capitals + feature salt; # Stylistic Alternates + feature ss01; # Stylistic Set 1 = Stylistic Alternates + feature ss02; # Stylistic Set 2 + feature ss03; # Stylistic Set 3 + feature ss04; # Stylistic Set 4 + feature zero; # slashed zero +} aalt; + +feature locl { # Localized Forms + script latn; +# Handling of Romanian [Ss]commaaccent and [Tt]commaaccent + language ROM exclude_dflt; + lookup locl_ROM { + sub [Scedilla scedilla] by [uni0218 uni0219]; + sub [Tcedilla tcedilla] by [uni021A uni021B]; + } locl_ROM; + language MOL exclude_dflt; + lookup locl_ROM; +} locl; + +feature cpsp { # Capital Spacing + pos @cpsp1 <7 0 14 0>; +} cpsp; + +feature smcp { # Small Capitals + sub @smcp1 by @smcp2; +} smcp; + +feature onum { # Old Style Figures + sub @onum1 by @onum2; +} onum; + +feature lnum { # Lining Figures + sub @lnum1 by @lnum2; +} lnum; + +feature pnum { # Proportional Figures + sub @pnum1 by @pnum2; +} pnum; + +feature tnum { # Tabular Figures + sub @tnum1 by @tnum2; +} tnum; + +feature sups { + sub @figlintab by @figsupr; + sub @figlinprop by @figsupr; + sub @figoldtab by @figsupr; + sub @figoldprop by @figsupr; + sub @fignumr by @figsupr; + sub @figdnom by @figsupr; +} sups; + +feature numr { + lookup numr1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figsupr by @fignumr; + sub @figinfr by @fignumr; + } numr1; + lookup numr2 { + sub @fignumr slash' by fraction; + } numr2; +} numr; + +feature dnom { + lookup dnom1 { + sub @figlintab by @figdnom; + sub @figlinprop by @figdnom; + sub @figoldtab by @figdnom; + sub @figoldprop by @figdnom; + sub @figsupr by @figdnom; + sub @figinfr by @figdnom; + } dnom1; + lookup dnom2 { + sub slash' @figdnom by fraction; + } dnom2; +} dnom; + +feature subs { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} subs; + +feature sinf { + sub @figlintab by @figinfr; + sub @figlinprop by @figinfr; + sub @figoldtab by @figinfr; + sub @figoldprop by @figinfr; + sub @fignumr by @figinfr; + sub @figdnom by @figinfr; +} sinf; + +feature frac { + + lookup frac1 { + sub @figlintab by @fignumr; + sub @figlinprop by @fignumr; + sub @figoldtab by @fignumr; + sub @figoldprop by @fignumr; + sub @figinfr by @fignumr; + sub @figsupr by @fignumr; + sub @figdnom by @fignumr; + } frac1; + + lookup frac2 { + sub @fignumr slash' @fignumr by fraction; + } frac2; + + lookup frac3 { + sub one.numr fraction two.numr by onehalf; +# sub one.numr fraction three.numr by onethird; +# sub two.numr fraction three.numr by twothirds; + sub one.numr fraction four.numr by onequarter; + sub three.numr fraction four.numr by threequarters; +# sub one.numr fraction five.numr by onefifth; +# sub two.numr fraction five.numr by twofifths; +# sub three.numr fraction five.numr by threefifths; +# sub four.numr fraction five.numr by fourfifths; +# sub one.numr fraction six.numr by onesixth; +# sub five.numr fraction six.numr by fivesixths; +# sub one.numr fraction eight.numr by oneeighth; +# sub three.numr fraction eight.numr by threeeighths; +# sub five.numr fraction eight.numr by fiveeighths; +# sub seven.numr fraction eight.numr by seveneighths; + } frac3; + + sub [fraction slash onehalf onequarter @figdnom threequarters] @fignumr' by @figdnom; + +} frac; + +feature liga { # Standard Ligatures + lookup liga_f_f_l { + sub f f l by f_f_l; + sub f f by f_f; + sub f l by f_l; + } liga_f_f_l; + script DFLT; + language dflt; + lookup liga_f_i { + sub f_f i by f_f_i; + sub f i by f_i; + } liga_f_i; + script cyrl; + language dflt; + lookup liga_f_i; + script latn; + language dflt; + lookup liga_f_i; + language NLD exclude_dflt; + lookup liga_NLDa { +# sub f i' j' by i_j; +# sub f_f i' j' by i_j; + sub i j by i_j; + sub I J by I_J; + } liga_NLDa; + lookup liga_NLDb { + sub f_f i by f_f_i; + sub f i by f_i; +# sub i j by i_j; +# sub I J by I_J; + } liga_NLDb; + language PLK exclude_dflt; + lookup liga_PLK { + sub f_f i by f_f_i; + sub f i by f_i ; + sub f k by f_k; + } liga_PLK; + language MOL exclude_dflt; + lookup liga_f_i; + language ROM exclude_dflt; + lookup liga_f_i; + language AZE exclude_dflt; + language CRT exclude_dflt; + language TRK exclude_dflt; +} liga; + +feature dlig { # Discretionary Ligatures + sub comma comma by quotedblbase; + sub hyphen hyphen hyphen hyphen by emdash; + sub hyphen hyphen hyphen by threequartersemdash; + sub hyphen hyphen by endash; + sub quoteleft quoteleft by quotedblleft; + sub quoteright quoteright by quotedblright; +# old Knuthian tradition... + sub exclam quoteleft by exclamdown; + sub question quoteleft by questiondown; +# AFDKO places grave at the slot 96 (ANSI / Mac) + sub exclam grave by exclamdown; + sub question grave by questiondown; +# BOP's idiosyncrasy (?) + lookup perc_etc1 { + sub percent @allzeros by perthousand; + sub percent perthousandzero by perthousand; # imperceptible ligature + } perc_etc1; + lookup perc_etc2 { + sub perthousand @allzeros by permyriad; + sub perthousand perthousandzero by permyriad; # imperceptible ligature + } perc_etc2; + lookup perc_etc3 { + # @allzeros' cannot be used, hence enumeration + sub [permyriad perthousandzero] zero' by perthousandzero; + sub [permyriad perthousandzero] zero.prop' by perthousandzero; + sub [permyriad perthousandzero] zero.taboldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.oldstyle' by perthousandzero; + sub [permyriad perthousandzero] zero.inferior' by perthousandzero; + sub [permyriad perthousandzero] zero.superior' by perthousandzero; + sub [permyriad perthousandzero] zero.dnom' by perthousandzero; + sub [permyriad perthousandzero] zero.numr' by perthousandzero; + sub [permyriad perthousandzero] zero.slash' by perthousandzero; + } perc_etc3; +} dlig; + +feature c2sc { # Small Capitals From Capitals + sub @c2sc1 by @c2sc2; +} c2sc; + +feature salt { # Stylistic Alternates + sub @altsrc1 by @altres1; +} salt; + +feature ss01 { # Stylistic Set 1 = Stylistic Alternates + # see http://www.typophile.com/node/32399 and + # http://www.typotheque.com/fonts/opentype_feature_support/ + sub @altsrc1 by @altres1; +} ss01; + +feature ss02 { # Stylistic Set 2 + sub @altsrc2 by @altres2; +} ss02; + +feature ss03 { # Stylistic Set 3 + sub @altsrc3 by @altres3; +} ss03; + +feature ss04 { # Stylistic Set 4 + sub @altsrc4 by @altres4; +} ss04; + +feature zero { # Slashed Zero + sub zero by zero.slash; +} zero; + +feature kern { + include (antpri8.krn); + script latn; + language AZE; + language CRT; + language MOL; + language NLD; + language PLK; + language ROM; + language TRK; +} kern; + +feature size { + parameters 80 2 75 85; + sizemenuname 3 "Italic"; + sizemenuname 1 "Italic"; +} size; + +table hhea { + Ascender 1091; + Descender -282; + LineGap 0; +} hhea; + +table OS/2 { + FSType 12; + TypoAscender 750; + TypoDescender -250; + TypoLineGap 200; + XHeight 450; + CapHeight 700; + winAscent 1091; + winDescent 282; + WidthClass 6; + WeightClass 400; +} OS/2; + diff --git a/fonts/poltawski/doc/fonts/poltawski/ap-hist.txt b/fonts/poltawski/doc/fonts/poltawski/ap-hist.txt new file mode 100644 index 0000000000..6e8bae2ca9 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/ap-hist.txt @@ -0,0 +1,21 @@ +This file belongs to the TeX Gyre collection of fonts. The work is +released under the GUST Font License. See the MANIFEST-Antykwa-Poltawskiego.txt +and README-Antykwa-Poltawskiego.txt files for the details. +For the most recent version of this license see +http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt or +http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt + +Ver 1.000: 30.07.2010 + first unofficial release of the enhanced Antykwa Poltawskiego + collection of fonts (including fonts in the OTF format) + +Ver 1.100: 09.09.2010 + first official release of the enhanced Antykwa Poltawskiego; + thus, the preliminary version of Antykwa Poltawskiego (antp package) + released in 2000 becomes obsolete + +Ver 1.101: 09.10.2010 + mistakenly missing `smcp' (small caps) feature and stylistic alternatives + added in OTF files; altered implementation of the `numr', `dnom', `frac', + and `dlig' features; other font files remained essentially intact (only + version number changed). \ No newline at end of file diff --git a/fonts/poltawski/doc/fonts/poltawski/ap-info.pdf b/fonts/poltawski/doc/fonts/poltawski/ap-info.pdf new file mode 100644 index 0000000000..f157e16eaa Binary files /dev/null and b/fonts/poltawski/doc/fonts/poltawski/ap-info.pdf differ diff --git a/fonts/poltawski/doc/fonts/poltawski/ap-logo.pdf b/fonts/poltawski/doc/fonts/poltawski/ap-logo.pdf new file mode 100644 index 0000000000..8ab200adfc Binary files /dev/null and b/fonts/poltawski/doc/fonts/poltawski/ap-logo.pdf differ diff --git a/fonts/poltawski/doc/fonts/poltawski/goadb100.nam b/fonts/poltawski/doc/fonts/poltawski/goadb100.nam new file mode 100644 index 0000000000..8592ff7cc8 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/goadb100.nam @@ -0,0 +1,2015 @@ +# This file is released under the GUST Font License. +# See the relevant MANIFEST*.txt and README*.eng files +# for the details. For the most recent version of this license see +# http://www.gust.org.pl/fonts/licenses/GUST-FONT-SOURCE-LICENSE.txt or +# http://tug.org/fonts/licenses/GUST-FONT-SOURCE-LICENSE.txt +# +# This is a `Glyph Order and Alias Database' used to generate OTF +# fonts for Latin Modern, TeX Gyre and Antykwa Poltawskiego families +# with the Adobe Font Development Kit for OpenType (the package can +# be downloaded from http://www.adobe.com/devnet/opentype/afdko/ ). +# The first column contains the OTF name of a glyph, the second +# column -- the PostScript name, the third column -- the unicode name. + +### GLYPH ORDER AND ALIAS DATABASE FOR AFDKO ver. 1.00, 9 IX 2010 + +### 0. No unicodes +.notdef .notdef +acute.dup acute.dup +AE.dup AE.dup +ae.dup ae.dup +bar_bar bardbl +braceleft.titling braceleft.titling +cedilla.dup cedilla.dup +circumflex.dup circumflex.dup +c.superior c.superior +c.superior csuperior +d_bar dbar +dieresis.dup dieresis.dup +d_ini0304 dmacron +l.script.dup ell +Gcedilla Gcedilla +gcedilla gcedilla +germandbls.dup germandbls.dup +hyphen.dup hyphen.dup +I.fractur Ifractur +Kcedilla Kcedilla +kcedilla kcedilla +Lcedilla Lcedilla +lcedilla lcedilla +L_quoteright Lquoteright +l_quoteright lquoteright +macron.dup macron.dup +Ncedilla Ncedilla +ncedilla ncedilla +OE.dup OE.dup +oe.dup oe.dup +Oslash.dup Oslash.dup +oslash.dup oslash.dup +quoteleft.dup quoteleft.dup +quoteright.dup quoteright.dup +Rcedilla Rcedilla +rcedilla rcedilla +R.fractur Rfractur +tilde.dup tilde.dup +t_quoteright tquoteright + +### 1. Standard low unicodes 0020 .. 007E +A A uni0041 +a a uni0061 +ampersand ampersand uni0026 +asciicircum asciicircum uni005E +asciitilde asciitilde uni007E +asterisk asterisk uni002A +at at uni0040 +B B uni0042 +b b uni0062 +backslash backslash uni005C +bar bar uni007C +braceleft braceleft uni007B +braceright braceright uni007D +bracketleft bracketleft uni005B +bracketright bracketright uni005D +C C uni0043 +c c uni0063 +colon colon uni003A +comma comma uni002C +D D uni0044 +d d uni0064 +dollar dollar uni0024 +E E uni0045 +e e uni0065 +eight eight uni0038 +equal equal uni003D +exclam exclam uni0021 +F F uni0046 +f f uni0066 +five five uni0035 +four four uni0034 +G G uni0047 +g g uni0067 +grave grave uni0060 +greater greater uni003E +H H uni0048 +h h uni0068 +hyphen hyphen uni002D +I I uni0049 +i i uni0069 +J J uni004A +j j uni006A +K K uni004B +k k uni006B +L L uni004C +l l uni006C +less less uni003C +M M uni004D +m m uni006D +N N uni004E +n n uni006E +nine nine uni0039 +numbersign numbersign uni0023 +O O uni004F +o o uni006F +one one uni0031 +P P uni0050 +p p uni0070 +parenleft parenleft uni0028 +parenright parenright uni0029 +percent percent uni0025 +period period uni002E +plus plus uni002B +Q Q uni0051 +q q uni0071 +question question uni003F +quotedbl quotedbl uni0022 +quotesingle quotesingle uni0027 +R R uni0052 +r r uni0072 +S S uni0053 +s s uni0073 +semicolon semicolon uni003B +seven seven uni0037 +six six uni0036 +slash slash uni002F +space space uni0020 +T T uni0054 +t t uni0074 +three three uni0033 +two two uni0032 +U U uni0055 +u u uni0075 +underscore underscore uni005F +V V uni0056 +v v uni0076 +W W uni0057 +w w uni0077 +X X uni0058 +x x uni0078 +Y Y uni0059 +y y uni0079 +Z Z uni005A +z z uni007A +zero zero uni0030 + +### 2. Standard high unicodes FB00 .. FB06 +f_f ff uniFB00 +f_f_i ffi uniFB03 +f_f_l ffl uniFB04 +f_i fi uniFB01 +f_l fl uniFB02 +s_t s_t uniFB06 + +### 3. Standard other unicodes 0080 .. DFFF (actually in 00A0 .. uni2AB0) +Aacute Aacute uni00C1 +aacute aacute uni00E1 +Abreve Abreve uni0102 +abreve abreve uni0103 +Abreveacute Abreveacute uni1EAE +abreveacute abreveacute uni1EAF +Abrevedotbelow Abrevedotbelow uni1EB6 +abrevedotbelow abrevedotbelow uni1EB7 +Abrevegrave Abrevegrave uni1EB0 +abrevegrave abrevegrave uni1EB1 +Abrevehookabove Abrevehookabove uni1EB2 +abrevehookabove abrevehookabove uni1EB3 +Abrevetilde Abrevetilde uni1EB4 +abrevetilde abrevetilde uni1EB5 +Acaron Acaron uni01CD +acaron acaron uni01CE +Acircumflex Acircumflex uni00C2 +acircumflex acircumflex uni00E2 +Acircumflexacute Acircumflexacute uni1EA4 +acircumflexacute acircumflexacute uni1EA5 +Acircumflexdotbelow Acircumflexdotbelow uni1EAC +acircumflexdotbelow acircumflexdotbelow uni1EAD +Acircumflexgrave Acircumflexgrave uni1EA6 +acircumflexgrave acircumflexgrave uni1EA7 +Acircumflexhookabove Acircumflexhookabove uni1EA8 +acircumflexhookabove acircumflexhookabove uni1EA9 +Acircumflextilde Acircumflextilde uni1EAA +acircumflextilde acircumflextilde uni1EAB +acute acute uni00B4 +uni0301 acutecomb uni0301 +Adblgrave Adblgrave uni0200 +adblgrave adblgrave uni0201 +Adieresis Adieresis uni00C4 +adieresis adieresis uni00E4 +Adotbelow Adotbelow uni1EA0 +adotbelow adotbelow uni1EA1 +AE AE uni00C6 +ae ae uni00E6 +AEacute AEacute uni01FC +aeacute aeacute uni01FD +afii10017 afii10017 uni0410 +afii10018 afii10018 uni0411 +afii10019 afii10019 uni0412 +afii10020 afii10020 uni0413 +afii10021 afii10021 uni0414 +afii10022 afii10022 uni0415 +afii10023 afii10023 uni0401 +afii10024 afii10024 uni0416 +afii10025 afii10025 uni0417 +afii10026 afii10026 uni0418 +afii10027 afii10027 uni0419 +afii10028 afii10028 uni041A +afii10029 afii10029 uni041B +afii10030 afii10030 uni041C +afii10031 afii10031 uni041D +afii10032 afii10032 uni041E +afii10033 afii10033 uni041F +afii10034 afii10034 uni0420 +afii10035 afii10035 uni0421 +afii10036 afii10036 uni0422 +afii10037 afii10037 uni0423 +afii10038 afii10038 uni0424 +afii10039 afii10039 uni0425 +afii10040 afii10040 uni0426 +afii10041 afii10041 uni0427 +afii10042 afii10042 uni0428 +afii10043 afii10043 uni0429 +afii10044 afii10044 uni042A +afii10045 afii10045 uni042B +afii10046 afii10046 uni042C +afii10047 afii10047 uni042D +afii10048 afii10048 uni042E +afii10049 afii10049 uni042F +afii10050 afii10050 uni0490 +afii10051 afii10051 uni0402 +afii10052 afii10052 uni0403 +afii10053 afii10053 uni0404 +afii10054 afii10054 uni0405 +afii10055 afii10055 uni0406 +afii10056 afii10056 uni0407 +afii10057 afii10057 uni0408 +afii10058 afii10058 uni0409 +afii10059 afii10059 uni040A +afii10060 afii10060 uni040B +afii10061 afii10061 uni040C +afii10062 afii10062 uni040E +afii10065 afii10065 uni0430 +afii10066 afii10066 uni0431 +afii10067 afii10067 uni0432 +afii10068 afii10068 uni0433 +afii10069 afii10069 uni0434 +afii10070 afii10070 uni0435 +afii10071 afii10071 uni0451 +afii10072 afii10072 uni0436 +afii10073 afii10073 uni0437 +afii10074 afii10074 uni0438 +afii10075 afii10075 uni0439 +afii10076 afii10076 uni043A +afii10077 afii10077 uni043B +afii10078 afii10078 uni043C +afii10079 afii10079 uni043D +afii10080 afii10080 uni043E +afii10081 afii10081 uni043F +afii10082 afii10082 uni0440 +afii10083 afii10083 uni0441 +afii10084 afii10084 uni0442 +afii10085 afii10085 uni0443 +afii10086 afii10086 uni0444 +afii10087 afii10087 uni0445 +afii10088 afii10088 uni0446 +afii10089 afii10089 uni0447 +afii10090 afii10090 uni0448 +afii10091 afii10091 uni0449 +afii10092 afii10092 uni044A +afii10093 afii10093 uni044B +afii10094 afii10094 uni044C +afii10095 afii10095 uni044D +afii10096 afii10096 uni044E +afii10097 afii10097 uni044F +afii10098 afii10098 uni0491 +afii10099 afii10099 uni0452 +afii10100 afii10100 uni0453 +afii10101 afii10101 uni0454 +afii10102 afii10102 uni0455 +afii10103 afii10103 uni0456 +afii10104 afii10104 uni0457 +afii10105 afii10105 uni0458 +afii10106 afii10106 uni0459 +afii10107 afii10107 uni045A +afii10108 afii10108 uni045B +afii10109 afii10109 uni045C +afii10110 afii10110 uni045E +afii10145 afii10145 uni040F +afii10146 afii10146 uni0462 +afii10147 afii10147 uni0472 +afii10148 afii10148 uni0474 +afii10193 afii10193 uni045F +afii10194 afii10194 uni0463 +afii10195 afii10195 uni0473 +afii10196 afii10196 uni0475 +afii10846 afii10846 uni04D9 +afii61352 afii61352 uni2116 +Agrave Agrave uni00C0 +agrave agrave uni00E0 +Ahookabove Ahookabove uni1EA2 +ahookabove ahookabove uni1EA3 +aleph aleph uni2135 +Alpha Alpha uni0391 +alpha alpha uni03B1 +Alphatonos Alphatonos uni0386 +alphatonos alphatonos uni03AC +Amacron Amacron uni0100 +amacron amacron uni0101 +anglearc anglearc uni2222 +angleleft angleleft uni2329 +angleright angleright uni232A +Aogonek Aogonek uni0104 +aogonek aogonek uni0105 +approxequal approxequal uni2248 +Aring Aring uni00C5 +aring aring uni00E5 +Aringacute Aringacute uni01FA +aringacute aringacute uni01FB +uni2194 arrowboth uni2194 +uni2195 arrowbothv uni2195 +uni21D4 arrowdblboth uni21D4 +uni21D5 arrowdblbothv uni21D5 +uni21D3 arrowdbldown uni21D3 +uni21D0 arrowdblleft uni21D0 +uni21D2 arrowdblright uni21D2 +uni21D1 arrowdblup uni21D1 +uni2193 arrowdown uni2193 +uni21A9 arrowhookleft uni21A9 +uni21AA arrowhookright uni21AA +uni2190 arrowleft uni2190 +uni21BD arrowleftbothalf uni21BD +uni21BC arrowlefttophalf uni21BC +uni2197 arrownortheast uni2197 +uni2196 arrownorthwest uni2196 +uni2192 arrowright uni2192 +uni21C1 arrowrightbothalf uni21C1 +uni21C0 arrowrighttophalf uni21C0 +uni2198 arrowsoutheast uni2198 +uni2199 arrowsouthwest uni2199 +uni2191 arrowup uni2191 +asterisk.math asteriskmath uni2217 +Atilde Atilde uni00C3 +atilde atilde uni00E3 +baht baht uni0E3F +Beta Beta uni0392 +beta beta uni03B2 +blanksymbol blanksymbol uni2422 +breve breve uni02D8 +uni032E brevebelowcomb uni032E +uni032F brevebelowinvertedcomb uni032F +uni0306 brevecomb uni0306 +uni0311 breveinvertedcomb uni0311 +brokenbar brokenbar uni00A6 +bullet bullet uni2022 +Cacute Cacute uni0106 +cacute cacute uni0107 +caron caron uni02C7 +uni030C caroncomb uni030C +Ccaron Ccaron uni010C +ccaron ccaron uni010D +Ccedilla Ccedilla uni00C7 +ccedilla ccedilla uni00E7 +Ccircumflex Ccircumflex uni0108 +ccircumflex ccircumflex uni0109 +Cdotaccent Cdotaccent uni010A +cdotaccent cdotaccent uni010B +cedilla cedilla uni00B8 +uni2308 ceilingleft uni2308 +uni2309 ceilingright uni2309 +cent cent uni00A2 +centigrade centigrade uni2103 +Chi Chi uni03A7 +chi chi uni03C7 +circledivide circledivide uni2298 +circledot circledot uni2299 +uni2296 circleminus uni2296 +uni2297 circlemultiply uni2297 +uni2295 circleplus uni2295 +circumflex circumflex uni02C6 +uni0302 circumflexcomb uni0302 +club club uni2663 +colonmonetary colonmonetary uni20A1 +uni0326 commaaccentcomb uni0326 +uni0312 commaturnedabovecomb uni0312 +uni2210 coproduct uni2210 +copyright copyright uni00A9 +currency currency uni00A4 +dagger dagger uni2020 +daggerdbl daggerdbl uni2021 +dblbracketleft dblbracketleft uni27E6 +dblbracketright dblbracketright uni27E7 +uni030F dblgravecomb uni030F +dblverticalbar dblverticalbar uni2016 +Dcaron Dcaron uni010E +dcaron dcaron uni010F +Dcroat Dcroat uni0110 +dcroat dcroat uni0111 +Ddotbelow Ddotbelow uni1E0C +ddotbelow ddotbelow uni1E0D +degree degree uni00B0 +Delta Delta uni0394 +delta delta uni03B4 +diameter diameter uni2300 +diamond diamond uni2666 +diamond.math diamondmath uni22C4 +dieresis dieresis uni00A8 +uni0308 dieresiscomb uni0308 +dieresistonos dieresistonos uni0385 +discount discount uni2052 +divide divide uni00F7 +divorced divorced uni26AE +Dlinebelow Dlinebelow uni1E0E +dlinebelow dlinebelow uni1E0F +Dlinebelow Dmacronbelow uni1E0E +dlinebelow dmacronbelow uni1E0F +dong dong uni20AB +dotaccent dotaccent uni02D9 +uni0307 dotaccentcomb uni0307 +uni0323 dotbelowcomb uni0323 +dotlessi dotlessi uni0131 +dotlessj dotlessj uni0237 +Eacute Eacute uni00C9 +eacute eacute uni00E9 +Ebreve Ebreve uni0114 +ebreve ebreve uni0115 +Ecaron Ecaron uni011A +ecaron ecaron uni011B +Ecircumflex Ecircumflex uni00CA +ecircumflex ecircumflex uni00EA +Ecircumflexacute Ecircumflexacute uni1EBE +ecircumflexacute ecircumflexacute uni1EBF +Ecircumflexdotbelow Ecircumflexdotbelow uni1EC6 +ecircumflexdotbelow ecircumflexdotbelow uni1EC7 +Ecircumflexgrave Ecircumflexgrave uni1EC0 +ecircumflexgrave ecircumflexgrave uni1EC1 +Ecircumflexhookabove Ecircumflexhookabove uni1EC2 +ecircumflexhookabove ecircumflexhookabove uni1EC3 +Ecircumflextilde Ecircumflextilde uni1EC4 +ecircumflextilde ecircumflextilde uni1EC5 +Edblgrave Edblgrave uni0204 +edblgrave edblgrave uni0205 +Edieresis Edieresis uni00CB +edieresis edieresis uni00EB +Edotaccent Edotaccent uni0116 +edotaccent edotaccent uni0117 +Edotbelow Edotbelow uni1EB8 +edotbelow edotbelow uni1EB9 +Egrave Egrave uni00C8 +egrave egrave uni00E8 +Ehookabove Ehookabove uni1EBA +ehookabove ehookabove uni1EBB +eight.inferior eight.inferior uni2088 +eight.inferior eightinferior uni2088 +eight.superior eight.superior uni2078 +eight.superior eightsuperior uni2078 +element element uni2208 +ellipsis ellipsis uni2026 +Emacron Emacron uni0112 +emacron emacron uni0113 +emdash emdash uni2014 +emptyset emptyset uni2205 +endash endash uni2013 +Eng Eng uni014A +eng eng uni014B +Eogonek Eogonek uni0118 +eogonek eogonek uni0119 +Epsilon Epsilon uni0395 +epsilon epsilon uni03B5 +uni03F5 epsilon.alt uni03F5 +Epsilontonos Epsilontonos uni0388 +epsilontonos epsilontonos uni03AD +equivalence equivalence uni2261 +equivasymptotic equivasymptotic uni224D +Ereversed Ereversed uni018E +ereversed ereversed uni0258 +estimated estimated uni212E +Eta Eta uni0397 +eta eta uni03B7 +Etatonos Etatonos uni0389 +etatonos etatonos uni03AE +Eth Eth uni00D0 +eth eth uni00F0 +Etilde Etilde uni1EBC +etilde etilde uni1EBD +eturned eturned uni01DD +Euro Euro uni20AC +exclamdown exclamdown uni00A1 +existential existential uni2203 +fiveeighths fiveeighths uni215D +five.inferior five.inferior uni2085 +five.inferior fiveinferior uni2085 +five.superior five.superior uni2075 +five.superior fivesuperior uni2075 +flat flat uni266D +uni230A floorleft uni230A +uni230B floorright uni230B +florin florin uni0192 +follows follows uni227B +followsequal followsequal uni2AB0 +four.inferior four.inferior uni2084 +four.inferior fourinferior uni2084 +four.superior four.superior uni2074 +four.superior foursuperior uni2074 +fraction fraction uni2044 +fraction.alt fraction.alt uni2215 +Gacute Gacute uni01F4 +gacute gacute uni01F5 +Gamma Gamma uni0393 +gamma gamma uni03B3 +Gbreve Gbreve uni011E +gbreve gbreve uni011F +Gcaron Gcaron uni01E6 +gcaron gcaron uni01E7 +Gcircumflex Gcircumflex uni011C +gcircumflex gcircumflex uni011D +Gcommaaccent Gcommaaccent uni0122 +gcommaaccent gcommaaccent uni0123 +Gdotaccent Gdotaccent uni0120 +gdotaccent gdotaccent uni0121 +germandbls germandbls uni00DF +uni0300 gravecomb uni0300 +greaterequal greaterequal uni2265 +greaterequal.pl greaterequal.pl uni2A7E +greatermuch greatermuch uni226B +greaterequal.slant greaterorequalslant uni2A7E +guillemotleft guillemotleft uni00AB +guillemotright guillemotright uni00BB +guilsinglleft guilsinglleft uni2039 +guilsinglright guilsinglright uni203A +Hbar Hbar uni0126 +hbar hbar uni0127 +Hbrevebelow Hbrevebelow uni1E2A +hbrevebelow hbrevebelow uni1E2B +Hcircumflex Hcircumflex uni0124 +hcircumflex hcircumflex uni0125 +Hdieresis Hdieresis uni1E26 +hdieresis hdieresis uni1E27 +Hdotbelow Hdotbelow uni1E24 +hdotbelow hdotbelow uni1E25 +heart heart uni2665 +uni0309 hookabovecomb uni0309 +h.superior h.superior uni02B0 +h.superior hsuperior uni02B0 +hungarumlaut hungarumlaut uni02DD +uni030B hungarumlautcomb uni030B +Iacute Iacute uni00CD +iacute iacute uni00ED +Ibreve Ibreve uni012C +ibreve ibreve uni012D +Icaron Icaron uni01CF +icaron icaron uni01D0 +Icircumflex Icircumflex uni00CE +icircumflex icircumflex uni00EE +Idblgrave Idblgrave uni0208 +idblgrave idblgrave uni0209 +Idieresis Idieresis uni00CF +idieresis idieresis uni00EF +Idieresisacute Idieresisacute uni1E2E +idieresisacute idieresisacute uni1E2F +Idotaccent Idotaccent uni0130 +Idotbelow Idotbelow uni1ECA +idotbelow idotbelow uni1ECB +Igrave Igrave uni00CC +igrave igrave uni00EC +Ihookabove Ihookabove uni1EC8 +ihookabove ihookabove uni1EC9 +I_J IJ uni0132 +i_j ij uni0133 +Imacron Imacron uni012A +imacron imacron uni012B +increment increment uni2206 +infinity infinity uni221E +integral integral uni222B +interrobang interrobang uni203D +intersection intersection uni2229 +intersectionsq intersectionsq uni2293 +Iogonek Iogonek uni012E +iogonek iogonek uni012F +Iota Iota uni0399 +iota iota uni03B9 +Iotadieresis Iotadieresis uni03AA +iotadieresis iotadieresis uni03CA +iotadieresistonos iotadieresistonos uni0390 +Iotatonos Iotatonos uni038A +iotatonos iotatonos uni03AF +Itilde Itilde uni0128 +itilde itilde uni0129 +jcaron jcaron uni01F0 +Jcircumflex Jcircumflex uni0134 +jcircumflex jcircumflex uni0135 +Kappa Kappa uni039A +kappa kappa uni03BA +Kcommaaccent Kcommaaccent uni0136 +kcommaaccent kcommaaccent uni0137 +Lacute Lacute uni0139 +lacute lacute uni013A +Lambda Lambda uni039B +lambda lambda uni03BB +uni22A4 latticetop uni22A4 +Lcaron Lcaron uni013D +lcaron lcaron uni013E +Lcommaaccent Lcommaaccent uni013B +lcommaaccent lcommaaccent uni013C +Ldot Ldot uni013F +ldot ldot uni0140 +Ldotbelow Ldotbelow uni1E36 +ldotbelow ldotbelow uni1E37 +Ldotbelowmacron Ldotbelowmacron uni1E38 +ldotbelowmacron ldotbelowmacron uni1E39 +lessequal lessequal uni2264 +lessequal.pl lessequal.pl uni2A7D +lessmuch lessmuch uni226A +lessequal.slant lessorequalslant uni2A7D +uni0332 linebelowcomb uni0332 +lira lira uni20A4 +logicaland logicaland uni2227 +logicalnot logicalnot uni00AC +logicalor logicalor uni2228 +longs longs uni017F +lozenge lozenge uni25CA +l.script lscript uni2113 +Lslash Lslash uni0141 +lslash lslash uni0142 +macron macron uni00AF +uni0331 macronbelowcomb uni0331 +uni0304 macroncomb uni0304 +married married uni26AD +Mdotbelow Mdotbelow uni1E42 +mdotbelow mdotbelow uni1E43 +uni2127 mho uni2127 +minus minus uni2212 +minusplus minusplus uni2213 +Mu Mu uni039C +uni00B5 mu uni00B5 +mu.greek mu.alt uni03BC +multiply multiply uni00D7 +uni266A musicalnote uni266A +nabla nabla uni2207 +Nacute Nacute uni0143 +nacute nacute uni0144 +naira naira uni20A6 +natural natural uni266E +uni00A0 nbspace uni00A0 +Ncaron Ncaron uni0147 +ncaron ncaron uni0148 +Ncommaaccent Ncommaaccent uni0145 +ncommaaccent ncommaaccent uni0146 +Ndotaccent Ndotaccent uni1E44 +ndotaccent ndotaccent uni1E45 +Ndotbelow Ndotbelow uni1E46 +ndotbelow ndotbelow uni1E47 +nine.inferior nine.inferior uni2089 +nine.inferior nineinferior uni2089 +nine.superior nine.superior uni2079 +nine.superior ninesuperior uni2079 +notequal notequal uni2260 +n.superior n.superior uni207F +n.superior nsuperior uni207F +Ntilde Ntilde uni00D1 +ntilde ntilde uni00F1 +Nu Nu uni039D +nu nu uni03BD +numero numero uni2116 +Oacute Oacute uni00D3 +oacute oacute uni00F3 +Obreve Obreve uni014E +obreve obreve uni014F +Ocaron Ocaron uni01D1 +ocaron ocaron uni01D2 +Ocircumflex Ocircumflex uni00D4 +ocircumflex ocircumflex uni00F4 +Ocircumflexacute Ocircumflexacute uni1ED0 +ocircumflexacute ocircumflexacute uni1ED1 +Ocircumflexdotbelow Ocircumflexdotbelow uni1ED8 +ocircumflexdotbelow ocircumflexdotbelow uni1ED9 +Ocircumflexgrave Ocircumflexgrave uni1ED2 +ocircumflexgrave ocircumflexgrave uni1ED3 +Ocircumflexhookabove Ocircumflexhookabove uni1ED4 +ocircumflexhookabove ocircumflexhookabove uni1ED5 +Ocircumflextilde Ocircumflextilde uni1ED6 +ocircumflextilde ocircumflextilde uni1ED7 +Odblgrave Odblgrave uni020C +odblgrave odblgrave uni020D +Odieresis Odieresis uni00D6 +odieresis odieresis uni00F6 +Odotbelow Odotbelow uni1ECC +odotbelow odotbelow uni1ECD +OE OE uni0152 +oe oe uni0153 +ogonek ogonek uni02DB +Ograve Ograve uni00D2 +ograve ograve uni00F2 +ohm ohm uni2126 +Ohookabove Ohookabove uni1ECE +ohookabove ohookabove uni1ECF +Ohorn Ohorn uni01A0 +ohorn ohorn uni01A1 +Ohornacute Ohornacute uni1EDA +ohornacute ohornacute uni1EDB +Ohorndotbelow Ohorndotbelow uni1EE2 +ohorndotbelow ohorndotbelow uni1EE3 +Ohorngrave Ohorngrave uni1EDC +ohorngrave ohorngrave uni1EDD +Ohornhookabove Ohornhookabove uni1EDE +ohornhookabove ohornhookabove uni1EDF +Ohorntilde Ohorntilde uni1EE0 +ohorntilde ohorntilde uni1EE1 +Ohungarumlaut Ohungarumlaut uni0150 +ohungarumlaut ohungarumlaut uni0151 +Omacron Omacron uni014C +omacron omacron uni014D +Omega Omega uni03A9 +omega omega uni03C9 +uni03D6 omega1 uni03D6 +Omegatonos Omegatonos uni038F +omegatonos omegatonos uni03CE +Omicron Omicron uni039F +omicron omicron uni03BF +Omicrontonos Omicrontonos uni038C +omicrontonos omicrontonos uni03CC +oneeighth oneeighth uni215B +onehalf onehalf uni00BD +one.inferior one.inferior uni2081 +one.inferior oneinferior uni2081 +onequarter onequarter uni00BC +one.superior one.superior uni00B9 +one.superior onesuperior uni00B9 +onethird onethird uni2153 +Oogonek Oogonek uni01EA +oogonek oogonek uni01EB +openbullet openbullet uni25E6 +ordfeminine ordfeminine uni00AA +ordmasculine ordmasculine uni00BA +Oslash Oslash uni00D8 +oslash oslash uni00F8 +Oslashacute Oslashacute uni01FE +oslashacute oslashacute uni01FF +Otilde Otilde uni00D5 +otilde otilde uni00F5 +suchthat owner uni220B +paragraph paragraph uni00B6 +parenleft.inferior parenleft.inferior uni208D +parenleft.inferior parenleftinferior uni208D +parenleft.superior parenleft.superior uni207D +parenleft.superior parenleftsuperior uni207D +parenright.inferior parenright.inferior uni208E +parenright.inferior parenrightinferior uni208E +parenright.superior parenright.superior uni207E +parenright.superior parenrightsuperior uni207E +partialdiff partialdiff uni2202 +periodcentered periodcentered uni00B7 +permyriad permyriad uni2031 +perpendicular perpendicular uni27C2 +perthousand perthousand uni2030 +peseta peseta uni20A7 +peso peso uni20B1 +Phi Phi uni03A6 +phi phi uni03C6 +uni03D5 phi.alt uni03D5 +uni03D5 phi1 uni03D5 +Pi Pi uni03A0 +pi pi uni03C0 +uni03D6 pi.alt uni03D6 +plusminus plusminus uni00B1 +precedes precedes uni227A +precedes_equal precedesequal uni2AAF +prime prime uni2032 +propersubset propersubset uni2282 +propersuperset propersuperset uni2283 +proportional proportional uni221D +Psi Psi uni03A8 +psi psi uni03C8 +published published uni2117 +questiondown questiondown uni00BF +quillbracketleft quillbracketleft uni2045 +quillbracketright quillbracketright uni2046 +quotedblbase quotedblbase uni201E +quotedblleft quotedblleft uni201C +quotedblright quotedblright uni201D +quoteleft quoteleft uni2018 +quoteright quoteright uni2019 +quotesinglbase quotesinglbase uni201A +Racute Racute uni0154 +racute racute uni0155 +radical radical uni221A +Rcaron Rcaron uni0158 +rcaron rcaron uni0159 +Rcommaaccent Rcommaaccent uni0156 +rcommaaccent rcommaaccent uni0157 +Rdblgrave Rdblgrave uni0210 +rdblgrave rdblgrave uni0211 +Rdotaccent Rdotaccent uni1E58 +rdotaccent rdotaccent uni1E59 +Rdotbelow Rdotbelow uni1E5A +rdotbelow rdotbelow uni1E5B +Rdotbelowmacron Rdotbelowmacron uni1E5C +rdotbelowmacron rdotbelowmacron uni1E5D +recipe recipe uni211E +referencemark referencemark uni203B +reflexsubset reflexsubset uni2286 +reflexsuperset reflexsuperset uni2287 +registered registered uni00AE +Rho Rho uni03A1 +rho rho uni03C1 +uni03F1 rho.alt uni03F1 +ring ring uni02DA +uni030A ringcomb uni030A +ringhalfleft ringhalfleft uni02BF +ringhalfright ringhalfright uni02BE +Sacute Sacute uni015A +sacute sacute uni015B +Scaron Scaron uni0160 +scaron scaron uni0161 +Scedilla Scedilla uni015E +scedilla scedilla uni015F +Schwa Schwa uni018F +schwa schwa uni0259 +Scircumflex Scircumflex uni015C +scircumflex scircumflex uni015D +uni0218 Scommaaccent uni0218 +uni0219 scommaaccent uni0219 +Sdotbelow Sdotbelow uni1E62 +sdotbelow sdotbelow uni1E63 +section section uni00A7 +servicemark servicemark uni2120 +seveneighths seveneighths uni215E +seven.inferior seven.inferior uni2087 +seven.inferior seveninferior uni2087 +seven.superior seven.superior uni2077 +seven.superior sevensuperior uni2077 +uni00AD sfthyphen uni00AD +sharp sharp uni266F +Sigma Sigma uni03A3 +sigma sigma uni03C3 +uni03C2 sigma.alt uni03C2 +uni03C2 sigma1 uni03C2 +similar similar uni223C +similar_equal similarequal uni2243 +six.inferior six.inferior uni2086 +six.inferior sixinferior uni2086 +six.superior six.superior uni2076 +six.superior sixsuperior uni2076 +frown slurabove uni2322 +smile slurbelow uni2323 +spade spade uni2660 +star star uni22C6 +sterling sterling uni00A3 +subset subset uni2282 +uni2291 subsetsqequal uni2291 +summation summation uni2211 +uni2292 supersetsqequal uni2292 +Tau Tau uni03A4 +tau tau uni03C4 +Tbar Tbar uni0166 +tbar tbar uni0167 +Tcaron Tcaron uni0164 +tcaron tcaron uni0165 +Tcedilla Tcedilla uni0162 +tcedilla tcedilla uni0163 +uni021A Tcommaaccent uni021A +uni021B tcommaaccent uni021B +tdieresis tdieresis uni1E97 +Tdotbelow Tdotbelow uni1E6C +tdotbelow tdotbelow uni1E6D +Theta Theta uni0398 +theta theta uni03B8 +uni03D1 theta.alt uni03D1 +uni03D1 theta1 uni03D1 +Thorn Thorn uni00DE +thorn thorn uni00FE +threeeighths threeeighths uni215C +three.inferior three.inferior uni2083 +three.inferior threeinferior uni2083 +threequarters threequarters uni00BE +three.superior three.superior uni00B3 +three.superior threesuperior uni00B3 +uni2040 tie uni2040 +tilde tilde uni02DC +uni0330 tildebelowcomb uni0330 +uni0303 tildecomb uni0303 +Tlinebelow Tlinebelow uni1E6E +tlinebelow tlinebelow uni1E6F +Tlinebelow Tmacronbelow uni1E6E +tlinebelow tmacronbelow uni1E6F +tonos tonos uni0384 +trademark trademark uni2122 +uni25B3 triangle uni25B3 +uni25BD triangleinv uni25BD +uni25C1 triangleleft uni25C1 +uni25B7 triangleright uni25B7 +turnstileleft turnstileleft uni22A2 +turnstileright turnstileright uni22A3 +two.inferior two.inferior uni2082 +two.inferior twoinferior uni2082 +two.superior two.superior uni00B2 +two.superior twosuperior uni00B2 +twothirds twothirds uni2154 +Uacute Uacute uni00DA +uacute uacute uni00FA +Ubreve Ubreve uni016C +ubreve ubreve uni016D +Ubreveinverted Ubreveinverted uni0216 +ubreveinverted ubreveinverted uni0217 +Ucaron Ucaron uni01D3 +ucaron ucaron uni01D4 +Ucircumflex Ucircumflex uni00DB +ucircumflex ucircumflex uni00FB +Udblgrave Udblgrave uni0214 +udblgrave udblgrave uni0215 +Udieresis Udieresis uni00DC +udieresis udieresis uni00FC +Udieresisacute Udieresisacute uni01D7 +udieresisacute udieresisacute uni01D8 +Udieresiscaron Udieresiscaron uni01D9 +udieresiscaron udieresiscaron uni01DA +Udieresisgrave Udieresisgrave uni01DB +udieresisgrave udieresisgrave uni01DC +Udotbelow Udotbelow uni1EE4 +udotbelow udotbelow uni1EE5 +Ugrave Ugrave uni00D9 +ugrave ugrave uni00F9 +Uhookabove Uhookabove uni1EE6 +uhookabove uhookabove uni1EE7 +Uhorn Uhorn uni01AF +uhorn uhorn uni01B0 +Uhornacute Uhornacute uni1EE8 +uhornacute uhornacute uni1EE9 +Uhorndotbelow Uhorndotbelow uni1EF0 +uhorndotbelow uhorndotbelow uni1EF1 +Uhorngrave Uhorngrave uni1EEA +uhorngrave uhorngrave uni1EEB +Uhornhookabove Uhornhookabove uni1EEC +uhornhookabove uhornhookabove uni1EED +Uhorntilde Uhorntilde uni1EEE +uhorntilde uhorntilde uni1EEF +Uhungarumlaut Uhungarumlaut uni0170 +uhungarumlaut uhungarumlaut uni0171 +Umacron Umacron uni016A +umacron umacron uni016B +uni203F undertie uni203F +uni2054 undertieinverted uni2054 +uni0400 uni0400 uni0400 +uni040D uni040D uni040D +uni0450 uni0450 uni0450 +uni045D uni045D uni045D +uni048C uni048C uni048C +uni048D uni048D uni048D +uni048E uni048E uni048E +uni048F uni048F uni048F +uni0492 uni0492 uni0492 +uni0493 uni0493 uni0493 +uni0494 uni0494 uni0494 +uni0495 uni0495 uni0495 +uni0496 uni0496 uni0496 +uni0497 uni0497 uni0497 +uni0498 uni0498 uni0498 +uni0499 uni0499 uni0499 +uni049A uni049A uni049A +uni049B uni049B uni049B +uni049C uni049C uni049C +uni049D uni049D uni049D +uni049E uni049E uni049E +uni049F uni049F uni049F +uni04A0 uni04A0 uni04A0 +uni04A1 uni04A1 uni04A1 +uni04A2 uni04A2 uni04A2 +uni04A3 uni04A3 uni04A3 +uni04A4 uni04A4 uni04A4 +uni04A5 uni04A5 uni04A5 +uni04A6 uni04A6 uni04A6 +uni04A7 uni04A7 uni04A7 +uni04A8 uni04A8 uni04A8 +uni04A9 uni04A9 uni04A9 +uni04AA uni04AA uni04AA +uni04AB uni04AB uni04AB +uni04AC uni04AC uni04AC +uni04AD uni04AD uni04AD +uni04AE uni04AE uni04AE +uni04AF uni04AF uni04AF +uni04B0 uni04B0 uni04B0 +uni04B1 uni04B1 uni04B1 +uni04B2 uni04B2 uni04B2 +uni04B3 uni04B3 uni04B3 +uni04B4 uni04B4 uni04B4 +uni04B5 uni04B5 uni04B5 +uni04B6 uni04B6 uni04B6 +uni04B7 uni04B7 uni04B7 +uni04B8 uni04B8 uni04B8 +uni04B9 uni04B9 uni04B9 +uni04BA uni04BA uni04BA +uni04BB uni04BB uni04BB +uni04BC uni04BC uni04BC +uni04BD uni04BD uni04BD +uni04BE uni04BE uni04BE +uni04BF uni04BF uni04BF +uni04C0 uni04C0 uni04C0 +uni04C1 uni04C1 uni04C1 +uni04C2 uni04C2 uni04C2 +uni04C3 uni04C3 uni04C3 +uni04C4 uni04C4 uni04C4 +uni04C7 uni04C7 uni04C7 +uni04C8 uni04C8 uni04C8 +uni04CB uni04CB uni04CB +uni04CC uni04CC uni04CC +uni04D0 uni04D0 uni04D0 +uni04D1 uni04D1 uni04D1 +uni04D2 uni04D2 uni04D2 +uni04D3 uni04D3 uni04D3 +uni04D4 uni04D4 uni04D4 +uni04D5 uni04D5 uni04D5 +uni04D6 uni04D6 uni04D6 +uni04D7 uni04D7 uni04D7 +uni04D8 uni04D8 uni04D8 +uni04DA uni04DA uni04DA +uni04DB uni04DB uni04DB +uni04DC uni04DC uni04DC +uni04DD uni04DD uni04DD +uni04DE uni04DE uni04DE +uni04DF uni04DF uni04DF +uni04E0 uni04E0 uni04E0 +uni04E1 uni04E1 uni04E1 +uni04E2 uni04E2 uni04E2 +uni04E3 uni04E3 uni04E3 +uni04E4 uni04E4 uni04E4 +uni04E5 uni04E5 uni04E5 +uni04E6 uni04E6 uni04E6 +uni04E7 uni04E7 uni04E7 +uni04E8 uni04E8 uni04E8 +uni04E9 uni04E9 uni04E9 +uni04EA uni04EA uni04EA +uni04EB uni04EB uni04EB +uni04EC uni04EC uni04EC +uni04ED uni04ED uni04ED +uni04EE uni04EE uni04EE +uni04EF uni04EF uni04EF +uni04F0 uni04F0 uni04F0 +uni04F1 uni04F1 uni04F1 +uni04F2 uni04F2 uni04F2 +uni04F3 uni04F3 uni04F3 +uni04F4 uni04F4 uni04F4 +uni04F5 uni04F5 uni04F5 +uni04F8 uni04F8 uni04F8 +uni04F9 uni04F9 uni04F9 +uni2010 uni2010 uni2010 +uni2011 uni2011 uni2011 +uni2423 uni2423 uni2423 +union union uni222A +unionmulti unionmulti uni228E +unionsq unionsq uni2294 +universal universal uni2200 +Uogonek Uogonek uni0172 +uogonek uogonek uni0173 +Upsilon Upsilon uni03A5 +upsilon upsilon uni03C5 +Upsilondieresis Upsilondieresis uni03AB +upsilondieresis upsilondieresis uni03CB +upsilondieresistonos upsilondieresistonos uni03B0 +Upsilontonos Upsilontonos uni038E +upsilontonos upsilontonos uni03CD +Uring Uring uni016E +uring uring uni016F +Utilde Utilde uni0168 +utilde utilde uni0169 +space.visible visiblespace uni2423 +Wacute Wacute uni1E82 +wacute wacute uni1E83 +Wcircumflex Wcircumflex uni0174 +wcircumflex wcircumflex uni0175 +Wdieresis Wdieresis uni1E84 +wdieresis wdieresis uni1E85 +weierstrass weierstrass uni2118 +Wgrave Wgrave uni1E80 +wgrave wgrave uni1E81 +won won uni20A9 +uni2240 wreathproduct uni2240 +Xi Xi uni039E +xi xi uni03BE +Yacute Yacute uni00DD +yacute yacute uni00FD +Ycircumflex Ycircumflex uni0176 +ycircumflex ycircumflex uni0177 +Ydieresis Ydieresis uni0178 +ydieresis ydieresis uni00FF +Ydotbelow Ydotbelow uni1EF4 +ydotbelow ydotbelow uni1EF5 +yen yen uni00A5 +Ygrave Ygrave uni1EF2 +ygrave ygrave uni1EF3 +Yhookabove Yhookabove uni1EF6 +yhookabove yhookabove uni1EF7 +Ytilde Ytilde uni1EF8 +ytilde ytilde uni1EF9 +Zacute Zacute uni0179 +zacute zacute uni017A +Zcaron Zcaron uni017D +zcaron zcaron uni017E +Zdotaccent Zdotaccent uni017B +zdotaccent zdotaccent uni017C +Zdotbelow Zdotbelow uni1E92 +zdotbelow zdotbelow uni1E93 +zero.inferior zero.inferior uni2080 +zero.inferior zeroinferior uni2080 +zero.superior zero.superior uni2070 +zero.superior zerosuperior uni2070 +Zeta Zeta uni0396 +zeta zeta uni03B6 + +### 4. Private unicodes [sc] E000 .. E061 +# glyphs not mentioned in Adobe Glyph List 2.00 PUA +# and Adobe Corporate Use Subarea (cf. sec. 9) +abreveacute.sc abreveacute.sc uniE000 +abrevedotbelow.sc abrevedotbelow.sc uniE001 +abrevegrave.sc abrevegrave.sc uniE002 +abrevehookabove.sc abrevehookabove.sc uniE003 +abrevetilde.sc abrevetilde.sc uniE004 +acaron.sc acaron.sc uniE005 +acircumflexacute.sc acircumflexacute.sc uniE006 +acircumflexdotbelow.sc acircumflexdotbelow.sc uniE007 +acircumflexgrave.sc acircumflexgrave.sc uniE008 +acircumflexhookabove.sc acircumflexhookabove.sc uniE009 +acircumflextilde.sc acircumflextilde.sc uniE00A +adblgrave.sc adblgrave.sc uniE00B +adotbelow.sc adotbelow.sc uniE00C +ahookabove.sc ahookabove.sc uniE00D +ampersand.sc ampersand.sc uniE00E +aogonekacute.sc aogonekacute.sc uniE00F +aringacute.sc aringacute.sc uniE010 +dcroat.sc dcroat.sc uniE011 +ddotbelow.sc ddotbelow.sc uniE012 +dlinebelow.sc dlinebelow.sc uniE013 +dotlessi.sc dotlessi.sc uniE014 +dotlessj.sc dotlessj.sc uniE015 +ecircumflexacute.sc ecircumflexacute.sc uniE016 +ecircumflexdotbelow.sc ecircumflexdotbelow.sc uniE017 +ecircumflexgrave.sc ecircumflexgrave.sc uniE018 +ecircumflexhookabove.sc ecircumflexhookabove.sc uniE019 +ecircumflextilde.sc ecircumflextilde.sc uniE01A +edblgrave.sc edblgrave.sc uniE01B +edotbelow.sc edotbelow.sc uniE01C +ehookabove.sc ehookabove.sc uniE01D +eogonekacute.sc eogonekacute.sc uniE01E +ereversed.sc ereversed.sc uniE01F +etilde.sc etilde.sc uniE020 +eturned.sc eturned.sc uniE021 +gacute.sc gacute.sc uniE022 +gcaron.sc gcaron.sc uniE023 +germandbls.sc germandbls.sc uniE024 +hbrevebelow.sc hbrevebelow.sc uniE026 +hdieresis.sc hdieresis.sc uniE027 +h_uni0303.sc htilde.sc uniE025 +icaron.sc icaron.sc uniE028 +idblgrave.sc idblgrave.sc uniE029 +idieresisacute.sc idieresisacute.sc uniE02A +idieresisgrave.sc idieresisgrave.sc uniE02B +idotbelow.sc idotbelow.sc uniE02C +ihookabove.sc ihookabove.sc uniE02D +imacron.alt.sc imacron.alt.sc uniE02E +iogonekacute.sc iogonekacute.sc uniE02F +jacute.sc jacute.sc uniE030 +lslash.sc lslash.sc uniE032 +l_uni0303.sc ltilde.sc uniE031 +ocaron.sc ocaron.sc uniE033 +ocircumflexacute.sc ocircumflexacute.sc uniE034 +ocircumflexdotbelow.sc ocircumflexdotbelow.sc uniE035 +ocircumflexgrave.sc ocircumflexgrave.sc uniE036 +ocircumflexhookabove.sc ocircumflexhookabove.s uniE037 +ocircumflextilde.sc ocircumflextilde.sc uniE038 +odblgrave.sc odblgrave.sc uniE039 +odotbelow.sc odotbelow.sc uniE03A +oe.sc oe.sc uniE03B +ohookabove.sc ohookabove.sc uniE03C +ohorn.sc ohorn.sc uniE03D +ohornacute.sc ohornacute.sc uniE03E +ohorndotbelow.sc ohorndotbelow.sc uniE03F +ohorngrave.sc ohorngrave.sc uniE040 +ohornhookabove.sc ohornhookabove.sc uniE041 +ohorntilde.sc ohorntilde.sc uniE042 +oogonek.sc oogonek.sc uniE043 +oogonekacute.sc oogonekacute.sc uniE044 +rdblgrave.sc rdblgrave.sc uniE045 +rdotaccent.sc rdotaccent.sc uniE046 +scaron.sc scaron.sc uniE047 +sdotbelow.sc sdotbelow.sc uniE048 +tcedilla.sc tcedilla.sc uniE04A +tdieresis.sc tdieresis.sc uniE04B +tdotbelow.sc tdotbelow.sc uniE04C +tlinebelow.sc tlinebelow.sc uniE04D +t_uni0303.sc ttilde.sc uniE049 +ubrevebelowinverted.sc ubrevebelowinverted.sc uniE04E +ubreveinverted.sc ubreveinverted.sc uniE04F +ucaron.sc ucaron.sc uniE050 +udblgrave.sc udblgrave.sc uniE051 +udieresisacute.sc udieresisacute.sc uniE052 +udieresiscaron.sc udieresiscaron.sc uniE053 +udieresisgrave.sc udieresisgrave.sc uniE054 +udotbelow.sc udotbelow.sc uniE055 +uhookabove.sc uhookabove.sc uniE056 +uhorn.sc uhorn.sc uniE057 +uhornacute.sc uhornacute.sc uniE058 +uhorndotbelow.sc uhorndotbelow.sc uniE059 +uhorngrave.sc uhorngrave.sc uniE05A +uhornhookabove.sc uhornhookabove.sc uniE05B +uhorntilde.sc uhorntilde.sc uniE05C +ydotbelow.sc ydotbelow.sc uniE05D +yhookabove.sc yhookabove.sc uniE05E +ytilde.sc ytilde.sc uniE05F +zcaron.sc zcaron.sc uniE060 +zdotbelow.sc zdotbelow.sc uniE061 + +### 5. Private [ligs] unicodes E800 .. E804 +c_t c_t uniE800 +f_f_j f_f_j uniE801 +f_j f_j uniE802 +f_k f_k uniE803 +T_h T_h uniE804 + +### 6. Private [acc] unicodes EA00 .. EA46, see also sec. 9 +# some accent entries are present in the Adobe Glyph List 2.00 PUA, +# under other names and codes; thus, for the internal consistency, +# they were removed from the sec. 9 -- see there for details +acute.cap Acute uniEA00 +uni0301.cap Acutecomb uniEA01 +breve.cap Breve uniEA02 +space_uni0306_uni0301.cap Breveacute uniEA03 +space_uni0306_uni0301 breveacute uniEA04 +space_uni032E brevebelow uniEA05 +space_uni032F brevebelowinverted uniEA06 +uni0306.cap Brevecomb uniEA07 +space_uni0306_uni0300.cap Brevegrave uniEA08 +space_uni0306_uni0300 brevegrave uniEA09 +space_uni0306_uni0309.cap Brevehookabove uniEA0A +space_uni0306_uni0309 brevehookabove uniEA0B +space_uni0311.cap Breveinverted uniEA0C +space_uni0311 breveinverted uniEA0D +uni0311.cap Breveinvertedcomb uniEA0E +space_uni0306_uni0303.cap Brevetilde uniEA0F +space_uni0306_uni0303 brevetilde uniEA10 +caron.cap Caron uniEA11 +Caron.alt Caron.alt uniEA12 +caron.alt caron.alt uniEA13 +uni030C.cap Caroncomb uniEA14 +circumflex.cap Circumflex uniEA15 +space_uni0302_uni0301.cap Circumflexacute uniEA16 +space_uni0302_uni0301 circumflexacute uniEA17 +uni0302.cap Circumflexcomb uniEA18 +space_uni0302_uni0300.cap Circumflexgrave uniEA19 +space_uni0302_uni0300 circumflexgrave uniEA1A +space_uni0302_uni0309.cap Circumflexhookabove uniEA1B +space_uni0302_uni0309 circumflexhookabove uniEA1C +space_uni0302_uni0303.cap Circumflextilde uniEA1D +space_uni0302_uni0303 circumflextilde uniEA1E +space_uni0326 commaaccent uniEA1F +uni0312.cap Commaturnedabovecomb uniEA20 +breve.cyrcap cyrBreve uniEA21 +breve.cyr cyrbreve uniEA22 +circumflex.cyrcap cyrFlex uniEA23 +circumflex.cyr cyrflex uniEA24 +space_uni030F.cap dblGrave uniEA25 +space_uni030F dblgrave uniEA26 +uni030F.cap Dblgravecomb uniEA27 +uni030F.cap dblGravecomb uniEA27 +dieresis.cap Dieresis uniEA28 +space_uni0308_uni0301.cap Dieresisacute uniEA29 +space_uni0308_uni0301 dieresisacute uniEA2A +space_uni0308_uni030C.cap Dieresiscaron uniEA2B +space_uni0308_uni030C dieresiscaron uniEA2C +uni0308.cap Dieresiscomb uniEA2D +space_uni0308_uni0300.cap Dieresisgrave uniEA2E +space_uni0308_uni0300 dieresisgrave uniEA2F +dotaccent.cap Dotaccent uniEA30 +uni0307.cap Dotaccentcomb uniEA31 +grave.cap Grave uniEA32 +uni0300.cap Gravecomb uniEA33 +space_uni0309.cap Hookabove uniEA34 +space_uni0309 hookabove uniEA35 +uni0309.cap Hookabovecomb uniEA36 +space_uni031B horn uniEA37 +hungarumlaut.cap Hungarumlaut uniEA38 +uni030B.cap Hungarumlautcomb uniEA39 +space_uni0332 linebelow uniEA3A +macron.cap Macron uniEA3B +macron.cap.alt Macron.alt uniEA3C +macron.alt macron.alt uniEA3D +space_uni0331 macronbelow uniEA3E +uni0304.cap Macroncomb uniEA3F +ring.cap Ring uniEA40 +space_uni030A_uni0301.cap Ringacute uniEA41 +space_uni030A_uni0301 ringacute uniEA42 +uni030A.cap Ringcomb uniEA43 +tilde.cap Tilde uniEA44 +space_uni0330 tildebelow uniEA45 +uni0303.cap Tildecomb uniEA46 + +### 7. Private [misc] unicodes EB00 .. uniEB7D and uniEC00 .. uniEC12 +A.kali A.kali uniEB00 +A.out A.out uniEB01 +acute.ts1 acute.ts1 uniEB02 +Aogonekacute Aogonekacute uniEB03 +aogonekacute aogonekacute uniEB04 +at.alt at.alt uniEB05 +B.kali B.kali uniEB06 +B.out B.out uniEB07 +bigcircle bigcircle uniEB08 +star.alt born uniEB09 +breve.ts1 breve.ts1 uniEB0A +C.kali C.kali uniEB0B +C.out C.out uniEB0C +caron.ts1 caron.ts1 uniEB0D +circlecopyrt circlecopyrt uniEB0E +copyleft copyleft uniEB0F +cwm cwm uniEB10 +cwmascender cwmascender uniEB11 +cwmcapital cwmcapital uniEB12 +D.kali D.kali uniEB13 +D.out D.out uniEB14 +dblgrave.ts1 dblgrave.ts1 uniEB15 +died died uniEB16 +dieresis.ts1 dieresis.ts1 uniEB17 +dotaccent.superior dotaccent.superior uniEB18 +dotaccent.superior dotaccentsuperior uniEB18 +space_uni0323 dotbelow uniEB19 +dotlessi.superior dotlessi.superior uniEB1A +dotlessi.superior dotlessisuperior uniEB1A +d_quoteright dquoteright uniEB1B +E.kali E.kali uniEB1C +E.out E.out uniEB1D +Eogonekacute Eogonekacute uniEB1E +eogonekacute eogonekacute uniEB1F +Euro.inferior Euro.inferior uniEB20 +Euro.inferior euroinferior uniEB21 +Euro.superior Euro.superior uniEB22 +Euro.superior eurosuperior uniEB22 +F.kali F.kali uniEB23 +F.out F.out uniEB23 +florin.superior florin.superior uniEB24 +florin.superior florinsuperior uniEB25 +f.superior f.superior uniEB26 +f.superior fsuperior uniEB26 +G.kali G.kali uniEB27 +G.out G.out uniEB27 +S_S Germandbls uniEB28 +gnaborretni gnaborretni uniEB29 +grave.ts1 grave.ts1 uniEB2A +guarani guarani uniEB2B +H.kali H.kali uniEB2C +H.out H.out uniEB2D +hungarumlaut.ts1 hungarumlaut.ts1 uniEB2E +hyphen.alt hyphen.alt uniEB2F +hyphen.prop hyphen.prop uniEB30 +hyphendbl hyphendbl uniEB31 +hyphendbl.alt hyphendbl.alt uniEB32 +I.kali I.kali uniEB33 +I.out I.out uniEB34 +Iogonekacute Iogonekacute uniEB35 +iogonekacute iogonekacute uniEB36 +Iotadieresistonos Iotadieresistonos uniEB37 +J.kali J.kali uniEB38 +J.out J.out uniEB39 +J_uni030C.cap J_caron uniEB7E +Jacute Jacute uniEB3A +jacute jacute uniEB3B +K.kali K.kali uniEB3C +K.out K.out uniEB3D +L.kali L.kali uniEB3E +L.out L.out uniEB3F +leaf leaf uniEB40 +M.kali M.kali uniEB41 +M.out M.out uniEB42 +macron.ts1 macron.ts1 uniEB43 +N.kali N.kali uniEB44 +N.out N.out uniEB45 +O.kali O.kali uniEB46 +O.out O.out uniEB47 +Oogonekacute Oogonekacute uniEB48 +oogonekacute oogonekacute uniEB49 +P.kali P.kali uniEB4A +P.out P.out uniEB4B +paragraph.alt paragraph.alt uniEB4C +perthousandzero perthousandzero uniEB4D +Q.kali Q.kali uniEB4E +Q.out Q.out uniEB4F +quotedblbase.cm quotedblbase.cm uniEB50 +quotedblbase.cs quotedblbase.cs uniEB51 +quotedblbase.ts1 quotedblbase.ts1 uniEB52 +quotedblleft.cm quotedblleft.cm uniEB53 +quotedblright.cm quotedblright.cm uniEB54 +quotedblright.cs quotedblright.cs uniEB55 +quotesinglbase.ts1 quotesinglbase.ts1 uniEB56 +quotesingle.ts1 quotesingle.ts1 uniEB57 +R.kali R.kali uniEB58 +R.out R.out uniEB59 +registered.alt registered.alt uniEB5A +S.kali S.kali uniEB5C +S.out S.out uniEB5D +sterling.inferior sterling.inferior uniEB5E +sterling.inferior sterlinginferior uniEB5F +sterling.superior sterling.superior uniEB60 +sterling.superior sterlingsuperior uniEB60 +suppress suppress uniEB61 +T.kali T.kali uniEB61 +T.out T.out uniEB62 +tieaccentcapital tieaccentcapital uniEB63 +tieaccentcapital.new tieaccentcapital.new uniEB64 +tieaccentlowercase tieaccentlowercase uniEB65 +tieaccentlowercase.new tieaccentlowercase.new uniEB66 +asciitilde.low tildelow uniEB67 +tilde.wide tildewide uniEB68 +tilde.wider tildewider uniEB69 +tilde.widest tildewidest uniEB6A +emdash.alt twelveudash uniEB6B +U.kali U.kali uniEB6C +U.out U.out uniEB6D +U_uni032F Ubrevebelowinverted uniEB6E +u_uni032F ubrevebelowinverted uniEB6F +Upsilondieresistonos Upsilondieresistonos uniEB70 +V.kali V.kali uniEB71 +V.out V.out uniEB72 +registered.alt varregistered uniEB5A +W.kali W.kali uniEB73 +W.out W.out uniEB74 +X.kali X.kali uniEB75 +X.out X.out uniEB76 +Y.kali Y.kali uniEB77 +Y.out Y.out uniEB78 +yen.inferior yen.inferior uniEB7C +yen.inferior yeninferior uniEB7C +yen.superior yen.superior uniEB7D +yen.superior yensuperior uniEB7D +Z.kali Z.kali uniEB79 +Z.out Z.out uniEB7A +Zapff Zapff uniEB7B +# a gap for further use? +# JMN's insertion (reordered, range [F900..F91E] not in PUA changed, V.alt added) +S.alt S.alt uniEBA0 +s.alt s.alt uniEBA5 +s.sc.alt s.sc.alt uniEBA6 +Sacute.alt Sacute.alt uniEBA1 +sacute.alt sacute.alt uniEBA8 +sacute.sc.alt sacute.sc.alt uniEBA7 +Scaron.alt Scaron.alt uniEBA2 +scaron.alt scaron.alt uniEBAA +scaron.sc.alt scaron.sc.alt uniEBA9 +Scircumflex.alt Scircumflex.alt uniEBA3 +scircumflex.alt scircumflex.alt uniEBAC +scircumflex.sc.alt scircumflex.sc.alt uniEBAB +Scommaaccent.alt Scommaaccent.alt uniEBA4 +scommaaccent.alt scommaaccent.alt uniEBAE +scommaaccent.sc.alt scommaaccent.sc.alt uniEBAD +V.alt V.alt uniEBAF +v.alt v.alt uniEBB5 +W.alt W.alt uniEBB0 +w.alt w.alt uniEBB6 +w.sc.alt w.sc.alt uniEBB7 +Wacute.alt Wacute.alt uniEBB1 +wacute.alt wacute.alt uniEBB9 +wacute.sc.alt wacute.sc.alt uniEBB8 +Wcircumflex.alt Wcircumflex.alt uniEBB2 +wcircumflex.alt wcircumflex.alt uniEBBB +wcircumflex.sc.alt wcircumflex.sc.alt uniEBBA +Wdieresis.alt Wdieresis.alt uniEBB3 +wdieresis.alt wdieresis.alt uniEBBD +wdieresis.sc.alt wdieresis.sc.alt uniEBBC +Wgrave.alt Wgrave.alt uniEBB4 +wgrave.alt wgrave.alt uniEBBF +wgrave.sc.alt wgrave.sc.alt uniEBBE +# a gap for further use +H_uni0303 Htilde uniEC08 +h_uni0303 htilde uniEC09 +Imacron.alt Imacron.alt uniEC07 +imacron.alt imacron.alt uniEC06 +lslash_lslash lslash_lslash uniEC0F +L_uni0303 Ltilde uniEC0A +l_uni0303 ltilde uniEC0B +Orogate Orogate uniEC10 +orogate orogate uniEC11 +orogate.sc orogate.sc uniEC12 +T_uni0308 Tdieresis uniEC0E +T_uni0303 Ttilde uniEC0C +t_uni0303 ttilde uniEC0D +copyright.alt varcopyright uniEC00 +dotaccent.alt vardotaccent uniEC01 +I.alt varI uniEC03 +I_J.alt varIJ uniEC04 +Iogonek.alt varIogonek uniEC05 + +### 8. Private unicodes [math] ED00 .. ED7A +angbracketleft angbracketleft uniED00 +angbracketleft.Big angbracketleftBig uniED01 +angbracketleft.big angbracketleftbig uniED02 +angbracketleft.Bigg angbracketleftBigg uniED03 +angbracketleft.bigg angbracketleftbigg uniED04 +angbracketright angbracketright uniED05 +angbracketright.Big angbracketrightBig uniED06 +angbracketright.big angbracketrightbig uniED07 +angbracketright.Bigg angbracketrightBigg uniED08 +angbracketright.bigg angbracketrightbigg uniED09 +arrowbt arrowbt uniED0A +arrowdblbt arrowdblbt uniED0B +uni21D0.jmn arrowdblleftjmn uniED0C +uni21D2.jmn arrowdblrightjmn uniED0D +arrowdbltp arrowdbltp uniED0E +uni2190.jmn arrowleftjmn uniED0F +uni2192.jmn arrowrightjmn uniED10 +arrowtp arrowtp uniED11 +arrowvertexdbl arrowvertexdbl uniED12 +backslash.Big backslashBig uniED13 +backslash.big backslashbig uniED14 +backslash.Bigg backslashBigg uniED15 +backslash.bigg backslashbigg uniED16 +bracehtipdownleft bracehtipdownleft uniED17 +bracehtipdownright bracehtipdownright uniED18 +bracehtipupleft bracehtipupleft uniED19 +bracehtipupright bracehtipupright uniED1A +braceleft.cap braceleft.cap uniED1F +braceleft.Big braceleftBig uniED1B +braceleft.big braceleftbig uniED1C +braceleft.Bigg braceleftBigg uniED1D +braceleft.bigg braceleftbigg uniED1E +braceright.Big bracerightBig uniED20 +braceright.big bracerightbig uniED21 +braceright.Bigg bracerightBigg uniED22 +braceright.bigg bracerightbigg uniED23 +bracketleft.Big bracketleftBig uniED24 +bracketleft.big bracketleftbig uniED25 +bracketleft.Bigg bracketleftBigg uniED26 +bracketleft.bigg bracketleftbigg uniED27 +bracketright.Big bracketrightBig uniED28 +bracketright.big bracketrightbig uniED29 +bracketright.Bigg bracketrightBigg uniED2A +bracketright.bigg bracketrightbigg uniED2B +uni2308.Big ceilingleftBig uniED2C +uni2308.big ceilingleftbig uniED2D +uni2308.Bigg ceilingleftBigg uniED2E +uni2308.bigg ceilingleftbigg uniED2F +uni2309.Big ceilingrightBig uniED30 +uni2309.big ceilingrightbig uniED31 +uni2309.Bigg ceilingrightBigg uniED32 +uni2309.bigg ceilingrightbigg uniED33 +circledot.display circledotdisplay uniED34 +circledot.text circledottext uniED35 +circlemultiply.display circlemultiplydisplay uniED36 +circlemultiply.text circlemultiplytext uniED37 +circleplus.display circleplusdisplay uniED38 +circleplus.text circleplustext uniED39 +comma.math comma.math uniED3A +contintegral.display contintegraldisplay uniED3B +contintegral.text contintegraltext uniED3C +uni2210.display coproductdisplay uniED3D +uni2210.text coproducttext uniED3E +equal.jmn equaljmn uniED3F +equalleft.jmn equalleftjmn uniED40 +equalright.jmn equalrightjmn uniED41 +uni230A.Big floorleftBig uniED42 +uni230A.big floorleftbig uniED43 +uni230A.Bigg floorleftBigg uniED44 +uni230A.bigg floorleftbigg uniED45 +uni230B.Big floorrightBig uniED46 +uni230B.big floorrightbig uniED47 +uni230B.Bigg floorrightBigg uniED48 +uni230B.bigg floorrightbigg uniED49 +hatwide hatwide uniED4A +hatwider hatwider uniED4B +hatwidest hatwidest uniED4C +integral.display integraldisplay uniED4D +integral.text integraltext uniED4E +intersection.display intersectiondisplay uniED4F +intersection.text intersectiontext uniED50 +logicaland.display logicalanddisplay uniED51 +logicaland.text logicalandtext uniED52 +logicalor.display logicalordisplay uniED53 +logicalor.text logicalortext uniED54 +mapsto mapsto uniED55 +minus.jmn minusjmn uniED56 +minusleft.jmn minusleftjmn uniED57 +minusright.jmn minusrightjmn uniED58 +negationslash negationslash uniED59 +parenleft.Big parenleftBig uniED5A +parenleft.big parenleftbig uniED5B +parenleft.Bigg parenleftBigg uniED5C +parenleft.bigg parenleftbigg uniED5D +parenright.Big parenrightBig uniED5E +parenright.big parenrightbig uniED5F +parenright.Bigg parenrightBigg uniED60 +parenright.bigg parenrightbigg uniED61 +period.math period.math uniED62 +product.display productdisplay uniED63 +product.text producttext uniED64 +radical.Big radicalBig uniED65 +radical.big radicalbig uniED66 +radical.Bigg radicalBigg uniED67 +radical.bigg radicalbigg uniED68 +radical.bt radicalbt uniED69 +radical.tp radicaltp uniED6A +radical.vertex radicalvertex uniED6B +slash.Big slashBig uniED6C +slash.big slashbig uniED6D +slash.Bigg slashBigg uniED6E +slash.bigg slashbigg uniED6F +summation.display summationdisplay uniED70 +summation.text summationtext uniED71 +union.display uniondisplay uniED72 +unionmulti.display unionmultidisplay uniED73 +unionmulti.text unionmultitext uniED74 +unionsq.display unionsqdisplay uniED75 +unionsq.text unionsqtext uniED76 +union.text uniontext uniED77 +vector vector uniED78 +vextenddouble vextenddouble uniED79 +vextendsingle vextendsingle uniED7A + +### 9. Adobe Glyph List 2.00 private unicodes and Adobe Corporate Use Subarea +# The following glyphs (col 1 and 2 below) were removed from this section; +# they occur under different codes in sec. 6 (col. 3 and 4 below) +# commaaccent uniF6C3 space_uni0326 uniEA1F +# Acute uniF6C9 acute.cap uniEA00 +# Caron uniF6CA caron.cap uniEA11 +# Dieresis uniF6CB dieresis.cap uniEA28 +# DieresisAcute uniF6CC space_uni0308_uni0301.cap uniEA29 +# DieresisGrave uniF6CD space_uni0308_uni0300.cap uniEA2C +# Grave uniF6CE grave.cap uniEA30 +# Hungarumlaut uniF6CF hungarumlaut.cap uniEA36 +# Macron uniF6D0 macron.cap uniEA39 +# cyrBreve uniF6D1 breve.cyrcap uniEA21 +# cyrFlex uniF6D2 circumflex.cyrcap uniEA23 +# dblGrave uniF6D3 space_uni030F.cap uniEA25 +# cyrbreve uniF6D4 breve.cyr uniEA22 +# cyrflex uniF6D5 circumflex.cyr uniEA24 +# dblgrave uniF6D6 space_uni030F uniEA26 +# dieresisacute uniF6D7 space_uni0308_uni0301 uniEA2A +# dieresisgrave uniF6D8 space_uni0308_uni0300 uniEA2D +# +# Names of the form uni appeared in the original GOADB file; +# however, there was an omission -- `integralex'; another exception +# is dotlessj.dup, as dotlessj got non-private unicode uni0237 +# (see sec. 3. Standard other unicodes); incidentally, AFDKO +# doesn't accept the name uni0237 for dotlessj.dup +a.sc a.sc uniF761 +aacute.sc aacute.sc uniF7E1 +Aacutesmall Aacutesmall uniF7E1 +abreve.sc abreve.sc uniF66D +acircumflex.sc acircumflex.sc uniF7E2 +Acircumflexsmall Acircumflexsmall uniF7E2 +Acutesmall Acutesmall uniF7B4 +adieresis.sc adieresis.sc uniF7E4 +Adieresissmall Adieresissmall uniF7E4 +ae.sc ae.sc uniF7E6 +aeacute.sc aeacute.sc uniF670 +AEsmall AEsmall uniF7E6 +afii10063 afii10063 uniF6C4 +afii10064 afii10064 uniF6C5 +afii10192 afii10192 uniF6C6 +afii10831 afii10831 uniF6C7 +afii10832 afii10832 uniF6C8 +agrave.sc agrave.sc uniF7E0 +Agravesmall Agravesmall uniF7E0 +amacron.sc amacron.sc uniF66E +ampersandsmall ampersandsmall uniF726 +aogonek.sc aogonek.sc uniF66F +apple apple uniF8FF +aring.sc aring.sc uniF7E5 +Aringsmall Aringsmall uniF7E5 +arrowhorizex arrowhorizex uniF8E7 +arrowvertex arrowvertex uniF8E6 +Asmall Asmall uniF761 +a.superior a.superior uniF6E9 +asuperior asuperior uniF6E9 +atilde.sc atilde.sc uniF7E3 +Atildesmall Atildesmall uniF7E3 +b.sc b.sc uniF762 +uni23AA braceex uniF8F4 +uni23A9 braceleftbt uniF8F3 +uni23A8 braceleftmid uniF8F2 +uni23A7 bracelefttp uniF8F1 +uni23AD bracerightbt uniF8FE +uni23AC bracerightmid uniF8FD +uni23AB bracerighttp uniF8FC +uni23A3 bracketleftbt uniF8F0 +uni23A2 bracketleftex uniF8EF +uni23A1 bracketlefttp uniF8EE +uni23A6 bracketrightbt uniF8FB +uni23A5 bracketrightex uniF8FA +uni23A4 bracketrighttp uniF8F9 +Brevesmall Brevesmall uniF6F4 +Bsmall Bsmall uniF762 +b.superior b.superior uniF6EA +bsuperior bsuperior uniF6EA +c.sc c.sc uniF763 +cacute.sc cacute.sc uniF671 +Caronsmall Caronsmall uniF6F5 +ccaron.sc ccaron.sc uniF672 +ccedilla.sc ccedilla.sc uniF7E7 +Ccedillasmall Ccedillasmall uniF7E7 +ccircumflex.sc ccircumflex.sc uniF673 +cdotaccent.sc cdotaccent.sc uniF674 +Cedillasmall Cedillasmall uniF7B8 +cent.inferior cent.inferior uniF6DF +centinferior centinferior uniF6DF +cent.oldstyle cent.oldstyle uniF7A2 +centoldstyle centoldstyle uniF7A2 +cent.superior cent.superior uniF6E0 +centsuperior centsuperior uniF6E0 +Circumflexsmall Circumflexsmall uniF6F6 +comma.inferior comma.inferior uniF6E1 +commainferior commainferior uniF6E1 +comma.superior comma.superior uniF6E2 +commasuperior commasuperior uniF6E2 +copyrightsans copyrightsans uniF8E9 +copyrightserif copyrightserif uniF6D9 +Csmall Csmall uniF763 +d.sc d.sc uniF764 +dcaron.sc dcaron.sc uniF675 +Dieresissmall Dieresissmall uniF7A8 +dollar.inferior dollar.inferior uniF6E3 +dollarinferior dollarinferior uniF6E3 +dollar.oldstyle dollar.oldstyle uniF724 +dollaroldstyle dollaroldstyle uniF724 +dollar.superior dollar.superior uniF6E4 +dollarsuperior dollarsuperior uniF6E4 +Dotaccentsmall Dotaccentsmall uniF6F7 +dotlessj.dup dotlessj.dup uniF6BE +Dsmall Dsmall uniF764 +dstroke.sc dstroke.sc uniF676 +d.superior d.superior uniF6EB +dsuperior dsuperior uniF6EB +e.sc e.sc uniF765 +eacute.sc eacute.sc uniF7E9 +Eacutesmall Eacutesmall uniF7E9 +ebreve.sc ebreve.sc uniF677 +ecaron.sc ecaron.sc uniF678 +ecircumflex.sc ecircumflex.sc uniF7EA +Ecircumflexsmall Ecircumflexsmall uniF7EA +edieresis.sc edieresis.sc uniF7EB +Edieresissmall Edieresissmall uniF7EB +edotaccent.sc edotaccent.sc uniF679 +egrave.sc egrave.sc uniF7E8 +Egravesmall Egravesmall uniF7E8 +eight.dnom eight.dnom uniF65D +eight.numr eight.numr uniF669 +eight.prop eight.prop uniF640 +eight.oldstyle eight.oldstyle uniF738 +eightoldstyle eightoldstyle uniF738 +eight.taboldstyle eight.taboldstyle uniF64B +emacron.sc emacron.sc uniF67A +eng.sc eng.sc uniF67B +eogonek.sc eogonek.sc uniF67C +Esmall Esmall uniF765 +e.superior e.superior uniF6EC +esuperior esuperior uniF6EC +eth.sc eth.sc uniF7F0 +Ethsmall Ethsmall uniF7F0 +exclamdownsmall exclamdownsmall uniF7A1 +exclamsmall exclamsmall uniF721 +f.sc f.sc uniF766 +five.dnom five.dnom uniF65A +five.numr five.numr uniF666 +five.prop five.prop uniF63D +five.oldstyle five.oldstyle uniF735 +fiveoldstyle fiveoldstyle uniF735 +five.taboldstyle five.taboldstyle uniF648 +four.dnom four.dnom uniF659 +four.numr four.numr uniF665 +four.prop four.prop uniF63C +four.oldstyle four.oldstyle uniF734 +fouroldstyle fouroldstyle uniF734 +four.taboldstyle four.taboldstyle uniF647 +Fsmall Fsmall uniF766 +g.sc g.sc uniF767 +gbreve.sc gbreve.sc uniF67D +gcircumflex.sc gcircumflex.sc uniF67E +gcommaaccent.sc gcommaaccent.sc uniF67F +gdotaccent.sc gdotaccent.sc uniF680 +Gravesmall Gravesmall uniF760 +Gsmall Gsmall uniF767 +h.sc h.sc uniF768 +hbar.sc hbar.sc uniF681 +hcircumflex.sc hcircumflex.sc uniF682 +Hsmall Hsmall uniF768 +Hungarumlautsmall Hungarumlautsmall uniF6F8 +hyphen.inferior hyphen.inferior uniF6E5 +hypheninferior hypheninferior uniF6E5 +hyphen.superior hyphen.superior uniF6E6 +hyphensuperior hyphensuperior uniF6E6 +i.sc i.sc uniF769 +iacute.sc iacute.sc uniF7ED +Iacutesmall Iacutesmall uniF7ED +ibreve.sc ibreve.sc uniF683 +icircumflex.sc icircumflex.sc uniF7EE +Icircumflexsmall Icircumflexsmall uniF7EE +idieresis.sc idieresis.sc uniF7EF +Idieresissmall Idieresissmall uniF7EF +idotaccent.sc idotaccent.sc uniF6AD +igrave.sc igrave.sc uniF7EC +Igravesmall Igravesmall uniF7EC +i_j.sc ij.sc uniF684 +imacron.sc imacron.sc uniF685 +integralex integralex uniF8F5 +iogonek.sc iogonek.sc uniF686 +Ismall Ismall uniF769 +i.superior i.superior uniF6ED +isuperior isuperior uniF6ED +itilde.sc itilde.sc uniF687 +j.sc j.sc uniF76A +jcircumflex.sc jcircumflex.sc uniF688 +Jsmall Jsmall uniF76A +k.sc k.sc uniF76B +kcommaaccent.sc kcommaaccent.sc uniF689 +Ksmall Ksmall uniF76B +l.sc l.sc uniF76C +lacute.sc lacute.sc uniF68A +lcaron.sc lcaron.sc uniF68B +lcommaaccent.sc lcommaaccent.sc uniF68C +ldot.sc ldot.sc uniF68D +LL LL uniF6BF +ll ll uniF6C0 +Lslashsmall Lslashsmall uniF6F9 +Lsmall Lsmall uniF76C +l.superior l.superior uniF6EE +lsuperior lsuperior uniF6EE +m.sc m.sc uniF76D +Macronsmall Macronsmall uniF7AF +maichattawalowleftthai maichattawalowleftthai uniF895 +maichattawalowrightthai maichattawalowrightthai uniF894 +maichattawaupperleftthai maichattawaupperleftthai uniF893 +maieklowleftthai maieklowleftthai uniF88C +maieklowrightthai maieklowrightthai uniF88B +maiekupperleftthai maiekupperleftthai uniF88A +maihanakatleftthai maihanakatleftthai uniF884 +maitaikhuleftthai maitaikhuleftthai uniF889 +maitholowleftthai maitholowleftthai uniF88F +maitholowrightthai maitholowrightthai uniF88E +maithoupperleftthai maithoupperleftthai uniF88D +maitrilowleftthai maitrilowleftthai uniF892 +maitrilowrightthai maitrilowrightthai uniF891 +maitriupperleftthai maitriupperleftthai uniF890 +Msmall Msmall uniF76D +m.superior m.superior uniF6EF +msuperior msuperior uniF6EF +n.sc n.sc uniF76E +nacute.sc nacute.sc uniF68E +ncaron.sc ncaron.sc uniF68F +ncommaaccent.sc ncommaaccent.sc uniF690 +nikhahitleftthai nikhahitleftthai uniF899 +nine.dnom nine.dnom uniF65E +nine.numr nine.numr uniF66A +nine.prop nine.prop uniF641 +nine.oldstyle nine.oldstyle uniF739 +nineoldstyle nineoldstyle uniF739 +nine.taboldstyle nine.taboldstyle uniF64C +Nsmall Nsmall uniF76E +ntilde.sc ntilde.sc uniF7F1 +Ntildesmall Ntildesmall uniF7F1 +o.sc o.sc uniF76F +oacute.sc oacute.sc uniF7F3 +Oacutesmall Oacutesmall uniF7F3 +obreve.sc obreve.sc uniF691 +ocircumflex.sc ocircumflex.sc uniF7F4 +Ocircumflexsmall Ocircumflexsmall uniF7F4 +odieresis.sc odieresis.sc uniF7F6 +Odieresissmall Odieresissmall uniF7F6 +OEsmall OEsmall uniF6FA +Ogoneksmall Ogoneksmall uniF6FB +ograve.sc ograve.sc uniF7F2 +Ogravesmall Ogravesmall uniF7F2 +ohungarumlaut.sc ohungarumlaut.sc uniF692 +omacron.sc omacron.sc uniF693 +one.dnom one.dnom uniF656 +one.numr one.numr uniF662 +one.prop one.prop uniF6DC +onefitted onefitted uniF6DC +one.oldstyle one.oldstyle uniF731 +oneoldstyle oneoldstyle uniF731 +one.taboldstyle one.taboldstyle uniF644 +oslash.sc oslash.sc uniF7F8 +oslashacute.sc oslashacute.sc uniF694 +Oslashsmall Oslashsmall uniF7F8 +Osmall Osmall uniF76F +o.superior o.superior uniF6F0 +osuperior osuperior uniF6F0 +otilde.sc otilde.sc uniF7F5 +Otildesmall Otildesmall uniF7F5 +p.sc p.sc uniF770 +uni239D parenleftbt uniF8ED +uni239C parenleftex uniF8EC +uni239B parenlefttp uniF8EB +uni23A0 parenrightbt uniF8F8 +uni239F parenrightex uniF8F7 +uni239E parenrighttp uniF8F6 +period.inferior period.inferior uniF6E7 +periodinferior periodinferior uniF6E7 +period.superior period.superior uniF6E8 +periodsuperior periodsuperior uniF6E8 +Psmall Psmall uniF770 +q.sc q.sc uniF771 +Qsmall Qsmall uniF771 +questiondownsmall questiondownsmall uniF7BF +questionsmall questionsmall uniF73F +r.sc r.sc uniF772 +racute.sc racute.sc uniF695 +radicalex radicalex uniF8E5 +rcaron.sc rcaron.sc uniF696 +rcommaaccent.sc rcommaaccent.sc uniF697 +registersans registersans uniF8E8 +registerserif registerserif uniF6DA +Ringsmall Ringsmall uniF6FC +Rsmall Rsmall uniF772 +r.superior r.superior uniF6F1 +rsuperior rsuperior uniF6F1 +rupiah rupiah uniF6DD +s.sc s.sc uniF773 +sacute.sc sacute.sc uniF698 +saraiileftthai saraiileftthai uniF886 +saraileftthai saraileftthai uniF885 +saraueeleftthai saraueeleftthai uniF888 +saraueleftthai saraueleftthai uniF887 +Scaronsmall Scaronsmall uniF6FD +scedilla.sc scedilla.sc uniF699 +scircumflex.sc scircumflex.sc uniF69A +uni0219.sc scommaaccent.sc uniF69B +seven.dnom seven.dnom uniF65C +seven.numr seven.numr uniF668 +seven.prop seven.prop uniF63F +seven.oldstyle seven.oldstyle uniF737 +sevenoldstyle sevenoldstyle uniF737 +seven.taboldstyle seven.taboldstyle uniF64A +six.dnom six.dnom uniF65B +six.numr six.numr uniF667 +six.prop six.prop uniF63E +six.oldstyle six.oldstyle uniF736 +sixoldstyle sixoldstyle uniF736 +six.taboldstyle six.taboldstyle uniF649 +Ssmall Ssmall uniF773 +s.superior s.superior uniF6F2 +ssuperior ssuperior uniF6F2 +t.sc t.sc uniF774 +tbar.sc tbar.sc uniF69C +tcaron.sc tcaron.sc uniF69D +uni021B.sc tcommaaccent.sc uniF69E +thanthakhatlowleftthai thanthakhatlowleftthai uniF898 +thanthakhatlowrightthai thanthakhatlowrightthai uniF897 +thanthakhatupperleftthai thanthakhatupperleftthai uniF896 +thorn.sc thorn.sc uniF7FE +Thornsmall Thornsmall uniF7FE +three.dnom three.dnom uniF658 +three.numr three.numr uniF664 +three.prop three.prop uniF63B +three.oldstyle three.oldstyle uniF733 +threeoldstyle threeoldstyle uniF733 +threequartersemdash threequartersemdash uniF6DE +three.taboldstyle three.taboldstyle uniF646 +Tildesmall Tildesmall uniF6FE +trademarksans trademarksans uniF8EA +trademarkserif trademarkserif uniF6DB +Tsmall Tsmall uniF774 +t.superior t.superior uniF6F3 +tsuperior tsuperior uniF6F3 +two.dnom two.dnom uniF657 +two.numr two.numr uniF663 +two.prop two.prop uniF63A +two.oldstyle two.oldstyle uniF732 +twooldstyle twooldstyle uniF732 +two.taboldstyle two.taboldstyle uniF645 +u.sc u.sc uniF775 +uacute.sc uacute.sc uniF7FA +Uacutesmall Uacutesmall uniF7FA +ubreve.sc ubreve.sc uniF69F +ucircumflex.sc ucircumflex.sc uniF7FB +Ucircumflexsmall Ucircumflexsmall uniF7FB +udieresis.sc udieresis.sc uniF7FC +Udieresissmall Udieresissmall uniF7FC +ugrave.sc ugrave.sc uniF7F9 +Ugravesmall Ugravesmall uniF7F9 +uhungarumlaut.sc uhungarumlaut.sc uniF6A0 +umacron.sc umacron.sc uniF6A1 +uogonek.sc uogonek.sc uniF6A2 +uring.sc uring.sc uniF6A3 +Usmall Usmall uniF775 +utilde.sc utilde.sc uniF6A4 +v.sc v.sc uniF776 +Vsmall Vsmall uniF776 +w.sc w.sc uniF777 +wacute.sc wacute.sc uniF6A5 +wcircumflex.sc wcircumflex.sc uniF6A6 +wdieresis.sc wdieresis.sc uniF6A7 +wgrave.sc wgrave.sc uniF6A8 +Wsmall Wsmall uniF777 +x.sc x.sc uniF778 +Xsmall Xsmall uniF778 +y.sc y.sc uniF779 +yacute.sc yacute.sc uniF7FD +Yacutesmall Yacutesmall uniF7FD +ycircumflex.sc ycircumflex.sc uniF6A9 +ydieresis.sc ydieresis.sc uniF7FF +Ydieresissmall Ydieresissmall uniF7FF +ygrave.sc ygrave.sc uniF6AA +Ysmall Ysmall uniF779 +z.sc z.sc uniF77A +zacute.sc zacute.sc uniF6AB +Zcaronsmall Zcaronsmall uniF6FF +zdotaccent.sc zdotaccent.sc uniF6AC +zero.dnom zero.dnom uniF655 +zero.numr zero.numr uniF661 +zero.prop zero.prop uniF639 +zero.slash zero.slash uniF638 +zero.oldstyle zero.oldstyle uniF730 +zerooldstyle zerooldstyle uniF730 +zero.taboldstyle zero.taboldstyle uniF643 +Zsmall Zsmall uniF77A + diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapot1.pdf b/fonts/poltawski/doc/fonts/poltawski/tstapot1.pdf new file mode 100644 index 0000000000..09c5da181f Binary files /dev/null and b/fonts/poltawski/doc/fonts/poltawski/tstapot1.pdf differ diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapot1.tex b/fonts/poltawski/doc/fonts/poltawski/tstapot1.tex new file mode 100644 index 0000000000..348cefb7a9 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/tstapot1.tex @@ -0,0 +1,60 @@ +% This file belongs to the Antykwa Poltawskiego package. The work is released under +% the GUST Font License. See the MANIFEST-Antykwa-Poltawskiego.txt and +% README-Antykwa-Poltawskiego.txt files for the details. For the most recent version +% of this license see http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt +% or http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt + +\documentclass{article} + +\usepackage{antpolt} + +\newcommand*{\tekst}{A~q\^u\'{\i}ck br\`ow\~n \TeX\ j\"umps.} +\makeatletter +\newcommand*{\test}[3]{{% + #1\fontseries{#2}\fontshape{#3}\selectfont + \edef\opis{\f@encoding/\f@family/\f@series/\f@shape/\f@size:}% + \noindent\hskip-10mm + \hbox to40mm{\small\usefont{OT1}{lmtt}{m}{n}\opis\hfil}% + \tekst\kern-30mm\null\par +}} + +\newcommand*{\testsize}{% + \test{\rmfamily}{l}{n} + \test{\rmfamily}{l}{it} + \test{\rmfamily}{m}{n} + \test{\rmfamily}{m}{it} + \test{\rmfamily}{sb}{n} + \test{\rmfamily}{sb}{it} + \test{\rmfamily}{b}{n} + \test{\rmfamily}{b}{it} + \test{\rmfamily}{l}{sc} + \test{\rmfamily}{l}{scit} + \test{\rmfamily}{m}{sc} + \test{\rmfamily}{m}{scit} + \test{\rmfamily}{sb}{sc} + \test{\rmfamily}{sb}{scit} + \test{\rmfamily}{b}{sc} + \test{\rmfamily}{b}{scit} + \medskip +} + + +\begin{document} + +\tiny\testsize +\scriptsize\testsize +\footnotesize\testsize +\small\testsize +\normalsize\testsize +\large\testsize +\Large\testsize +\LARGE\testsize +\huge\testsize +\Huge\testsize + +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapot4.pdf b/fonts/poltawski/doc/fonts/poltawski/tstapot4.pdf new file mode 100644 index 0000000000..623d4511b3 Binary files /dev/null and b/fonts/poltawski/doc/fonts/poltawski/tstapot4.pdf differ diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapot4.tex b/fonts/poltawski/doc/fonts/poltawski/tstapot4.tex new file mode 100644 index 0000000000..329aad8af1 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/tstapot4.tex @@ -0,0 +1,62 @@ +%& --translate-file=il2-pl +% -*- coding: ISO-8859-2 -*- +% This file belongs to the Antykwa Poltawskiego package. The work is released under +% the GUST Font License. See the MANIFEST-Antykwa-Poltawskiego.txt and +% README-Antykwa-Poltawskiego.txt files for the details. For the most recent version +% of this license see http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt +% or http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt + +\documentclass{article} +\usepackage{polski} +\usepackage{antpolt} + +\newcommand*{\tekst}{Za¿ó³æ gê¶l± ja¼ñ} +\makeatletter +\newcommand*{\test}[3]{{% + #1\fontseries{#2}\fontshape{#3}\selectfont + \edef\opis{\f@encoding/\f@family/\f@series/\f@shape/\f@size:}% + \noindent\hskip-5mm + \hbox to40mm{\small\usefont{OT1}{lmtt}{m}{n}\opis\hfil}% + \tekst\kern-10mm\null\par +}} + +\newcommand*{\testsize}{% + \test{\rmfamily}{l}{n} + \test{\rmfamily}{l}{it} + \test{\rmfamily}{m}{n} + \test{\rmfamily}{m}{it} + \test{\rmfamily}{sb}{n} + \test{\rmfamily}{sb}{it} + \test{\rmfamily}{b}{n} + \test{\rmfamily}{b}{it} + \test{\rmfamily}{l}{sc} + \test{\rmfamily}{l}{scit} + \test{\rmfamily}{m}{sc} + \test{\rmfamily}{m}{scit} + \test{\rmfamily}{sb}{sc} + \test{\rmfamily}{sb}{scit} + \test{\rmfamily}{b}{sc} + \test{\rmfamily}{b}{scit} + \medskip +} + + +\begin{document} + +\tiny\testsize +\scriptsize\testsize +\footnotesize\testsize +\small\testsize +\normalsize\testsize +\large\testsize +\Large\testsize +\LARGE\testsize +\huge\testsize +\Huge\testsize + +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapqx.pdf b/fonts/poltawski/doc/fonts/poltawski/tstapqx.pdf new file mode 100644 index 0000000000..e527403bd0 Binary files /dev/null and b/fonts/poltawski/doc/fonts/poltawski/tstapqx.pdf differ diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapqx.tex b/fonts/poltawski/doc/fonts/poltawski/tstapqx.tex new file mode 100644 index 0000000000..1672b117cb --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/tstapqx.tex @@ -0,0 +1,62 @@ +% -*- coding: ISO-8859-2 -*- +% This file belongs to the Antykwa Poltawskiego package. The work is released under +% the GUST Font License. See the MANIFEST-Antykwa-Poltawskiego.txt and +% README-Antykwa-Poltawskiego.txt files for the details. For the most recent version +% of this license see http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt +% or http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt + +\documentclass{article} +\usepackage[QX]{fontenc} +\usepackage[latin2]{inputenc} +\usepackage{antpolt} + +\newcommand*{\tekst}{Za¿ó³æ gê¶l± ja¼ñ} +\makeatletter +\newcommand*{\test}[3]{{% + #1\fontseries{#2}\fontshape{#3}\selectfont + \edef\opis{\f@encoding/\f@family/\f@series/\f@shape/\f@size:}% + \noindent\hskip-5mm + \hbox to40mm{\small\usefont{OT1}{lmtt}{m}{n}\opis\hfil}% + \tekst\kern-10mm\null\par +}} + +\newcommand*{\testsize}{% + \test{\rmfamily}{l}{n} + \test{\rmfamily}{l}{it} + \test{\rmfamily}{m}{n} + \test{\rmfamily}{m}{it} + \test{\rmfamily}{sb}{n} + \test{\rmfamily}{sb}{it} + \test{\rmfamily}{b}{n} + \test{\rmfamily}{b}{it} + \test{\rmfamily}{l}{sc} + \test{\rmfamily}{l}{scit} + \test{\rmfamily}{m}{sc} + \test{\rmfamily}{m}{scit} + \test{\rmfamily}{sb}{sc} + \test{\rmfamily}{sb}{scit} + \test{\rmfamily}{b}{sc} + \test{\rmfamily}{b}{scit} + \medskip +} + + +\begin{document} + +\tiny\testsize +\scriptsize\testsize +\footnotesize\testsize +\small\testsize +\normalsize\testsize +\large\testsize +\Large\testsize +\LARGE\testsize +\huge\testsize +\Huge\testsize + +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapt1.pdf b/fonts/poltawski/doc/fonts/poltawski/tstapt1.pdf new file mode 100644 index 0000000000..b89f45c6d9 Binary files /dev/null and b/fonts/poltawski/doc/fonts/poltawski/tstapt1.pdf differ diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapt1.tex b/fonts/poltawski/doc/fonts/poltawski/tstapt1.tex new file mode 100644 index 0000000000..4d50724b07 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/tstapt1.tex @@ -0,0 +1,62 @@ +% -*- coding: ISO-8859-2 -*- +% This file belongs to the Antykwa Poltawskiego package. The work is released under +% the GUST Font License. See the MANIFEST-Antykwa-Poltawskiego.txt and +% README-Antykwa-Poltawskiego.txt files for the details. For the most recent version +% of this license see http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt +% or http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt + +\documentclass{article} +\usepackage[T1]{fontenc} +\usepackage[latin2]{inputenc} +\usepackage{antpolt} + +\newcommand*{\tekst}{Za¿ó³æ gê¶l± ja¼ñ} +\makeatletter +\newcommand*{\test}[3]{{% + #1\fontseries{#2}\fontshape{#3}\selectfont + \edef\opis{\f@encoding/\f@family/\f@series/\f@shape/\f@size:}% + \noindent\hskip-5mm + \hbox to40mm{\small\usefont{OT1}{lmtt}{m}{n}\opis\hfil}% + \tekst\kern-10mm\null\par +}} + +\newcommand*{\testsize}{% + \test{\rmfamily}{l}{n} + \test{\rmfamily}{l}{it} + \test{\rmfamily}{m}{n} + \test{\rmfamily}{m}{it} + \test{\rmfamily}{sb}{n} + \test{\rmfamily}{sb}{it} + \test{\rmfamily}{b}{n} + \test{\rmfamily}{b}{it} + \test{\rmfamily}{l}{sc} + \test{\rmfamily}{l}{scit} + \test{\rmfamily}{m}{sc} + \test{\rmfamily}{m}{scit} + \test{\rmfamily}{sb}{sc} + \test{\rmfamily}{sb}{scit} + \test{\rmfamily}{b}{sc} + \test{\rmfamily}{b}{scit} + \medskip +} + + +\begin{document} + +\tiny\testsize +\scriptsize\testsize +\footnotesize\testsize +\small\testsize +\normalsize\testsize +\large\testsize +\Large\testsize +\LARGE\testsize +\huge\testsize +\Huge\testsize + +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapts1.pdf b/fonts/poltawski/doc/fonts/poltawski/tstapts1.pdf new file mode 100644 index 0000000000..8f365f8356 Binary files /dev/null and b/fonts/poltawski/doc/fonts/poltawski/tstapts1.pdf differ diff --git a/fonts/poltawski/doc/fonts/poltawski/tstapts1.tex b/fonts/poltawski/doc/fonts/poltawski/tstapts1.tex new file mode 100644 index 0000000000..10feccf553 --- /dev/null +++ b/fonts/poltawski/doc/fonts/poltawski/tstapts1.tex @@ -0,0 +1,81 @@ +% This file belongs to the Antykwa Poltawskiego package. The work is released under +% the GUST Font License. See the MANIFEST-Antykwa-Poltawskiego.txt and +% README-Antykwa-Poltawskiego.txt files for the details. For the most recent version +% of this license see http://www.gust.org.pl/fonts/licenses/GUST-FONT-LICENSE.txt +% or http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt + +\documentclass{article} + +\usepackage[T1]{fontenc} +\usepackage{textcomp,antpolt} + +\newcommand*{\tekst}{% + \setlength{\spaceskip}{0.15em minus .05em}% + \texteuro\ + \textoneoldstyle\ + \textthreeoldstyle\ + \'a + \capitalacute A + \textborn\ + \ \textmarried\ + \ \textmusicalnote\ + \textbullet\ + 32\textcelsius\ + \textdollaroldstyle\ + \textnineoldstyle\ + \textrecipe\ + \texttrademark\ + \textcopyright\ + \textsection\ + \textcopyleft\ + \textinterrobang% +} +\makeatletter +\newcommand*{\test}[3]{{% + \rightskip-14mm\relax + #1\fontseries{#2}\fontshape{#3}\selectfont + \edef\opis{\f@encoding/\f@family/\f@series/\f@shape/\f@size:}% + \noindent\hbox to15mm{\kern-22mm\small\usefont{OT1}{lmtt}{m}{n}\opis\hfil}% + \tekst\par +}} + +\newcommand*{\testsize}{% + \test{\rmfamily}{l}{n} + \test{\rmfamily}{l}{it} + \test{\rmfamily}{m}{n} + \test{\rmfamily}{m}{it} + \test{\rmfamily}{sb}{n} + \test{\rmfamily}{sb}{it} + \test{\rmfamily}{b}{n} + \test{\rmfamily}{b}{it} +% \test{\rmfamily}{l}{sc} +% \test{\rmfamily}{l}{scit} +% \test{\rmfamily}{m}{sc} +% \test{\rmfamily}{m}{scit} +% \test{\rmfamily}{sb}{sc} +% \test{\rmfamily}{sb}{scit} +% \test{\rmfamily}{b}{sc} +% \test{\rmfamily}{b}{scit} + \medskip +} + + +\begin{document} + +\tiny\testsize +\scriptsize\testsize +\footnotesize\testsize +\small\testsize +\normalsize\testsize +\large\testsize +\Large\testsize +\LARGE\testsize +\huge\testsize +\Huge\testsize + +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: -- cgit v1.2.3