%%
%% This is file `hminlig.mf',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% humanist.dtx  (with options: `lig')
%% 
%%  Author: Peter Wilson (CUA) now at peter.r.wilson@boeing.com
%%                             (or pandgwilson@earthlink.net)
%%  Copyright 2002, 2003 Peter R. Wilson
%% 
%%  This work may be distributed and/or modified under the
%%  conditions of the LaTeX Project Public License, either
%%  version 1.3 of this license or (at your option) any
%%  later version.
%%  The latest version of the license is in
%%     http://www.latex-project.org/lppl.txt
%%  and version 1.3 or later is part of all distributions of
%%  LaTeX version 2003/06/01 or later.
%% 
%%  This work has the LPPL maintenance status "author-maintained".
%% 
%%  This work consists of the files listed in the README file.
%% 


ligtable "`": "`"=:oct"134";
ligtable "'": "'"=:oct"042"; %% , "?" kern 2u#, "!" kern 2u#;

ligtable "-": "-"=:oct"173";
ligtable oct"173": "-"=:oct"174";

ligtable "c": "t"=:oct"014";
ligtable "s": "t"=:oct"015";

cmchar "HMIN ae conjunction";
beginchar(oct "032",
               2sb#+hstretch*(18/11x_height#),
               x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pair pr[];
numeric rta, lfte;  % right and left limits of a & e respectively
pickup quill;

z999=(0,0); n999 = rt x999 - lft x999; % width of vertical stroke
rta := 1/2w + n999 + pcshiftx;

%%% The "a"
n1 := rta - 2pcshiftx -jut; % effective letter width
%% "stem"
rt x1 = rta - pcshiftx-jut; top y1=h;
x2 = x1; bot y2=0;
z16 = 1/6[z2,z1];
rt x6 = x16; y6=y16;
lft x4 = pcshiftx; y4 = 1/2h;
%% stem path
pth1 := z1{down}..z2;
pr1 := direction 1 of pth1;
z20 = z2 shifted -10pr1;

z11 = point 3/13 of pth1; z15 = point 11/13 of pth1;
lft x13 = pcshiftx; y13=1/4h;

%%% The "e"

lfte = lft x11 - pcshiftx;

n51 := w-pcshiftx - lfte;    % actual letter width
n52 := 7/8n51;   % width of bowl
x51 = lfte + pcshiftx + 5/8n52; top y51=h;
lft x52 = lfte + pcshiftx; y52 = 1/2h;
x53 = lfte + pcshiftx + 1/2n52; bot y53 = 0;
rt x54 = lfte + pcshiftx + n52; y54 = 1/4h;
z98=(lfte,5/8h); z99=(2w,y98);
pth51 := z98--z99;
pth52 := z51{left}..z52{down}..z53{right};
z57 = pth51 intersectionpoint pth52;
rt x67 = w; y67=y57;
rt x58 =lfte + pcshiftx+n52; y58=y52;
pth53 := z51{right}..z58{down}..z53{left};
z59 = pth51 intersectionpoint pth53;

%%ductus:=true;
if ductus:
  pickup stylus;
else:
  % draw the a stem
  draw pth1;
  draw_roundserif(1,2,srad);
%%  draw_roundserif(2,20,srad);
  % draw the a bowl
  draw z15{-pdir}..z13{up}..z57{right};
  % draw the e
  draw z59{up}..z51{left}..z52{down}..z53{right}..z54{pdir};
  draw z57--z67;
fi
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,11,12,13,14,15,100);
penlabels(51,52,53,54,55,56,57,58,59,67,70,98,99,100);
endchar; % end "ae"

cmchar "HMIN AE conjunction";
beginchar(oct "035",
%%               sb#+caprat*hstretch*(14/18x_height#),
               sb#+caprat*hstretch*(22/18x_height#),
               caprat*x_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric pcshifte;
numeric n[];
path pth[];
pickup quill;
x100 = 0;
n1 = rt x100 - lft x100;

%% the E
%% stem
pcshifte = 7/16w;
lft x1 = pcshifte+n1; top y1 = h;
x2 = x1; bot y2=0;
%% bars
lft x3 = pcshifte; y3 = y1; rt x4 = w-pcshiftx; y4=y3;
x5=x1; y5 = 1/2[y1,y2]; x6 = x4; y6 = y5;
x7 = x3; y7 = y2; x8 = x4; y8=y7;

%% bottom left A leg
lft x52 = pcshiftx; bot y52=0;
z62 = whatever[z52,z1]; y62=y5;

%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1--z2;  % stem
draw z3--z4; draw z5--z6; draw z7--z8;
draw z52--z1; draw z62--z5;  % the A
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,17,70,100);
endchar; % end "AE"


