diff options
author | Norbert Preining <norbert@preining.info> | 2023-02-02 03:04:21 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2023-02-02 03:04:21 +0000 |
commit | 1cbbd7b2417e7e77710bec38f8245c0d2231dddd (patch) | |
tree | fab9ca72c7b4b8a42dfab8c3b743a07f7aa53275 /fonts | |
parent | 665dcbc32c9499a686db2c369349632986af26e6 (diff) |
CTAN sync 202302020304
Diffstat (limited to 'fonts')
25 files changed, 4763 insertions, 3006 deletions
diff --git a/fonts/utilities/fontools/README b/fonts/utilities/fontools/README index 684b0fdda6..a7edc5d48e 100644 --- a/fonts/utilities/fontools/README +++ b/fonts/utilities/fontools/README @@ -79,6 +79,6 @@ See the GNU General Public License for more details. LICENSE & COPYRIGHT =================== -This software is copyright (C) 2005-2022 Marc Penninga. +This software is copyright (C) 2005-2023 Marc Penninga. It is released under the terms of the GNU General Public Licence; see the file GPLv2.txt for the license conditions. diff --git a/fonts/utilities/fontools/bin/afm2afm b/fonts/utilities/fontools/bin/afm2afm index 894764918e..37ddbb679a 100755 --- a/fonts/utilities/fontools/bin/afm2afm +++ b/fonts/utilities/fontools/bin/afm2afm @@ -4,7 +4,7 @@ ---------------------------------------------------------------------------- - Copyright (C) 2005-2022 Marc Penninga. + Copyright (C) 2005-2023 Marc Penninga. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License @@ -37,7 +37,7 @@ use File::Basename; use Getopt::Long; use Pod::Usage; -my $VERSION = "20220124"; +my $VERSION = "20230201"; parse_commandline(); @@ -398,7 +398,7 @@ Marc Penninga <marcpenninga@gmail.com> =head1 COPYRIGHT -Copyright (C) 2005-2022 Marc Penninga. +Copyright (C) 2005-2023 Marc Penninga. =head1 LICENSE @@ -421,7 +421,7 @@ See the GNU General Public License for more details. =head1 VERSION -This document describes B<afm2afm> version 20220124. +This document describes B<afm2afm> version 20230201. =head1 RECENT CHANGES diff --git a/fonts/utilities/fontools/bin/autoinst b/fonts/utilities/fontools/bin/autoinst index e52391452f..5f3a71c1df 100755 --- a/fonts/utilities/fontools/bin/autoinst +++ b/fonts/utilities/fontools/bin/autoinst @@ -4,7 +4,7 @@ ---------------------------------------------------------------------------- - Copyright (C) 2005-2022 Marc Penninga. + Copyright (C) 2005-2023 Marc Penninga. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License @@ -41,7 +41,7 @@ use Getopt::Long (); use Pod::Usage (); use POSIX (); -my $VERSION = '20220124'; +my $VERSION = '20230201'; my ($d, $m, $y) = (localtime time)[3 .. 5]; my $TODAY = sprintf "%04d/%02d/%02d", $y + 1900, $m + 1, $d; @@ -129,15 +129,17 @@ sub main { LaTeX::create_support_files(\@workitems, $family, $to_nfss); Otftotfm::run_commands(\@commands, $family, $log); - if ($ARGV{t1suffix}) { - Work::modify_fontnames($family, $fontlist); - } + if (!$ARGV{manual}) { + if ($ARGV{t1suffix}) { + Work::modify_fontnames($family, $fontlist); + } - print <<"END_MESSAGE_UPDMAP"; + print <<"END_MESSAGE_UPDMAP"; [INFO] Done generating fonts! Please update TeX's databases (by calling 'texhash' and 'updmap' or their equivalents on your system) before using these fonts. END_MESSAGE_UPDMAP + } } $log->close(); @@ -587,6 +589,7 @@ sub parse { my $metadata = _get_metadata($filename); $self->_parse_metadata($metadata) + ->_parse_cffdata() ->_parse_os2data() ->_parse_featuredata() ->_parse_sizedata() @@ -631,6 +634,15 @@ sub _parse_metadata { $data->{$key} =~ s/\s+//xmsg; } + for my $item (qw(family subfamily fullname)) { + if (!$data->{$item}) { + die <<"END_ERR_METADATA_MISSING" +[ERROR] Parsing font metadata failed for $self->{filename}: + could not find '$item' metadata item +END_ERR_METADATA_MISSING + } + } + $data->{family} = $data->{preferredfamily} || $data->{family}; $data->{subfamily} = $data->{preferredsubfamily} || $data->{subfamily}; $data->{fullname} =~ s/\A$data->{family}//xms; @@ -638,7 +650,7 @@ sub _parse_metadata { # clean up family name (it's used in LaTeX command names) my @DIGITS = qw(Zero One Two Three Four Five Six Seven Eight Nine); - $data->{family} =~ s/(?: LT | MT)(?: Std | Pro )\z//xms; + $data->{family} =~ s/(?: LT | MT)(?: Std | Pro )//xms; $data->{family} =~ s/(\d)/$DIGITS[$1]/xmsge; $data->{family} =~ s/[^A-Za-z]+//xmsg; @@ -791,6 +803,47 @@ sub _parse_metadata { # -------------------------------------------------------------------------- +# Reads the 'Name INDEX' entry from the CFF table, if that exists. +# +# We need this entry only because cfftot1 uses it instead of +# -------------------------------------------------------------------------- +sub _parse_cffdata { + my $self = shift; + + my $tables; + eval { + my $cmd = qq(otfinfo --tables "$self->{filename}"); + open my $otfinfo, '-|:raw', $cmd + or die "could not fork(): $!"; + $tables = do { local $/; <$otfinfo> }; + close $otfinfo + or die "'$cmd' failed"; + } or warn "[WARNING] $@"; + + if (index($tables, 'CFF') == -1) { + $self->{cff_name} = $self->{name}; + return $self; + } + + my $cff_table; + eval { + my $cmd = qq(otfinfo --dump-table "CFF" "$self->{filename}"); + open my $otfinfo, '-|:raw', $cmd + or die "could not fork(): $!"; + $cff_table = do { local $/; <$otfinfo> }; + close $otfinfo + or die "'$cmd' failed"; + } or warn "[WARNING] $@"; + + my ($name_index) = unpack '@8C/Z', $cff_table; + + $self->{cff_name} = $name_index; + + return $self; +} + + +# -------------------------------------------------------------------------- # Parses usWeightClass and usWidthClass from the OS/2 table. # -------------------------------------------------------------------------- sub _parse_os2data { @@ -1098,37 +1151,37 @@ END_STY_HEADER END_STY_XKEYVAL + my ($figurestyle_default, $figurealign_default); if ($seen{LF} or $seen{TLF}) { print {$STY} "\\DeclareOptionX{lining}{\\edef\\$fam\@figurestyle{LF}}\n"; + $figurestyle_default = 'LF'; } if ($seen{OsF} or $seen{TOsF}) { print {$STY} "\\DeclareOptionX{oldstyle}{\\edef\\$fam\@figurestyle{OsF}}\n"; + $figurestyle_default = 'OsF'; } if ($seen{TLF} or $seen{TOsF}) { print {$STY} "\\DeclareOptionX{tabular}{\\edef\\$fam\@figurealign{T}}\n"; + $figurealign_default = 'T'; } if ($seen{LF} or $seen{OsF}) { print {$STY} "\\DeclareOptionX{proportional}{\\edef\\$fam\@figurealign{}}\n"; + $figurealign_default = ''; } print {$STY} <<"END_STY_MAINFONT"; +\\edef\\$fam\@figurestyle{$figurestyle_default} +\\edef\\$fam\@figurealign{$figurealign_default} + \\DeclareOptionX{mainfont}{ \\renewcommand{\\familydefault}{\\$ARGV{nfss}default} } END_STY_MAINFONT - my $defaults - = $seen{OsF} ? 'oldstyle,proportional' - : $seen{TOsF} ? 'oldstyle,tabular' - : $seen{LF} ? 'lining,proportional' - : $seen{TLF} ? 'lining,tabular' - : die "[ERROR] Internal bug, please report!" - ; - for my $series (qw(heavy black extrabold demibold semibold bold)) { if ( $seen{$series} ) { print {$STY} @@ -1144,6 +1197,7 @@ END_STY_MAINFONT "{$series}}\n"; } } + print {$STY} "\n"; if ($ARGV{math}) { print {$STY} <<"END_STY_MATHOPTION"; @@ -1160,24 +1214,32 @@ END_STY_MAINFONT END_STY_MATHOPTION - if ($seen{LF} or $seen{TLF}) { - print {$STY} "\\newcommand*{\\$fam\@mathfigurestyle}{LF}\n"; - } - elsif ($seen{OsF} or $seen{TOsF}) { - print {$STY} "\\newcommand*{\\$fam\@mathfigurestyle}{OsF}\n"; - } - + my ($mathfigurestyle_default, $mathfigurealign_default); if ($seen{OsF} or $seen{TOsF}) { print {$STY} - "\\DeclareOptionX{matholdstyle}\n", - " {\\renewcommand*{\\$fam\@mathfigurestyle}{OsF}}\n"; + "\\DeclareOptionX{matholdstyle}{\\edef\\$fam\@mathfigurestyle{OsF}}\n"; + $mathfigurestyle_default = 'OsF'; } if ($seen{LF} or $seen{TLF}) { print {$STY} - "\\DeclareOptionX{mathlining}\n", - " {\\renewcommand{\\$fam\@mathfigurestyle}{LF}}\n"; + "\\DeclareOptionX{mathlining}{\\edef\\$fam\@mathfigurestyle{LF}}\n"; + $mathfigurestyle_default = 'LF'; + } + if ($seen{LF} or $seen{OsF}) { + print {$STY} + "\\DeclareOptionX{mathproportional}{\\edef\\$fam\@mathfigurealign{}}\n"; + $mathfigurealign_default = ''; } - print {$STY} "\n"; + if ($seen{TLF} or $seen{TOsF}) { + print {$STY} + "\\DeclareOptionX{mathtabular}{\\edef\\$fam\@mathfigurealign{T}}\n"; + $mathfigurealign_default = 'T'; + } + print {$STY} <<"END_STY_MATHDEFAULTS"; +\\edef\\$fam\@mathfigurestyle{$mathfigurestyle_default} +\\edef\\$fam\@mathfigurealign{$mathfigurealign_default} + +END_STY_MATHDEFAULTS if ($seen{sw}) { print {$STY} <<"END_STY_MATHCALOPTION"; @@ -1189,17 +1251,15 @@ END_STY_MATHCALOPTION } print {$STY} <<"END_STY_PROCESSOPTIONS"; -\\ExecuteOptionsX{$defaults} \\ProcessOptionsX\\relax END_STY_PROCESSOPTIONS - print {$STY} <<"END_STY_PACKAGES"; -\\RequirePackage{@{[ $seen{TS1} ? "fontenc,textcomp" : "fontenc" ]}} -\\RequirePackage{ifthen} -\\RequirePackage{mweights} - -END_STY_PACKAGES + print {$STY} "\\RequirePackage[@{[ join ',', grep { $_ ne 'OT1' } @{$ARGV{encoding}} ]}]{fontenc}\n"; + print {$STY} "\\RequirePackage{textcomp}\n" if $seen{TS1}; + print {$STY} "\\RequirePackage{ifthen}\n"; + print {$STY} "\\RequirePackage{mweights}\n"; + print {$STY} "\n"; print {$STY} <<'END_STY_FONTAXES_START'; \IfFileExists{fontaxes.sty}{ @@ -1226,6 +1286,13 @@ END_STY_FONTAXES_SW \DeclareTextFontCommand{\textsup}{\supfigures} \let\textsu\textsup \let\textsuperior\textsup + \let\@oldtextsuperscript\textsuperscript + \def\textsuperscript{\@ifstar\@oldtextsuperscript\textsup} + \def\@makefnmark{% + \mbox{\footnotemarkfont\textsuperscript{\@thefnmark}}} + \@ifundefined{ftntm@font}% + {\let\footnotemarkfont\normalfont}% + {\let\footnotemarkfont\ftntm@font} END_STY_FONTAXES_SUP } @@ -1240,6 +1307,8 @@ END_STY_FONTAXES_SUP \DeclareTextFontCommand{\textinf}{\inffigures} \let\textin\textinf \let\textinferior\textinf + \let\@oldtextsubscript\textsubscript + \def\textsubscript{\@ifstar\@oldtextsubscript\textinf} END_STY_FONTAXES_INF } @@ -1340,27 +1409,44 @@ END_STYLE_REST if ($ARGV{math}) { print {$STY} <<"END_STY_MATH"; +% Logically these definitions belong inside the \\if$fam\@math, +% but somehow Latex doesn't like that. \\newif\\if$fam\@mathLATINup\\$fam\@mathLATINupfalse \\newif\\if$fam\@mathlatinup\\$fam\@mathlatinupfalse \\newif\\if$fam\@mathGREEKup\\$fam\@mathGREEKupfalse \\newif\\if$fam\@mathgreekup\\$fam\@mathgreekupfalse \\if$fam\@math - \\DeclareSymbolFont{newoperators} {OT1}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{n} - \\SetSymbolFont{newoperators}{bold}{OT1}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} + \\ifthenelse{\\equal{\\$fam\@mathstyle}{TeX}} + {\\$fam\@mathGREEKuptrue} + {} + \\ifthenelse{\\equal{\\$fam\@mathstyle}{french}} + {\\$fam\@mathLATINuptrue + \\$fam\@mathGREEKuptrue + \\$fam\@mathgreekuptrue} + {} + \\ifthenelse{\\equal{\\$fam\@mathstyle}{upright}} + {\\$fam\@mathLATINuptrue + \\$fam\@mathlatinuptrue + \\$fam\@mathGREEKuptrue + \\$fam\@mathgreekuptrue} + {} - \\DeclareSymbolFont{newletters} {OML}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{it} - \\SetSymbolFont{newletters}{bold}{OML}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{it} + \\DeclareSymbolFont{newoperators} {OT1}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{n} + \\SetSymbolFont{newoperators}{bold}{OT1}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} + + \\DeclareSymbolFont{newletters} {OML}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{it} + \\SetSymbolFont{newletters}{bold}{OML}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{it} \\DeclareSymbolFontAlphabet{\\mathrm}{newoperators} \\DeclareSymbolFontAlphabet{\\mathnormal}{newletters} \\def\\operator\@font{\\mathgroup\\symnewoperators} - \\SetMathAlphabet{\\mathit}{normal}{OT1}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{it} - \\SetMathAlphabet{\\mathit}{bold} {OT1}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{it} + \\SetMathAlphabet{\\mathit}{normal}{OT1}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{it} + \\SetMathAlphabet{\\mathit}{bold} {OT1}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{it} - \\SetMathAlphabet{\\mathbf}{normal}{OT1}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} - \\SetMathAlphabet{\\mathbf}{bold} {OT1}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} + \\SetMathAlphabet{\\mathbf}{normal}{OT1}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} + \\SetMathAlphabet{\\mathbf}{bold} {OT1}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} \\def\\re\@DeclareMathSymbol#1#2#3#4{% \\if\\relax\\noexpand#1\\let#1=\\undefined\\fi @@ -1439,8 +1525,10 @@ END_STYLE_REST \\re\@DeclareMathSymbol{Y}{\\mathalpha}{newletters}{`Y} \\re\@DeclareMathSymbol{Z}{\\mathalpha}{newletters}{`Z} - \\re\@DeclareMathSymbol{\\imath}{\\mathord}{newletters}{"7B} - \\re\@DeclareMathSymbol{\\jmath}{\\mathord}{newletters}{"7C} + \\re\@DeclareMathSymbol{\\partial}{\\mathord}{newletters}{"40} + \\re\@DeclareMathSymbol{\\ell} {\\mathord}{newletters}{"60} + \\re\@DeclareMathSymbol{\\imath} {\\mathord}{newletters}{"7B} + \\re\@DeclareMathSymbol{\\jmath} {\\mathord}{newletters}{"7C} % % A number of math symbol declarations have been commented out, @@ -1528,21 +1616,6 @@ END_STYLE_REST \\re\@DeclareMathSymbol{\\varphi} {\\mathord}{newletters}{"27} \\fi - \\ifthenelse{\\equal{\\$fam\@mathstyle}{TeX}} - {\\$fam\@mathGREEKuptrue} - {} - \\ifthenelse{\\equal{\\$fam\@mathstyle}{french}} - {\\$fam\@mathLATINuptrue - \\$fam\@mathGREEKuptrue - \\$fam\@mathgreekuptrue} - {} - \\ifthenelse{\\equal{\\$fam\@mathstyle}{upright}} - {\\$fam\@mathLATINuptrue - \\$fam\@mathlatinuptrue - \\$fam\@mathGREEKuptrue - \\$fam\@mathgreekuptrue} - {} - \\if$fam\@mathLATINup \\re\@DeclareMathSymbol{A}{\\mathalpha}{newoperators}{`A} \\re\@DeclareMathSymbol{B}{\\mathalpha}{newoperators}{`B} @@ -1573,8 +1646,8 @@ END_STYLE_REST \\fi \\if$fam\@mathlatinup - \\DeclareSymbolFont{upletters} {OML}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{n} - \\SetSymbolFont{upletters}{bold}{OML}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} + \\DeclareSymbolFont{upletters} {OML}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{n} + \\SetSymbolFont{upletters}{bold}{OML}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} \\re\@DeclareMathSymbol{a}{\\mathord}{upletters}{`a} \\re\@DeclareMathSymbol{b}{\\mathord}{upletters}{`b} @@ -1624,8 +1697,8 @@ END_STYLE_REST \\fi \\if$fam\@mathgreekup - \\DeclareSymbolFont{upletters} {OML}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{n} - \\SetSymbolFont{upletters}{bold}{OML}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} + \\DeclareSymbolFont{upletters} {OML}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{n} + \\SetSymbolFont{upletters}{bold}{OML}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{n} \\re\@DeclareMathSymbol{\\alpha} {\\mathord}{upletters}{"0B} \\re\@DeclareMathSymbol{\\beta} {\\mathord}{upletters}{"0C} @@ -1665,8 +1738,8 @@ END_STY_MATH if ($seen{sw}) { print {$STY} <<"END_STY_MATHCAL"; \\if$fam\@mathcal - \\SetMathAlphabet{\\mathcal}{normal}{OT1}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{sw} - \\SetMathAlphabet{\\mathcal}{bold} {OT1}{$fam-\\$fam\@figurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{sw} + \\SetMathAlphabet{\\mathcal}{normal}{OT1}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\mdseries\@$ARGV{nfss}}{sw} + \\SetMathAlphabet{\\mathcal}{bold} {OT1}{$fam-\\$fam\@mathfigurealign\\$fam\@mathfigurestyle}{\\bfseries\@$ARGV{nfss}}{sw} \\fi END_STY_MATHCAL @@ -1907,6 +1980,7 @@ I'm using the following options: math: @{[ $ARGV{math} ? 'yes' : 'no' ]} mathspacing: $ARGV{mathspacing} + auto/manual: @{[ $ARGV{manual} ? 'manual' : 'auto' ]} fontname suffix: @{[ $ARGV{t1suffix} || '(none)' ]} END_ARGUMENTS @@ -2097,6 +2171,7 @@ Possible options: -math Generate basic math fonts -mathspacing=AMOUNT Letterspace the math fonts by AMOUNT/1000 em + -manual Manual mode (see documentation) -t1suffix=SUFFIX Add SUFFIX to name of generated pfb fonts font[s] The fonts (.otf or .ttf format) to install. @@ -2127,6 +2202,7 @@ END_USAGE target => '', vendor => 'lcdftools', typeface => '', + manual => '0', # 0 = no, 1 = yes dryrun => '0', # 0 = no, 1 = yes logfile => '', figurekern => '1', # 0 = no, 1 = yes @@ -2175,6 +2251,7 @@ sub parse_options { 'target=s' => \$ARGV{target}, 'vendor=s' => \$ARGV{vendor}, 'typeface=s' => \$ARGV{typeface}, + 'manual' => \$ARGV{manual}, 'dryrun' => \$ARGV{dryrun}, 'figurekern!' => \$ARGV{figurekern}, 'logfile=s' => \$ARGV{logfile}, @@ -2287,7 +2364,7 @@ sub create_command { || Util::any( map { $_ eq 'liga' } @{$workitem->{features}} ); return join q( ), 'otftotfm', - '--automatic', + ($ARGV{manual} ? '--pl' : '--automatic'), "--encoding=$workitem->{enc_file}", $targetdirs, '--no-updmap', @@ -2313,44 +2390,52 @@ sub create_command { # -------------------------------------------------------------------------- -# Executes all commands. +# Executes (or saves to file, when $ARGV{manual} is true) all commands. # -------------------------------------------------------------------------- sub run_commands { my ($commandlist, $family, $log) = @_; - my $n_cmds = scalar @{$commandlist}; - my ($log_ncmds, $ceil) = (1, 10); - while ($n_cmds >= $ceil) { - $log_ncmds++; - $ceil *= 10; - } - my $template = sprintf "%%%dd of %%%dd", $log_ncmds, $log_ncmds; - my $l_template = 4 + 2 * $log_ncmds; - $| = 1; # autoflush - print "[INFO] Generating fonts for $family: ", " " x $l_template; - - my $i_cmd = 1; - my $oops = 0; - for my $command (@{$commandlist}) { - print "\b" x $l_template; - printf $template, $i_cmd++, $n_cmds; - open my $otftotfm, '-|', "$command 2>&1" - or die "could not fork(): $!"; - my $msgs = do { local $/; <$otftotfm> }; - close $otftotfm - or do { - warn "\n$command\n\n$msgs\n"; - $log->log("\n$command\n\n$msgs\n"); - $oops = 1; - }; + if ($ARGV{manual}) { + open my $BAT, '>', 'autoinst.bat' + or die "[ERROR] Can't create 'autoinst.bat': $!"; + print {$BAT} "$_\n" for @{$commandlist}; + close $BAT; } - print "\n"; - $| = 0; - if ($oops) { - warn <<"END_OTFTOTFM_WARNING"; + else { + my $n_cmds = scalar @{$commandlist}; + my ($log_ncmds, $ceil) = (1, 10); + while ($n_cmds >= $ceil) { + $log_ncmds++; + $ceil *= 10; + } + my $template = sprintf "%%%dd of %%%dd", $log_ncmds, $log_ncmds; + my $l_template = 4 + 2 * $log_ncmds; + $| = 1; # autoflush + print "[INFO] Generating fonts for $family: ", " " x $l_template; + + my $i_cmd = 1; + my $oops = 0; + for my $command (@{$commandlist}) { + print "\b" x $l_template; + printf $template, $i_cmd++, $n_cmds; + open my $otftotfm, '-|', "$command 2>&1" + or die "could not fork(): $!"; + my $msgs = do { local $/; <$otftotfm> }; + close $otftotfm + or do { + warn "\n$command\n\n$msgs\n"; + $log->log("\n$command\n\n$msgs\n"); + $oops = 1; + }; + } + print "\n"; + $| = 0; + if ($oops) { + warn <<"END_OTFTOTFM_WARNING"; [ERROR] One or more calls to 'otftotfm' returned a non-zero status code; please check the messages above and in the log file. END_OTFTOTFM_WARNING + } } return; @@ -2705,7 +2790,7 @@ sub process_encoding_options { # or have an accompanying .enc file in the current directory. my @encodings = split /,/, $ARGV{encoding}; for my $enc (@encodings) { - if ($enc !~ m/\A(OT1|T1|TS1|LY1|LGR|T2[ABC]|T3|TS3)\z/xmsi) { + if ($enc !~ m/\A(OT1|T[1345]|T2[ABC]|TS[13]|LY1|LGR|CS|L7X|QX)\z/xmsi) { my $try = $enc; $try .= '.enc' if $try !~ m/[.]enc\z/xmsi; if (!-e $try) { @@ -2753,7 +2838,12 @@ sub process_encoding_options { sub process_target_options{ my $localtarget = File::Spec->catdir( Cwd::getcwd(), 'autoinst_output' ); - if (!$ARGV{target}) { + if ($ARGV{manual}) { + warn "[WARNING] Option '-target' overridden by '-manual'!\n" + if $ARGV{target}; + $ARGV{target} = $localtarget; + } + elsif (!$ARGV{target}) { my $is_windows_os = ( $^O =~ /^MSWin/i ); my $kpsepath = $is_windows_os ? eval { qx( kpsewhich -expand-var=\$TEXMFLOCAL;\$TEXMFHOME ) } @@ -3086,7 +3176,7 @@ sub cleanup { } else { ($workitem->{enc_file} = $workitem->{encoding}) - =~ s{ \A (OT1|OML|T1|TS1|LY1|LGR|T2[ABC]|T3|TS3) \z } + =~ s{ \A (OT1|OML|T[1345]|T2[ABC]|TS[13]|LY1|LGR|CS|L7X|QX) \z } {fontools_\L$1\E}xmsi; } @@ -3144,6 +3234,9 @@ sub modify_fontnames { # The otftotfm-generated map file refers to the original otf files; # we need to change this to use our name-modified Type1 fonts instead. + # Note that cfftot1 uses the Name INDEX from the CFF table, + # not the PostScript name from the name table. These two names are + # usually equal, but not necessarily (sec 5.4.2 in OpenType spec). my $mapfile = File::Spec->catfile( $ARGV{target}, 'fonts', @@ -3178,17 +3271,23 @@ sub modify_fontnames { } my $newfullfam = $full_family . q( ) . $ARGV{t1suffix}; - my $newname = $font->{name}; - if ($newname =~ m/$family/xms) { - $newname =~ s/$family/$newfam/xms; + my $newname; + if ($font->{cff_name} =~ m/$family/xms) { + ($newname = $font->{cff_name}) =~ s/$family/$newfam/xms; } else { - $newname =~ s/(.+?)(-|\z)/$1$ARGV{t1suffix$2}/xms; + (my $dashfam = $font->{originalfamily}) =~ s/[ ]/-/xmsg; + if ($font->{cff_name} =~ m/$dashfam(.+)/xms) { + $newname = $dashfam . '-' . $ARGV{t1suffix} . $1; + } + else { + $newname = $font->{cff_name} . $ARGV{t1suffix}; + } } for my $suffix (q(), q(LCDFJ)) { my $oldfn = File::Spec->catfile( - $pfb_dir, $font->{name} . $suffix . '.pfb'); + $pfb_dir, $font->{cff_name} . $suffix . '.pfb'); my $newfn = File::Spec->catfile( $pfb_dir, $newname . $suffix . '.pfb'); @@ -3207,7 +3306,7 @@ sub modify_fontnames { for (@pfbdata) { if (m/%!PS-AdobeFont-1.0:[ ] | \/FontName[ ]/xms) { - s/$font->{name}/$newname/; + s/$font->{cff_name}/$newname/; } if (m/\/Notice[ ]/xms) { s/[(]/($NOTICE/xms; @@ -3227,7 +3326,7 @@ sub modify_fontnames { unlink $oldfn unless $oldfn eq $newfn; - $mapdata =~ s/$font->{name}$suffix.pfb/$newname$suffix.pfb/g; + $mapdata =~ s/$font->{cff_name}$suffix(?!-)/$newname$suffix/g; } } @@ -3345,10 +3444,10 @@ in roman, italic and slanted shapes. =item - Families with "Titling" characters; -these "... replace the default glyphs +these I<"... replace the default glyphs with corresponding forms designed specifically for titling. These may be all-capital and/or larger on the body, -and adjusted for viewing at larger sizes" +and adjusted for viewing at larger sizes"> (according to the OpenType Specification). =item - @@ -3443,16 +3542,16 @@ yourself. Choose which figure style to use. The defaults are "oldstyle" and "proportional" (if available). -=item C<<< scale=I<< <number> >> >>>, C<scale=MatchLowercase> +=item C<<< scale=I<< <factor> >> >>>, C<scale=MatchLowercase> -Scale the font by a factor of I<< <number> >>. -E.g., to increase the size of the font by 5%, use -C<<< \usepackage[scale=1.05]{I<< <FontFamily> >>} >>>. +Scale the font by I<< <factor> >>; +as an example, C<<< \usepackage[scale=1.05]{I<< <FontFamily> >>} >>> +will increase the font's size by 5%. The special value C<MatchLowercase> may be used to scale the font so that its x-height matches that of the current main font (which is usually Computer Modern Roman, unless you have loaded another font package before this one). -The name C<scaled> may be used as a synonym for C<scale>. +The word "scale" may also be spelled as "scaled". =item C<medium>, C<book>, C<text>, C<normal>, C<regular> @@ -3490,15 +3589,21 @@ to place swash on F<fontaxes>' secondary shape axis (F<fontaxes> places it on the primary shape axis) to make them behave properly when nested, so that C<\swshape\upshape> will give upright swash. +Finally, the style file redefines Latex's C<\textsuperscript> and +C<\textsubscript> commands to use the fonts' superior and inferior figures, +and modifies Latex's footnote mechanism to use C<\textsuperscript> +instead of reduced-size numerals from the regular text font. +The old versions of these commands are still available as +C<\textsuperscript*> and C<\textsubscript*>. + There are no commands for accessing the numerator and denominator fonts; these can be selected using F<fontaxes>' standard commands, e.g., C<\fontfigurestyle{numerator}\selectfont>. -These commands are only generated for existing shapes and number styles; -no commands are generated for shapes and styles that are missing from -your fonts. -Also these commands are built on top of F<fontaxes>, so if that package -cannot be found, you're limited to using the lower-level commands from +Once again: all these commands are only generated for existing shapes and number styles; +no commands are generated for shapes and styles that are missing from your fonts. +Note that all these commands are built on top of F<fontaxes>; if that package +cannot be found, you're limited to using lower-level commands from standard NFSS (C<\fontfamily>, C<\fontseries>, C<\fontshape> etc.). By default, B<autoinst> generates text fonts with OT1, LY1 and T1 @@ -3524,14 +3629,14 @@ to access these math fonts: Use these fonts for the maths in your document. -=item C<mathlining>, C<matholdstyle> +=item C<mathlining>, C<matholdstyle>, C<mathtabular>, C<mathproportional> -Choose which figure style to use in maths. -The default is "mathlining". +Choose which figure style and alignment to use in maths. +The defaults are "mathlining" and "mathtabular". =item C<mathcal> -Use the swash characters from your fonts as the C<\mathcal> alphabet. +Use the swash characters from these fonts as the C<\mathcal> alphabet. (This option will only exist if your fonts actually contain swash characters, plus a C<swsh> feature to access them). @@ -3559,7 +3664,7 @@ before loading the B<autoinst>-generated style file. Finally, note that B<autoinst> doesn't check if your fonts actually contains all of the required characters; it just assumes that they do and sets up the style file accordingly. -Even if your fonts contain greek, characters such as C<\varepsilon> +Even if your fonts do contain greek, characters such as C<\varepsilon> may be missing. You may also find that some glyphs I<are> present in your fonts, but don't work well in equations or don't match with other symbols; @@ -3658,14 +3763,17 @@ are not compatible with files generated by newer versions. Since F<pdfTeX> cannot subset otf-flavoured OpenType fonts, I<otftotfm> will convert such fonts to Type1 (pfb) format. However, many fonts (at least those licensed under the SIL Open Font License) -do not allow distributing such converted versions under their original name. +do not allow redistributing such converted versions under their original name. -To meet these licensing requirements, B<autoinst> provides -a I<-t1suffix> command-line option that appends -a user-defined suffix to the names +In order to try to meet such licensing requirements, B<autoinst> provides +a I<-t1suffix> command-line option that appends a suffix to the names (both the filename and the internal font name) of all generated Type1 fonts; see L</COMMAND-LINE OPTIONS> below. +Please note that I am not a lawyer and do not guarantee that +this suffix is sufficient to meet the license's requirements. +When in doubt, consult a real lawyer! + =head2 Sorry, LIGTABLE too long for me to handle @@ -3673,10 +3781,15 @@ The LIGTABLE in TeX's F<tfm> files, which contains a font's ligatures and kerning pairs, is limited to about 32,500 entries (2^15 - 256). If the number of ligatures plus kerns in a font is higher than that limit, I<pltotf> and I<vptovf> will complain loudly and ignore the excess entries. -This happens at least with Adobe's Source Serif 4 and Minion 3. +This happens at least with Adobe's Source Serif 4 and Minion 3 font families. +Even when I<pltotf> and I<vptovf> don't warn about the LIGTABLE's size, +you may still find that I<pdftex> crashes with a +C<Bad metric (TFM) file> error. The best way to handle this situation is to use B<autoinst>'s C<-extra> option to raise F<otftotfm>'s value for the C<--min-kern> parameter, which causes it -to ignore small kerning pairs: C<-extra='--min-kern=5.0'>. +to ignore small kerning pairs: C<-extra='--min-kern=6.0'>. +Finding the correct value for the C<--min-kern> parameter may require some +trial and error. =head2 A note for MiKTeX users @@ -3763,8 +3876,8 @@ For each encoding argument, B<autoinst> will first check if it is the filename of an encoding file, and if found it will use that; otherwise the argument is assumed to be the name of one of the built-in encodings. -Currently B<autoinst> comes with built-in support for the OT1, T1/TS1, LY1, LGR, -T2A/B/C and T3/TS3 encodings. +Currently B<autoinst> comes with built-in support for the OT1, T1/TS1, LY1, +T2A/B/C, T3/TS3, T4, T5, LGR, CS, L7X and QX encodings. (These files are called F<fontools_ot1.enc> etc. to avoid name clashes with other packages; the F<fontools_> prefix may be omitted.) @@ -3970,6 +4083,38 @@ Pass I<extra options> to the commands for I<otftotfm>. To prevent I<extra options> from accidentily being interpreted as options to B<autoinst>, they should be properly quoted. +=item B<-manual> + +Manual mode; for users who want to post-process the generated files +and commands. By default, B<autoinst> immediately executes all +F<otftotfm> commands it generates; +in manual mode, these are instead written to a file F<autoinst.bat>. +Furthermore it tells F<otftotfm> to generate human readable (and editable) +F<pl/vpl> files instead of the default F<tfm/vf> ones, +and to place all generated files in a subdirectory C<./autoinst_output/> +of the current directory, rather than install them into your TeX installation. + +When using this option, you need to execute the following manual steps after +B<autoinst> has finished: + +=over 2 + +=item - run F<pltotf> and F<vptovf> on the generated F<pl> and F<vf> files, +to convert them to F<tfm/vf> format; + +=item - move all generated files to a proper TEXMF tree, +and, if necessary, update the filename database; + +=item - tell TeX about the new F<map> file +(usually by running C<updmap> or similar). + +=back + +Note that some options (I<-target>, I<-vendor> and I<-typeface>) +are meaningless, and hence ignored, in manual mode. + +Also note that font name modification doesn't happen in manual mode. + =item B<-nofigurekern> Some fonts provide kerning pairs for tabular figures. @@ -4016,7 +4161,7 @@ don't paraphase. =head1 COPYRIGHT -Copyright (C) 2005-2022 Marc Penninga. +Copyright (C) 2005-2023 Marc Penninga. =head1 LICENSE @@ -4039,7 +4184,7 @@ GNU General Public License for more details. =head1 VERSION -This document describes B<autoinst> version 20220124. +This document describes B<autoinst> version 20230201. =head1 RECENT CHANGES @@ -4048,6 +4193,21 @@ This document describes B<autoinst> version 20220124. =over 12 +=item I<2023-02-01> + +Added support for the T4, T5, CS, L7X and QX encodings. + +=item I<2023-01-31> + +If the fonts contain superior and/or inferior figures, +the generated style file now redefines the C<\textsuperscript> +and C<\textsubscript> commands, and patches Latex's footnote +mechanism to use these figures +(inspired by the F<realscripts> package). +Fixed a few bugs in metadata parsing, style file generation +and the C<-t1suffix> option, so that the latter also works +for dvips and dvipdfmx. + =item I<2021-11-15> Bugfix: font info parsing now works for Adobe Source Serif 4. @@ -4078,6 +4238,13 @@ The I<-encoding> option now also accepts filenames of encoding files in directories other than the current directory. Directory names containing spaces do (or at least should) also work. +=back + + +=begin Really_old_history + +=over 12 + =item I<2020-12-18> Fixed a problem with files not being found on Windows. @@ -4129,13 +4296,6 @@ an argument to I<-inferiors>. Don't create empty subdirectories in the target TEXMF tree. -=back - - -=begin Really_old_history - -=over 12 - =item I<2019-11-18> Fine-tuned calling of F<kpsewhich> on Windows (patch by Akira Kakuto). @@ -4258,7 +4418,7 @@ Fine-tuned the decision where to put generated files; in particular, create $TEXMFHOME if it doesn't already exist and $TEXMFLOCAL isn't user-writable. -When we can't find a user-writable TEXMF tree, +In manual mode, or when we can't find a user-writable TEXMF tree, put all generated files into a subdirectory C<./autoinst_output/> instead of all over the current working directory. diff --git a/fonts/utilities/fontools/bin/ot2kpx b/fonts/utilities/fontools/bin/ot2kpx index 88ce76fc30..04c9f8d47e 100755 --- a/fonts/utilities/fontools/bin/ot2kpx +++ b/fonts/utilities/fontools/bin/ot2kpx @@ -4,7 +4,7 @@ ---------------------------------------------------------------------------- - Copyright (C) 2005-2022 Marc Penninga. + Copyright (C) 2005-2023 Marc Penninga. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License @@ -38,7 +38,7 @@ use Getopt::Long (); use List::Util @List::Util::EXPORT_OK; use Pod::Usage; -my $VERSION = "20220124"; +my $VERSION = "20230201"; our ($NUM_GLYPHS, $UNITS_PER_EM, %kern); @@ -835,7 +835,7 @@ Marc Penninga <marcpenninga@gmail.com> =head1 COPYRIGHT -Copyright (C) 2005-2022 Marc Penninga. +Copyright (C) 2005-2023 Marc Penninga. =head1 LICENSE @@ -858,7 +858,7 @@ See the GNU General Public License for more details. =head1 VERSION -This document describes B<ot2kpx> version 20220124. +This document describes B<ot2kpx> version 20230201. =head1 RECENT CHANGES diff --git a/fonts/utilities/fontools/bin/splitttc b/fonts/utilities/fontools/bin/splitttc index 52aaf42fba..fdf359a1e5 100755 --- a/fonts/utilities/fontools/bin/splitttc +++ b/fonts/utilities/fontools/bin/splitttc @@ -4,7 +4,7 @@ ---------------------------------------------------------------------------- - Copyright (C) 2022 Marc Penninga. + Copyright (C) 2023 Marc Penninga. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License @@ -38,7 +38,7 @@ use File::Basename; use Getopt::Long; use Pod::Usage; -my $VERSION = "20220124"; +my $VERSION = "20230201"; parse_commandline(); @@ -280,7 +280,7 @@ Marc Penninga <marcpenninga@gmail.com> =head1 COPYRIGHT -Copyright (C) 2019-2022 Marc Penninga. +Copyright (C) 2019-2023 Marc Penninga. =head1 LICENSE @@ -303,7 +303,7 @@ See the GNU General Public License for more details. =head1 VERSION -This document describes B<splitttc> version 20220124. +This document describes B<splitttc> version 20230201. =head1 RECENT CHANGES diff --git a/fonts/utilities/fontools/doc/afm2afm.pdf b/fonts/utilities/fontools/doc/afm2afm.pdf Binary files differindex 55d7d916f1..2bd3fca2f8 100644 --- a/fonts/utilities/fontools/doc/afm2afm.pdf +++ b/fonts/utilities/fontools/doc/afm2afm.pdf diff --git a/fonts/utilities/fontools/doc/autoinst.pdf b/fonts/utilities/fontools/doc/autoinst.pdf Binary files differindex ace0e43d01..949f4eac26 100644 --- a/fonts/utilities/fontools/doc/autoinst.pdf +++ b/fonts/utilities/fontools/doc/autoinst.pdf diff --git a/fonts/utilities/fontools/doc/ot2kpx.pdf b/fonts/utilities/fontools/doc/ot2kpx.pdf Binary files differindex 9b0f6182ce..7d2f0a7020 100644 --- a/fonts/utilities/fontools/doc/ot2kpx.pdf +++ b/fonts/utilities/fontools/doc/ot2kpx.pdf diff --git a/fonts/utilities/fontools/doc/splitttc.pdf b/fonts/utilities/fontools/doc/splitttc.pdf Binary files differindex e5fe6aa849..f46df562e3 100644 --- a/fonts/utilities/fontools/doc/splitttc.pdf +++ b/fonts/utilities/fontools/doc/splitttc.pdf diff --git a/fonts/utilities/fontools/share/fontools_cs.enc b/fonts/utilities/fontools/share/fontools_cs.enc new file mode 100644 index 0000000000..b405db28aa --- /dev/null +++ b/fonts/utilities/fontools/share/fontools_cs.enc @@ -0,0 +1,309 @@ +% A version of the CS encoding, intended for use with otftotfm. +% Based on the file lm-cs.enc from the Latin Modern package +/otftotfmCSEncoding [ +% 0x00 + /Gamma + /Delta + /Theta + /Lambda + /Xi + /Pi + /Sigma + /Upsilon +% 0x08 + /Phi + /Psi + /Omega + /ff + /fi + /fl + /ffi + /ffl +% 0x10 + /dotlessi + /dotlessj + /grave + /acute + /caron + /breve + /macron + /ring +% 0x18 + /cedilla + /germandbls + /ae + /oe + /oslash + /AE + /OE + /Oslash +% 0x20 + /space + /exclam + /quotedblright + /numbersign + /dollar + /percent + /ampersand + /quoteright +% 0x28 + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash +% 0x30 + /zero + /one + /two + /three + /four + /five + /six + /seven +% 0x38 + /eight + /nine + /colon + /semicolon + /exclamdown + /equal + /questiondown + /question +% 0x40 + /at + /A + /B + /C + /D + /E + /F + /G +% 0x48 + /H + /I + /J + /K + /L + /M + /N + /O +% 0x50 + /P + /Q + /R + /S + /T + /U + /V + /W +% 0x58 + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /circumflex + /dotaccent +% 0x60 + /quoteleft + /a + /b + /c + /d + /e + /f + /g +% 0x6a + /h + /i + /j + /k + /l + /m + /n + /o +% 0x70 + /p + /q + /r + /s + /t + /u + /v + /w +% 0x78 + /x + /y + /z + /endash + /emdash + /hungarumlaut + /tilde + /dieresis +% 0x80 + /ellipsis + /dagger + /daggerdbl + /bullet + /sterling + /paragraph + /Euro + /.notdef +% 0x88 + /trademark + /copyright + /registered + /.notdef + /.notdef + /perthousand + /guilsinglleft + /guilsinglright +% 0x90 + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /longs + /.notdef + /florin +% 0x98 + /Agrave + /.notdef + /quotesinglbase + /.notdef + /hyphen.alt + /ogonek + /guillemotleft + /guillemotright +% 0xA0 + /.notdef + /Aogonek + /.notdef + /Lslash + /currency + /Lcaron + /Sacute + /section +% 0xA8 + /.notdef + /Scaron + /Scommaaccent + /Tcaron + /Zacute + /.notdef + /Zcaron + /Zdotaccent +% 0xB0 + /degree + /aogonek + /.notdef + /lslash + /.notdef + /lcaron + /sacute + /.notdef +% 0xB8 + /agrave + /scaron + /scommaaccent + /tcaron + /zacute + /tcommaaccent + /zcaron + /zdotaccent +% 0xC0 + /Racute + /Aacute + /Acircumflex + /Abreve + /Adieresis + /Lacute + /Cacute + /Ccedilla +% 0xC8 + /Ccaron + /Eacute + /Eogonek + /Edieresis + /Ecaron + /Iacute + /Icircumflex + /Dcaron +% 0xD0 + /Eth + /Nacute + /Ncaron + /Oacute + /Ocircumflex + /Ohungarumlaut + /Odieresis + /multiply +% 0xD8 + /Rcaron + /Uring + /Uacute + /Uhungarumlaut + /Udieresis + /Yacute + /Tcommaaccent + /.notdef +% 0xE0 + /racute + /aacute + /acircumflex + /abreve + /adieresis + /lacute + /cacute + /ccedilla +% 0xE8 + /ccaron + /eacute + /eogonek + /edieresis + /ecaron + /iacute + /icircumflex + /dcaron +% 0xF0 + /eth + /nacute + /ncaron + /oacute + /ocircumflex + /ohungarumlaut + /odieresis + /divide +% 0xF8 + /rcaron + /uring + /uacute + /uhungarumlaut + /udieresis + /yacute + /quotedblbase + /quotedblleft +] def +% +% UNICODING Delta =: Deltagreek Delta; +% UNICODING Omega =: Omegagreek Omega; +% +% LIGKERN question quoteleft =: questiondown; +% LIGKERN exclam quoteleft =: exclamdown; +% LIGKERN hyphen hyphen =: endash; +% LIGKERN endash hyphen =: emdash; +% LIGKERN quoteleft quoteleft =: quotedblleft; +% LIGKERN quoteright quoteright =: quotedblright; +% LIGKERN comma comma =: quotedblbase; +% LIGKERN less less =: guillemotleft; +% LIGKERN greater greater =: guillemotright; +% +% LIGKERN || = 32; +% +% UNICODING ff =: ; fi =: ; fl =: ; ffi =: ; ffl =: ; diff --git a/fonts/utilities/fontools/share/fontools_l7x.enc b/fonts/utilities/fontools/share/fontools_l7x.enc new file mode 100644 index 0000000000..e9da67217d --- /dev/null +++ b/fonts/utilities/fontools/share/fontools_l7x.enc @@ -0,0 +1,306 @@ +% A version of the L7X encoding, intended for use with otftotfm. +% Based on the file lm-l7x.enc from the Latin Modern package +/otftotfmL7XEncoding [ +% 0x00 + /grave + /acute + /circumflex + /tilde + /dieresis + /hungarumlaut + /ring + /caron +% 0x08 + /breve + /macron + /dotaccent + /cedilla + /ogonek + /quotesinglbase + /guilsinglleft + /guilsinglright +% 0x10 + /quotedblleft + /quotedblright + /quotedblbase + /guillemotleft + /guillemotright + /endash + /emdash + /cwm +% 0x18 + /perthousandzero + /dotlessi + /dotlessj + /ff + /fi + /fl + /ffi + /ffl +% 0x20 + /space + /exclam + /quotedbl + /numbersign + /dollar + /percent + /ampersand + /quoteright +% 0x28 + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash +% 0x30 + /zero + /one + /two + /three + /four + /five + /six + /seven +% 0x38 + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question +% 0x40 + /at + /A + /B + /C + /D + /E + /F + /G +% 0x48 + /H + /I + /J + /K + /L + /M + /N + /O +% 0x50 + /P + /Q + /R + /S + /T + /U + /V + /W +% 0x58 + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /asciicircum + /underscore +% 0x60 + /quoteleft + /a + /b + /c + /d + /e + /f + /g +% 0x68 + /h + /i + /j + /k + /l + /m + /n + /o +% 0x70 + /p + /q + /r + /s + /t + /u + /v + /w +% 0x78 + /x + /y + /z + /braceleft + /bar + /braceright + /asciitilde + /.notdef +% 0x80 + /Euro + /.notdef + /.notdef + /florin + /.notdef + /ellipsis + /dagger + /daggerdbl +% 0x88 + /.notdef + /perthousand + /.notdef + /.notdef + /OE + /.notdef + /.notdef + /.notdef +% 0x90 + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /bullet + /.notdef + /.notdef +% 0x98 + /.notdef + /trademark + /.notdef + /.notdef + /oe + /.notdef + /.notdef + /.notdef +% 0xA0 + /nbspace + /.notdef + /cent + /sterling + /currency + /.notdef + /brokenbar + /section +% 0xA8 + /Oslash + /copyright + /Rcommaaccent + /.notdef + /logicalnot + /hyphen.alt + /registered + /AE +% 0xB0 + /degree + /plusminus + /twosuperior + /threesuperior + /.notdef + /mu + /paragraph + /periodcentered +% 0xB8 + /oslash + /onesuperior + /rcommaaccent + /.notdef + /onequarter + /onehalf + /threequarters + /ae +% 0xC0 + /Aogonek + /Iogonek + /Amacron + /Cacute + /Adieresis + /Aring + /Eogonek + /Emacron +% 0xC8 + /Ccaron + /Eacute + /Zacute + /Edotaccent + /Gcommaaccent + /Kcommaaccent + /Imacron + /Lcommaaccent +% 0xD0 + /Scaron + /Nacute + /Ncommaaccent + /Oacute + /Omacron + /Otilde + /Odieresis + /multiply +% 0xD8 + /Uogonek + /Lslash + /Sacute + /Umacron + /Udieresis + /Zdotaccent + /Zcaron + /germandbls +% 0xE0 + /aogonek + /iogonek + /amacron + /cacute + /adieresis + /aring + /eogonek + /emacron +% 0xE8 + /ccaron + /eacute + /zacute + /edotaccent + /gcommaaccent + /kcommaaccent + /imacron + /lcommaaccent +% 0xF0 + /scaron + /nacute + /ncommaaccent + /oacute + /omacron + /otilde + /odieresis + /divide +% 0xF8 + /uogonek + /lslash + /sacute + /umacron + /udieresis + /zdotaccent + /zcaron + /.notdef +] def +% +% UNICODING perthousandzero =: perthousandzero zeroinferior emptyslot; +% +% LIGKERN hyphen hyphen =: endash; +% LIGKERN endash hyphen =: emdash; +% LIGKERN quoteleft quoteleft =: quotedblleft; +% LIGKERN quoteright quoteright =: quotedblright; +% LIGKERN comma comma =: quotedblbase; +% LIGKERN less less =: guillemotleft; +% LIGKERN greater greater =: guillemotright; +% +% LIGKERN || = 32; +% +% UNICODING ff =: ; fi =: ; fl =: ; ffi =: ; ffl =: ; diff --git a/fonts/utilities/fontools/share/fontools_lgr.enc b/fonts/utilities/fontools/share/fontools_lgr.enc index 8732270bbb..dd5525991f 100644 --- a/fonts/utilities/fontools/share/fontools_lgr.enc +++ b/fonts/utilities/fontools/share/fontools_lgr.enc @@ -1,318 +1,325 @@ -% A version of the T1 encoding, intended for use with otftotfm. -% CODINGSCHEME GREEK FONT ENCODING - LGR +% A version of the LGR encoding, intended for use with otftotfm. +% Based on the file CB.enc from the cbgreek-complete package /otftotfmLGREncoding [ % 0x00 -/endash -/uni032F -/u10144 -/u10145 -/u10146 -/u10147 -/uni03DB -/uni03DB.alt + /endash + /breveinvertedbelowcmb + /u10144 % GREEK ACROPHONIC ATTIC FIFTY + /u10145 % GREEK ACROPHONIC ATTIC FIVE HUNDRED + /u10146 % GREEK ACROPHONIC ATTIC FIVE THOUSAND + /u10147 % GREEK ACROPHONIC ATTIC FIFTY THOUSAND + /uni03DB % GREEK SMALL LETTER STIGMA + /uni03DB.var % variant; exists only in cbgreek? % 0x08 -/uni1FBE -/uni1FBC -/uni1FCC -/uni1FFC -/Alpha -/Upsilondieresis -/alpha -/upsilondieresis + /uni1FBE % GREEK PROSGEGRAMMENI + /uni1FBC % GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI + /uni1FCC % GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI + /uni1FFC % GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI + /uni0391.alt % cm-unicode has /Alpharightphantomdiaeresis + /uni03AB.alt % cm-unicode has /Upsilondiaeresisshifted + /uni03B1.alt % cm-unicode has /alpharightphantomdiaeresis + /uni03CB.alt % cm-unicode has /upsilondiaeresisshifted % 0x10 -/uni0316 -/uni0317 -/uni03DF -/uni03D9 -/uni032E -/uni03D8 -/uni03DA -/uni03E0 + /acutelowmod + /gravelowmod + /uni03DF % GREEK SMALL LETTER KOPPA + /uni03D9 % GREEK SMALL LETTER ARCHAIC KOPPA + /brevebelowcmb + /uni03D8 % GREEK LETTER ARCHAIC KOPPA + /uni03DA.var % GREEK LETTER STIGMA (variant) + /Sampigreek % 0x18 -/Euro -/perthousand -/uni0259 -/uni03E1 -/quoteleft -/quoteright -/breve -/macron + /Euro + /perthousand + /schwa + /uni03E1 % GREEK SMALL LETTER SAMPI + /quoteleft + /quoteright + /breve + /macron % 0x20 -/uni1FC1 -/exclam -/dieresis -/dieresistonos -/uni1FED -/percent -/periodcentered -/tonos + /uni1FC1 % GREEK DIALYTIKA AND PERISPOMENI + /exclam + /dieresis + /dieresistonos + /uni1FED % GREEK DIALYTIKA AND VARIA + /percent + /periodcentered + /tonos % 0x28 -/parenleft -/parenright -/asterisk -/plus -/comma -/hyphen -/period -/slash + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash % 0x30 -/zero -/one -/two -/three -/four -/five -/six -/seven + /zero + /one + /two + /three + /four + /five + /six + /seven % 0x38 -/eight -/nine -/colon -/anoteleia -/uni1FFE -/equal -/uni1FBF -/semicolon + /eight + /nine + /colon + /anoteleia + /uni1FFE % GREEK DASIA + /equal + /uni1FBF % GREEK PSILI + /questiongreek % 0x40 -/uni1FDF -/Alpha -/Beta -/uni1FDD -/Delta -/Epsilon -/Phi -/Gamma + /uni1FDF % GREEK DASIA AND PERISPOMENI + /Alpha + /Beta + /uni1FDD % GREEK DASIA AND VARIA + /Delta + /Epsilon + /Phi + /Gamma % 0x48 -/Eta -/Iota -/Theta -/Kappa -/Lambda -/Mu -/Nu -/Omicron + /Eta + /Iota + /Theta + /Kappa + /Lambda + /Mu + /Nu + /Omicron % 0x50 -/Pi -/Chi -/Rho -/Sigma -/Tau -/Upsilon -/uni1FDE -/Omega + /Pi + /Chi + /Rho + /Sigma + /Tau + /Upsilon + /uni1FDE % GREEK DASIA AND OXIA + /Omega % 0x58 -/Xi -/Psi -/Zeta -/bracketleft -/uni1FCF -/bracketright -/uni1FCE -/uni1FCD + /Xi + /Psi + /Zeta + /bracketleft + /uni1FCF % GREEK PSILI AND PERISPOMENI + /bracketright + /uni1FCE % GREEK PSILI AND OXIA + /uni1FCD % GREEK PSILI AND VARIA % 0x60 -/uni1FEF -/alpha -/beta -/sigma1 -/delta -/epsilon -/phi -/gamma + /uni1FEF % GREEK VARIA + /alpha + /beta + /sigma1 + /delta + /epsilon + /phi + /gamma % 0x68 -/eta -/iota -/theta -/kappa -/lambda -/mu -/nu -/omicron + /eta + /iota + /theta + /kappa + /lambda + /mu + /nu + /omicron % 0x70 -/pi -/chi -/rho -/sigma -/tau -/upsilon -/cwm -/omega + /pi + /chi + /rho + /sigma + /tau + /upsilon + /cwm + /omega % 0x78 -/xi -/psi -/zeta -/guillemotleft -/uni037A -/guillemotright -/uni1FC0 -/emdash + /xi + /psi + /zeta + /guillemotleft + /ypogegrammeni + /guillemotright + /perispomenigreekcmb + /emdash % 0x80 -/uni1F70 -/uni1F01 -/uni1F00 -/uni1F03 -/uni1FB2 -/uni1F81 -/uni1F80 -/uni1F83 + /uni1F70 % GREEK SMALL LETTER ALPHA WITH VARIA + /uni1F01 % GREEK SMALL LETTER ALPHA WITH DASIA + /uni1F00 % GREEK SMALL LETTER ALPHA WITH PSILI + /uni1F03 % GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA + /uni1FB2 % GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI + /uni1F81 % GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI + /uni1F80 % GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI + /uni1F83 % GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI % 0x88 -/alphatonos -/uni1F05 -/uni1F04 -/uni1F02 -/uni1FB4 -/uni1F85 -/uni1F84 -/uni1F82 + /alphatonos + /uni1F05 % GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA + /uni1F04 % GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA + /uni1F02 % GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA + /uni1FB4 % GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI + /uni1F85 % GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI + /uni1F84 % GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI + /uni1F82 % GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI % 0x90 -/uni1FB6 -/uni1F07 -/uni1F06 -/uni03DD -/uni1FB7 -/uni1F87 -/uni1F86 -/.notdef + /uni1FB6 % GREEK SMALL LETTER ALPHA WITH PERISPOMENI + /uni1F07 % GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI + /uni1F06 % GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI + /uni03DD % GREEK SMALL LETTER DIGAMMA + /uni1FB7 % GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI + /uni1F87 % GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI + /uni1F86 % GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI + /uni035D % SPACE + COMBINING DOUBLE BREVE? % 0x98 -/uni1F74 -/uni1F21 -/uni1F20 -/.notdef -/uni1FC2 -/uni1F91 -/uni1F90 -/.notdef + /uni1F74 % GREEK SMALL LETTER ETA WITH VARIA + /uni1F21 % GREEK SMALL LETTER ETA WITH DASIA + /uni1F20 % GREEK SMALL LETTER ETA WITH PSILI + /.notdef + /uni1FC2 % GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI + /uni1F91 % GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI + /uni1F90 % GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI + /.notdef % 0xA0 -/etatonos -/uni1F25 -/uni1F24 -/uni1F23 -/uni1FC4 -/uni1F95 -/uni1F94 -/uni1F93 + /etatonos + /uni1F25 % GREEK SMALL LETTER ETA WITH DASIA AND OXIA + /uni1F24 % GREEK SMALL LETTER ETA WITH PSILI AND OXIA + /uni1F23 % GREEK SMALL LETTER ETA WITH DASIA AND VARIA + /uni1FC4 % GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI + /uni1F95 % GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI + /uni1F94 % GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI + /uni1F93 % GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI % 0xA8 -/uni1FC6 -/uni1F27 -/uni1F26 -/uni1F22 -/uni1FC7 -/uni1F97 -/uni1F96 -/uni1F92 + /uni1FC6 % GREEK SMALL LETTER ETA WITH PERISPOMENI + /uni1F27 % GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI + /uni1F26 % GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI + /uni1F22 % GREEK SMALL LETTER ETA WITH PSILI AND VARIA + /uni1FC7 % GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI + /uni1F97 % GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI + /uni1F96 % GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI + /uni1F92 % GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI % 0xB0 -/uni1F7C -/uni1F61 -/uni1F60 -/uni1F63 -/uni1FF2 -/uni1FA1 -/uni1FA0 -/uni1FA3 + /uni1F7C % GREEK SMALL LETTER OMEGA WITH VARIA + /uni1F61 % GREEK SMALL LETTER OMEGA WITH DASIA + /uni1F60 % GREEK SMALL LETTER OMEGA WITH PSILI + /uni1F63 % GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA + /uni1FF2 % GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI + /uni1FA1 % GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI + /uni1FA0 % GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI + /uni1FA3 % GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI % 0xB8 -/omegatonos -/uni1F65 -/uni1F64 -/uni1F62 -/uni1FF4 -/uni1FA5 -/uni1FA4 -/uni1FA2 + /omegatonos + /uni1F65 % GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA + /uni1F64 % GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA + /uni1F62 % GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA + /uni1FF4 % GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI + /uni1FA5 % GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI + /uni1FA4 % GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI + /uni1FA2 % GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI % 0xC0 -/uni1FF6 -/uni1F67 -/uni1F66 -/uni03DC -/uni1FF7 -/uni1FA7 -/uni1FA6 -/.notdef + /uni1FF6 % GREEK SMALL LETTER OMEGA WITH PERISPOMENI + /uni1F67 % GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI + /uni1F66 % GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI + /Digammagreek + /uni1FF7 % GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI + /uni1FA7 % GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI + /uni1FA6 % GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI + /.notdef % 0xC8 -/uni1F76 -/uni1F31 -/uni1F30 -/uni1F33 -/uni1F7A -/uni1F51 -/uni1F50 -/uni1F53 + /uni1F76 % GREEK SMALL LETTER IOTA WITH VARIA + /uni1F31 % GREEK SMALL LETTER IOTA WITH DASIA + /uni1F30 % GREEK SMALL LETTER IOTA WITH PSILI + /uni1F33 % GREEK SMALL LETTER IOTA WITH DASIA AND VARIA + /uni1F7A % GREEK SMALL LETTER UPSILON WITH VARIA + /uni1F51 % GREEK SMALL LETTER UPSILON WITH DASIA + /uni1F50 % GREEK SMALL LETTER UPSILON WITH PSILI + /uni1F53 % GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA % 0xD0 -/iotatonos -/uni1F35 -/uni1F34 -/uni1F32 -/upsilontonos -/uni1F55 -/uni1F54 -/uni1F52 + /iotatonos + /uni1F35 % GREEK SMALL LETTER IOTA WITH DASIA AND OXIA + /uni1F34 % GREEK SMALL LETTER IOTA WITH PSILI AND OXIA + /uni1F32 % GREEK SMALL LETTER IOTA WITH PSILI AND VARIA + /upsilontonos + /uni1F55 % GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA + /uni1F54 % GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA + /uni1F52 % GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA % 0xD8 -/uni1FD6 -/uni1F37 -/uni1F36 -/Iotadieresis -/uni1FE6 -/uni1F57 -/uni1F56 -/Upsilondieresis + /uni1FD6 % GREEK SMALL LETTER IOTA WITH PERISPOMENI + /uni1F37 % GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI + /uni1F36 % GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI + /Iotadieresis + /uni1FE6 % GREEK SMALL LETTER UPSILON WITH PERISPOMENI + /uni1F57 % GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI + /uni1F56 % GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI + /Upsilondieresis % 0xE0 -/uni1F72 -/uni1F11 -/uni1F10 -/uni1F13 -/uni1F78 -/uni1F41 -/uni1F40 -/uni1F43 + /uni1F72 % GREEK SMALL LETTER EPSILON WITH VARIA + /uni1F11 % GREEK SMALL LETTER EPSILON WITH DASIA + /uni1F10 % GREEK SMALL LETTER EPSILON WITH PSILI + /uni1F13 % GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA + /uni1F78 % GREEK SMALL LETTER OMICRON WITH VARIA + /uni1F41 % GREEK SMALL LETTER OMICRON WITH DASIA + /uni1F40 % GREEK SMALL LETTER OMICRON WITH PSILI + /uni1F43 % GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA % 0xE8 -/epsilontonos -/uni1F15 -/uni1F14 -/uni1F12 -/omicrontonos -/uni1F45 -/uni1F44 -/uni1F42 + /epsilontonos + /uni1F15 % GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA + /uni1F14 % GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA + /uni1F12 % GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA + /omicrontonos + /uni1F45 % GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA + /uni1F44 % GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA + /uni1F42 % GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA % 0xF0 -/iotadieresis -/uni1FD2 -/iotadieresistonos -/uni1FD7 -/upsilondieresis -/uni1FE2 -/upsilondieresistonos -/uni1FE7 + /iotadieresis + /uni1FD2 % GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA + /iotadieresistonos + /uni1FD7 % GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI + /upsilondieresis + /uni1FE2 % GREEK SMALL LETTER UPSILON WITH DAILYTIKA AND VARIA + /upsilondieresistonos + /uni1FE7 % GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI % 0xF8 -/uni1FB3 -/uni1FC3 -/uni1FF3 -/uni1FE5 -/uni1FE4 -/.notdef -/uni0374 -/uni0375 + /uni1FB3 % GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI + /uni1FC3 % GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI + /uni1FF3 % GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI + /uni1FE5 % GREEK SMALL LETTER RHO WITH DASIA + /uni1FE4 % GREEK SMALL LETTER RHO WITH PSILI + /cwm + /numeralsigngreek + /numeralsignlowergreek ] def -% LIGKERN hyphen hyphen =: endash ; endash hyphen =: emdash ; -% LIGKERN parenleft parenleft =: guillemotleft ; -% LIGKERN parenright parenright =: guillemotright ; +% +% UNICODING Delta =: Deltagreek Delta; +% UNICODING Omega =: Omegagreek Omega; +% UNICODING mu =: mugreek mu; +% UNICODING questiongreek =: questiongreek semicolon; +% UNICODING perispomenigreekcmb =: uni1FC0 perispomenigreekcmb; +% +% LIGKERN hyphen hyphen =: endash ; endash hyphen =: emdash ; +% LIGKERN parenleft parenleft =: guillemotleft ; +% LIGKERN parenright parenright =: guillemotright ; % LIGKERN dieresis tonos =: dieresistonos % LIGKERN tonos dieresis =: dieresistonos % LIGKERN tonos alpha =: alphatonos ; % LIGKERN tonos epsilon =: epsilontonos ; -% LIGKERN tonos eta =: etatonos ; -% LIGKERN tonos iota =: iotatonos ; +% LIGKERN tonos eta =: etatonos ; +% LIGKERN tonos iota =: iotatonos ; % LIGKERN tonos omicron =: omicrontonos ; % LIGKERN tonos upsilon =: upsilontonos ; % LIGKERN tonos omega =: omegatonos ; % LIGKERN tonos Alpha =: Alphatonos ; % LIGKERN tonos Epsilon =: Epsilontonos ; -% LIGKERN tonos Eta =: Etatonos ; -% LIGKERN tonos Iota =: Iotatonos ; +% LIGKERN tonos Eta =: Etatonos ; +% LIGKERN tonos Iota =: Iotatonos ; % LIGKERN tonos Omicron =: Omicrontonos ; % LIGKERN tonos Upsilon =: Upsilontonos ; % LIGKERN tonos Omega =: Omegatonos ; % LIGKERN dieresis iota =: iotadieresis ; dieresis Iota =: Iotadieresis ; % LIGKERN dieresis upsilon =: upsilondieresis ; % LIGKERN dieresis Upsilon =: Upsilondieresis ; -% LIGKERN dieresistonos iota =: iotadieresistonos ; +% LIGKERN dieresistonos iota =: iotadieresistonos ; % LIGKERN dieresistonos upsilon =: upsilondieresistonos ; % LIGKERN tonos tonos =: quoteright ; uni1FEF uni1FEF =: quoteleft ; % LIGKERN uni1FBF tonos =: uni1FCE ; uni1FBF uni1FEF =: uni1FCD ; @@ -323,28 +330,28 @@ % LIGKERN dieresis uni1FEF =: uni1FED ; uni1FEF dieresis =: uni1FED ; % LIGKERN uni1FCE alpha =: uni1F04 ; uni1FCF alpha =: uni1F06 ; uni1FBF alpha =: uni1F00 ; % LIGKERN uni1FCD alpha =: uni1F02 ; uni1FDF alpha =: uni1F07 ; uni1FFE alpha =: uni1F01 ; -% LIGKERN uni1FDE alpha =: uni1F05 ; uni1FEF alpha =: uni1F70 ; +% LIGKERN uni1FDE alpha =: uni1F05 ; uni1FEF alpha =: uni1F70 ; % LIGKERN uni1FDD alpha =: uni1F03 ; uni1FC0 alpha =: uni1FB6 ; -% LIGKERN alpha uni037A =: uni1FB3 ; alphatonos uni037A =: uni1FB4 ; -% LIGKERN uni1F00 uni037A =: uni1F80 ; uni1F01 uni037A =: uni1F81 ; -% LIGKERN uni1F02 uni037A =: uni1F82 ; uni1F03 uni037A =: uni1F83 ; -% LIGKERN uni1F04 uni037A =: uni1F84 ; uni1F05 uni037A =: uni1F85 ; -% LIGKERN uni1F06 uni037A =: uni1F86 ; uni1F07 uni037A =: uni1F87 ; -% LIGKERN uni1F70 uni037A =: uni1FB2 ; uni1FB6 uni037A =: uni1FB7 ; +% LIGKERN alpha ypogegrammeni =: uni1FB3 ; alphatonos ypogegrammeni =: uni1FB4 ; +% LIGKERN uni1F00 ypogegrammeni =: uni1F80 ; uni1F01 ypogegrammeni =: uni1F81 ; +% LIGKERN uni1F02 ypogegrammeni =: uni1F82 ; uni1F03 ypogegrammeni =: uni1F83 ; +% LIGKERN uni1F04 ypogegrammeni =: uni1F84 ; uni1F05 ypogegrammeni =: uni1F85 ; +% LIGKERN uni1F06 ypogegrammeni =: uni1F86 ; uni1F07 ypogegrammeni =: uni1F87 ; +% LIGKERN uni1F70 ypogegrammeni =: uni1FB2 ; uni1FB6 ypogegrammeni =: uni1FB7 ; % LIGKERN uni1FCE epsilon =: uni1F14 ; uni1FBF epsilon =: uni1F10 ; % LIGKERN uni1FCD epsilon =: uni1F12 ; uni1FFE epsilon =: uni1F11 ; -% LIGKERN uni1FDE epsilon =: uni1F15 ; uni1FEF epsilon =: uni1F72 ; +% LIGKERN uni1FDE epsilon =: uni1F15 ; uni1FEF epsilon =: uni1F72 ; % LIGKERN uni1FDD epsilon =: uni1F13 ; % LIGKERN uni1FCE eta =: uni1F24 ; uni1FCF eta =: uni1F26 ; uni1FBF eta =: uni1F20 ; % LIGKERN uni1FCD eta =: uni1F22 ; uni1FDF eta =: uni1F27 ; uni1FFE eta =: uni1F21 ; -% LIGKERN uni1FDE eta =: uni1F25 ; uni1FEF eta =: uni1F74 ; +% LIGKERN uni1FDE eta =: uni1F25 ; uni1FEF eta =: uni1F74 ; % LIGKERN uni1FDD eta =: uni1F23 ; uni1FC0 eta =: uni1FC6 ; -% LIGKERN eta uni037A =: uni1FC3 ; etatonos uni037A =: uni1FC4 ; -% LIGKERN uni1F20 uni037A =: uni1F90 ; uni1F21 uni037A =: uni1F91 ; -% LIGKERN uni1F22 uni037A =: uni1F92 ; uni1F23 uni037A =: uni1F93 ; -% LIGKERN uni1F24 uni037A =: uni1F94 ; uni1F25 uni037A =: uni1F95 ; -% LIGKERN uni1F26 uni037A =: uni1F96 ; uni1F27 uni037A =: uni1F97 ; -% LIGKERN uni1F74 uni037A =: uni1FC2 ; uni1FC6 uni037A =: uni1FC7 ; +% LIGKERN eta ypogegrammeni =: uni1FC3 ; etatonos ypogegrammeni =: uni1FC4 ; +% LIGKERN uni1F20 ypogegrammeni =: uni1F90 ; uni1F21 ypogegrammeni =: uni1F91 ; +% LIGKERN uni1F22 ypogegrammeni =: uni1F92 ; uni1F23 ypogegrammeni =: uni1F93 ; +% LIGKERN uni1F24 ypogegrammeni =: uni1F94 ; uni1F25 ypogegrammeni =: uni1F95 ; +% LIGKERN uni1F26 ypogegrammeni =: uni1F96 ; uni1F27 ypogegrammeni =: uni1F97 ; +% LIGKERN uni1F74 ypogegrammeni =: uni1FC2 ; uni1FC6 ypogegrammeni =: uni1FC7 ; % LIGKERN uni1FCE iota =: uni1F34 ; uni1FBF iota =: uni1F30 ; % LIGKERN uni1FCD iota =: uni1F32 ; uni1FFE iota =: uni1F31 ; % LIGKERN uni1FDE iota =: uni1F35 ; uni1FEF iota =: uni1F76 ; @@ -353,7 +360,7 @@ % LIGKERN uni1FCF iota =: uni1F36 ; uni1FDF iota =: uni1F37 ; % LIGKERN uni1FCE omicron =: uni1F44 ; uni1FBF omicron =: uni1F40 ; % LIGKERN uni1FCD omicron =: uni1F42 ; uni1FFE omicron =: uni1F41 ; -% LIGKERN uni1FDE omicron =: uni1F45 ; uni1FEF omicron =: uni1F78 ; +% LIGKERN uni1FDE omicron =: uni1F45 ; uni1FEF omicron =: uni1F78 ; % LIGKERN uni1FDD omicron =: uni1F43 ; % LIGKERN uni1FCE upsilon =: uni1F54 ; uni1FBF upsilon =: uni1F50 ; % LIGKERN uni1FCD upsilon =: uni1F52 ; uni1FFE upsilon =: uni1F51 ; @@ -363,18 +370,18 @@ % LIGKERN uni1FCF upsilon =: uni1F56 ; uni1FDF upsilon =: uni1F57 ; % LIGKERN uni1FCE omega =: uni1F64 ; uni1FCF omega =: uni1F66 ; uni1FBF omega =: uni1F60 ; % LIGKERN uni1FCD omega =: uni1F62 ; uni1FDF omega =: uni1F67 ; uni1FFE omega =: uni1F61 ; -% LIGKERN uni1FDE omega =: uni1F65 ; uni1FEF omega =: uni1F7C ; +% LIGKERN uni1FDE omega =: uni1F65 ; uni1FEF omega =: uni1F7C ; % LIGKERN uni1FDD omega =: uni1F63 ; uni1FC0 omega =: uni1FF6 ; -% LIGKERN omega uni037A =: uni1FF3 ; omegatonos uni037A =: uni1FF4 ; -% LIGKERN uni1F60 uni037A =: uni1FA0 ; uni1F61 uni037A =: uni1FA1 ; -% LIGKERN uni1F62 uni037A =: uni1FA2 ; uni1F63 uni037A =: uni1FA3 ; -% LIGKERN uni1F64 uni037A =: uni1FA4 ; uni1F65 uni037A =: uni1FA5 ; -% LIGKERN uni1F66 uni037A =: uni1FA6 ; uni1F67 uni037A =: uni1FA7 ; -% LIGKERN uni1F7C uni037A =: uni1FF2 ; uni1FF6 uni037A =: uni1FF7 ; +% LIGKERN omega ypogegrammeni =: uni1FF3 ; omegatonos ypogegrammeni =: uni1FF4 ; +% LIGKERN uni1F60 ypogegrammeni =: uni1FA0 ; uni1F61 ypogegrammeni =: uni1FA1 ; +% LIGKERN uni1F62 ypogegrammeni =: uni1FA2 ; uni1F63 ypogegrammeni =: uni1FA3 ; +% LIGKERN uni1F64 ypogegrammeni =: uni1FA4 ; uni1F65 ypogegrammeni =: uni1FA5 ; +% LIGKERN uni1F66 ypogegrammeni =: uni1FA6 ; uni1F67 ypogegrammeni =: uni1FA7 ; +% LIGKERN uni1F7C ypogegrammeni =: uni1FF2 ; uni1FF6 ypogegrammeni =: uni1FF7 ; % LIGKERN uni1FBF rho =: uni1FE4 ; uni1FFE rho =: uni1FE5 ; % LIGKERN || = 01 ; sigma || =:| sigma1 ; sigma guillemotright =:| sigma1 ; % LIGKERN sigma parenright =:| sigma1 ; sigma period =:| sigma1 ; -% LIGKERN sigma comma =:| sigma1 ; sigma exclam =:| sigma1 ; +% LIGKERN sigma comma =:| sigma1 ; sigma exclam =:| sigma1 ; % LIGKERN sigma semicolon =:| sigma1 ; sigma anoteleia =:| sigma1 ; % LIGKERN Alpha uni1FBE =: uni1FBC ; % LIGKERN Eta uni1FBE =: uni1FCC ; diff --git a/fonts/utilities/fontools/share/fontools_ly1.enc b/fonts/utilities/fontools/share/fontools_ly1.enc index 70133cc9c0..45ab6e9142 100644 --- a/fonts/utilities/fontools/share/fontools_ly1.enc +++ b/fonts/utilities/fontools/share/fontools_ly1.enc @@ -2,293 +2,293 @@ % CODINGSCHEME TEX TYPEWRITER AND WINDOWS ANSI /otftotfmLY1Encoding [ % 0x00 -/.notdef -/Euro -/.notdef -/.notdef -/fraction -/dotaccent -/hungarumlaut -/ogonek + /.notdef + /Euro + /.notdef + /.notdef + /fraction + /dotaccent + /hungarumlaut + /ogonek % 0x08 -/.notdef -/.notdef -/cwm -/ff -/fi -/fl -/ffi -/ffl + /fl + /.notdef + /cwm + /ff + /fi + /.notdef + /ffi + /ffl % 0x10 -/dotlessi -/dotlessj -/grave -/acute -/caron -/breve -/macron -/ring + /dotlessi + /dotlessj + /grave + /acute + /caron + /breve + /macron + /ring % 0x18 -/cedilla -/germandbls -/ae -/oe -/oslash -/AE -/OE -/Oslash + /cedilla + /germandbls + /ae + /oe + /oslash + /AE + /OE + /Oslash % 0x20 -/space -/exclam -/quotedbl -/numbersign -/dollar -/percent -/ampersand -/quoteright + /space + /exclam + /quotedbl + /numbersign + /dollar + /percent + /ampersand + /quoteright % 0x28 -/parenleft -/parenright -/asterisk -/plus -/comma -/hyphen -/period -/slash + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash % 0x30 -/zero -/one -/two -/three -/four -/five -/six -/seven + /zero + /one + /two + /three + /four + /five + /six + /seven % 0x38 -/eight -/nine -/colon -/semicolon -/less -/equal -/greater -/question + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question % 0x40 -/at -/A -/B -/C -/D -/E -/F -/G + /at + /A + /B + /C + /D + /E + /F + /G % 0x48 -/H -/I -/J -/K -/L -/M -/N -/O + /H + /I + /J + /K + /L + /M + /N + /O % 0x50 -/P -/Q -/R -/S -/T -/U -/V -/W + /P + /Q + /R + /S + /T + /U + /V + /W % 0x58 -/X -/Y -/Z -/bracketleft -/backslash -/bracketright -/circumflex -/underscore + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /circumflex + /underscore % 0x60 -/quoteleft -/a -/b -/c -/d -/e -/f -/g + /quoteleft + /a + /b + /c + /d + /e + /f + /g % 0x68 -/h -/i -/j -/k -/l -/m -/n -/o + /h + /i + /j + /k + /l + /m + /n + /o % 0x70 -/p -/q -/r -/s -/t -/u -/v -/w + /p + /q + /r + /s + /t + /u + /v + /w % 0x78 -/x -/y -/z -/braceleft -/bar -/braceright -/tilde -/dieresis + /x + /y + /z + /braceleft + /bar + /braceright + /tilde + /dieresis % 0x80 -/Lslash -/quotesingle -/quotesinglbase -/florin -/quotedblbase -/ellipsis -/dagger -/daggerdbl + /Lslash + /quotesingle + /quotesinglbase + /florin + /quotedblbase + /ellipsis + /dagger + /daggerdbl % 0x88 -/circumflex -/perthousand -/Scaron -/guilsinglleft -/OE -/Zcaron -/asciicircum -/minus + /circumflex + /perthousand + /Scaron + /guilsinglleft + /OE + /Zcaron + /asciicircum + /minus % 0x90 -/lslash -/quoteleft -/quoteright -/quotedblleft -/quotedblright -/bullet -/endash -/emdash + /lslash + /quoteleft + /quoteright + /quotedblleft + /quotedblright + /bullet + /endash + /emdash % 0x98 -/tilde -/trademark -/scaron -/guilsinglright -/oe -/zcaron -/asciitilde -/Ydieresis + /tilde + /trademark + /scaron + /guilsinglright + /oe + /zcaron + /asciitilde + /Ydieresis % 0xA0 -/cwm -/exclamdown -/cent -/sterling -/currency -/yen -/brokenbar -/section + /cwm + /exclamdown + /cent + /sterling + /currency + /yen + /brokenbar + /section % 0xA8 -/dieresis -/copyright -/ordfeminine -/guillemotleft -/logicalnot -/sfthyphen -/registered -/macron + /dieresis + /copyright + /ordfeminine + /guillemotleft + /logicalnot + /sfthyphen + /registered + /macron % 0xB0 -/degree -/plusminus -/twosuperior -/threesuperior -/acute -/mu -/paragraph -/periodcentered + /degree + /plusminus + /twosuperior + /threesuperior + /acute + /mu + /paragraph + /periodcentered % 0xB8 -/cedilla -/onesuperior -/ordmasculine -/guillemotright -/onequarter -/onehalf -/threequarters -/questiondown + /cedilla + /onesuperior + /ordmasculine + /guillemotright + /onequarter + /onehalf + /threequarters + /questiondown % 0xC0 -/Agrave -/Aacute -/Acircumflex -/Atilde -/Adieresis -/Aring -/AE -/Ccedilla + /Agrave + /Aacute + /Acircumflex + /Atilde + /Adieresis + /Aring + /AE + /Ccedilla % 0xC8 -/Egrave -/Eacute -/Ecircumflex -/Edieresis -/Igrave -/Iacute -/Icircumflex -/Idieresis + /Egrave + /Eacute + /Ecircumflex + /Edieresis + /Igrave + /Iacute + /Icircumflex + /Idieresis % 0xD0 -/Eth -/Ntilde -/Ograve -/Oacute -/Ocircumflex -/Otilde -/Odieresis -/multiply + /Eth + /Ntilde + /Ograve + /Oacute + /Ocircumflex + /Otilde + /Odieresis + /multiply % 0xD8 -/Oslash -/Ugrave -/Uacute -/Ucircumflex -/Udieresis -/Yacute -/Thorn -/germandbls + /Oslash + /Ugrave + /Uacute + /Ucircumflex + /Udieresis + /Yacute + /Thorn + /germandbls % 0xE0 -/agrave -/aacute -/acircumflex -/atilde -/adieresis -/aring -/ae -/ccedilla + /agrave + /aacute + /acircumflex + /atilde + /adieresis + /aring + /ae + /ccedilla % 0xE8 -/egrave -/eacute -/ecircumflex -/edieresis -/igrave -/iacute -/icircumflex -/idieresis + /egrave + /eacute + /ecircumflex + /edieresis + /igrave + /iacute + /icircumflex + /idieresis % 0xF0 -/eth -/ntilde -/ograve -/oacute -/ocircumflex -/otilde -/odieresis -/divide + /eth + /ntilde + /ograve + /oacute + /ocircumflex + /otilde + /odieresis + /divide % 0xF8 -/oslash -/ugrave -/uacute -/ucircumflex -/udieresis -/yacute -/thorn -/ydieresis + /oslash + /ugrave + /uacute + /ucircumflex + /udieresis + /yacute + /thorn + /ydieresis ] def % % LIGKERN question quoteleft =: questiondown; @@ -297,7 +297,7 @@ % LIGKERN endash hyphen =: emdash; % LIGKERN quoteleft quoteleft =: quotedblleft; % LIGKERN quoteright quoteright =: quotedblright; -% LIGKERN comma comma =: quotedblbase; +% LIGKERN comma comma =: quotedblbase; % LIGKERN less less =: guillemotleft; % LIGKERN greater greater =: guillemotright; % diff --git a/fonts/utilities/fontools/share/fontools_oml.enc b/fonts/utilities/fontools/share/fontools_oml.enc index d67d3460e6..8db5c77b6b 100644 --- a/fonts/utilities/fontools/share/fontools_oml.enc +++ b/fonts/utilities/fontools/share/fontools_oml.enc @@ -2,291 +2,303 @@ % CODINGSCHEME TEX MATH ITALIC /otftotfmOMLEncoding [ % 0x00 -/Gamma -/Delta -/Theta -/Lambda -/Xi -/Pi -/Sigma -/Upsilon + /Gamma + /Delta + /Theta + /Lambda + /Xi + /Pi + /Sigma + /Upsilon % 0x08 -/Phi -/Psi -/Omega -/alpha -/beta -/gamma -/delta -/epsilon1 + /Phi + /Psi + /Omega + /alpha + /beta + /gamma + /delta + /epsilon1 % 0x10 -/zeta -/eta -/theta -/iota -/kappa -/lambda -/mu -/nu + /zeta + /eta + /theta + /iota + /kappa + /lambda + /mu + /nu % 0x18 -/xi -/pi -/rho -/sigma -/tau -/upsilon -/phi -/chi + /xi + /pi + /rho + /sigma + /tau + /upsilon + /phi + /chi % 0x20 -/psi -/omega -/epsilon -/theta1 -/pi1 -/rho1 -/sigma1 -/phi1 + /psi + /omega + /epsilon + /theta1 + /pi1 + /rho1 + /sigma1 + /phi1 % 0x28 -/harpoonleftup -/harpoonleftdown -/harpoonrightup -/harpoonrightdown -/hookrightchar -/hookleftchar -/triangleright -/triangleleft + /harpoonleftup + /harpoonleftdown + /harpoonrightup + /harpoonrightdown + /hookrightchar + /hookleftchar + /triangleright + /triangleleft % 0x30 -/zero -/one -/two -/three -/four -/five -/six -/seven + /zero + /one + /two + /three + /four + /five + /six + /seven % 0x38 -/eight -/nine -/period -/comma -/less -/slash -/greater -/star + /eight + /nine + /period + /comma + /less + /slash + /greater + /star % 0x40 -/partialdiff -/A -/B -/C -/D -/E -/F -/G + /partialdiff + /A + /B + /C + /D + /E + /F + /G % 0x48 -/H -/I -/J -/K -/L -/M -/N -/O + /H + /I + /J + /K + /L + /M + /N + /O % 0x50 -/P -/Q -/R -/S -/T -/U -/V -/W + /P + /Q + /R + /S + /T + /U + /V + /W % 0x58 -/X -/Y -/Z -/flat -/natural -/sharp -/slurbelow -/slurabove + /X + /Y + /Z + /flat + /natural + /sharp + /slurbelow + /slurabove % 0x60 -/lscript -/a -/b -/c -/d -/e -/f -/g + /lscript + /a + /b + /c + /d + /e + /f + /g % 0x68 -/h -/i -/j -/k -/l -/m -/n -/o + /h + /i + /j + /k + /l + /m + /n + /o % 0x70 -/p -/q -/r -/s -/t -/u -/v -/w + /p + /q + /r + /s + /t + /u + /v + /w % 0x78 -/x -/y -/z -/dotlessi -/dotlessj -/weierstrass -/vector -/tie + /x + /y + /z + /dotlessi + /dotlessj + /weierstrass + /vector + /tie % 0x80 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x88 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x90 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x98 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xA0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xA8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xB0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xB8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xC0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xC8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xD0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xD8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xE0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xE8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xF0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xF8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef ] def +% +% UNICODING Delta =: Deltagreek Delta; +% UNICODING Omega =: Omegagreek Omega; +% UNICODING mu =: mugreek mu; +% UNICODING harpoonleftup =: harpoonleftup arrowlefttophalf;; +% UNICODING harpoonleftdown =: harpoonleftdown arrowleftbothalf +% UNICODING harpoonrightup =: harpoonrightup arrowrighttophalf; +% UNICODING harpoonrightdown =: harpoonrightdown arrowrightbothalf; +% UNICODING hookrightchar =: hookrightchar arrowhookleft; +% UNICODING hookleftchar =: hookleftchar arrowhookright; +% UNICODING star =: star asteriskcentered; +% UNICODING tie =: tie uni0311; diff --git a/fonts/utilities/fontools/share/fontools_ot1.enc b/fonts/utilities/fontools/share/fontools_ot1.enc index 59bf94c87c..0cb0d1901d 100644 --- a/fonts/utilities/fontools/share/fontools_ot1.enc +++ b/fonts/utilities/fontools/share/fontools_ot1.enc @@ -2,301 +2,307 @@ % CODINGSCHEME TEX TEXT /otftotfmOT1Encoding [ % 0x00 -/Gamma -/Delta -/Theta -/Lambda -/Xi -/Pi -/Sigma -/Upsilon + /Gamma + /Delta + /Theta + /Lambda + /Xi + /Pi + /Sigma + /Upsilon % 0x08 -/Phi -/Psi -/Omega -/ff -/fi -/fl -/ffi -/ffl + /Phi + /Psi + /Omega + /ff + /fi + /fl + /ffi + /ffl % 0x10 -/dotlessi -/dotlessj -/grave -/acute -/caron -/breve -/macron -/ring + /dotlessi + /dotlessj + /grave + /acute + /caron + /breve + /macron + /ring % 0x18 -/cedilla -/germandbls -/ae -/oe -/oslash -/AE -/OE -/Oslash + /cedilla + /germandbls + /ae + /oe + /oslash + /AE + /OE + /Oslash % 0x20 -/uni2423 -/exclam -/quotedblright -/numbersign -/dollar -/percent -/ampersand -/quoteright + /lslashslash + /exclam + /quotedblright + /numbersign + /dollar + /percent + /ampersand + /quoteright % 0x28 -/parenleft -/parenright -/asterisk -/plus -/comma -/hyphen -/period -/slash + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash % 0x30 -/zero -/one -/two -/three -/four -/five -/six -/seven + /zero + /one + /two + /three + /four + /five + /six + /seven % 0x38 -/eight -/nine -/colon -/semicolon -/exclamdown -/equal -/questiondown -/question + /eight + /nine + /colon + /semicolon + /exclamdown + /equal + /questiondown + /question % 0x40 -/at -/A -/B -/C -/D -/E -/F -/G + /at + /A + /B + /C + /D + /E + /F + /G % 0x48 -/H -/I -/J -/K -/L -/M -/N -/O + /H + /I + /J + /K + /L + /M + /N + /O % 0x50 -/P -/Q -/R -/S -/T -/U -/V -/W + /P + /Q + /R + /S + /T + /U + /V + /W % 0x58 -/X -/Y -/Z -/bracketleft -/quotedblleft -/bracketright -/circumflex -/dotaccent + /X + /Y + /Z + /bracketleft + /quotedblleft + /bracketright + /circumflex + /dotaccent % 0x60 -/quoteleft -/a -/b -/c -/d -/e -/f -/g + /quoteleft + /a + /b + /c + /d + /e + /f + /g % 0x68 -/h -/i -/j -/k -/l -/m -/n -/o + /h + /i + /j + /k + /l + /m + /n + /o % 0x70 -/p -/q -/r -/s -/t -/u -/v -/w + /p + /q + /r + /s + /t + /u + /v + /w % 0x78 -/x -/y -/z -/endash -/emdash -/hungarumlaut -/tilde -/dieresis + /x + /y + /z + /endash + /emdash + /hungarumlaut + /tilde + /dieresis % 0x80 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x88 -/.notdef -/.notdef -/Lslash -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /Lslash + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x90 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x98 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xA0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xA8 -/.notdef -/.notdef -/lslash -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /lslash + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xB0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xB8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xC0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xC8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xD0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xD8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xE0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xE8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xF0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xF8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef ] def % +% UNICODING Delta =: Deltagreek Delta; +% UNICODING Omega =: Omegagreek Omega; +% UNICODING lslashslash =: lslashslash solidusshortoverlaycmb; +% % LIGKERN question quoteleft =: questiondown; % LIGKERN exclam quoteleft =: exclamdown; % LIGKERN hyphen hyphen =: endash; % LIGKERN endash hyphen =: emdash; % LIGKERN quoteleft quoteleft =: quotedblleft; % LIGKERN quoteright quoteright =: quotedblright; +% LIGKERN lslashslash L =: Lslash; +% LIGKERN lslashslash l =: lslash; % % LIGKERN || = 32; % diff --git a/fonts/utilities/fontools/share/fontools_qx.enc b/fonts/utilities/fontools/share/fontools_qx.enc new file mode 100644 index 0000000000..b62b305dfa --- /dev/null +++ b/fonts/utilities/fontools/share/fontools_qx.enc @@ -0,0 +1,310 @@ +% A version of the QX encoding, intended for use with otftotfm. +% Based on the file qx.enc from the dvips package +/otftotfmQXEncoding [ +% 0x00 + /alpha + /Delta + /beta + /delta + /pi + /Pi + /Sigma + /mu +% 0x08 + /ellipsis + /f_k + /Omega + /ff + /fi + /fl + /ffi + /ffl +% 0x10 + /dotlessi + /dotlessj + /grave + /acute + /caron + /breve + /macron + /ring +% 0x18 + /cedilla + /germandbls + /ae + /oe + /oslash + /AE + /OE + /Oslash +% 0x20 + /space + /exclam + /quotedblright + /numbersign + /dollar + /percent + /ampersand + /quoteright +% 0x28 + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash +% 0x30 + /zero + /one + /two + /three + /four + /five + /six + /seven +% 0x38 + /eight + /nine + /colon + /semicolon + /exclamdown + /equal + /questiondown + /question +% 0x40 + /at + /A + /B + /C + /D + /E + /F + /G +% 0x48 + /H + /I + /J + /K + /L + /M + /N + /O +% 0x50 + /P + /Q + /R + /S + /T + /U + /V + /W +% 0x58 + /X + /Y + /Z + /bracketleft + /quotedblleft + /bracketright + /circumflex + /dotaccent +% 0x60 + /quoteleft + /a + /b + /c + /d + /e + /f + /g +% 0x68 + /h + /i + /j + /k + /l + /m + /n + /o +% 0x70 + /p + /q + /r + /s + /t + /u + /v + /w +% 0x78 + /x + /y + /z + /endash + /emdash + /hungarumlaut + /tilde + /dieresis +% 0x80 + /Euro + /Aogonek + /Cacute + /greater + /greaterequal + /approxequal + /Eogonek + /Iogonek +% 0x88 + /less + /lessequal + /Lslash + /Nacute + /asciitilde + /asciicircum + /ell + /dagger +% 0x90 + /daggerdbl + /Sacute + /Scaron + /Scommaaccent + /degree + /Tcommaaccent + /ogonek + /Uogonek +% 0x98 + /Ydieresis + /Zacute + /Zcaron + /Zdotaccent + /IJ + /braceleft + /braceright + /section +% 0xA0 + /.notdef + /aogonek + /cacute + /registered + /copyright + /divide + /eogonek + /iogonek +% 0xA8 + /minus + /multiply + /lslash + /nacute + /plusminus + /infinity + /guillemotleft + /guillemotright +% 0xB0 + /paragraph + /sacute + /scaron + /scommaaccent + /bullet + /tcommaaccent + /threequartersemdash + /uogonek +% 0xB8 + /ydieresis + /zacute + /zcaron + /zdotaccent + /ij + /periodcentered + /quotedbl + /quotesingle +% 0xC0 + /Agrave + /Aacute + /Acircumflex + /Atilde + /Adieresis + /Aring + /backslash + /Ccedilla +% 0xC8 + /Egrave + /Eacute + /Ecircumflex + /Edieresis + /Igrave + /Iacute + /Icircumflex + /Idieresis +% 0xD0 + /Eth + /Ntilde + /Ograve + /Oacute + /Ocircumflex + /Otilde + /Odieresis + /currency +% 0xD8 + /perthousand + /Ugrave + /Uacute + /Ucircumflex + /Udieresis + /Yacute + /Thorn + /bar +% 0xE0 + /agrave + /aacute + /acircumflex + /atilde + /adieresis + /aring + /underscore + /ccedilla +% 0xE8 + /egrave + /eacute + /ecircumflex + /edieresis + /igrave + /iacute + /icircumflex + /idieresis +% 0xF0 + /eth + /ntilde + /ograve + /oacute + /ocircumflex + /otilde + /odieresis + /anglearc +% 0xF8 + /diameter + /ugrave + /uacute + /ucircumflex + /udieresis + /yacute + /thorn + /quotedblbase +] def +% +% UNICODING Delta =: Deltagreek Delta; +% UNICODING Omega =: Omegagreek Omega; +% UNICODING mu =: mugreek mu; +% +% LIGKERN question quoteleft =: questiondown; +% LIGKERN exclam quoteleft =: exclamdown; +% LIGKERN hyphen hyphen =: endash; +% LIGKERN endash hyphen =: emdash; +% LIGKERN quoteleft quoteleft =: quotedblleft; +% LIGKERN quoteright quoteright =: quotedblright; +% LIGKERN comma comma =: quotedblbase; +% LIGKERN less less =: guillemotleft; +% LIGKERN greater greater =: guillemotright; +% +% LIGKERN || = 32; +% +% UNICODING ff =: ; fi =: ; fl =: ; ffi =: ; ffl =: ; diff --git a/fonts/utilities/fontools/share/fontools_t1.enc b/fonts/utilities/fontools/share/fontools_t1.enc index f6f9e412a3..59caada7de 100644 --- a/fonts/utilities/fontools/share/fontools_t1.enc +++ b/fonts/utilities/fontools/share/fontools_t1.enc @@ -2,295 +2,299 @@ % CODINGSCHEME EXTENDED TEX FONT ENCODING - LATIN /otftotfmT1Encoding [ % 0x00 -/grave -/acute -/circumflex -/tilde -/dieresis -/hungarumlaut -/ring -/caron + /grave + /acute + /circumflex + /tilde + /dieresis + /hungarumlaut + /ring + /caron % 0x08 -/breve -/macron -/dotaccent -/cedilla -/ogonek -/quotesinglbase -/guilsinglleft -/guilsinglright + /breve + /macron + /dotaccent + /cedilla + /ogonek + /quotesinglbase + /guilsinglleft + /guilsinglright % 0x10 -/quotedblleft -/quotedblright -/quotedblbase -/guillemotleft -/guillemotright -/endash -/emdash -/cwm + /quotedblleft + /quotedblright + /quotedblbase + /guillemotleft + /guillemotright + /endash + /emdash + /cwm % 0x18 -/perthousandzero -/dotlessi -/dotlessj -/ff -/fi -/fl -/ffi -/ffl + /perthousandzero + /dotlessi + /dotlessj + /ff + /fi + /fl + /ffi + /ffl % 0x20 -/uni2423 -/exclam -/quotedbl -/numbersign -/dollar -/percent -/ampersand -/quoteright + /visualspace + /exclam + /quotedbl + /numbersign + /dollar + /percent + /ampersand + /quoteright % 0x28 -/parenleft -/parenright -/asterisk -/plus -/comma -/hyphen -/period -/slash + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash % 0x30 -/zero -/one -/two -/three -/four -/five -/six -/seven + /zero + /one + /two + /three + /four + /five + /six + /seven % 0x38 -/eight -/nine -/colon -/semicolon -/less -/equal -/greater -/question + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question % 0x40 -/at -/A -/B -/C -/D -/E -/F -/G + /at + /A + /B + /C + /D + /E + /F + /G % 0x48 -/H -/I -/J -/K -/L -/M -/N -/O + /H + /I + /J + /K + /L + /M + /N + /O % 0x50 -/P -/Q -/R -/S -/T -/U -/V -/W + /P + /Q + /R + /S + /T + /U + /V + /W % 0x58 -/X -/Y -/Z -/bracketleft -/backslash -/bracketright -/asciicircum -/underscore + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /asciicircum + /underscore % 0x60 -/quoteleft -/a -/b -/c -/d -/e -/f -/g + /quoteleft + /a + /b + /c + /d + /e + /f + /g % 0x68 -/h -/i -/j -/k -/l -/m -/n -/o + /h + /i + /j + /k + /l + /m + /n + /o % 0x70 -/p -/q -/r -/s -/t -/u -/v -/w + /p + /q + /r + /s + /t + /u + /v + /w % 0x78 -/x -/y -/z -/braceleft -/bar -/braceright -/asciitilde -/hyphenchar + /x + /y + /z + /braceleft + /bar + /braceright + /asciitilde + /hyphenchar % 0x80 -/Abreve -/Aogonek -/Cacute -/Ccaron -/Dcaron -/Ecaron -/Eogonek -/Gbreve + /Abreve + /Aogonek + /Cacute + /Ccaron + /Dcaron + /Ecaron + /Eogonek + /Gbreve % 0x88 -/Lacute -/Lcaron -/Lslash -/Nacute -/Ncaron -/Eng -/Ohungarumlaut -/Racute + /Lacute + /Lcaron + /Lslash + /Nacute + /Ncaron + /Eng + /Ohungarumlaut + /Racute % 0x90 -/Rcaron -/Sacute -/Scaron -/Scedilla -/Tcaron -/Tcedilla -/Uhungarumlaut -/Uring + /Rcaron + /Sacute + /Scaron + /Scedilla + /Tcaron + /Tcedilla + /Uhungarumlaut + /Uring % 0x98 -/Ydieresis -/Zacute -/Zcaron -/Zdotaccent -/IJ -/Idotaccent -/dbar -/section + /Ydieresis + /Zacute + /Zcaron + /Zdotaccent + /IJ + /Idotaccent + /dbar + /section % 0xA0 -/abreve -/aogonek -/cacute -/ccaron -/dcaron -/ecaron -/eogonek -/gbreve + /abreve + /aogonek + /cacute + /ccaron + /dcaron + /ecaron + /eogonek + /gbreve % 0xA8 -/lacute -/lcaron -/lslash -/nacute -/ncaron -/eng -/ohungarumlaut -/racute + /lacute + /lcaron + /lslash + /nacute + /ncaron + /eng + /ohungarumlaut + /racute % 0xB0 -/rcaron -/sacute -/scaron -/scedilla -/tcaron -/tcedilla -/uhungarumlaut -/uring + /rcaron + /sacute + /scaron + /scedilla + /tcaron + /tcedilla + /uhungarumlaut + /uring % 0xB8 -/ydieresis -/zacute -/zcaron -/zdotaccent -/ij -/exclamdown -/questiondown -/sterling + /ydieresis + /zacute + /zcaron + /zdotaccent + /ij + /exclamdown + /questiondown + /sterling % 0xC0 -/Agrave -/Aacute -/Acircumflex -/Atilde -/Adieresis -/Aring -/AE -/Ccedilla + /Agrave + /Aacute + /Acircumflex + /Atilde + /Adieresis + /Aring + /AE + /Ccedilla % 0xC8 -/Egrave -/Eacute -/Ecircumflex -/Edieresis -/Igrave -/Iacute -/Icircumflex -/Idieresis + /Egrave + /Eacute + /Ecircumflex + /Edieresis + /Igrave + /Iacute + /Icircumflex + /Idieresis % 0xD0 -/Eth -/Ntilde -/Ograve -/Oacute -/Ocircumflex -/Otilde -/Odieresis -/OE + /Eth + /Ntilde + /Ograve + /Oacute + /Ocircumflex + /Otilde + /Odieresis + /OE % 0xD8 -/Oslash -/Ugrave -/Uacute -/Ucircumflex -/Udieresis -/Yacute -/Thorn -/SS + /Oslash + /Ugrave + /Uacute + /Ucircumflex + /Udieresis + /Yacute + /Thorn + /SS % 0xE0 -/agrave -/aacute -/acircumflex -/atilde -/adieresis -/aring -/ae -/ccedilla + /agrave + /aacute + /acircumflex + /atilde + /adieresis + /aring + /ae + /ccedilla % 0xE8 -/egrave -/eacute -/ecircumflex -/edieresis -/igrave -/iacute -/icircumflex -/idieresis + /egrave + /eacute + /ecircumflex + /edieresis + /igrave + /iacute + /icircumflex + /idieresis % 0xF0 -/eth -/ntilde -/ograve -/oacute -/ocircumflex -/otilde -/odieresis -/oe + /eth + /ntilde + /ograve + /oacute + /ocircumflex + /otilde + /odieresis + /oe % 0xF8 -/oslash -/ugrave -/uacute -/ucircumflex -/udieresis -/yacute -/thorn -/germandbls + /oslash + /ugrave + /uacute + /ucircumflex + /udieresis + /yacute + /thorn + /germandbls ] def % +% UNICODING perthousandzero =: perthousandzero zeroinferior emptyslot; +% UNICODING visualspace =: uni2423 uni02FD; +% UNICODING SS =: uni1E9E SS; +% % LIGKERN question quoteleft =: questiondown; % LIGKERN exclam quoteleft =: exclamdown; % LIGKERN hyphen hyphen =: endash; @@ -301,6 +305,6 @@ % LIGKERN less less =: guillemotleft; % LIGKERN greater greater =: guillemotright; % -% LIGKERN || = 32 ; +% LIGKERN || = 32; % % UNICODING ff =: ; fi =: ; fl =: ; ffi =: ; ffl =: ; diff --git a/fonts/utilities/fontools/share/fontools_t2a.enc b/fonts/utilities/fontools/share/fontools_t2a.enc index 1932d4c560..ae553fdda9 100644 --- a/fonts/utilities/fontools/share/fontools_t2a.enc +++ b/fonts/utilities/fontools/share/fontools_t2a.enc @@ -2,295 +2,298 @@ % CODINGSCHEME TEX CYRILLIC FONT ENCODING - T2A /otftotfmT2AEncoding [ % 0x00 -/grave -/acute -/circumflex -/tilde -/dieresis -/hungarumlaut -/ring -/caron + /grave + /acute + /circumflex + /tilde + /dieresis + /hungarumlaut + /ring + /caron % 0x08 -/breve -/macron -/dotaccent -/cedilla -/ogonek -/uni04C0 -/angleleft -/angleright + /breve + /macron + /dotaccent + /cedilla + /ogonek + /uni04C0 + /angleleft + /angleright % 0x10 -/quotedblleft -/quotedblright -/cyrflex -/dblgrave -/cyrbreve -/endash -/emdash -/.notdef + /quotedblleft + /quotedblright + /cyrflex + /dblgrave + /cyrbreve + /endash + /emdash + /.notdef % 0x18 -/perthousandzero -/dotlessi -/dotlessj -/ff -/fi -/fl -/ffi -/ffl + /perthousandzero + /dotlessi + /dotlessj + /ff + /fi + /fl + /ffi + /ffl % 0x20 -/uni2423 -/exclam -/quotedbl -/numbersign -/dollar -/percent -/ampersand -/quoteright + /visualspace + /exclam + /quotedbl + /numbersign + /dollar + /percent + /ampersand + /quoteright % 0x28 -/parenleft -/parenright -/asterisk -/plus -/comma -/hyphen -/period -/slash + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash % 0x30 -/zero -/one -/two -/three -/four -/five -/six -/seven + /zero + /one + /two + /three + /four + /five + /six + /seven % 0x38 -/eight -/nine -/colon -/semicolon -/less -/equal -/greater -/question + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question % 0x40 -/at -/A -/B -/C -/D -/E -/F -/G + /at + /A + /B + /C + /D + /E + /F + /G % 0x48 -/H -/I -/J -/K -/L -/M -/N -/O + /H + /I + /J + /K + /L + /M + /N + /O % 0x50 -/P -/Q -/R -/S -/T -/U -/V -/W + /P + /Q + /R + /S + /T + /U + /V + /W % 0x58 -/X -/Y -/Z -/bracketleft -/backslash -/bracketright -/asciicircum -/underscore + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /asciicircum + /underscore % 0x60 -/quoteleft -/a -/b -/c -/d -/e -/f -/g + /quoteleft + /a + /b + /c + /d + /e + /f + /g % 0x68 -/h -/i -/j -/k -/l -/m -/n -/o + /h + /i + /j + /k + /l + /m + /n + /o % 0x70 -/p -/q -/r -/s -/t -/u -/v -/w + /p + /q + /r + /s + /t + /u + /v + /w % 0x78 -/x -/y -/z -/braceleft -/bar -/braceright -/asciitilde -/hyphen + /x + /y + /z + /braceleft + /bar + /braceright + /asciitilde + /hyphen % 0x80 -/afii10050 -/uni0492 -/afii10051 -/afii10060 -/uni04BA -/uni0496 -/uni0498 -/afii10058 + /afii10050 + /uni0492 + /afii10051 + /afii10060 + /uni04BA + /uni0496 + /uni0498 + /afii10058 % 0x88 -/afii10056 -/uni049A -/uni04A0 -/uni049C -/uni04D4 -/uni04A2 -/uni04A4 -/afii10054 + /afii10056 + /uni049A + /uni04A0 + /uni049C + /uni04D4 + /uni04A2 + /uni04A4 + /afii10054 % 0x90 -/uni04E8 -/uni04AA -/afii10062 -/uni04AE -/uni04B0 -/uni04B2 -/afii10145 -/uni04B8 + /uni04E8 + /uni04AA + /afii10062 + /uni04AE + /uni04B0 + /uni04B2 + /afii10145 + /uni04B8 % 0x98 -/uni04B6 -/afii10053 -/uni04D8 -/afii10059 -/afii10023 -/afii61352 -/currency -/section + /uni04B6 + /afii10053 + /uni04D8 + /afii10059 + /afii10023 + /afii61352 + /currency + /section % 0xA0 -/afii10098 -/uni0493 -/afii10099 -/afii10108 -/uni04BB -/uni0497 -/uni0499 -/afii10106 + /afii10098 + /uni0493 + /afii10099 + /afii10108 + /uni04BB + /uni0497 + /uni0499 + /afii10106 % 0xA8 -/afii10104 -/uni049B -/uni04A1 -/uni049D -/uni04D5 -/uni04A3 -/uni04A5 -/afii10102 + /afii10104 + /uni049B + /uni04A1 + /uni049D + /uni04D5 + /uni04A3 + /uni04A5 + /afii10102 % 0xB0 -/uni04E9 -/uni04AB -/afii10110 -/uni04AF -/uni04B1 -/uni04B3 -/afii10193 -/uni04B9 + /uni04E9 + /uni04AB + /afii10110 + /uni04AF + /uni04B1 + /uni04B3 + /afii10193 + /uni04B9 % 0xB8 -/uni04B7 -/afii10101 -/afii10846 -/afii10107 -/afii10071 -/quotedblbase -/guillemotleft -/guillemotright + /uni04B7 + /afii10101 + /afii10846 + /afii10107 + /afii10071 + /quotedblbase + /guillemotleft + /guillemotright % 0xC0 -/afii10017 -/afii10018 -/afii10019 -/afii10020 -/afii10021 -/afii10022 -/afii10024 -/afii10025 + /afii10017 + /afii10018 + /afii10019 + /afii10020 + /afii10021 + /afii10022 + /afii10024 + /afii10025 % 0xC8 -/afii10026 -/afii10027 -/afii10028 -/afii10029 -/afii10030 -/afii10031 -/afii10032 -/afii10033 + /afii10026 + /afii10027 + /afii10028 + /afii10029 + /afii10030 + /afii10031 + /afii10032 + /afii10033 % 0xD0 -/afii10034 -/afii10035 -/afii10036 -/afii10037 -/afii10038 -/afii10039 -/afii10040 -/afii10041 + /afii10034 + /afii10035 + /afii10036 + /afii10037 + /afii10038 + /afii10039 + /afii10040 + /afii10041 % 0xD8 -/afii10042 -/afii10043 -/afii10044 -/afii10045 -/afii10046 -/afii10047 -/afii10048 -/afii10049 + /afii10042 + /afii10043 + /afii10044 + /afii10045 + /afii10046 + /afii10047 + /afii10048 + /afii10049 % 0xE0 -/afii10065 -/afii10066 -/afii10067 -/afii10068 -/afii10069 -/afii10070 -/afii10072 -/afii10073 + /afii10065 + /afii10066 + /afii10067 + /afii10068 + /afii10069 + /afii10070 + /afii10072 + /afii10073 % 0xE8 -/afii10074 -/afii10075 -/afii10076 -/afii10077 -/afii10078 -/afii10079 -/afii10080 -/afii10081 + /afii10074 + /afii10075 + /afii10076 + /afii10077 + /afii10078 + /afii10079 + /afii10080 + /afii10081 % 0xF0 -/afii10082 -/afii10083 -/afii10084 -/afii10085 -/afii10086 -/afii10087 -/afii10088 -/afii10089 + /afii10082 + /afii10083 + /afii10084 + /afii10085 + /afii10086 + /afii10087 + /afii10088 + /afii10089 % 0xF8 -/afii10090 -/afii10091 -/afii10092 -/afii10093 -/afii10094 -/afii10095 -/afii10096 -/afii10097 + /afii10090 + /afii10091 + /afii10092 + /afii10093 + /afii10094 + /afii10095 + /afii10096 + /afii10097 ] def % +% UNICODING perthousandzero =: perthousandzero zeroinferior emptyslot; +% UNICODING visualspace =: uni2423 uni02FD; +% % LIGKERN hyphen hyphen =: endash; % LIGKERN endash hyphen =: emdash; % LIGKERN quoteleft quoteleft =: quotedblleft; diff --git a/fonts/utilities/fontools/share/fontools_t2b.enc b/fonts/utilities/fontools/share/fontools_t2b.enc index 3ec4a3b8ff..7fc55400aa 100644 --- a/fonts/utilities/fontools/share/fontools_t2b.enc +++ b/fonts/utilities/fontools/share/fontools_t2b.enc @@ -2,295 +2,298 @@ % CODINGSCHEME TEX CYRILLIC FONT ENCODING - T2B /otftotfmT2BEncoding [ % 0x00 -/grave -/acute -/circumflex -/tilde -/dieresis -/hungarumlaut -/ring -/caron + /grave + /acute + /circumflex + /tilde + /dieresis + /hungarumlaut + /ring + /caron % 0x08 -/breve -/macron -/dotaccent -/cedilla -/ogonek -/uni04C0 -/angleleft -/angleright + /breve + /macron + /dotaccent + /cedilla + /ogonek + /uni04C0 + /angleleft + /angleright % 0x10 -/quotedblleft -/quotedblright -/cyrflex -/dblgrave -/cyrbreve -/endash -/emdash -/.notdef + /quotedblleft + /quotedblright + /cyrflex + /dblgrave + /cyrbreve + /endash + /emdash + /.notdef % 0x18 -/perthousandzero -/dotlessi -/dotlessj -/ff -/fi -/fl -/ffi -/ffl + /perthousandzero + /dotlessi + /dotlessj + /ff + /fi + /fl + /ffi + /ffl % 0x20 -/uni2423 -/exclam -/quotedbl -/numbersign -/dollar -/percent -/ampersand -/quoteright + /visualspace + /exclam + /quotedbl + /numbersign + /dollar + /percent + /ampersand + /quoteright % 0x28 -/parenleft -/parenright -/asterisk -/plus -/comma -/hyphen -/period -/slash + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash % 0x30 -/zero -/one -/two -/three -/four -/five -/six -/seven + /zero + /one + /two + /three + /four + /five + /six + /seven % 0x38 -/eight -/nine -/colon -/semicolon -/less -/equal -/greater -/question + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question % 0x40 -/at -/A -/B -/C -/D -/E -/F -/G + /at + /A + /B + /C + /D + /E + /F + /G % 0x48 -/H -/I -/J -/K -/L -/M -/N -/O + /H + /I + /J + /K + /L + /M + /N + /O % 0x50 -/P -/Q -/R -/S -/T -/U -/V -/W + /P + /Q + /R + /S + /T + /U + /V + /W % 0x58 -/X -/Y -/Z -/bracketleft -/backslash -/bracketright -/asciicircum -/underscore + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /asciicircum + /underscore % 0x60 -/quoteleft -/a -/b -/c -/d -/e -/f -/g + /quoteleft + /a + /b + /c + /d + /e + /f + /g % 0x68 -/h -/i -/j -/k -/l -/m -/n -/o + /h + /i + /j + /k + /l + /m + /n + /o % 0x70 -/p -/q -/r -/s -/t -/u -/v -/w + /p + /q + /r + /s + /t + /u + /v + /w % 0x78 -/x -/y -/z -/braceleft -/bar -/braceright -/asciitilde -/hyphen + /x + /y + /z + /braceleft + /bar + /braceright + /asciitilde + /hyphen % 0x80 -/CYRGDSCHCRS % CYRILLIC CAPITAL LETTER GHE WITH STROKE AND DESCENDER -/uni0492 -/CYRGDSC % CYRILLIC CAPITAL LETTER GHE WITH DESCENDER -/uni0494 -/uni04BA -/uni0496 -/CYRDELTA % CYRILLIC CAPITAL LETTER DELTA -/uni04E0 + /CYRGDSCHCRS % CYRILLIC CAPITAL LETTER GHE WITH STROKE AND DESCENDER + /uni0492 + /CYRGDSC % CYRILLIC CAPITAL LETTER GHE WITH DESCENDER + /uni0494 + /uni04BA + /uni0496 + /CYRDELTA % CYRILLIC CAPITAL LETTER DELTA + /uni04E0 % 0x88 -/afii10058 -/uni049A -/CYRLDSC % CYRILLIC CAPITAL LETTER EL WITH DESCENDER -/uni04C3 -/CYRLHK % CYRILLIC CAPITAL LETTER EL WITH HOOK -/uni04A2 -/uni04A4 -/uni04C7 + /afii10058 + /uni049A + /CYRLDSC % CYRILLIC CAPITAL LETTER EL WITH DESCENDER + /uni04C3 + /CYRLHK % CYRILLIC CAPITAL LETTER EL WITH HOOK + /uni04A2 + /uni04A4 + /uni04C7 % 0x90 -/uni04E8 -/CYRSACRS % CYRILLIC CAPITAL LETTER ES WITH STROKE -/afii10062 -/uni04AE -/CYRHHCRS % CYRILLIC CAPITAL LETTER HA WITH STROKE -/uni04B2 -/CYRHHK % CYRILLIC CAPITAL LETTER HA WITH HOOK -/uni04CB + /uni04E8 + /CYRSACRS % CYRILLIC CAPITAL LETTER ES WITH STROKE + /afii10062 + /uni04AE + /CYRHHCRS % CYRILLIC CAPITAL LETTER HA WITH STROKE + /uni04B2 + /CYRHHK % CYRILLIC CAPITAL LETTER HA WITH HOOK + /uni04CB % 0x98 -/uni04B6 -/afii10059 -/uni04D8 -/CYREPS % CYRILLIC CAPITAL LETTER EPSILON -/afii10023 -/afii61352 -/currency -/section + /uni04B6 + /afii10059 + /uni04D8 + /CYREPS % CYRILLIC CAPITAL LETTER EPSILON + /afii10023 + /afii61352 + /currency + /section % 0xA0 -/cyrgdschcrs % CYRILLIC SMALL LETTER GHE WITH STROKE AND DESCENDER -/uni0493 -/cyrgdsc % CYRILLIC SMALL LETTER GHE WITH DESCENDER -/uni0495 -/uni04BB -/uni0497 -/cyrdelta % CYRILLIC SMALL LETTER DELTA -/uni04E1 + /cyrgdschcrs % CYRILLIC SMALL LETTER GHE WITH STROKE AND DESCENDER + /uni0493 + /cyrgdsc % CYRILLIC SMALL LETTER GHE WITH DESCENDER + /uni0495 + /uni04BB + /uni0497 + /cyrdelta % CYRILLIC SMALL LETTER DELTA + /uni04E1 % 0xA8 -/afii10106 -/uni049B -/cyrldsc % CYRILLIC SMALL LETTER EL WITH DESCENDER -/uni04C4 -/cyrlhk % CYRILLIC SMALL LETTER EL WITH HOOK -/uni04A3 -/uni04A5 -/uni04C8 + /afii10106 + /uni049B + /cyrldsc % CYRILLIC SMALL LETTER EL WITH DESCENDER + /uni04C4 + /cyrlhk % CYRILLIC SMALL LETTER EL WITH HOOK + /uni04A3 + /uni04A5 + /uni04C8 % 0xB0 -/uni04E9 -/cyrsacrs % CYRILLIC SMALL LETTER ES WITH STROKE -/afii10110 -/uni04AF -/cyrhhcrs % CYRILLIC SMALL LETTER HA WITH STROKE -/uni04B3 -/cyrhhk % CYRILLIC SMALL LETTER HA WITH HOOK -/uni04CC + /uni04E9 + /cyrsacrs % CYRILLIC SMALL LETTER ES WITH STROKE + /afii10110 + /uni04AF + /cyrhhcrs % CYRILLIC SMALL LETTER HA WITH STROKE + /uni04B3 + /cyrhhk % CYRILLIC SMALL LETTER HA WITH HOOK + /uni04CC % 0xB8 -/uni04B7 -/afii10107 -/afii10846 -/cyreps % CYRILLIC SMALL LETTER EPSILON -/afii10071 -/quotedblbase -/guillemotleft -/guillemotright + /uni04B7 + /afii10107 + /afii10846 + /cyreps % CYRILLIC SMALL LETTER EPSILON + /afii10071 + /quotedblbase + /guillemotleft + /guillemotright % 0xC0 -/afii10017 -/afii10018 -/afii10019 -/afii10020 -/afii10021 -/afii10022 -/afii10024 -/afii10025 + /afii10017 + /afii10018 + /afii10019 + /afii10020 + /afii10021 + /afii10022 + /afii10024 + /afii10025 % 0xC8 -/afii10026 -/afii10027 -/afii10028 -/afii10029 -/afii10030 -/afii10031 -/afii10032 -/afii10033 + /afii10026 + /afii10027 + /afii10028 + /afii10029 + /afii10030 + /afii10031 + /afii10032 + /afii10033 % 0xD0 -/afii10034 -/afii10035 -/afii10036 -/afii10037 -/afii10038 -/afii10039 -/afii10040 -/afii10041 + /afii10034 + /afii10035 + /afii10036 + /afii10037 + /afii10038 + /afii10039 + /afii10040 + /afii10041 % 0xD8 -/afii10042 -/afii10043 -/afii10044 -/afii10045 -/afii10046 -/afii10047 -/afii10048 -/afii10049 + /afii10042 + /afii10043 + /afii10044 + /afii10045 + /afii10046 + /afii10047 + /afii10048 + /afii10049 % 0xE0 -/afii10065 -/afii10066 -/afii10067 -/afii10068 -/afii10069 -/afii10070 -/afii10072 -/afii10073 + /afii10065 + /afii10066 + /afii10067 + /afii10068 + /afii10069 + /afii10070 + /afii10072 + /afii10073 % 0xE8 -/afii10074 -/afii10075 -/afii10076 -/afii10077 -/afii10078 -/afii10079 -/afii10080 -/afii10081 + /afii10074 + /afii10075 + /afii10076 + /afii10077 + /afii10078 + /afii10079 + /afii10080 + /afii10081 % 0xF0 -/afii10082 -/afii10083 -/afii10084 -/afii10085 -/afii10086 -/afii10087 -/afii10088 -/afii10089 + /afii10082 + /afii10083 + /afii10084 + /afii10085 + /afii10086 + /afii10087 + /afii10088 + /afii10089 % 0xF8 -/afii10090 -/afii10091 -/afii10092 -/afii10093 -/afii10094 -/afii10095 -/afii10096 -/afii10097 + /afii10090 + /afii10091 + /afii10092 + /afii10093 + /afii10094 + /afii10095 + /afii10096 + /afii10097 ] def % +% UNICODING perthousandzero =: perthousandzero zeroinferior emptyslot; +% UNICODING visualspace =: uni2423 uni02FD; +% % LIGKERN hyphen hyphen =: endash; % LIGKERN endash hyphen =: emdash; % LIGKERN quoteleft quoteleft =: quotedblleft; diff --git a/fonts/utilities/fontools/share/fontools_t2c.enc b/fonts/utilities/fontools/share/fontools_t2c.enc index 753c851a36..888bd03110 100644 --- a/fonts/utilities/fontools/share/fontools_t2c.enc +++ b/fonts/utilities/fontools/share/fontools_t2c.enc @@ -2,295 +2,298 @@ % CODINGSCHEME TEX CYRILLIC FONT ENCODING - T2C /otftotfmT2CEncoding [ % 0x00 -/grave -/acute -/circumflex -/tilde -/dieresis -/hungarumlaut -/ring -/caron + /grave + /acute + /circumflex + /tilde + /dieresis + /hungarumlaut + /ring + /caron % 0x08 -/breve -/macron -/dotaccent -/cedilla -/ogonek -/uni04C0 -/angleleft -/angleright + /breve + /macron + /dotaccent + /cedilla + /ogonek + /uni04C0 + /angleleft + /angleright % 0x10 -/quotedblleft -/quotedblright -/cyrflex -/dblgrave -/cyrbreve -/endash -/emdash -/.notdef + /quotedblleft + /quotedblright + /cyrflex + /dblgrave + /cyrbreve + /endash + /emdash + /.notdef % 0x10 -/perthousandzero -/dotlessi -/dotlessj -/ff -/fi -/fl -/ffi -/ffl + /perthousandzero + /dotlessi + /dotlessj + /ff + /fi + /fl + /ffi + /ffl % 0x20 -/uni2423 -/exclam -/quotedbl -/numbersign -/dollar -/percent -/ampersand -/quoteright + /visualspace + /exclam + /quotedbl + /numbersign + /dollar + /percent + /ampersand + /quoteright % 0x28 -/parenleft -/parenright -/asterisk -/plus -/comma -/hyphen -/period -/slash + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash % 0x30 -/zero -/one -/two -/three -/four -/five -/six -/seven + /zero + /one + /two + /three + /four + /five + /six + /seven % 0x38 -/eight -/nine -/colon -/semicolon -/less -/equal -/greater -/question + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question % 0x40 -/at -/A -/B -/C -/D -/E -/F -/G + /at + /A + /B + /C + /D + /E + /F + /G % 0x48 -/H -/I -/J -/K -/L -/M -/N -/O + /H + /I + /J + /K + /L + /M + /N + /O % 0x50 -/P -/Q -/R -/S -/T -/U -/V -/W + /P + /Q + /R + /S + /T + /U + /V + /W % 0x58 -/X -/Y -/Z -/bracketleft -/backslash -/bracketright -/asciicircum -/underscore + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /asciicircum + /underscore % 0x60 -/quoteleft -/a -/b -/c -/d -/e -/f -/g + /quoteleft + /a + /b + /c + /d + /e + /f + /g % 0x68 -/h -/i -/j -/k -/l -/m -/n -/o + /h + /i + /j + /k + /l + /m + /n + /o % 0x70 -/p -/q -/r -/s -/t -/u -/v -/w + /p + /q + /r + /s + /t + /u + /v + /w % 0x78 -/x -/y -/z -/braceleft -/bar -/braceright -/asciitilde -/hyphen + /x + /y + /z + /braceleft + /bar + /braceright + /asciitilde + /hyphen % 0x80 -/uni04A6 -/uni04B4 -/uni04AC -/uni0494 -/uni04BA -/CYRRDSC % CYRILLIC CAPITAL LETTER ER WITH DESCENDER -/uni048E -/uni04E0 + /uni04A6 + /uni04B4 + /uni04AC + /uni0494 + /uni04BA + /CYRRDSC % CYRILLIC CAPITAL LETTER ER WITH DESCENDER + /uni048E + /uni04E0 % 0x88 -/CYRMDSC % CYRILLIC CAPITAL LETTER EM WITH DESCENDER -/uni049A -/CYRLDSC % CYRILLIC CAPITAL LETTER EL WITH DESCENDER -/uni049E -/CYRLHK % CYRILLIC CAPITAL LETTER EL WITH HOOK -/uni04A2 -/CYRMHK % CYRILLIC CAPITAL LETTER EM WITH HOOK -/uni04C7 + /CYRMDSC % CYRILLIC CAPITAL LETTER EM WITH DESCENDER + /uni049A + /CYRLDSC % CYRILLIC CAPITAL LETTER EL WITH DESCENDER + /uni049E + /CYRLHK % CYRILLIC CAPITAL LETTER EL WITH HOOK + /uni04A2 + /CYRMHK % CYRILLIC CAPITAL LETTER EM WITH HOOK + /uni04C7 % 0x90 -/uni04E8 -/uni04BC -/uni04BE -/uni048C -/CYRISHRTDSC % CYRILLIC CAPITAL LETTER SHORT I WITH DESCENDER -/uni04B2 -/afii10145 -/uni04A8 + /uni04E8 + /uni04BC + /uni04BE + /uni048C + /CYRISHRTDSC % CYRILLIC CAPITAL LETTER SHORT I WITH DESCENDER + /uni04B2 + /afii10145 + /uni04A8 % 0x98 -/uni04B6 -/CYRNLHK % CYRILLIC CAPITAL LETTER EN WITH LEFT HOOK -/uni04D8 -/CYRRHK % CYRILLIC CAPITAL LETTER ER WITH HOOK -/afii10023 -/afii61352 -/currency -/section + /uni04B6 + /CYRNLHK % CYRILLIC CAPITAL LETTER EN WITH LEFT HOOK + /uni04D8 + /CYRRHK % CYRILLIC CAPITAL LETTER ER WITH HOOK + /afii10023 + /afii61352 + /currency + /section % 0xA0 -/uni04A7 -/uni04B5 -/uni04AD -/uni0495 -/uni04BB -/cyrrdsc % CYRILLIC SMALL LETTER ER WITH DESCENDER -/uni048F -/uni04E1 + /uni04A7 + /uni04B5 + /uni04AD + /uni0495 + /uni04BB + /cyrrdsc % CYRILLIC SMALL LETTER ER WITH DESCENDER + /uni048F + /uni04E1 % 0xA8 -/cyrmdsc % CYRILLIC SMALL LETTER EM WITH DESCENDER -/uni049B -/cyrldsc % CYRILLIC SMALL LETTER EL WITH DESCENDER -/uni049F -/cyrlhk % CYRILLIC SMALL LETTER EL WITH HOOK -/uni04A3 -/cyrmhk % CYRILLIC SMALL LETTER EM WITH HOOK -/uni04C8 + /cyrmdsc % CYRILLIC SMALL LETTER EM WITH DESCENDER + /uni049B + /cyrldsc % CYRILLIC SMALL LETTER EL WITH DESCENDER + /uni049F + /cyrlhk % CYRILLIC SMALL LETTER EL WITH HOOK + /uni04A3 + /cyrmhk % CYRILLIC SMALL LETTER EM WITH HOOK + /uni04C8 % 0xB0 -/uni04E9 -/uni04BD -/uni04BF -/uni048D -/cyrishrtdsc % CYRILLIC SMALL LETTER SHORT I WITH DESCENDER -/uni04B3 -/afii10193 -/uni04A9 + /uni04E9 + /uni04BD + /uni04BF + /uni048D + /cyrishrtdsc % CYRILLIC SMALL LETTER SHORT I WITH DESCENDER + /uni04B3 + /afii10193 + /uni04A9 % 0xB8 -/uni04B7 -/cyrnlhk % CYRILLIC SMALL LETTER EN WITH LEFT HOOK -/afii10846 -/cyrrhk % CYRILLIC SMALL LETTER ER WITH HOOK -/afii10071 -/quotedblbase -/guillemotleft -/guillemotright + /uni04B7 + /cyrnlhk % CYRILLIC SMALL LETTER EN WITH LEFT HOOK + /afii10846 + /cyrrhk % CYRILLIC SMALL LETTER ER WITH HOOK + /afii10071 + /quotedblbase + /guillemotleft + /guillemotright % 0xC0 -/afii10017 -/afii10018 -/afii10019 -/afii10020 -/afii10021 -/afii10022 -/afii10024 -/afii10025 + /afii10017 + /afii10018 + /afii10019 + /afii10020 + /afii10021 + /afii10022 + /afii10024 + /afii10025 % 0xC8 -/afii10026 -/afii10027 -/afii10028 -/afii10029 -/afii10030 -/afii10031 -/afii10032 -/afii10033 + /afii10026 + /afii10027 + /afii10028 + /afii10029 + /afii10030 + /afii10031 + /afii10032 + /afii10033 % 0xD0 -/afii10034 -/afii10035 -/afii10036 -/afii10037 -/afii10038 -/afii10039 -/afii10040 -/afii10041 + /afii10034 + /afii10035 + /afii10036 + /afii10037 + /afii10038 + /afii10039 + /afii10040 + /afii10041 % 0xD8 -/afii10042 -/afii10043 -/afii10044 -/afii10045 -/afii10046 -/afii10047 -/afii10048 -/afii10049 + /afii10042 + /afii10043 + /afii10044 + /afii10045 + /afii10046 + /afii10047 + /afii10048 + /afii10049 % 0xE0 -/afii10065 -/afii10066 -/afii10067 -/afii10068 -/afii10069 -/afii10070 -/afii10072 -/afii10073 + /afii10065 + /afii10066 + /afii10067 + /afii10068 + /afii10069 + /afii10070 + /afii10072 + /afii10073 % 0xE8 -/afii10074 -/afii10075 -/afii10076 -/afii10077 -/afii10078 -/afii10079 -/afii10080 -/afii10081 + /afii10074 + /afii10075 + /afii10076 + /afii10077 + /afii10078 + /afii10079 + /afii10080 + /afii10081 % 0xF0 -/afii10082 -/afii10083 -/afii10084 -/afii10085 -/afii10086 -/afii10087 -/afii10088 -/afii10089 + /afii10082 + /afii10083 + /afii10084 + /afii10085 + /afii10086 + /afii10087 + /afii10088 + /afii10089 % 0xF8 -/afii10090 -/afii10091 -/afii10092 -/afii10093 -/afii10094 -/afii10095 -/afii10096 -/afii10097 + /afii10090 + /afii10091 + /afii10092 + /afii10093 + /afii10094 + /afii10095 + /afii10096 + /afii10097 ] def % +% UNICODING perthousandzero =: perthousandzero zeroinferior emptyslot; +% UNICODING visualspace =: uni2423 uni02FD; +% % LIGKERN hyphen hyphen =: endash; % LIGKERN endash hyphen =: emdash; % LIGKERN quoteleft quoteleft =: quotedblleft; diff --git a/fonts/utilities/fontools/share/fontools_t3.enc b/fonts/utilities/fontools/share/fontools_t3.enc index 443073dcdf..6826ae15eb 100644 --- a/fonts/utilities/fontools/share/fontools_t3.enc +++ b/fonts/utilities/fontools/share/fontools_t3.enc @@ -1,276 +1,286 @@ % A version of the T3 encoding, intended for use with otftotfm. +% +% I don't remember where I found this; but it contains many +% non-standard glyph names (i.e., missing from glyphlist.txt), +% so that otftotfm won't use those slots. +% +% TODO: we should try and find these glyphs in the Unicode standard +% and replace the non-standard names with /uni.... codes. +% % CODINGSCHEME IPA ENCODING /otftotfmT3Encoding [ % 0x00 -/uni02CB -/uni02CA -/uni02C6 -/uni02DC -/dieresis -/uni02BA -/uni02DA -/uni02C7 -/uni02D8 -/uni02C9 -/uni02D9 -/cedilla -/uni02DB -/space_uni030F -/subgrave -/subacute + /uni02CB + /uni02CA + /uni02C6 + /uni02DC + /dieresis + /uni02BA + /uni02DA + /uni02C7 + /uni02D8 + /uni02C9 + /uni02D9 + /cedilla + /uni02DB + /uni030F % was /space_uni030F + /uni0316 % was /subgrave + /uni0317 % was /subacute % 0x10 -/space_uni0311 -/space_uni032A -/space_uni033A -/space_uni033B -/uni02BE -/uni02BF -/space_uni032B -/space_uni033C -/uni02DF -/dotlessi -/dotlessj -/uni02D6 -/uni02D4 -/uni02D5 -/advancing -/retracting + /uni0311 % was /space_uni0311 + /uni032A % was /space_uni032A + /uni033A % was /space_uni033A + /uni033B % was /space_uni033B + /uni02BE + /uni02BF + /uni032B % was /space_uni032B + /uni033C % was /space_uni033C + /uni02DF + /dotlessi + /dotlessj + /uni02D6 + /uni02D4 + /uni02D5 + /advancing % unknown glyph name, so won't be used + /retracting % unknown glyph name, so won't be used % 0x20 -/celpal -/uni01C3 -/uni02C8 -/hooktop -/space_uni0322 -/space_uni0321 -/uni0360 -/quoteright -/parenleft -/parenright -/asterisk -/plus -/comma -/hyphen -/period -/slash + /uni02B9 % was /celpal + /uni01C3 + /uni02C8 + /hooktop + /uni0322 % was /space_uni0322 + /uni0321 % was /space_uni0321 + /uni0360 + /quoteright + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash % 0x30 -/uni0289 -/uni0268 -/uni028C -/uni025C -/uni0265 -/uni0250 -/uni0252 -/uni0264 -/uni0275 -/uni0258 -/uni02D0 -/uni02D1 -/uni203F -/equal -/uni2322 -/question + /uni0289 + /uni0268 + /uni028C + /uni025C + /uni0265 + /uni0250 + /uni0252 + /uni0264 + /uni0275 + /uni0258 + /uni02D0 + /uni02D1 + /uni203F + /equal + /uni2322 + /question % 0x40 -/uni0259 -/uni0251 -/beta.ipa -/uni0255 -/eth -/uni025B -/uni0278 -/uni0263 -/uni0266 -/uni026A -/uni029D -/uni0281 -/uni028E -/uni0271 -/eng.ipa -/uni0254 + /uni0259 + /uni0251 + /beta.ipa + /uni0255 + /eth + /uni025B + /uni0278 + /uni0263 + /uni0266 + /uni026A + /uni029D + /uni0281 + /uni028E + /uni0271 + /eng.ipa + /uni0254 % 0x50 -/uni0294 -/uni0295 -/uni027E -/uni0283 -/theta.ipa -/uni028A -/uni028B -/uni026F -/chi.ipa -/uni028F -/uni0292 -/bracketleft -/uni02BD -/bracketright -/uni02FA -/uni02F9 + /uni0294 + /uni0295 + /uni027E + /uni0283 + /theta.ipa + /uni028A + /uni028B + /uni026F + /chi.ipa + /uni028F + /uni0292 + /bracketleft + /uni02BD + /bracketright + /uni02FA + /uni02F9 % 0x60 -/uni02BB -/a -/b -/c -/d -/e -/f -/uni0261 -/h -/i -/j -/k -/l -/m -/n -/o + /uni02BB + /a + /b + /c + /d + /e + /f + /uni0261 + /h + /i + /j + /k + /l + /m + /n + /o % 0x70 -/p -/q -/r -/s -/t -/u -/v -/w -/x -/y -/z -/uni01C1 -/uni01C0 -/uni01C2 -/uni02DE -/uni02CC + /p + /q + /r + /s + /t + /u + /v + /w + /x + /y + /z + /uni01C1 + /uni01C0 + /uni01C2 + /uni02DE + /uni02CC % 0x80 -/longleveltone -/longfallingtone1 -/longfallingtone2 -/longfallingtone3 -/longfallingtone4 -/longrisingtone1 -/longrisingtone2 -/longrisingtone3 -/longrisingtone4 -/shortleveltone -/shortfallingtone1 -/shortfallingtone2 -/shortfallingtone3 -/shortfallingtone4 -/shortrisingtone1 -/shortrisingtone2 + /longleveltone % unknown glyph name, so won't be used + /longfallingtone1 % unknown glyph name, so won't be used + /longfallingtone2 % unknown glyph name, so won't be used + /longfallingtone3 % unknown glyph name, so won't be used + /longfallingtone4 % unknown glyph name, so won't be used + /longrisingtone1 % unknown glyph name, so won't be used + /longrisingtone2 % unknown glyph name, so won't be used + /longrisingtone3 % unknown glyph name, so won't be used + /longrisingtone4 % unknown glyph name, so won't be used + /shortleveltone % unknown glyph name, so won't be used + /shortfallingtone1 % unknown glyph name, so won't be used + /shortfallingtone2 % unknown glyph name, so won't be used + /shortfallingtone3 % unknown glyph name, so won't be used + /shortfallingtone4 % unknown glyph name, so won't be used + /shortrisingtone1 % unknown glyph name, so won't be used + /shortrisingtone2 % unknown glyph name, so won't be used % 0x90 -/shortrisingtone3 -/shortrisingtone4 -/uni2502 -/uni2551 -/uniA71C -/uniA71B -/uni2197 -/uni2198 -/uni1DC4 -/uni1DC5 -/uni1DC8 -/uni1DC9 -/space_uni030D -/space_uni030E -/gravedot -/dotacute + /shortrisingtone3 % unknown glyph name, so won't be used + /shortrisingtone4 % unknown glyph name, so won't be used + /uni2502 + /uni2551 + /uniA71C + /uniA71B + /uni2197 + /uni2198 + /uni1DC4 + /uni1DC5 + /uni1DC8 + /uni1DC9 + /uni030D % was /space_uni030D + /uni030E % was /space_uni030E + /gravedot % unknown glyph name, so won't be used + /dotacute % unknown glyph name, so won't be used % 0xa0 -/uni0180 -/uni0111 -/uni0221 -/uni1D91 -/uni1D07 -/g -/longilefthook -/uni0285 -/uni1D0A -/uni029E -/uni019A -/lambda.ipa -/uni019b -/lyogh.old -/uni0235 -/turnce + /uni0180 + /uni0111 + /uni0221 + /uni1D91 + /uni1D07 + /g + /longilefthook % unknown glyph name, so won't be used + /uni0285 + /uni1D0A + /uni029E + /uni019A + /lambda.ipa + /uni019b + /lyogh.old % unknown glyph name, so won't be used + /uni0235 + /turnce % unknown glyph name, so won't be used % 0xb0 -/omega.ipa -/omega.sc.ipa -/uni0286 -/uni01AB -/uni0236 -/uni02A6 -/uni02AE -/uni02AF -/uni0293 -/uni01B9 -/afii10094 -/afii10092 -/uni02C0 -/uni02C2 -/uni02C3 -/pipe.var + /omega.ipa + /omega.sc.ipa + /uni0286 + /uni01AB + /uni0236 + /uni02A6 + /uni02AE + /uni02AF + /uni0293 + /uni01B9 + /afii10094 + /afii10092 + /uni02C0 + /uni02C2 + /uni02C3 + /bar % was /pipe.var % 0xc0 -/uni1D00 -/uni0188 -/uni0297 -/uni02A4 -/uni025A -/uni029A -/uni025E -/uni025D -/babygamma.old -/uni029B -/uni0267 -/uni029C -/uni0269 -/bardotlessjold -/uni0199 -/uni029F + /uni1D00 + /uni0188 + /uni0297 + /uni02A4 + /uni025A + /uni029A + /uni025E + /uni025D + /babygamma.old % unknown glyph name, so won't be used + /uni029B + /uni0267 + /uni029C + /uni0269 + /bardotlessjold % unknown glyph name, so won't be used + /uni0199 + /uni029F % 0xd0 -/uni026E -/uni0277 -/uni01A5 -/uni02A0 -/uni027C -/uni027A -/uni01AD -/uni0276 -/uni0287 -/uni02A7 -/uni1D1C -/uni0296 -/uni02A1 -/uni02A2 -/uni0225 -/uni01BF + /uni026E + /uni0277 + /uni01A5 + /uni02A0 + /uni027C + /uni027A + /uni01AD + /uni0276 + /uni0287 + /uni02A7 + /uni1D1C + /uni0296 + /uni02A1 + /uni02A2 + /uni0225 + /uni01BF % 0xe0 -/uni0299 -/uni0253 -/uni0257 -/uni0256 -/uni0260 -/uni0262 -/uni00E6 -/uni00E7 -/uni0127 -/uni025F -/uni0284 -/uni026B -/uni026C -/uni026D -/uni0270 -/uni0273 + /uni0299 + /uni0253 + /uni0257 + /uni0256 + /uni0260 + /uni0262 + /uni00E6 + /uni00E7 + /uni0127 + /uni025F + /uni0284 + /uni026B + /uni026C + /uni026D + /uni0270 + /uni0273 % 0xf0 -/uni0274 -/uni0272 -/uni0298 -/uni027D -/uni0279 -/uni027B -/uni0280 -/uni0153 -/uni00F8 -/uni0282 -/uni0288 -/uni028D -/uni0290 -/uni0291 -/uni00FE -/uni0195 + /uni0274 + /uni0272 + /uni0298 + /uni027D + /uni0279 + /uni027B + /uni0280 + /uni0153 + /uni00F8 + /uni0282 + /uni0288 + /uni028D + /uni0290 + /uni0291 + /uni00FE + /uni0195 ] def +% +% LIGKERN * {L} *; diff --git a/fonts/utilities/fontools/share/fontools_t4.enc b/fonts/utilities/fontools/share/fontools_t4.enc new file mode 100644 index 0000000000..77664a3976 --- /dev/null +++ b/fonts/utilities/fontools/share/fontools_t4.enc @@ -0,0 +1,309 @@ +% Encoding file for the T4 encoding, intended for use with otftotfm. +% Based on the file fc.rme fromnt the fc fonts package +/otftotfmT4Encoding [ +% 0x00 + /grave + /acute + /circumflex + /tilde + /dieresis + /hungarumlaut + /ring + /caron +% 0x08 + /breve + /macron + /dotaccent + /cedilla + /ogonek + /quotesinglbase + /guilsinglleft + /guilsinglright +% 0x10 + /quotedblleft + /quotedblright + /quotedblbase + /guillemotleft + /guillemotright + /endash + /emdash + /cwm +% 0x18 + /perthousandzero + /dotlessi + /dotlessj + /ff + /fi + /fl + /ffi + /ffl +% 0x20 + /visualspace + /exclam + /quotedbl + /numbersign + /dollar + /percent + /ampersand + /quoteright +% 0x28 + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash +% 0x30 + /zero + /one + /two + /three + /four + /five + /six + /seven +% 0x38 + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question +% 0x40 + /at + /A + /B + /C + /D + /E + /F + /G +% 0x48 + /H + /I + /J + /K + /L + /M + /N + /O +% 0x50 + /P + /Q + /R + /S + /T + /U + /V + /W +% 0x58 + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /asciicircum + /underscore +% 0x60 + /quoteleft + /a + /b + /c + /d + /e + /f + /g +% 0x68 + /h + /i + /j + /k + /l + /m + /n + /o +% 0x70 + /p + /q + /r + /s + /t + /u + /v + /w +% 0x78 + /x + /y + /z + /braceleft + /bar + /braceright + /asciitilde + /hyphenchar +% 0x80 + /Bhook + /Dhook + /Eopen + /Ereversed + /Fhook + /Ecaron + /Gammaafrican + /Hbar +% 0x88 + /Khook + /Nhookleft + /Oopen + /Nacute + /Esh + /Eng + /Vhook + /Yhook +% 0x90 + /Chook + /Phook + /Scaron + /Ndotaccent + /Nlinebelow + /Sdotbelow + /Ezh + /Tbar +% 0x98 + /Edot + /Edotbelow + /Thook + /Tretroflexhook + /tesh + /f_j %fj + /dcroat + /dblgravecmb +% 0xA0 + /bhook + /dhook + /eopen + /eturned + /uni0192 + /ecaron + /gammalatinsmall + /hbar +% 0xA8 + /khook + /nhookleft + /oopen + /nacute + /esh + /eng + /vhook + /yhook +% 0xB0 + /chook + /phook + /scaron + /ndotaccent + /nlinebelow + /sdotbelow + /ezh + /tbar +% 0xB8 + /edot + /edotbelow + /thook + /tretroflexhook + /dblverticallineabovecmb + /exclamdown + /questiondown + /verticallineabovecmb +% 0xC0 + /Iotaafrican + /Idotbelow + /Eopentilde % not in Unicode + /Atilde + /Macute + /Oopentilde % not in Unicode + /AE + /Ccedilla +% 0xC8 + /Egrave + /Eacute + /Ecaron + /Edieresis + /Elinebelow % not in Unicode + /Emacron + /Etilde + /Itilde +% 0xD0 + /Dafrican + /Ntilde + /Ograve + /uni022E + /Ocircumflex + /Otilde + /Odieresis + /OE +% 0xD8 + /Oslash + /Odotbelow + /Olinebelow % not in Unicode + /Omacron + /Ocaron + /Udotbelow + /Utilde + /solidusshortoverlaycmb +% 0xE0 + /iotalatin + /idotbelow + /eopentilde % not in Unicode + /atilde + /macute + /oopentilde % not in Unicode + /ae + /ccedilla +% 0xE8 + /egrave + /eacute + /ecaron + /edieresis + /elinebelow % not in Unicode + /emacron + /etilde + /itilde +% 0xF0 + /dtail + /ntilde + /ograve + /uni022F + /ocircumflex + /otilde + /odieresis + /oe +% 0xF8 + /oslash + /odotbelow + /olinebelow % not in Unicode + /omacron + /ocaron + /udotbelow + /utilde + /germandbls +] def +% +% UNICODING perthousandzero =: perthousandzero zeroinferior emptyslot; +% UNICODING visualspace =: uni2423 uni02FD; +% +% LIGKERN question quoteleft =: questiondown; +% LIGKERN exclam quoteleft =: exclamdown; +% LIGKERN hyphen hyphen =: endash; +% LIGKERN endash hyphen =: emdash; +% LIGKERN quoteleft quoteleft =: quotedblleft; +% LIGKERN quoteright quoteright =: quotedblright; +% LIGKERN comma comma =: quotedblbase; +% LIGKERN less less =: guillemotleft; +% LIGKERN greater greater =: guillemotright; +% +% LIGKERN || = 32; +% +% UNICODING ff =: ; fi =: ; fl =: ; ffi =: ; ffl =: ; diff --git a/fonts/utilities/fontools/share/fontools_t5.enc b/fonts/utilities/fontools/share/fontools_t5.enc new file mode 100644 index 0000000000..9129472d4a --- /dev/null +++ b/fonts/utilities/fontools/share/fontools_t5.enc @@ -0,0 +1,305 @@ +% Encoding file for the T5 encoding, intended for use with otftotfm. +% Based on the file t5.enc from the vntex package +/otftotfmT5Encoding [ +% 0x00 + /grave + /acute + /circumflex + /tilde + /dieresis + /dotbelowcomb + /ring + /caron +% 0x08 + /breve + /macron + /dotaccent + /cedilla + /hookabovecomb + /quotesinglbase + /guilsinglleft + /guilsinglright +% 0x10 + /quotedblleft + /quotedblright + /quotedblbase + /guillemotleft + /guillemotright + /endash + /emdash + /cwm +% 0x18 + /perthousandzero + /dotlessi + /Yhookabove + /yhookabove + /Ydotbelow + /ydotbelow + /Dcroat + /dcroat +% 0x20 + /visualspace + /exclam + /quotedbl + /numbersign + /dollar + /percent + /ampersand + /quoteright +% 0x28 + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash +% 0x30 + /zero + /one + /two + /three + /four + /five + /six + /seven +% 0x38 + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question +% 0x40 + /at + /A + /B + /C + /D + /E + /F + /G +% 0x48 + /H + /I + /J + /K + /L + /M + /N + /O +% 0x50 + /P + /Q + /R + /S + /T + /U + /V + /W +% 0x58 + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /asciicircum + /underscore +% 0x60 + /quoteleft + /a + /b + /c + /d + /e + /f + /g +% 0x68 + /h + /i + /j + /k + /l + /m + /n + /o +% 0x70 + /p + /q + /r + /s + /t + /u + /v + /w +% 0x78 + /x + /y + /z + /braceleft + /bar + /braceright + /asciitilde + /sfthyphen +% 0x80 + /Agrave + /Aacute + /Atilde + /Ahookabove + /Adotbelow + /Acircumflex + /Acircumflexgrave + /Acircumflexacute +% 0x88 + /Acircumflextilde + /Acircumflexhookabove + /Acircumflexdotbelow + /Abreve + /Abrevegrave + /Abreveacute + /Abrevetilde + /Abrevehookabove +% 0x90 + /Abrevedotbelow + /Egrave + /Eacute + /Etilde + /Ehookabove + /Edotbelow + /Ecircumflex + /Ecircumflexgrave +% 0x98 + /Ecircumflexacute + /Ecircumflextilde + /Ecircumflexhookabove + /Ecircumflexdotbelow + /Igrave + /Iacute + /Itilde + /Ihookabove +% 0xA0 + /agrave + /aacute + /atilde + /ahookabove + /adotbelow + /acircumflex + /acircumflexgrave + /acircumflexacute +% 0xA8 + /acircumflextilde + /acircumflexhookabove + /acircumflexdotbelow + /abreve + /abrevegrave + /abreveacute + /abrevetilde + /abrevehookabove +% 0xB0 + /abrevedotbelow + /egrave + /eacute + /etilde + /ehookabove + /edotbelow + /ecircumflex + /ecircumflexgrave +% 0xB8 + /ecircumflexacute + /ecircumflextilde + /ecircumflexhookabove + /ecircumflexdotbelow + /igrave + /iacute + /itilde + /ihookabove +% 0xC0 + /Idotbelow + /Ograve + /Oacute + /Otilde + /Ohookabove + /Odotbelow + /Ocircumflex + /Ocircumflexgrave +% 0xC8 + /Ocircumflexacute + /Ocircumflextilde + /Ocircumflexhookabove + /Ocircumflexdotbelow + /Ohorn + /Ohorngrave + /Ohornacute + /Ohorntilde +% 0xD0 + /Ohornhookabove + /Ohorndotbelow + /Ugrave + /Uacute + /Utilde + /Uhookabove + /Udotbelow + /Uhorn +% 0xD8 + /Uhorngrave + /Uhornacute + /Uhorntilde + /Uhornhookabove + /Uhorndotbelow + /Ygrave + /Yacute + /Ytilde +% 0xE0 + /idotbelow + /ograve + /oacute + /otilde + /ohookabove + /odotbelow + /ocircumflex + /ocircumflexgrave +% 0xE8 + /ocircumflexacute + /ocircumflextilde + /ocircumflexhookabove + /ocircumflexdotbelow + /ohorn + /ohorngrave + /ohornacute + /ohorntilde +% 0xF0 + /ohornhookabove + /ohorndotbelow + /ugrave + /uacute + /utilde + /uhookabove + /udotbelow + /uhorn +% 0xF8 + /uhorngrave + /uhornacute + /uhorntilde + /uhornhookabove + /uhorndotbelow + /ygrave + /yacute + /ytilde +] def +% +% UNICODING perthousandzero =: perthousandzero zeroinferior emptyslot; +% UNICODING visualspace =: uni2423 uni02FD; +% +% LIGKERN hyphen hyphen =: endash; +% LIGKERN endash hyphen =: emdash; +% LIGKERN quoteleft quoteleft =: quotedblleft; +% LIGKERN quoteright quoteright =: quotedblright; +% LIGKERN comma comma =: quotedblbase; +% LIGKERN less less =: guillemotleft; +% LIGKERN greater greater =: guillemotright; +% +% LIGKERN || = 32; diff --git a/fonts/utilities/fontools/share/fontools_ts1.enc b/fonts/utilities/fontools/share/fontools_ts1.enc index 6905d2ff60..2ca5e6d098 100644 --- a/fonts/utilities/fontools/share/fontools_ts1.enc +++ b/fonts/utilities/fontools/share/fontools_ts1.enc @@ -2,292 +2,292 @@ % CODINGSCHEME TEX TEXT COMPANION SYMBOLS 1---TS1 /otftotfmTS1Encoding [ % 0x00 -/capitalgrave -/capitalacute -/capitalcircumflex -/capitaltilde -/capitaldieresis -/capitalhungarumlaut -/capitalring -/capitalcaron + /capitalgrave + /capitalacute + /capitalcircumflex + /capitaltilde + /capitaldieresis + /capitalhungarumlaut + /capitalring + /capitalcaron % 0x08 -/capitalbreve -/capitalmacron -/capitaldotaccent -/cedilla -/ogonek -/quotesinglbase -/.notdef -/.notdef + /capitalbreve + /capitalmacron + /capitaldotaccent + /cedilla + /ogonek + /quotesinglbase + /.notdef + /.notdef % 0x10 -/.notdef -/.notdef -/quotedblbase -/.notdef -/.notdef -/twelveudash -/threequartersemdash -/capitalcompwordmark + /.notdef + /.notdef + /quotedblbase + /.notdef + /.notdef + /twelveudash + /threequartersemdash + /capitalcompwordmark % 0x18 -/arrowleft -/arrowright -/tieaccentlowercase -/tieaccentcapital -/newtieaccentlowercase -/newtieaccentcapital -/.notdef -/ascendercompwordmark + /arrowleft + /arrowright + /tieaccentlowercase + /tieaccentcapital + /newtieaccentlowercase + /newtieaccentcapital + /.notdef + /ascendercompwordmark % 0x20 -/blank -/.notdef -/.notdef -/.notdef -/dollar -/.notdef -/.notdef -/quotesingle + /blank + /.notdef + /.notdef + /.notdef + /dollar + /.notdef + /.notdef + /quotesingle % 0x28 -/.notdef -/.notdef -/asteriskcentered -/.notdef -/comma -/hyphendbl -/period -/fraction + /.notdef + /.notdef + /asteriskcentered + /.notdef + /comma + /hyphendbl + /period + /fraction % 0x30 -/zerooldstyle -/oneoldstyle -/twooldstyle -/threeoldstyle -/fouroldstyle -/fiveoldstyle -/sixoldstyle -/sevenoldstyle + /zerooldstyle + /oneoldstyle + /twooldstyle + /threeoldstyle + /fouroldstyle + /fiveoldstyle + /sixoldstyle + /sevenoldstyle % 0x38 -/eightoldstyle -/nineoldstyle -/.notdef -/.notdef -/angbracketleft -/minus -/angbracketright -/.notdef + /eightoldstyle + /nineoldstyle + /.notdef + /.notdef + /angbracketleft + /minus + /angbracketright + /.notdef % 0x40 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x48 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/Omegainv -/.notdef -/bigcircle + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /Omegainv + /.notdef + /bigcircle % 0x50 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/Omega + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /Omega % 0x58 -/.notdef -/.notdef -/.notdef -/openbracketleft -/.notdef -/openbracketright -/arrowup -/arrowdown + /.notdef + /.notdef + /.notdef + /openbracketleft + /.notdef + /openbracketright + /arrowup + /arrowdown % 0x60 -/asciigrave -/.notdef -/born -/divorced -/died -/.notdef -/.notdef -/.notdef + /asciigrave + /.notdef + /born + /divorced + /died + /.notdef + /.notdef + /.notdef % 0x68 -/.notdef -/.notdef -/.notdef -/.notdef -/leaf -/married -/musicalnote -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /leaf + /married + /musicalnote + /.notdef % 0x70 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x78 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/tildelow -/hyphendblchar + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /tildelow + /hyphendblchar % 0x80 -/asciibreve -/asciicaron -/asciiacutedbl -/asciigravedbl -/dagger -/daggerdbl -/bardbl -/perthousand + /asciibreve + /asciicaron + /asciiacutedbl + /asciigravedbl + /dagger + /daggerdbl + /bardbl + /perthousand % 0x88 -/bullet -/centigrade -/dollaroldstyle -/centoldstyle -/florin -/colonmonetary -/won -/naira + /bullet + /centigrade + /dollaroldstyle + /centoldstyle + /florin + /colonmonetary + /won + /naira % 0x90 -/guarani -/peso -/lira -/recipe -/interrobang -/interrobangdown -/dong -/trademark + /guarani + /peso + /lira + /recipe + /interrobang + /interrobangdown + /dong + /trademark % 0x98 -/pertenthousand -/pilcrow -/baht -/numero -/discount -/estimated -/openbullet -/servicemark + /pertenthousand + /pilcrow + /baht + /numero + /discount + /estimated + /openbullet + /servicemark % 0xA0 -/quillbracketleft -/quillbracketright -/cent -/sterling -/currency -/yen -/brokenbar -/section + /quillbracketleft + /quillbracketright + /cent + /sterling + /currency + /yen + /brokenbar + /section % 0xA8 -/asciidieresis -/copyright -/ordfeminine -/copyleft -/logicalnot -/circledP -/registered -/asciimacron + /asciidieresis + /copyright + /ordfeminine + /copyleft + /logicalnot + /circledP + /registered + /asciimacron % 0xB0 -/degree -/plusminus -/twosuperior -/threesuperior -/asciiacute -/mu -/paragraph -/periodcentered + /degree + /plusminus + /twosuperior + /threesuperior + /asciiacute + /mu + /paragraph + /periodcentered % 0xB8 -/referencemark -/onesuperior -/ordmasculine -/radical -/onequarter -/onehalf -/threequarters -/euro + /referencemark + /onesuperior + /ordmasculine + /radical + /onequarter + /onehalf + /threequarters + /euro % 0xC0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xC8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xD0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/multiply -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /multiply + /.notdef % 0xD8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xE0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xE8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xF0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/divide -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /divide + /.notdef % 0xF8 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef ] def diff --git a/fonts/utilities/fontools/share/fontools_ts3.enc b/fonts/utilities/fontools/share/fontools_ts3.enc index 15ebbb33d0..c272b4f246 100644 --- a/fonts/utilities/fontools/share/fontools_ts3.enc +++ b/fonts/utilities/fontools/share/fontools_ts3.enc @@ -1,276 +1,286 @@ % A version of the TS3 encoding, intended for use with otftotfm. +% +% I don't remember where I found this; but it contains many +% non-standard glyph names (i.e., missing from glyphlist.txt), +% so that otftotfm won't use those slots. +% +% TODO: we should try and find these glyphs in the Unicode standard +% and replace the non-standard names with /uni.... codes. +% % CODINGSCHEME IPA SYMBOL ENCODING /otftotfmTS3Encoding [ % 0x00 -/revpolhook -/rhooklong -/palhooklong -/palhookvar -/rectanglesuperscript -/leftarrowsuperscript -/uni02D7 -/arrowdown.ipa -/uparrow.ipa -/uni0362 -/space_uni034D -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /revpolhook % unknown glyph name, so won't be used + /rhooklong % unknown glyph name, so won't be used + /palhooklong % unknown glyph name, so won't be used + /palhookvar % unknown glyph name, so won't be used + /rectanglesuperscript % unknown glyph name, so won't be used + /leftarrowsuperscript % unknown glyph name, so won't be used + /uni02D7 + /arrowdown.ipa + /arrowup.ipa % was /uparrow.ipa + /uni0362 + /uni034D % was /space_uni034D + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x10 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x20 -/uni1D90 -/scriptainverted -/uniA735 -/uniA72D -/uni0297.var -/stretchccurl -/stretchcvarcurl -/dfronthook -/dfronthook.var -/uni0238 -/uni1D92 -/uni1D93 -/gamma.ipa -/gammafronttail -/gammabacktail -/hhookrtail + /uni1D90 + /scriptainverted % unknown glyph name, so won't be used + /uniA735 + /uniA72D + /uni0297.var + /stretchccurl % unknown glyph name, so won't be used + /stretchcvarcurl % unknown glyph name, so won't be used + /dfronthook % unknown glyph name, so won't be used + /dfronthook.var % unknown glyph name, so won't be used + /uni0238 + /uni1D92 + /uni1D93 + /gamma.ipa + /gammafronttail % unknown glyph name, so won't be used + /gammabacktail % unknown glyph name, so won't be used + /hhookrtail % unknown glyph name, so won't be used % 0x30 -/uniA727 -/uni027F -/jcrossedtailvar -/uni0284.var -/hm -/nfrontbar -/uni019E -/female -/uni26B2 -/uni0298.old -/uni1D97 -/omegainverted -/plhook -/uni0239 -/uni01AA -/tfronthook + /uniA727 + /uni027F + /jcrossedtailvar % unknown glyph name, so won't be used + /uni0284.var + /hm % unknown glyph name, so won't be used + /nfrontbar % unknown glyph name, so won't be used + /uni019E + /female + /uni26B2 + /uni0298.old + /uni1D97 + /omegainverted % unknown glyph name, so won't be used + /plhook % unknown glyph name, so won't be used + /uni0239 + /uni01AA + /tfronthook % unknown glyph name, so won't be used % 0x40 -/invertedtcurl -/twoturned -/uni01BA -/threeturned -/invertedglotstopcurl -/glotstopturned -/pipe.var -/uni01C1.var -/uni01C2.var -/lr -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /invertedtcurl % unknown glyph name, so won't be used + /twoturned % unknown glyph name, so won't be used + /uni01BA + /threeturned % unknown glyph name, so won't be used + /invertedglotstopcurl % unknown glyph name, so won't be used + /glotstopturned % unknown glyph name, so won't be used + /bar % was /pipe.var + /uni01C1.var + /uni01C2.var + /lr % unknown glyph name, so won't be used + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x50 -/thorn.var1 -/thorn.var2 -/thorn.var3 -/thorn.var4 -/uni0294.var1 -/uni0294.var2 -/uni0294.var3 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /thorn.var1 + /thorn.var2 + /thorn.var3 + /thorn.var4 + /uni0294.var1 + /uni0294.var2 + /uni0294.var3 + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x60 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x70 -/ascinverted -/ao.sc -/delta.sc.ipa -/uniA730 -/uni1D0B -/kscturned -/lscreversed -/uni1D0D -/uni1D18 -/q.sc.ipa -/uni1D19 -/uscturned -/.notdef -/.notdef -/.notdef -/.notdef + /ascinverted % unknown glyph name, so won't be used + /ao.sc % unknown glyph name, so won't be used + /delta.sc.ipa + /uniA730 + /uni1D0B + /kscturned % unknown glyph name, so won't be used + /lscreversed % unknown glyph name, so won't be used + /uni1D0D + /uni1D18 + /q.sc.ipa + /uni1D19 + /uscturned % unknown glyph name, so won't be used + /.notdef + /.notdef + /.notdef + /.notdef % 0x80 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0x90 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xa0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xb0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xc0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xd0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xe0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef % 0xf0 -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef -/.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef ] def +% +% LIGKERN * {L} *; |