summaryrefslogtreecommitdiff
path: root/font
diff options
context:
space:
mode:
authorwlemb <wlemb>2002-12-01 06:45:37 +0000
committerwlemb <wlemb>2002-12-01 06:45:37 +0000
commit07d607869d9a42f867e6e916f5647bade8a7ebdf (patch)
tree5f5478310b2e789af8849df23aa2d0168c895eba /font
parentbde3867ee074596c6e4bb172a28f96582fdad178 (diff)
downloadgroff-07d607869d9a42f867e6e916f5647bade8a7ebdf.tar.gz
Add PS font for various Euro glyphs.
* font/devps/generate/freeeuro.sfd: New master font file for pfaedit. * font/devps/generate/sfdtopfa.pe: New conversion script for pfaedit. * font/devps/generate/Makefile (FONTS): Add `EURO'. (EURO, freeeuro.afm, freeeuro.pfa): New rules. * font/devps/freeeuro.pfa, font/devps/freeeuro.afm: Generated from `freeeuro.sfd'. * font/devps/EURO: Generated from `freeeuro.afm'. * font/devps/download: Add `freeuro.pfa'. * font/devps/Makefile.sub (NORMALFILES): Adde `EURO' and `freeeuro.pfa'. * tmac/europs.tmac: New file. * tmac/ps.tmac: Include `europs.tmac'. * tmac/Makefile.sub (DISTFILES): Add `europs.tmac'. * font/devdvi/generate/texsy.map: Remove `lh' and `rh'. * font/devdvi/S: Regenerated. * font/devhtml/R.proto: Fix `CR' and `ci'. Add `OK'. * font/devps/generate/textmap: Fix `lh', `rh', and `sq'. Remove `bs'. * font/devps/symbolmap: Regenerated. * font/devutf8/R.proto: Fix `CR' and `ci'. Add `OK'. * font/devutf8/NOTES: Updated. * src/roff/troff/uniglyph.cc (unicode_to_glyph_list): Fix `CR' and `ci'. Add `OK'. * src/roff/troff/glyphuni.cc (glyph_to_unicode_list): Ditto. * tmac/dvi.tmac: Add `lh' and `rh'. * tmac/Xps.tmac: Fix `lh' and `rh'. * tmac/X.tmac: Add `OK'. * tmac/lj4.tmac: Ditto.
Diffstat (limited to 'font')
-rw-r--r--font/devdvi/S6
-rw-r--r--font/devdvi/generate/texsy.map4
-rw-r--r--font/devhtml/R.proto5
-rw-r--r--font/devps/Makefile.sub3
-rw-r--r--font/devps/download1
-rw-r--r--font/devps/freeeuro.afm32
-rw-r--r--font/devps/freeeuro.pfa298
-rw-r--r--font/devps/generate/Makefile9
-rw-r--r--font/devps/generate/freeeuro.sfd548
-rw-r--r--font/devps/generate/sfdtopfa.pe8
-rw-r--r--font/devps/generate/textmap7
-rw-r--r--font/devps/symbolmap7
-rw-r--r--font/devutf8/NOTES3
-rw-r--r--font/devutf8/R.proto5
14 files changed, 913 insertions, 23 deletions
diff --git a/font/devdvi/S b/font/devdvi/S
index 2a2be86c..ad504310 100644
--- a/font/devdvi/S
+++ b/font/devdvi/S
@@ -51,10 +51,8 @@ da 524290,728178,203888 3 0043
--- 1048579,728178,203888 3 0045
--- 1048579,728178,203888 3 0046
~= 815562,486275,-38013 2 0047
-lh 1048579,384696,-139592 0 0050
-lA "
-rh 1048579,384696,-139592 0 0051
-rA "
+lA 1048579,384696,-139592 0 0050
+rA 1048579,384696,-139592 0 0051
uA 640798,728178,203888 3 0052
dA 640798,728178,203888 3 0053
hA 1048579,384696,-139592 0 0054
diff --git a/font/devdvi/generate/texsy.map b/font/devdvi/generate/texsy.map
index 71b7f8ab..7a9c6a40 100644
--- a/font/devdvi/generate/texsy.map
+++ b/font/devdvi/generate/texsy.map
@@ -26,8 +26,8 @@
35 da
36 <>
39 ~=
-40 lA lh
-41 rA rh
+40 lA
+41 rA
42 uA
43 dA
44 hA
diff --git a/font/devhtml/R.proto b/font/devhtml/R.proto
index 56d53192..32046391 100644
--- a/font/devhtml/R.proto
+++ b/font/devhtml/R.proto
@@ -322,6 +322,7 @@ ua 24 0 0x2191 &uarr;
da 24 0 0x2193 &darr;
<> 24 0 0x2194 &harr;
va 24 0 0x2195 &#8597;
+CR 24 0 0x21B5 &#8629;
lA 24 0 0x21D0 &lArr;
uA 24 0 0x21D1 &uArr;
rA 24 0 0x21D2 &rArr;
@@ -404,7 +405,6 @@ bracerightmid "
rb 24 0 0x23AD &#9133;
bracerightbt "
an 24 0 0x23AF &#9135;
-CR 24 0 0x240D &#9229;
br 24 0 0x2502 &#9474;
rk 24 0 0x251D &#9501;
lk 24 0 0x2525 &#9509;
@@ -414,10 +414,11 @@ rb 24 0 0x256F &#9583;
lb 24 0 0x2570 &#9584;
sq 24 0 0x25A1 &#9633;
lz 24 0 0x25CA &loz;
-ci 24 0 0x25EF &#9711;
+ci 24 0 0x25CB &#9675;
lh 24 0 0x261C &#9756;
rh 24 0 0x261E &#9758;
SP 24 0 0x2660 &spades;
CL 24 0 0x2663 &clubs;
HE 24 0 0x2665 &hearts;
DI 24 0 0x2666 &diams;
+OK 24 0 0x2713 &#10003;
diff --git a/font/devps/Makefile.sub b/font/devps/Makefile.sub
index 434a0ac3..f08e53d9 100644
--- a/font/devps/Makefile.sub
+++ b/font/devps/Makefile.sub
@@ -2,7 +2,8 @@ DEV=ps
DISTFILES=text.enc download \
S ZD ZDR SS AB ABI AI AR BMB BMBI BMI BMR \
CB CBI CI CR HB HBI HI HR HNB HNBI HNI HNR \
- NB NBI NI NR PB PBI PI PR TB TBI TI TR ZCMI
+ NB NBI NI NR PB PBI PI PR TB TBI TI TR ZCMI \
+ EURO freeeuro.pfa
PSFILES=prologue symbolsl.pfa zapfdr.pfa
DEVGENFILES=generate/Makefile generate/afmname generate/dingbats.map \
generate/dingbats.rmap generate/lgreekmap generate/symbol.sed \
diff --git a/font/devps/download b/font/devps/download
index b98885cd..3f77716b 100644
--- a/font/devps/download
+++ b/font/devps/download
@@ -3,3 +3,4 @@
Symbol-Slanted symbolsl.pfa
ZapfDingbats-Reverse zapfdr.pfa
+FreeEuro freeeuro.pfa
diff --git a/font/devps/freeeuro.afm b/font/devps/freeeuro.afm
new file mode 100644
index 00000000..e886200e
--- /dev/null
+++ b/font/devps/freeeuro.afm
@@ -0,0 +1,32 @@
+StartFontMetrics 2.0
+Comment Generated by pfaedit
+Comment Creation Date: Sat Nov 30 18:02:48 2002
+FontName FreeEuro
+FullName FreeEuro
+FamilyName FreeEuro
+Weight Medium
+Notice (Created by Werner Lemberg with PfaEdit 1.0 (http://pfaedit.sf.net); the serif shapes are based on the Omega fonts created by Yannis Haralambous.)
+ItalicAngle 0
+IsFixedPitch false
+UnderlinePosition -100
+UnderlineThickness 50
+Version 001.000
+EncodingScheme FontSpecific
+FontBBox 4 -23 866 741
+StartCharMetrics 14
+C 0 ; WX 780 ; N Euro.symbol ; B 38 -17 742 697 ;
+C 1 ; WX 791 ; N Euro.symbol.bold ; B 38 -17 753 697 ;
+C 2 ; WX 741 ; N Euro.serif ; B 34 -14 707 676 ;
+C 3 ; WX 800 ; N Euro.serif.bold ; B 45 -19 767 691 ;
+C 4 ; WX 734 ; N Euro.serif.italic ; B 66 -18 745 666 ;
+C 5 ; WX 800 ; N Euro.serif.bold.italic ; B 17 -19 808 691 ;
+C 6 ; WX 791 ; N Euro.sansserif ; B 40 -23 763 741 ;
+C 7 ; WX 834 ; N Euro.sansserif.bold ; B 38 -23 796 741 ;
+C 8 ; WX 781 ; N Euro.sansserif.slanted ; B 14 -23 823 741 ;
+C 9 ; WX 812 ; N Euro.sansserif.bold.slanted ; B 10 -23 866 741 ;
+C 10 ; WX 600 ; N Euro.mono ; B 11 -16 534 576 ;
+C 11 ; WX 600 ; N Euro.mono.bold ; B 4 -14 539 597 ;
+C 12 ; WX 600 ; N Euro.mono.slanted ; B 51 -16 621 576 ;
+C 13 ; WX 600 ; N Euro.mono.bold.slanted ; B 54 -14 643 597 ;
+EndCharMetrics
+EndFontMetrics
diff --git a/font/devps/freeeuro.pfa b/font/devps/freeeuro.pfa
new file mode 100644
index 00000000..098a1e83
--- /dev/null
+++ b/font/devps/freeeuro.pfa
@@ -0,0 +1,298 @@
+%!PS-AdobeFont-1.0: FreeEuro 001.000
+%%Title: FreeEuro
+%%CreationDate: Sat Nov 30 18:02:48 2002
+%%Creator: Werner Lemberg
+%%DocumentSuppliedResources: font FreeEuro
+% Created by Werner Lemberg with PfaEdit 1.0 (http://pfaedit.sf.net); th
+% Generated by PfaEdit 1.0 (http://pfaedit.sf.net/)
+%%EndComments
+FontDirectory/FreeEuro known{/FreeEuro findfont dup/UniqueID known{dup
+/UniqueID get 4205969 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /FreeEuro def
+/FontBBox [4 -23 866 741 ]readonly def
+/UniqueID 4205969 def
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+ /version (001.000) readonly def
+ /Notice (Created by Werner Lemberg with PfaEdit 1.0 \050http://pfaedit.sf.net\051; the serif shapes are based on the Omega fonts created by Yannis Haralambous.) readonly def
+ /FullName (FreeEuro) readonly def
+ /FamilyName (FreeEuro) readonly def
+ /Weight (Medium) readonly def
+ /FSType 12 def
+ /ItalicAngle 0 def
+ /isFixedPitch false def
+ /UnderlinePosition -100 def
+ /UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+ 0 1 255 { 1 index exch /.notdef put} for
+dup 0/Euro.symbol put
+dup 1/Euro.symbol.bold put
+dup 2/Euro.serif put
+dup 3/Euro.serif.bold put
+dup 4/Euro.serif.italic put
+dup 5/Euro.serif.bold.italic put
+dup 6/Euro.sansserif put
+dup 7/Euro.sansserif.bold put
+dup 8/Euro.sansserif.slanted put
+dup 9/Euro.sansserif.bold.slanted put
+dup 10/Euro.mono put
+dup 11/Euro.mono.bold put
+dup 12/Euro.mono.slanted put
+dup 13/Euro.mono.bold.slanted put
+readonly def
+currentdict end
+currentfile eexec
+743F8413F3636CA85A9FFEFB50B4BB27302A5F6C876586CCC1670A7EF5521E6ADE15AAB4
+DD2DDDB83735311FC63DB80D2C96AECFA05BB67F865EA35934B4B79A203A8DD489B09C79
+FF6EB9DBCFD889C3E73F8C94BC342AF671D6F688870A62EE1A0DF216E150FFEC64A8C2B7
+509AD05C011599C1AD84E6C4B668E07EA219BD72663D8AF4CA8EC8E23AA90DE90BE940C6
+6DB849CEDB3B64961365A7CCE47F4FC9E30FDEE4B14B90C2E0D8C344EBC974EABF417B3D
+28251A78ACEE2BFC4212B1E3E9C7EBC3262821EE98E538713C64DF0BC13C19337B63F916
+071CB6A5AC8BFC2DC37880041FA087DD774489EB5707DDF2924C26EA6D3C9252CDFE5D15
+D8E51B723D1AAE85C891D70A8906B9EB5E2B5C168E03DA562A130144D16AA1BB1B1D6678
+6588651E5C4B1EB42602ACC56FC287EECA94C54E59C972A1519167A6E06109F7197C88FF
+D984A8AB79D4BB6F201B5179F32DB16D36820F8067A62882A7F6279D2FF1F216D4C96D85
+E5AB924E43776AC58BBE77ABE6C25E263A2A1554B137D0965105E3B5EFB8AEF3C1641A1D
+FB847BCAD26E727DB483A0E55E33018168F4AC934BF6EE77FDBCD68136994D56196DCF7C
+3C57F9840543719CEC33E0B4730CD554DEB8514F768C53F6AF996A372B45BBB0F31DABF6
+5D5825F1DD432EAE4A07B76F9E39026E7B12C9EA3ABDE43C8805D45762E301F7C76BB204
+5CC6667AE053BF117F10B202199C4AA36312A492773077F1645BA1ABCA9FAA27DE50F89C
+463B7AD8B08A10E5A5203843703552779839072246F40B9D9C836DFBAFD584FFD354D816
+69E470D99927E8E444CD813E21236B2CDB513ACDD1EBB76C55A6CC497DEA0AFB048C6E94
+165995C970CF931183CBA10D2AC90E2488D584A1A56AD10283CA3B568E6C766FCACCAC25
+17F9671B914E0C4FDE2CB650D0D07B31BB49BE4054BBA98039F73DB1CBD995BBE1504331
+7F08C0B548FE3EEB382AEF669A5D6CFB84A66E06394DC49887C1D66F70EBDCDC931FFFCF
+D91B16DC149D1F5B2CDEA3EEA5B315894829BE9D96558952DE8C95C9ACF06A134212D71B
+D2DA4EC9FB71F14C9EC56974FE1B408D955705D7AE82F9972166FF1F19E0607A6ABAAB91
+48206CF79D61C52FF2FA46384BB3B2FC160AB45F9BFEAA92FD21EC269682181C2AD58870
+A0A90215F3D31EB1561988B52198D12179CDB7111BBCB1F0764DA038DBF953A4C323B86B
+CA75961AE8D5B18E333F90F85C5FE3BA318A60F482C4C0910BCB822FC45B036D295C2643
+55CF7D07CF7B114A948DF98BF462FB7C50F3C639615A12B3A3A1224BBE25E2D739E51BDA
+361731608D143BD4C98675247B431B4C9595D72EE7947F8BAFC7689D7F21C83B4B6BF435
+A8E6045C854F88BA8088B88634C0B6ECE65B78807B2C76A441F1FB235ECD02A107792357
+D174D4C52408E0E55AF5612529494A5E369DFF576EE7AA55937643C2C6B023EF928CDAC7
+B754D92C420FFDB5E5712E8028774ACC6CD44CD810AC74949B57B2692D53BF607ABBB10B
+BF76F86B0F50A36ECC8035CB15939AE2A4E19D0D013D5C9AF1CC0DB73B232DFBB4503CAD
+7D4C1F1378EB252D176F561F22A8555632E288D050E219558B3383888A630271B4F556FA
+CAF4E30CE98C39D3435C147E684D8AE2BB9C789CCE36AA7F139A6AFEC53389CC0FD47E8B
+D786828251BBD3922CEA1F34D75E6D8020A02DCE7EFBF884913A7A7BEF210A49038D7FD9
+A969EF91F4769A362DBC94E34A637C3385B6D33CDEBA915E2D201B229116F290242363D3
+F007C2CBBB84835CBD15C6A836F704053379F1C75AD705D3AE224A5F6C32AEBF38C2BD5C
+1BE73F52DDEE3A80EAFF74BA802DC0171A17681F3A66B875A5FFB5B6C2AC14D40B24DBBE
+065DE5544F5AB2BAB7DC68A38C8898F7F17C9AB63B6E5690A667623B115210075D0F55DA
+899EDE306391375B3C445C7982579091F99EFD6C86BEC938022DFDD22B054D7D50B18735
+5459EAECBCF9BDCA1965AC3E7A113F5D7BE00F9B15AB8C86CF1A1FA47ACCE32584FE3D5E
+72AC5429083C6E267745D749CABC3CDD2DA20CF67832A4997DAEB04475F339E5DE65D20A
+5B9E6A4FBD2FD675E0BE9FF7464B93488E80019C285DA9946A792524D633A69B3E6D5E80
+4D46A47E4592AF02158C2239D455DFF5254FF2C7F9463890E86A576D5D41C80B34FD6474
+159DF94A9ED592350D91523F20845AC0549B822E07A9A3DA5AA70AB803BA8354F8B44ECA
+0BA433BA1CD85F1438A1DA8FD4E275DF04A2264F6101CB91F472A6EEE9184F1C6720C4BB
+898EDF2014F659F45E1A421F849331EBE066CB1FAFEEFE242F4A148421278A9C28095CD8
+4551CB827F1C881422D2DE27DEDDD60B8D2F540673FEF56303E1D4CAD3A65F63358FDD5B
+436822FAD4C286E0C3322609DBBEA2FCF40C335744D85B0F9A4FD480ACC566E1FA413372
+7051A825BD4589BEF5BA539083FCAD6B267DA535D2045C7EEBD283B8CA2B814557955D64
+893666016814979D3D80F75A828DA7CEE19CCAF5DBE2607D600BE20F1C59E4C09AD86DF3
+CCEBF8C99A79F2B18DB72BDEA0363D750585C6BDA1CA879F8526F804F772154479A96A7C
+87E050213FC8F6F505420B2FF36F42A89847E9B7BE350306B140F7112F4C3FC187E989A1
+26E48F94B0010073B4D7475CD0172A32EA0A25C6E32199EF7FEA9B52F9006813B839AAEE
+F3F26A0C39DA5E98188CEDB55492BFB7F889C04150AB35DCC76674CE3770ADE6D33B8EC9
+A57E1578981962AF6B45E85EB6FDB0A7661839C41CA1CFB1C9A4651611108B1D6288B0E7
+399B19B4A2E869CB511FEFCD279F831577460961901E0DDB44E219B06071A0876F1057B2
+ECA4B88B44FAD6CC8727277FA4D4A5701B9B5F403057504617979495B4E2C77A756D66D4
+9DAE0353B314C12DF695BE919F867E953FB8492C0AE4BABC4731EB983FAA4D4A1822D051
+0CF111DEE392C0F4D46DD4378D850C7B7C0F78B7882BE722BB1FCF3B7BED47750F841F1F
+5EB21523F6CFE1B9DE689E38E80EDB58058E7323C2F4F7EE7D2F5DFD0934DCE7FB6A1447
+5821DCF10B73E1E7A13F1C99AFAA929739A44E5A00BE3311AC44074B1793347EAAEE66B6
+FFACD779076571377D042EB2C0360B3179979EEF369F15F565990ED6A3C244BD22A5BE13
+E8F8DAB260735F461E2D4C1ED93F91F3EA37AE8E11CE05E3B2672ED31631AB14B7C88502
+B6E86F8B74B8FF92BF29AA0EBD2129EDEA94EF166F3F22B75B5B9039CEB65C65C9EC1C8A
+2A6EFACB6BA2997768507DEAA3EF70F93A13422036D77B19F1B49284670F483A3BEBF8FB
+E510E815B77F5D27F79C7BCEBF92924A3C32A61E11759097EC5F6C3148DA3547878283AD
+6FA571B2AD41F06AE8E94CFCDDE02EA63DF9CD3140EBA2CD5439CE0A43A89E4945F14273
+B8EFE4F3FC4CD7732E4F315DFAEFEA8525A195C775D8AB9EFBCED9691CE285B1A39603F6
+636B56C3BC4B818C049B4AE97A8F7DC7BDE467D496C18FDA20AFF0E508903564CBCABE1A
+57B63A449AEB857EC9CE7677F328AE24B70E2372310783B092B4C31321B18FE24172BD9E
+5D5B9E8AD1F7201DA891BC584B9D02669B71AC1DAF93D12618C809FADDE11F826A6F1A97
+F9C2A030FCE8F1FED595E63545FBDF087C633701D8EE1D8A14D018B191C76C78EB52F21C
+702EF7E755B015AFF1E612EEC6DFCAF68C070FF3CD07D1BE93FF86C3B5FB746259C62541
+830A8F24732B5F263C333B202867EDC177CB1171F68D52C66E2D2AC3322DD3D86561CAE3
+B51B0D431157450EF793238911A474B1FB4EC92C59454609193EDA899D0AFA8D6CE04BC0
+1453017CDAF5D9B4491C1768FA1F028F14617BFF0BC4D574E4F7BF3CA8E8DF3F8E3DFE62
+E36FBE7F48EB02567C4F39B68B46E3F97ED416F3A2CB02E8FE8448CAD1FFB07CAA07B707
+F941E5D4ADE2ACA74275DB30C59B2BAD019B3D62FBB433619E9C628CDED57890F88EF9C4
+19AAEF24392DE1EF40C4C3EF0A350218049B5B8384B6118DC3F19DF7CC13B80871FFF923
+3910727EEA053E7269D165F0673B11BCF1C381721E83C0F95491F75132CAFAA19A928825
+ABCA20A01E155F405AEEB02F987105BE6A8F756CF1132D06A729BDAFCFBAE68B48019A9E
+DD38AF2806EDF9F81A685104963622C3F08E3ACE8430BC48D2ABD5DA6930A8A9C8A1B180
+EC208D30908D3060FFFC70FFEFE274D4951D80C8AEE64935E1FF144BC5E6B371E3F3F813
+241C5359C8FAD21A001DFD572A52982E3E5754F0108555346565EF63C173C6077E6A3F74
+04BE3BB2A632AD58E333869EE800F78A6B55962711606F2438222DB5112C4DBF47432AFD
+8183518FBC6A347EEF9D0FD0A94419E0F4CD67EABEBCFB65D2A915D10C0DA111404A426D
+7CC4C82FE83B51D96984E5FDF64AE0A9A52FEBAB556A5B41B526E0B9B8D9D8D41BF79C7D
+2595E8837F7F8B809E4A1D8C25A537BA464CFD6052D367590900067650DC1DBEDD8DBEA1
+D8D7666543BEBC07481BADB2F0DD080F084A1814BD6E41298564571601568D6BF583093D
+AF772B8DA35FF36890E5C1FF63AB82DD558C4BD9235839E99D64590A669EF3FEA0189F8B
+C2E54F52C73A26B8118F8675FAC61E9E27817A301C1FB8156BAC4250E181883B3CD9C25D
+8BB9E70557F58589243909679FED35DCF8A444AC9F9BAB976BA50677CBC6D5FB9031260E
+B288C79A57F4A99A565FD4D8C18FF58BFA65A6C695FFA7EE92511CC70D539700BA0E34F3
+71F0D50C1B42AB824D76C6865EF441B5D8C84E4974FC802996FED807CAC7B62622AAD0DF
+31A5D4E1478C67C70B28399091BBD2A7CD9465235C33CC6CCE99ADA0A531D8595F21FE74
+D562B74CF11AFB69EC223D66B79C6784549EDA946A45AC993F26E41381B6FFA0908B2229
+CC70A9176D81BE2A30EC39B3ECA7D4ED13FFFF68364246F7EE72DCBC259D1C2B338C7129
+BA3436774F5CEC696ED5E3D0436B0C65A490B850D79688120C8ED231A1E4DEB1F7C0508C
+BE61100F0EBBEFD7EADDA62704D6A4C16AC3E07825FC32B68888704B23E3BA75DE1A7EEA
+FD88C43BBEBBABAEA8B230A58C682DCF5B98067F165DE11C2D0DDCAEAD97FA88A2454B78
+329AFE207DFBB408EC59229AEED4F5B4C5244985DC31F967B4FE37C1986AFCF26E48272A
+912F09B9DEB623419F23D2B3E4A16E614D6DE70E6828592BB6FFA08154BAD0B5F171B214
+CA018AE94122796849965CA066F1E67AB376180A4B2B95562C755FE57FE90B9E10CC2E1F
+42B66F8B6926CF47F67FB45711ECCD5FE7CAA6DF70ED6D980F3ADE4378761A36A2B2B524
+7395914802A3751B43541CDF6E009DD644A548CCCAD14CEFDF97F6D9D17B6DAEB5C836A0
+552AF4B68CE32FA1295E9C41901417BD4B48914B535F9A9B9D7199945D173BB841B9A36D
+B1E4812F58033DA7A7B6056C4F9AB74ADF58560C9A9003CE2FCB4546FAD7D94DD46064C6
+3C5B1B5F59CB9A22F8911E0AB56EEC3F9F6B0A5B8E5809D0B885F38A6C89FB7947B592FA
+FA0BB5579C6725D1C94D91654AEB8FE91088EF1D96276E490AFD2A608461DA68CC65B1FA
+FB0DD890D0277612D1A788E205D934B27DA4019B130853617B370B9D0DE8C82CE20AD216
+69D9913ADE7EB5E4590FC317A76E919D8CC9F10F41D67BA5CC03501A62C939F07162CF58
+17EEBE80C06DC549E30B1AADD8FE9579CA847890C4E92B457E5B8A2B4820C7D769B6703D
+161C7A5D4CF2C60DB1254359B750F559ACFB2B0D367891328C992D2DCC7F656F9D09CE5C
+4A0FC5DF401172C8D0EE31F3280B63638DACF571322F2301E97969995667414C4AFEA9F1
+E77F6389189762E42950BF25B6279712F634EA5D84F6981175D7DE5F7B7D5EE5C52F0AB7
+D75FD03534DFA1EEA098A64F0AA2EB1D1E3AE9E545D3CECC8186E48EBA268292D21E68B6
+89A9C3B10A4B1A01E115CFEA9B3D86AE746DB20605705EDB907F42CA09432AE97093B5B0
+5726752ADC755E9957BB09BC391859B1C808B0FD106BD2FB9FECCD4186BED41C0B6B3A4B
+C89D6AD9243C137D536ADE37BE279DB901DA65BB6F1D032B46431C557F8FB8DBB4BC68B0
+5990ABC777FD727E10A11CC4E8A2877175B850E6BB5E0BC9F02FB6FF38CCE7ABDE626815
+8586D92244B56591CACBC64DDA67E25889CDDA3AB81DD917CC68781504A1CCB521B5F38B
+C5BAA6050766980A113EAAA6ECD467458E3C94D1403EEA4A603DE604BF41CA37CCD38072
+71D4AE6A9976130F65A1EAAED730E84E341D916430C229FBF99A3F0A7D31190DFFB5AD52
+DE54A12A8385F5A6299AD57C4D140E64DE03CAB9A19ACA22A41EC97704503C667DB2230F
+2797CF01C77DBB77A238F31572134BD9F4299E9B9F21E44645C3B2F2A7917D4F7193F474
+ACB75B64B65949F2D79F93041D9B258C407830ED3F22716F19916DF0C1E857150B824FA5
+ACDC7D5D94FC6704172A5626F2ED4F8DD7967AEE7BC721307E1872864E58CD50A2BFD3BE
+A5CD0128C4DF3B27225BDC864E824723461C024DA65D1B5F3283A139FD9F1BD13D34627C
+08D7838815230DBCAB614A614B44E7B36A173C4BF8503D7DE253E2F29E3999244A32569E
+8DE2F398BDFAED10F12C4DD4013675A5051801B2FFAE48EC2D1CD368958277386F52D7EF
+4C344FCC0329961CE3527C9EDE95EB78681407B42263D32A7EEC8C9360D98C1DDF53A218
+5F49EDEFBA8AEDA9031717BD4325067E15564742407785134C824875F4E3473CC64BA006
+A1543602E655A46AA4B8C49D26A2C96DD99CDF4B6A5D60DA5837472B3E5A4CB0161BD29F
+838A52F04997068B44322C9520187794366D1FB47982A953111BA69E53415A838E57B279
+3C6AADF6F9F513B4F96D086032AB2CD06C8ABF353DE604DDD2271A6DDB9D22D0A611BEDD
+5B0FB54E10D4CEB0AA7B2B69698C6281A86E4CD8FE18449C7F9DC3FBEC553B5AA0C5C151
+DA2D55E689FC13F3D67F26B660756E9ACB5989C7AA91FB6019477F86BC5A5EB427A141D7
+DDEB3B6B1239DF9EDB125E8BADA4D23057A9B58CCDE8C25BCDF3714943A3124958531006
+3373616799AF716CB9E9BFF1417EEE690A42285B9EA79FC2492C87354FD60AED82623ACA
+AAE0D6C90426B454C0EAC1099E35858F7E2A0EF1C127B2101CE5090A5F6B6C0823E1042A
+9EE5B97B087ECC26F79109BCBB27C71933B6F4242AE0CD3DFE9C68B679797A73C4C2740D
+0CD1F1338163551F4CCEA69FCA923F7EB9BF81B94E7D500DD1B0A483B323E05B2B5D368F
+E978862B185752EE5BF035DC4BC033A802AD068DC0956AEA7600D68B284FBC70874A4046
+610B1F31535D0B248A8BDBAE6AA195C981AA7341E5B4C9B9D2CA57C05BD4D1CAA86627A2
+CD4A20437F8CEEA3B738B3ACFE038C816CE53736497446B6FEE4E7DC2401F3594FF977D3
+96309D9C534E46AA573331C90BA7B5D566BB268A261B827368236E0C3425C4CB3892B948
+73D5D03A9DAE2A6A0FEDD01A20ED1975BDFB8267B2A55E71DE8CD9E2FD78F4B7DF74099C
+31FA3872F14EBF763A871691404A28DCC058DCFDF2DCC4EA2E3E3239CADEDCF4122D1AE9
+440149270238FA5BA4C4F90ABD52D7C461D3287AF6B212A28BDDA90B259D987A51C2FDF8
+3856407E598AE305703B9B0924E0B6DF1C982F5204F3D1E09C9E500F17A29045EAC60EFF
+AB1E16BEBA88CD99193AB371567D8FBAC2BD3493C9E7CD9D5E7004D62728711A83774B1A
+1E7D6484666322790DED23C377EC2827E5465BBF2DA2A882091F677335B919FBBB4501D1
+9BA7CB1AF0CDE724FD214A2DE2E055372685A7C9728ADAD86B6517A40DEE9118C3F3F25B
+87143F08C57B4157BE18CBBD2CE2FE7DD3445C681FA70DC9854F6C901F9A0367C85C98C1
+DD2EB7D4F962097832517908F533A16CC87480AA06033AC2AB51BE70151124EF10FAAE87
+0C8F887980DD1F73C59414E9D654725189B42FBF58CF5B06347A38663C4EA600F1EE9249
+8136E8B2BDCC5DD02F298B7C430B716CB68D7CC364EE5F3E556F54219F63F1083CB9CF7D
+9208746238ADEE0447B5E99F124621BCB0975441DE5F7F3880C24E870FE2755D32777E6D
+16CDDEDFAEDC8853F3F356256163BCF15992829D39C53BC50C9F92257C201071689D2981
+FFBF34924FFD352223CEA536F767EB269B32CFC2737A60F4B8D0098694F9C6E7FFE1A83A
+3F11D4EDB3B2B619B812942087938200D39A281486BFEB6BF4E300F647DEBFECE12D78AA
+913A2A31A65F1ADF3AF215AE00240113C2A41CDCD8E3D77E026CB315566E0841A99E5EED
+92289CFEFDB24308900BA6D71C845311100DE49B317D83E42B5C5348AB6D13D65D9E3019
+92E334AC76EECB81A26A1432468C71B7EAE573D4CE617407488159F3DFA73C770210BF5D
+A18CED4A415099BC6ADC21EE9DFB4E7C595461993F1CDB06898F1520ED5FA98864B33FC6
+D4950BF63F127F77F30213457BC1C65A4EA9C80D0726A1A00BE6E5DE481DB9867D21CDB8
+DEDE533F31A57D28C736D2D612C8EAF92A7F8C79D73B3C57F78504CADA567745C931063B
+A8596985AF4A60698DF38BD37D7A4CBFC3363AB88530683F37967FEB21B702AA56F65A7F
+0C3719E16D856FFB45831C63A3CD9BA782F9509DACDA09CDEEA3FF715EECFD11F9AA3B4C
+50547440F7B9F494D1DD523AEA7016B99A3CE42728723D19E0F000379C395C5BBF9E4FA2
+85A29C1716456097D96B2714E81D16D5A46B1741ECFD1F0D7FE555A30F91578E053C1566
+760BA0D747B0D1A7163E1A1FA05CD836A9AEBCADFB227B8FE601EA4EDC643CC01B31F836
+A7D739139AD3313DDCEBBE924BF0AEE56F8B31141ED657E9AB8C57026DAF909D3EF6B7AA
+014E4A3510D60BE476EE62583E9A482FFB9A8178BECD84882B849630A82F04B38DC6CD83
+B2F0374E21F559DC30BA1BAAE7DF8055ED66900465CB42F2D7385C0E465A84BF926C367D
+9ADA0977EAA31A16AF8AA59976294C5FD508B99473C87EFB99DAF7975DBE8E368FE0CB5F
+591EB1FC500A5D80F534612804BB52A486A8BF169491937B648B3EA41ADBB9685CBCF1AF
+486D7B9BF895645725FDE0B02B61303D799107C195FAF6A00EBFF675DC3B3E8F18044ECA
+A79A3977C580E0107C4E3AB8D0E4F67353F65D8F0B7148325E1E5F36FBE3B17F7FE5FB90
+B49C0DE7D9451CBC87F6688BF4F5E3AE4657BEB028FE27DF1186E48B4A381EFB95AC5C11
+B0ACA71E5509CC90D9EA1CD2718C6F0AA51069E1183827CF9673184337D30794298CD12E
+6E7A8B093EFAD857988B13A3C60D9CD578191EE515C208D25CA4869AA477CC8752FEA4E7
+24BCE63E79B2EF5A55ED515D82F3BC2D32FA72FE35B4FA56C34437F1D1FB12BA84FF99DD
+7B31E02302652F5903EEDC7357B44B38C774FEBE4E1EB1F036C56EC5AC78FC37885A8ED1
+6D90392E2CE5C36F176ECBD6E120C8C3D1C5C6E9D88DD13770A54E1BC925068E77D0A3BA
+DAA65ACFEF167DF1A6AA90E6CBE78A76545A4643A2C6692F02BF957705C5520D64371C2E
+19D2B1A7414EBF43C0466AD0D1111989C56290F4607CF6311B78796DE1E2F634F7F04967
+03EE0E8A3EA93877996B573AD41D0F87D822AD09E6C4002FA49FD83D81BFE2901DABAFA7
+BACDAD9CA90E6D37DEC1CD63AE4C07D32060946FC308C861EE238CD484FDF6B3BBB58485
+247936E302B0771ADCF7713EC19AE740667F28DFA1B1AC6F2CF6FBF55DAFC365B6D23075
+9349089468C11FF30DCA0D9232C94484163E10B94D18BE4AB16BE63CE7D75BAAE03B9E56
+B914DC7D21F6CF66B8BE83B760792FC556975D4D6AF16F5B7C7854F3547B8BAE3946A96C
+97BD5D0C04D0D7E19CB23292C29F011DFD0858AC0ACD9F443AC0C9D91A818C6CD898940C
+E7BCF00047F60E5F0478594E17B01843D51E92673DFE0F6956269A3982A42D516C0359A0
+2A6FA6E9615714ECE2E0DD818348621F6BF22AFBFEC723C33A5021D4A20E2E1D56479B6E
+FA6F4FAC71D1D62AAAF924A666F8B98E2DED67FD0613E02A53534B35D96C2B1892D7EF36
+8C016652C852044C65ACC6E988D76E922CA83684DD5A4EC5061D588EF2620A3F4E84FFB3
+68CDDA9CCA46D4138371003D9AABDEEB28DA62218343AD87A7FE1E3D9670544883C605FD
+A17FEE02BACB9AB4925242C368C6C2AB4D59566870960EDB076B692EC03F9E6857585A21
+72752ADC790C3FFD78929D3D45E10E328EB36BBABAE1CB77CC4F0D56CE28FA57C0BD9CAF
+5E88C0E5434A32DD1F4B726B1A0C1436CDF15D228E673CF8D3E54119023F43A5784FC870
+F4BEB02E07B9578D213968692CEED07AF804D31F24F773514F4307F104DC06397693CEC9
+66B5672799DB7997F0980FCE9E3CA048D04F15517C27175C865ACA0A83B845E01DCA4CA1
+C9175F50527B626C70E07F3A58BD51E9AF7505AD4142D69AF5FBCB6B5E9D256BADA4BD58
+0182BA4374111BFCAE236B371A893F637FFF79E5D0F941EEE70BC2293522DA5E1A6555C3
+825D475246288A4C38F01CD6157BDF27F9FFE0EF273EC678316BF933D61D18BAA5DE7FE8
+837339207C6C94455EBE25E5876F51147529452F83D449A18219D25089161D425CE4C461
+61AF663529E1378F8286D1C9E8BC8F3315303277B2C6BFA3E5F3D24114AAFD70E2707ED6
+23B8E8AE948BB285C5C0B582C42CD5056D4EBE45C51BCEFE2BE148E222BCE7DF7DB5B5D8
+4094AF17AFD2DF8A6A0A81B9C0DCFD550EF5049D3DB370C185D81AFC59031BBDCE74AB86
+78D45529DDA11368F9A63C36327289741B15F35A891C1750BB64F9236773D12781887D62
+F84ABEA3F7BB8C51176DE066B635D07FD897872C7D7475AB39439C120729D1C6083A6D83
+0D330BC6961159B919466DA978FE8AB46EE319A9DEF8FD66F45FC3ABFC52C7463AF81A79
+35A910C709A9283A16644F107D258EFFB8EDFBEBC7F62058C4C71F0A792EC48218182698
+F681AD4AE1A161B7E6FD099E96A93976B91858C8E675E3C9FFD8876AFC87C7CEE0E76502
+CBE12F1B1B5315C53480F052F46F10608CE413ACC86AFB3AC56BA2B2CC678C335EB3F89F
+E15AAAD5DB5B83052A5F6A136C7DF3FEBB7A2FEE28340E775A8D2879FA3A3F83DAC7C187
+DBE188A844D2BA1062705F9FB661C510FCC342BC5B247780756824E0A6A357CB20A3843C
+4B4EA6FFC50E353D4D074C908A6CAC5CCD04C3F8063CEBA2CA8CAFCCC75B3443F46AAA35
+0D1E57AA7B166B74EA4C0EB78B3133B5DAE581C6C9E3F5DF94A7045923954852B4551D3B
+51B02847E58525AF5D6B77372420A4B046363EA513BDAFA74C4B70DC4B6FB173B42B1F14
+7EE6070BAE3ED16BFCA754F3E2A0B44BE663DFBBDA154FF465DF62710F44934718982889
+81E77EF15C4576312219E6A036C8EF9161661724C8FE24E2CECCDCC862774B6F83BB3F02
+E4B361BE30AC737EE2EC7157AD38283A598DF49D1B843B8BC3C76AC566663984934B83F8
+DAD7CE1E1724169D0AF7A344FFA9033FFC9E7EA2B47711F56D54DE5853FA3D137C1108A6
+9224DCE0EB85E6F49C4F8EC8F5CDDC6FF5AF4E95D92D12CC4AB1C76E97770D28963F5B8A
+0D3380364EB34B8F12FDF6BA72C86C645AEE6866A07D5DE879C94C39949972C8DE05D71C
+079FB6DE68A27FCE0EEAFE12638E1433AB4B8DD96CE9A0356A9B90975539511610E01870
+4FD368EAD11FEC481B212A38962FF8EEF0058617A8781A9727F085E15318EE923F21F1C6
+802F01AF9815204E9D19885D4E940E492D4017A024B4792B5005757BEE26D0D75CFBB418
+DEA3B4D22CB5CFF43042D03855362148A618ECC9AD2D229B2DDA97D4296F6C52E78D4315
+3242AEEF28E283870CFB1673489EE7611DEEF10D2F01DB29243B5BAA3B934332D456A47D
+EF6D8C0545E43DADAE4A1CE485C9AE2589151C2B6AF016B4B2C7020CE686609FA8F8EA64
+22383FACB1152E99AAE964D918C8075EC9CB219D86F3FB083BB0411B3A2F124D6715C22F
+9124FB8811AFCB6246A737D1323CE47D1C6B38386D79BD9CC8BF84639147DAF031444878
+9AEA731E663B865C434573BAC0216A471276C8B65AD2988E0B84D4205006413AD9E58EB3
+5F5353E9B73E85E6A7BC574FD272AEDF107179381BDE1D44296E7A7EF1CB2F309EF96665
+0D7C3287789C192860E9D41F8A11A5B27B3075105AE1149EC86785B6309F76232102CD8A
+4B3B318974E104F0C75ECDC84695CA
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if \ No newline at end of file
diff --git a/font/devps/generate/Makefile b/font/devps/generate/Makefile
index 5916e6a6..a9f2e609 100644
--- a/font/devps/generate/Makefile
+++ b/font/devps/generate/Makefile
@@ -37,7 +37,7 @@ GREEKFONTS=SS
TEXTFONTS=AB ABI AI AR BMB BMBI BMI BMR CB CBI CI CR HB HBI HI HR HNB HNBI \
HNI HNR NB NBI NI NR PB PBI PI PR TB TBI TI TR ZCMI
-FONTS=$(TEXTFONTS) $(SPECIALFONTS) $(GREEKFONTS) $(DINGBATSFONTS)
+FONTS=$(TEXTFONTS) $(SPECIALFONTS) $(GREEKFONTS) $(DINGBATSFONTS) EURO
DESC=$(srcdir)/../DESC
AFMTODIT=afmtodit -d$(DESC)
@@ -196,6 +196,13 @@ S: symbol.afm
ZDR: zapfdr.afm
$(AFMTODIT) -s $(RFLAG) zapfdr.afm $(srcdir)/dingbats.rmap $@
+# the map is just a dummy
+EURO: freeeuro.afm
+ $(AFMTODIT) $(RFLAG) freeeuro.afm symbolmap $@
+
+freeeuro.afm freeeuro.pfa: generate/freeeuro.sfd
+ pfaedit -script generate/sfdtopfa generate/freeeuro.sfd
+
symbol.afm: $(srcdir)/symbol.sed
-rm -f $@
sed -f $(srcdir)/symbol.sed `$(AFMNAME) $(afmdir)/Symbol.afm` >$@
diff --git a/font/devps/generate/freeeuro.sfd b/font/devps/generate/freeeuro.sfd
new file mode 100644
index 00000000..a52e096a
--- /dev/null
+++ b/font/devps/generate/freeeuro.sfd
@@ -0,0 +1,548 @@
+SplineFontDB: 1.0
+FontName: FreeEuro
+FullName: FreeEuro
+FamilyName: FreeEuro
+Weight: Medium
+Copyright: Created by Werner Lemberg with PfaEdit 1.0 (http://pfaedit.sf.net); the serif shapes are based on the Omega fonts created by Yannis Haralambous.
+Version: 001.000
+ItalicAngle: 0
+UnderlinePosition: -100
+UnderlineWidth: 50
+Ascent: 800
+Descent: 200
+NeedsXUIDChange: 1
+FSType: 12
+PfmFamily: 65
+TTFWeight: 500
+TTFWidth: 5
+Panose: 3 0 6 3 0 0 0 0 0 0
+LineGap: 90
+VLineGap: 0
+
+Encoding: custom
+DisplaySize: -96
+AntiAlias: 1
+BeginChars: 256 14
+StartChar: Euro.symbol
+Encoding: 0 8364
+Width: 780
+Flags: MW
+HStem: -17 59<469 503> 251 59<62 133 205 601> 370 59<62 133 205 649> 638 59<469 503>
+Fore
+143 251 m 9
+ 38 251 l 17
+ 63 310 l 1
+ 133 310 l 1
+ 131 329 131 351 133 370 c 1
+ 38 370 l 1
+ 63 429 l 1
+ 143 429 l 17
+ 174 564 307 697 490 697 c 0
+ 635 697 724 611 742 592 c 9
+ 717 531 l 17
+ 666 591 587 638 489 638 c 1
+ 348 638 241 543 205 429 c 1
+ 674 429 l 9
+ 649 370 l 25
+ 193 370 l 17
+ 191 351 191 329 193 310 c 1
+ 625 310 l 9
+ 600 251 l 25
+ 205 251 l 17
+ 245 122 364 42 488 42 c 1
+ 588 42 663 87 717 149 c 9
+ 717 65 l 17
+ 660 18 582 -17 489 -17 c 1
+ 338 -17 187 80 143 251 c 9
+EndSplineSet
+EndChar
+StartChar: Euro.symbol.bold
+Encoding: 1 8364
+Width: 791
+Flags: MW
+HStem: -17 89<501 535> 221 89<72 156 272 604> 370 89<72 156 272 662> 608 89<501 535>
+Fore
+272 221 m 9
+ 604 221 l 25
+ 639 310 l 17
+ 246 310 l 1
+ 243 330 244 351 246 370 c 9
+ 662 370 l 25
+ 697 459 l 17
+ 272 459 l 1
+ 323 561 423 608 512 608 c 0
+ 623 608 690 544 717 512 c 9
+ 753 604 l 17
+ 668 680 577 697 512 697 c 0
+ 339 697 214 575 175 459 c 9
+ 73 459 l 25
+ 38 370 l 1
+ 156 370 l 1
+ 155 351 155 329 156 310 c 1
+ 73 310 l 1
+ 38 221 l 1
+ 175 221 l 17
+ 222 97 335 -17 520 -17 c 1
+ 589 -17 668 12 717 48 c 9
+ 717 168 l 17
+ 670 114 602 72 513 72 c 0
+ 436 72 330 108 272 221 c 9
+EndSplineSet
+EndChar
+StartChar: Euro.serif
+Encoding: 2 8364
+Width: 741
+Flags: MW
+HStem: -14 44<435 463> 253 46<53 102 224 568> 369 46<53 104 224 618> 636 40<433 467>
+Fore
+224 253 m 1
+ 245 130 319 30 463 30 c 0
+ 555 30 625 68 689 131 c 1
+ 707 113 l 1
+ 651 30 532 -14 436 -14 c 0
+ 257 -14 138 91 109 253 c 1
+ 34 253 l 1
+ 54 299 l 1
+ 103 299 l 1
+ 102 308 102 319 102 331 c 0
+ 102 344 103 357 104 369 c 1
+ 34 369 l 1
+ 54 415 l 1
+ 111 415 l 1
+ 145 569 272 676 442 676 c 0
+ 537 676 653 631 707 549 c 1
+ 689 531 l 1
+ 624 594 543 636 451 636 c 0
+ 394 636 342 613 301 575 c 0
+ 256 534 234 476 224 415 c 1
+ 638 415 l 1
+ 618 369 l 1
+ 219 369 l 1
+ 218 356 218 342 218 329 c 0
+ 218 319 218 309 219 299 c 1
+ 588 299 l 1
+ 568 253 l 1
+ 224 253 l 1
+EndSplineSet
+MinimumDistance: x22,-1
+EndChar
+StartChar: Euro.serif.bold
+Encoding: 3 8364
+Width: 800
+Flags: MW
+HStem: -19 48<486 510> 231 69<72 129 313 612> 368 69<72 131 312 669> 649 42<476 510>
+Fore
+142 231 m 1
+ 45 231 l 1
+ 73 300 l 1
+ 130 300 l 1
+ 129 310 129 321 129 332 c 0
+ 129 344 130 356 131 368 c 1
+ 45 368 l 1
+ 73 437 l 1
+ 143 437 l 1
+ 183 586 310 691 483 691 c 0
+ 611 691 689 628 762 545 c 1
+ 732 520 l 1
+ 649 613 572 649 494 649 c 0
+ 377 649 328 560 312 437 c 1
+ 697 437 l 1
+ 669 368 l 1
+ 307 368 l 1
+ 306 359 306 348 306 336 c 0
+ 306 325 306 312 307 300 c 1
+ 640 300 l 1
+ 612 231 l 1
+ 313 231 l 1
+ 319 190 330 149 349 116 c 0
+ 391 44 470 29 501 29 c 0
+ 579 29 654 59 737 152 c 1
+ 767 127 l 1
+ 694 44 616 -19 488 -19 c 0
+ 300 -19 181 89 142 231 c 1
+EndSplineSet
+MinimumDistance: x16,-1
+EndChar
+StartChar: Euro.serif.italic
+Encoding: 4 8364
+Width: 734
+Flags: MW
+HStem: -18 45<401 426> 253 46<85 140 257 565> 369 46<117 161 289 636> 630 36<544 567>
+Fore
+143 299 m 1
+ 147 322 152 346 161 369 c 1
+ 98 369 l 1
+ 118 415 l 1
+ 179 415 l 1
+ 243 551 380 666 546 666 c 0
+ 694 666 734 560 745 516 c 1
+ 720 502 l 1
+ 700 549 668 630 554 630 c 0
+ 425 630 336 528 289 415 c 1
+ 656 415 l 1
+ 636 369 l 1
+ 272 369 l 1
+ 266 347 261 323 257 299 c 1
+ 585 299 l 1
+ 565 253 l 1
+ 252 253 l 1
+ 252 241 l 0
+ 252 110 307 27 426 27 c 0
+ 539 27 609 98 657 145 c 1
+ 674 131 l 1
+ 637 87 548 -18 402 -18 c 0
+ 286 -18 140 52 140 253 c 1
+ 66 253 l 1
+ 86 299 l 1
+ 143 299 l 1
+EndSplineSet
+MinimumDistance: x16,-1
+EndChar
+StartChar: Euro.serif.bold.italic
+Encoding: 5 8364
+Width: 800
+Flags: W
+HStem: -19 48<400 427> 231 69<60 114 295 584> 368 69<92 135 332 673> 649 42<544 586>
+Fore
+114 231 m 1
+ 17 231 l 1
+ 61 300 l 1
+ 118 300 l 1
+ 119 310 122 321 124 332 c 0
+ 127 344 131 356 135 368 c 1
+ 49 368 l 1
+ 93 437 l 1
+ 163 437 l 1
+ 239 586 390 691 563 691 c 0
+ 691 691 754 628 808 545 c 1
+ 772 520 l 1
+ 711 613 642 649 564 649 c 0
+ 447 649 377 560 332 437 c 1
+ 717 437 l 1
+ 673 368 l 1
+ 311 368 l 1
+ 308 359 305 348 302 336 c 0
+ 300 325 297 312 295 300 c 1
+ 628 300 l 1
+ 584 231 l 1
+ 285 231 l 1
+ 281 190 282 149 293 116 c 0
+ 318 44 394 29 425 29 c 0
+ 503 29 585 59 690 152 c 1
+ 714 127 l 1
+ 621 44 529 -19 401 -19 c 0
+ 213 -19 119 89 114 231 c 1
+EndSplineSet
+EndChar
+StartChar: Euro.sansserif
+Encoding: 6 8364
+Width: 791
+Flags: MW
+HStem: -23 82<503 537> 236 88<71 164 275 611> 396 87<71 164 276 671> 659 82<487 521>
+Fore
+275 236 m 9
+ 611 236 l 25
+ 644 324 l 17
+ 257 324 l 1
+ 256 346 256 375 257 396 c 9
+ 671 396 l 25
+ 704 483 l 17
+ 276 483 l 1
+ 312 591 403 659 509 659 c 0
+ 624 659 688 604 726 544 c 9
+ 763 642 l 17
+ 684 723 584 741 516 741 c 0
+ 309 741 208 599 179 483 c 9
+ 72 483 l 25
+ 40 396 l 1
+ 164 396 l 1
+ 162 376 163 344 164 324 c 1
+ 72 324 l 1
+ 40 236 l 1
+ 178 236 l 17
+ 216 95 332 -23 513 -23 c 1
+ 585 -23 659 -12.5 727 36.5 c 9
+ 727 143 l 17
+ 647 76.3333 604 59 516 59 c 0
+ 406 59 313 124 275 236 c 9
+EndSplineSet
+EndChar
+StartChar: Euro.sansserif.bold
+Encoding: 7 8364
+Width: 834
+Flags: MW
+HStem: -23 128<549 599> 228 104<70 147 324 646> 388 103<71 147 324 698> 613 128<549 599>
+Fore
+755.5 563.5 m 1
+ 694 602 644 613 560 613 c 0
+ 510 613 380 596 324 491 c 1
+ 732 491 l 9
+ 698 388 l 25
+ 296 388 l 17
+ 295 367 295 354 296 332 c 1
+ 679 332 l 9
+ 646 228 l 25
+ 324 228 l 17
+ 351 175 440 105 567 105 c 0
+ 674 105 715.5 130.5 747 150 c 13
+ 747 6 l 17
+ 712 -7 650 -23 564 -23 c 1
+ 347 -23 215 90 168 228 c 9
+ 38 228 l 1
+ 71 332 l 1
+ 147 332 l 1
+ 145 352 144 368 147 388 c 1
+ 38 388 l 1
+ 72 491 l 25
+ 168 491 l 17
+ 200 579 295 741 568 741 c 0
+ 658 741 734 722 796 689 c 0
+ 755.5 563.5 l 1
+EndSplineSet
+EndChar
+StartChar: Euro.sansserif.slanted
+Encoding: 8 8364
+Width: 781
+Flags: W
+HStem: -23 82<429 454> 236 88<63 152 249 585> 396 87<98 172 302 679> 659 82<571 600>
+Fore
+249 236 m 9
+ 585 236 l 25
+ 636 324 l 17
+ 249 324 l 1
+ 253 346 260 375 265 396 c 9
+ 679 396 l 25
+ 730 483 l 17
+ 302 483 l 1
+ 361 591 467 659 573 659 c 0
+ 688 659 722 610 770 550 c 9
+ 823 642 l 17
+ 761 723 665 741 598 741 c 0
+ 391 741 259 599 205 483 c 9
+ 99 483 l 25
+ 47 396 l 1
+ 172 396 l 1
+ 166 376 160 344 157 324 c 1
+ 64 324 l 1
+ 14 236 l 1
+ 152 236 l 17
+ 160 95 251 -23 432 -23 c 1
+ 503 -23 581 -6 660 43 c 9
+ 685 158 l 21
+ 603 98 541 59 452 59 c 0
+ 342 59 263 124 249 236 c 9
+EndSplineSet
+EndChar
+StartChar: Euro.sansserif.bold.slanted
+Encoding: 9 8364
+Width: 812
+Flags: W
+HStem: -23 128<482 515> 228 104<65 141 296 618> 388 103<99 153 352 704> 613 127.037<612 635>
+Fore
+799 563 m 1
+ 743.667 593.667 698 613 614 613 c 0
+ 564 613 431 596 352 491 c 1
+ 760 491 l 9
+ 704 388 l 25
+ 302 388 l 17
+ 297 367 294 354 291 332 c 1
+ 674 332 l 9
+ 618 228 l 25
+ 296 228 l 17
+ 312 175 386 105 513 105 c 0
+ 620 105 664.667 138 705 156 c 1
+ 672 6 l 1
+ 634 -7 569 -23 483 -23 c 1
+ 266 -23 158 90 140 228 c 9
+ 10 228 l 1
+ 66 332 l 1
+ 141 332 l 1
+ 144 352 146 368 153 388 c 1
+ 44 388 l 1
+ 100 491 l 25
+ 196 491 l 17
+ 247 579 376 741 649 741 c 0
+ 739 741 811 722 866 689 c 0
+ 799 563 l 1
+EndSplineSet
+EndChar
+StartChar: Euro.mono
+Encoding: 10 8364
+Width: 600
+Flags: MW
+HStem: -16 41<314 332> 217 37<26 63 106 385> 314 37<26 63 106 430> 535 41<314 332>
+Fore
+322 576 m 0
+ 196 576 80 480 65 351 c 1
+ 33 351 l 2
+ 16 351 11 346 11 333 c 0
+ 11 319 17 314 33 314 c 2
+ 63 314 l 1
+ 63 254 l 1
+ 33 254 l 2
+ 17 254 11 249 11 236 c 0
+ 11 222 17 217 33 217 c 2
+ 65 217 l 1
+ 80 89 196 -16 322 -16 c 0
+ 386 -16 446 9 496 55 c 0
+ 522 79 534 96 534 106 c 0
+ 534 117 526 125 514 125 c 0
+ 507 125 503 123 496 115 c 0
+ 442 51 391 25 322 25 c 0
+ 216 25 124 107 106 217 c 1
+ 383 217 l 2
+ 398 217 404 222 404 236 c 0
+ 404 249 399 254 383 254 c 2
+ 104 254 l 1
+ 104 314 l 1
+ 428 314 l 2
+ 444 314 450 319 450 333 c 0
+ 450 346 444 351 428 351 c 2
+ 106 351 l 1
+ 124 460 216 535 322 535 c 0
+ 391 535 442 509 496 445 c 0
+ 503 437 507 435 514 435 c 0
+ 526 435 534 443 534 454 c 0
+ 534 464 522 481 496 505 c 0
+ 446 551 386 576 322 576 c 0
+EndSplineSet
+MinimumDistance: x23,-1 x22,25 x22,23 x21,18 x21,20 x6,9 x6,7 x5,2 x5,4
+EndChar
+StartChar: Euro.mono.bold
+Encoding: 11 8364
+Width: 600
+Flags: W
+HStem: -14 100<307.635 341> 205 56<22.3275 59 174 388> 303 56<22.3275 59 173 428> 497 100<323 341>
+Fore
+173 359 m 1
+ 424 359 l 2
+ 442 359 452 349 452 331 c 0
+ 452 313 442 303 424 303 c 2
+ 169 303 l 1
+ 169 261 l 1
+ 386 261 l 2
+ 404 261 414 251 414 233 c 0
+ 414 215 404 205 386 205 c 2
+ 174 205 l 1
+ 190 130 247 86 329 86 c 0
+ 367 86 404 95 426 109 c 0
+ 436 115 436 115 461 143 c 0
+ 471 154 481 159 492 159 c 0
+ 517 159 538 136 538 109 c 0
+ 538 86 521 60 490 36 c 0
+ 451 5 389 -14 325 -14 c 0
+ 187 -14 84 72 62 205 c 1
+ 31 205 l 2
+ 14 205 4 215 4 233 c 0
+ 4 251 13 261 31 261 c 2
+ 59 261 l 1
+ 59 303 l 1
+ 31 303 l 2
+ 14 303 4 313 4 331 c 0
+ 4 349 13 359 31 359 c 2
+ 62 359 l 1
+ 78 498 187 597 325 597 c 0
+ 389 597 451 582 490 551 c 1
+ 521 527 539 505 539 478 c 0
+ 539 455 517 426 492 426 c 1
+ 481 426 471 431 461 442 c 0
+ 436 470 436 470 426 476 c 1
+ 404 490 367 497 329 497 c 0
+ 247 497 188 444 173 359 c 1
+EndSplineSet
+EndChar
+StartChar: Euro.mono.slanted
+Encoding: 12 8364
+Width: 600
+Flags: MW
+HStem: -16 41<306 324> 217 37<66 102 148 428> 314 37<88 120 171 496> 535 41<418 447>
+Fore
+435 576 m 0
+ 309 576 173 480 130 351 c 1
+ 98 351 l 2
+ 81 351 75 346 72 333 c 0
+ 71 330 71 328 71 326 c 0
+ 71 317 77 314 90 314 c 2
+ 120 314 l 1
+ 107 254 l 1
+ 77 254 l 2
+ 61 254 54 249 52 236 c 0
+ 51 233 51 231 51 229 c 0
+ 51 220 57 217 70 217 c 2
+ 102 217 l 1
+ 101 209 101 201 101 193 c 0
+ 101 76 191 -16 309 -16 c 0
+ 373 -16 438 9 498 55 c 0
+ 529 79 545 96 547 106 c 0
+ 547 107 547 109 547 110 c 0
+ 547 119 541 125 531 125 c 0
+ 524 125 520 123 511 115 c 0
+ 443 51 387 25 318 25 c 0
+ 216 25 143 101 143 205 c 0
+ 143 217 l 1
+ 420 217 l 2
+ 435 217 445 225 445 241 c 0
+ 445 250 441 254 427 254 c 2
+ 148 254 l 1
+ 161 314 l 1
+ 486 314 l 2
+ 502 314 508 319 511 333 c 0
+ 512 336 512 338 512 340 c 0
+ 512 348 507 351 494 351 c 2
+ 171 351 l 1
+ 212 460 320 535 426 535 c 0
+ 495 535 541 509 581 445 c 0
+ 586 437 590 435 597 435 c 0
+ 609 435 621 443 621 457 c 0
+ 621 467 613 483 594 505 c 0
+ 554 551 499 576 435 576 c 0
+EndSplineSet
+MinimumDistance: x27,-1
+EndChar
+StartChar: Euro.mono.bold.slanted
+Encoding: 13 8364
+Width: 600
+Flags: MW
+HStem: -14 100<322 348> 205 56<85 107 226 438> 303 56<101 124 250 495> 497 100<429 456>
+Fore
+250 359 m 1
+ 501 359 l 2
+ 516 359 524 352 524 339 c 0
+ 524 317 509 303 489 303 c 2
+ 234 303 l 1
+ 226 261 l 1
+ 443 261 l 2
+ 458 261 465 254 465 242 c 0
+ 465 219 450 205 431 205 c 2
+ 219 205 l 1
+ 219 130 266 86 348 86 c 0
+ 386 86 425 95 450 109 c 0
+ 461 115 461 115 492 143 c 0
+ 505 154 516 159 527 159 c 0
+ 548 159 563 142 563 120 c 0
+ 563 89 536 61 499 36 c 0
+ 453 5 387 -14 323 -14 c 0
+ 190 -14 107 66 107 190 c 0
+ 107 205 l 1
+ 76 205 l 2
+ 62 205 54 212 54 225 c 0
+ 54 247 68 261 88 261 c 2
+ 116 261 l 1
+ 124 303 l 1
+ 96 303 l 2
+ 82 303 74 310 74 323 c 0
+ 74 346 89 359 108 359 c 2
+ 139 359 l 1
+ 185 498 315 597 453 597 c 0
+ 517 597 576 582 608 551 c 1
+ 630 530 643 511 643 489 c 0
+ 643 459 612 426 584 426 c 1
+ 573 426 564 431 556 442 c 0
+ 537 470 537 470 528 476 c 1
+ 509 490 474 497 436 497 c 0
+ 354 497 283 444 250 359 c 1
+EndSplineSet
+MinimumDistance: x9,-1
+EndChar
+EndChars
+EndSplineFont
diff --git a/font/devps/generate/sfdtopfa.pe b/font/devps/generate/sfdtopfa.pe
new file mode 100644
index 00000000..c063f466
--- /dev/null
+++ b/font/devps/generate/sfdtopfa.pe
@@ -0,0 +1,8 @@
+# sfdtopfa.pe
+#
+# This script generates a PFA file from the master SFD using pfaedit.
+#
+# The argument is the name of the SFD without extension.
+
+Open($1:t + ".sfd");
+Generate($1:t + ".pfa");
diff --git a/font/devps/generate/textmap b/font/devps/generate/textmap
index 4fdd08b4..90e79e21 100644
--- a/font/devps/generate/textmap
+++ b/font/devps/generate/textmap
@@ -93,6 +93,7 @@ Ugrave `U
Yacute 'Y
Ydieresis :Y
Zcaron vZ
+a14 rh
aacute 'a
acircumflex ^a
acute aa
@@ -128,7 +129,6 @@ backslash \
backslash rs
bar ba
bar |
-bell bs
braceleft lC
braceleft {
braceright rC
@@ -199,8 +199,6 @@ guillemotleft Fo
guillemotright Fc
guilsinglleft fo
guilsinglright fc
-handleft lh
-handright rh
hbar -h
hungarumlaut a"
hyphen -
@@ -289,7 +287,6 @@ similarequal ~=
six 6
slash /
slash sl
-square sq
sterling Po
therefore 3d
therefore tf
@@ -307,6 +304,8 @@ ucircumflex ^u
udieresis :u
ugrave `u
underscore _
+uni25A1 sq
+uni261C lh
union cu
universal fa
weierstrass wp
diff --git a/font/devps/symbolmap b/font/devps/symbolmap
index 6988c72b..03db391b 100644
--- a/font/devps/symbolmap
+++ b/font/devps/symbolmap
@@ -96,6 +96,7 @@ Ugrave `U
Yacute 'Y
Ydieresis :Y
Zcaron vZ
+a14 rh
aacute 'a
acircumflex ^a
acute aa
@@ -131,7 +132,6 @@ backslash \
backslash rs
bar ba
bar |
-bell bs
braceleft lC
braceleft {
braceright rC
@@ -202,8 +202,6 @@ guillemotleft Fo
guillemotright Fc
guilsinglleft fo
guilsinglright fc
-handleft lh
-handright rh
hbar -h
hungarumlaut a"
hyphen -
@@ -292,7 +290,6 @@ similarequal ~=
six 6
slash /
slash sl
-square sq
sterling Po
therefore 3d
therefore tf
@@ -310,6 +307,8 @@ ucircumflex ^u
udieresis :u
ugrave `u
underscore _
+uni25A1 sq
+uni261C lh
union cu
universal fa
weierstrass wp
diff --git a/font/devutf8/NOTES b/font/devutf8/NOTES
index 28faefee..608eddc5 100644
--- a/font/devutf8/NOTES
+++ b/font/devutf8/NOTES
@@ -40,9 +40,6 @@ We map it to 0x03A9.
"devps" maps *D to Delta, which is equivalent to either 0x2206 or 0x0394.
We map it to 0x0394.
-"devps" maps CR to carriagereturn, which is equivalent to 0x21B5. We map
-it to 0x240D instead.
-
Using unnamed characters
------------------------
diff --git a/font/devutf8/R.proto b/font/devutf8/R.proto
index 6acfaf0e..a5ea09ee 100644
--- a/font/devutf8/R.proto
+++ b/font/devutf8/R.proto
@@ -324,6 +324,7 @@ ua 24 0 0x2191
da 24 0 0x2193
<> 24 0 0x2194
va 24 0 0x2195
+CR 24 0 0x21B5
lA 24 0 0x21D0
uA 24 0 0x21D1
rA 24 0 0x21D2
@@ -406,17 +407,17 @@ bracerightmid "
rb 24 0 0x23AD
bracerightbt "
an 24 0 0x23AF
-CR 24 0 0x240D
br 24 0 0x2502
sq 24 0 0x25A1
lz 24 0 0x25CA
-ci 24 0 0x25EF
+ci 24 0 0x25CB
lh 24 0 0x261C
rh 24 0 0x261E
SP 24 0 0x2660
CL 24 0 0x2663
HE 24 0 0x2665
DI 24 0 0x2666
+OK 24 0 0x2713
ff 24 0 0xFB00
fi 24 0 0xFB01
fl 24 0 0xFB02