cmchar "The ct ligature";
beginchar(oct"014", 2sb#+hstretch*(20/11x_height#),
                    asc_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pair vc[];
pickup quill;

%%%%%%%%%%% C

n1:=1/2(w-2pcshiftx);     % actual letter width
n2 := h/ascratio;         % x-height
x1=pcshiftx + 1/2n1; top y1 = n2;
lft x2 = pcshiftx; y2 = 1/2n2;
x3 = x1; bot y3 = 0;
rt x4 = n1; y4 = 1/4n2;
x6 = x4;
%%y6 = 3/4n2;
top y6 = y1;
pth1 := z6..z1{left}..z2{down}..z3{right}..z4{pdir};

%%%%%%%%%%%%% T

%% bar
top y33=n2; n3 := n2 - top y33;
%%lft x31 = n1+pcshiftx;
lft x31 = n1;
rt x32=w-pcshiftx;
%%top y31 = y33-n3; bot y32=y33+n3;
%%top y31 = y33-n3; y32=y33;
y31 = y32 = y33;
x33=1/2[x31,x32];
pth2 := z31--z32;                                  % T bar

n4 := top y33 - y33;
x34 = x33; bot y34 = 2n4;
rt x36 = w - pcshiftx; bot y36 = n4;
x35 = 1/2[x34,x36]; bot y35 = 0;
pth3 := z33--z34..z35..z36;                         % T stem

%%%%%%%%%%%%%%%%% Ligature

z51=z6;
z55=z33;
x53 = 1/2[x51,x55];
top y53 = h;
vc51 := direction 0 of pth1;
vc55 := direction 0 of pth3;
pth4 := z51{vc51}..z53{right}..z55{vc55}; % loop
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw pth1;           % C
draw pth2;           % T bar
draw pth3;           % T bowl
draw pth4;           % ligature loop
ductus:=false;
penlabels(1,2,3,4,5,6,14,16,17,18,31,32,33,34,35,36,100);
endchar; % end of "ct"


cmchar "The st ligature";
beginchar(oct"015", 2sb#+hstretch*(15/11x_height#+jut#),
                    asc_height#, 0);
adjust_fit(0,0);
pcshiftx := sb;
numeric n[];
path pth[];
pair vc[];
pickup quill;
%%%%%%%%%%% S

n1:=3/7(w-2pcshiftx-jut);     % actual letter width
n2 := h/ascratio;         % x-height

%% stem
lft x1=lft x2=pcshiftx+jut; top y1=n2; bot y2=0;
%% flick
x4=x2; y4 = 1/2n1;
%%%%%%%%%%%%% T

%% bar
top y33=n2; n3 := n2 - top y33;
%%lft x31 = n1+pcshiftx;
lft x31 = n1;
rt x32=w-pcshiftx;
%%top y31 = y33-n3; bot y32=y33+n3;
%%top y31 = y33-n3; y32=y33;
y31 = y32 = y33;
x33=1/2[x31,x32];
pth2 := z31--z32;                                  % T bar

n4 := top y33 - y33;
x34 = x33; bot y34 = 2n4;
rt x36 = w - pcshiftx; bot y36 = n4;
x35 = 1/2[x34,x36]; bot y35 = 0;
pth3 := z33--z34..z35..z36;                         % T stem

%%%%%%%%%%%%%%%%% Ligature

z51=z4;
z55=z33;
x53 = 5/8[x51,x55];
top y53 = h;
vc51 := up;
vc55 := direction 0 of pth3;
pth4 := z51{vc51}...z53{right}..z55{vc55}; % loop
%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw z1--z2;         % S stem
draw_flatserif(1,2,srad);
draw_roundserif(2,1,srad);
draw pth2;           % T bar
draw pth3;           % T bowl
draw pth4;           % ligature loop
ductus:=false;
penlabels(1,2,3,4,5,6,14,16,17,18,31,32,33,34,35,36,100);
endchar; % end of "st"


cmchar "Closing quotes";
beginchar(oct"042",2sb#+hstretch*(comma_width#+3dot_size#),7/8asc_height#,0);
adjust_fit(0,0);
pcshiftx:=sb;
x1=w-pcshiftx-(0.5hstretch*dot_size); y1=y2=h;
x2=x1-(2hstretch*dot_size);
draw_pcomma(1,dot_size,comma_width);  % right
draw_pcomma(2,dot_size,comma_width);  % left
penlabels(1,2);
endchar; % end of "''"


cmchar "Opening quotes";
beginchar(oct"134",2sb#+hstretch*(comma_width#+3dot_size#),7/8asc_height#,0);
adjust_fit(0,0);
pcshiftx:=sb;
x1=pcshiftx+(0.5hstretch*dot_size); y1=y2=h;
x2=x1+(2hstretch*dot_size);
draw_plq(1,dot_size,comma_width); % left
draw_plq(2,dot_size,comma_width); % right
penlabels(1,2);
endchar; % end of "``"


cmchar "Hyphen";
beginchar("-",sb#+hstretch*(0.8x_height#),x_height#,0);
adjust_fit(0,0);
pcshiftx:=sb/2;
numeric alpha; alpha:=w/8;
pickup threequarterquill;
lft x21=pcshiftx+jut; rt x22=w-pcshiftx-jut; y21=y22=1/2h;
z31 = z21 shifted (-jut*pdir);
draw z21--z22;
draw z31--z21;
draw_flatserif(22,21,srad);
penlabels(1,2);
endchar; % end of "-"


cmchar "En dash";
beginchar(oct"173",sb#+hstretch*(x_height#),x_height#,0);
adjust_fit(0,0);
pcshiftx:=sb/2;
numeric alpha; alpha:=w/8;
pickup threequarterquill;
lft x21=pcshiftx+jut; rt x22=w-pcshiftx-jut; y21=y22=1/2h;
z31 = z21 shifted (-jut*pdir);
draw z21--z22;
%%draw_roundserif(21,22,srad);
draw z31--z21;
draw_flatserif(22,21,srad);
penlabels(1,2);
endchar; % end of "--"


cmchar "Em dash";
beginchar(oct"174",sb#+hstretch*(2x_height#),x_height#,0);
adjust_fit(0,0);
pcshiftx:=sb/2;
numeric alpha; alpha:=w/8;
pickup threequarterquill;
lft x21=pcshiftx+jut; rt x22=w-pcshiftx-jut; y21=y22=1/2h;
z31 = z21 shifted (-jut*pdir);
draw z21--z22;
%%draw_roundserif(21,22,srad);
draw z31--z21;
draw_flatserif(22,21,srad);
penlabels(1,2);
endchar; % end of "---"


cmchar "HMIN ampersand";
beginchar("&", 2sb#+hstretch*(15/11x_height#+2jut#), asc_height#, 0);
adjust_fit(0,0);
numeric n[];
path pth[];
pcshiftx:=sb;
pickup quill;
%% alpha looking part
n1 := w-2pcshiftx-jut;    % actual letter width
n2 := h/ascratio;         % x-height
n3 := 16/16n2;            % height of alpha
rt x1 = w-pcshiftx; bot y1=0;

x3 = pcshiftx + 12/16n1; y3 = 1/2n2;

lft x5 = pcshiftx + thick; y5 = 1/2[n2,h];
rt x7 = lft x5 + 1/2n1; y7 = y5;
x6 = 1/2[x5,x7]; top y6 = h;

lft x9 = pcshiftx; y9 = 1/2n2;
rt x10 = pcshiftx + 1/2n1; bot y10 = 0;

rt x12 = w - pcshiftx; y12 = y7;

x4 = x6; y4 = 1/2[y9,y5];

pth1 = z1..z4..z5{up}..z6{right}..z7{down}..z9{down}..z10{right}..{up}z12;

%%ductus:=true;
if ductus:
  pickup stylus;
fi
draw pth1;
ductus:=false;
penlabels(1,2,3,4,5,6,7,8,9,10,11,12,16,17,18,19,21,22,23,24,25);
endchar; % end of "&"

