bug-enscript
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug-enscript] [PATCH 4/8] Add support for baltic locale as well as for


From: Werner Fink
Subject: [bug-enscript] [PATCH 4/8] Add support for baltic locale as well as for Euro
Date: Tue, 23 Jan 2018 15:26:46 +0100

add missing baltic support which is latin7 also
known as ISO-8859-13 as well as latin9 aka ISO-8859-15
to support baltic languages as well as the Euro symbol.
This requires to provide a ligature for printing the Euro
symbol.

Signed-off-by: Werner Fink <address@hidden>
---
 885913.txt                | 291 ++++++++++++++++++++++++++++++++++++++++++++++
 885915.txt                | 291 ++++++++++++++++++++++++++++++++++++++++++++++
 afm/cob.afm               |   6 +-
 afm/cobo.afm              |   6 +-
 afm/com.afm               |   6 +-
 afm/coo.afm               |   6 +-
 afm/hv.afm                |   6 +-
 afm/hvb.afm               |   6 +-
 afm/hvbo.afm              |   6 +-
 afm/hvo.afm               |   6 +-
 afm/tib.afm               |   6 +-
 afm/tibi.afm              |   6 +-
 afm/tii.afm               |   6 +-
 afm/tir.afm               |   6 +-
 afmlib/Makefile-encodings |   8 +-
 afmlib/Makefile.am        |   2 +-
 afmlib/afm.c              |   8 ++
 afmlib/afm.h              |   2 +
 afmlib/afmint.h           |   2 +
 afmlib/make-encoding.pl   |   2 +-
 docs/enscript.man         |   6 +
 lib/Makefile-encodings    |   8 +-
 lib/Makefile.am           |   2 +-
 lib/make-encoding.pl      |   2 +-
 src/gsint.h               |   3 +
 src/main.c                |  20 ++--
 src/util.c                |  18 +++
 27 files changed, 698 insertions(+), 39 deletions(-)
 create mode 100644 885913.txt
 create mode 100644 885915.txt

diff --git 885913.txt 885913.txt
new file mode 100644
index 0000000..5714c86
--- /dev/null
+++ 885913.txt
@@ -0,0 +1,291 @@
+               ISO-8859-13 (ISO Latin7) character set
+
+octal  hex     PostScript      HTML entity     character
+----------------------------------------------------------------------
+000    0x00    non-printable
+001    0x01    non-printable
+002    0x02    non-printable
+003    0x03    non-printable
+004    0x04    non-printable
+005    0x05    non-printable
+006    0x06    non-printable
+007    0x07    non-printable
+
+010    0x08    non-printable
+011    0x09    non-printable
+012    0x0a    non-printable
+013    0x0b    non-printable
+014    0x0c    non-printable
+015    0x0d    non-printable
+016    0x0e    non-printable
+017    0x0f    non-printable
+
+020    0x10    non-printable
+021    0x11    non-printable
+022    0x12    non-printable
+023    0x13    non-printable
+024    0x14    non-printable
+025    0x15    non-printable
+026    0x16    non-printable
+027    0x17    non-printable
+
+030    0x18    non-printable
+031    0x19    non-printable
+032    0x1a    non-printable
+033    0x1b    non-printable
+034    0x1c    non-printable
+035    0x1d    non-printable
+036    0x1e    non-printable
+037    0x1f    non-printable
+
+040    0x20    /space
+041    0x21    /exclam
+042    0x22    /quotedbl
+043    0x23    /numbersign
+044    0x24    /dollar
+045    0x25    /percent
+046    0x26    /ampersand
+047    0x27    /quoteright
+
+050    0x28    /parenleft
+051    0x29    /parenright
+052    0x2a    /asterisk
+053    0x2b    /plus
+054    0x2c    /comma
+055    0x2d    /minus
+056    0x2e    /period
+057    0x2f    /slash
+
+060    0x30    /zero
+061    0x31    /one
+062    0x32    /two
+063    0x33    /three
+064    0x34    /four
+065    0x35    /five
+066    0x36    /six
+067    0x37    /seven
+
+070    0x38    /eight
+071    0x39    /nine
+072    0x3a    /colon
+073    0x3b    /semicolon
+074    0x3c    /less
+075    0x3d    /equal
+076    0x3e    /greater
+077    0x3f    /question
+
+0100   0x40    /at
+0101   0x41    /A
+0102   0x42    /B
+0103   0x43    /C
+0104   0x44    /D
+0105   0x45    /E
+0106   0x46    /F
+0107   0x47    /G
+
+0110   0x48    /H
+0111   0x49    /I
+0112   0x4a    /J
+0113   0x4b    /K
+0114   0x4c    /L
+0115   0x4d    /M
+0116   0x4e    /N
+0117   0x4f    /O
+
+0120   0x50    /P
+0121   0x51    /Q
+0122   0x52    /R
+0123   0x53    /S
+0124   0x54    /T
+0125   0x55    /U
+0126   0x56    /V
+0127   0x57    /W
+
+0130   0x58    /X
+0131   0x59    /Y
+0132   0x5a    /Z
+0133   0x5b    /bracketleft
+0134   0x5c    /backslash
+0135   0x5d    /bracketright
+0136   0x5e    /asciicircum
+0137   0x5f    /underscore
+
+0140   0x60    /quoteleft
+0141   0x61    /a
+0142   0x62    /b
+0143   0x63    /c
+0144   0x64    /d
+0145   0x65    /e
+0146   0x66    /f
+0147   0x67    /g
+
+0150   0x68    /h
+0151   0x69    /i
+0152   0x6a    /j
+0153   0x6b    /k
+0154   0x6c    /l
+0155   0x6d    /m
+0156   0x6e    /n
+0157   0x6f    /o
+
+0160   0x70    /p
+0161   0x71    /q
+0162   0x72    /r
+0163   0x73    /s
+0164   0x74    /t
+0165   0x75    /u
+0166   0x76    /v
+0167   0x77    /w
+
+0170   0x78    /x
+0171   0x79    /y
+0172   0x7a    /z
+0173   0x7b    /braceleft
+0174   0x7c    /bar
+0175   0x7d    /braceright
+0176   0x7e    /asciitilde
+0177   0x7f    non-printable
+
+0200   0x80    non-printable
+0201   0x81    non-printable
+0202   0x82    non-printable
+0203   0x83    non-printable
+0204   0x84    non-printable
+0205   0x85    non-printable
+0206   0x86    non-printable
+0207   0x87    non-printable
+
+0210   0x88    non-printable
+0211   0x89    non-printable
+0212   0x8a    non-printable
+0213   0x8b    non-printable
+0214   0x8c    non-printable
+0215   0x8d    non-printable
+0216   0x8e    non-printable
+0217   0x8f    non-printable
+
+0220   0x90    non-printable
+0221   0x91    non-printable
+0222   0x92    non-printable
+0223   0x93    non-printable
+0224   0x94    non-printable
+0225   0x95    non-printable
+0226   0x96    non-printable
+0227   0x97    non-printable
+
+0230   0x98    non-printable
+0231   0x99    non-printable
+0232   0x9a    non-printable
+0233   0x9b    non-printable
+0234   0x9c    non-printable
+0235   0x9d    non-printable
+0236   0x9e    non-printable
+0237   0x9f    non-printable
+
+0240   0xa0    /space
+0241   0xa1    /quotedblright
+0242   0xa2    /cent
+0243   0xa3    /sterling
+0244   0xa4    /currency
+0245   0xa5    /quotedblbase
+0246   0xa6    /brokenbar
+0247   0xa7    /section
+
+0250   0xa8    /Oslash
+0251   0xa9    /copyright
+0252   0xaa    /Rcedilla
+0253   0xab    /guillemotleft
+0254   0xac    /logicalnot
+0255   0xad    /hyphen
+0256   0xae    /registered
+0257   0xaf    /AE
+
+0260   0xb0    /degree
+0261   0xb1    /plusminus
+0262   0xb2    /twosuperior
+0263   0xb3    /threesuperior
+0264   0xb4    /quotedblleft
+0265   0xb5    /mu
+0266   0xb6    /paragraph
+0267   0xb7    /bullet
+
+0270   0xb8    /oslash
+0271   0xb9    /onesuperior
+0272   0xba    /rcedilla
+0273   0xbb    /guillemotright
+0274   0xbc    /onequarter
+0275   0xbd    /onehalf
+0276   0xbe    /threequarters
+0277   0xbf    /ae
+
+0300   0xc0    /Aogonek
+0301   0xc1    /Iogonek
+0302   0xc2    /Amacron
+0303   0xc3    /Cacute
+0304   0xc4    /Adieresis
+0305   0xc5    /Aring
+0306   0xc6    /Eogonek
+0307   0xc7    /Emacron
+
+0310   0xc8    /Ccaron
+0311   0xc9    /Eacute
+0312   0xca    /Zacute
+0313   0xcb    /Edotaccent
+0314   0xcc    /Gcedilla
+0315   0xcd    /Kcedilla
+0316   0xce    /Imacron
+0317   0xcf    /Lcedilla
+
+0320   0xd0    /Scaron
+0321   0xd1    /Nacute
+0322   0xd2    /Ncedilla
+0323   0xd3    /Oacute
+0324   0xd4    /Omacron
+0325   0xd5    /Otilde
+0326   0xd6    /Odieresis
+0327   0xd7    /multiply
+
+0330   0xd8    /Uogonek
+0331   0xd9    /Lslash
+0332   0xda    /Sacute
+0333   0xdb    /Umacron
+0334   0xdc    /Udieresis
+0335   0xdd    /Zdotaccent
+0336   0xde    /Zcaron
+0337   0xdf    /germandbls
+
+0340   0xe0    /aogonek
+0341   0xe1    /iogonek
+0342   0xe2    /amacron
+0343   0xe3    /cacute
+0344   0xe4    /adieresis
+0345   0xe5    /aring
+0346   0xe6    /eogonek
+0347   0xe7    /emacron
+
+0350   0xe8    /ccaron
+0351   0xe9    /eacute
+0352   0xea    /zacute
+0353   0xeb    /edotaccent
+0354   0xec    /gcedilla
+0355   0xed    /kcedilla
+0356   0xee    /imacron
+0357   0xef    /lcedilla
+
+0360   0xf0    /scaron
+0361   0xf1    /nacute
+0362   0xf2    /ncedilla
+0363   0xf3    /oacute
+0364   0xf4    /omacron
+0365   0xf5    /otilde
+0366   0xf6    /odieresis
+0367   0xf7    /divide
+
+0370   0xf8    /uogonek
+0371   0xf9    /lslash
+0372   0xfa    /sacute
+0373   0xfb    /umacron
+0374   0xfc    /udieresis
+0375   0xfd    /zdotaccent
+0376   0xfe    /zcaron
+0377   0xff    /quoteright
diff --git 885915.txt 885915.txt
new file mode 100644
index 0000000..cce55f8
--- /dev/null
+++ 885915.txt
@@ -0,0 +1,291 @@
+               ISO-8859-15 (ISO Latin9) character set
+
+octal  hex     PostScript      HTML entity     character
+----------------------------------------------------------------------
+000    0x00    non-printable
+001    0x01    non-printable
+002    0x02    non-printable
+003    0x03    non-printable
+004    0x04    non-printable
+005    0x05    non-printable
+006    0x06    non-printable
+007    0x07    non-printable
+
+010    0x08    non-printable
+011    0x09    non-printable
+012    0x0a    non-printable
+013    0x0b    non-printable
+014    0x0c    non-printable
+015    0x0d    non-printable
+016    0x0e    non-printable
+017    0x0f    non-printable
+
+020    0x10    non-printable
+021    0x11    non-printable
+022    0x12    non-printable
+023    0x13    non-printable
+024    0x14    non-printable
+025    0x15    non-printable
+026    0x16    non-printable
+027    0x17    non-printable
+
+030    0x18    non-printable
+031    0x19    non-printable
+032    0x1a    non-printable
+033    0x1b    non-printable
+034    0x1c    non-printable
+035    0x1d    non-printable
+036    0x1e    non-printable
+037    0x1f    non-printable
+
+040    0x20    /space
+041    0x21    /exclam
+042    0x22    /quotedbl
+043    0x23    /numbersign
+044    0x24    /dollar
+045    0x25    /percent
+046    0x26    /ampersand
+047    0x27    /quoteright
+
+050    0x28    /parenleft
+051    0x29    /parenright
+052    0x2a    /asterisk
+053    0x2b    /plus
+054    0x2c    /comma
+055    0x2d    /minus
+056    0x2e    /period
+057    0x2f    /slash
+
+060    0x30    /zero
+061    0x31    /one
+062    0x32    /two
+063    0x33    /three
+064    0x34    /four
+065    0x35    /five
+066    0x36    /six
+067    0x37    /seven
+
+070    0x38    /eight
+071    0x39    /nine
+072    0x3a    /colon
+073    0x3b    /semicolon
+074    0x3c    /less
+075    0x3d    /equal
+076    0x3e    /greater
+077    0x3f    /question
+
+0100   0x40    /at
+0101   0x41    /A
+0102   0x42    /B
+0103   0x43    /C
+0104   0x44    /D
+0105   0x45    /E
+0106   0x46    /F
+0107   0x47    /G
+
+0110   0x48    /H
+0111   0x49    /I
+0112   0x4a    /J
+0113   0x4b    /K
+0114   0x4c    /L
+0115   0x4d    /M
+0116   0x4e    /N
+0117   0x4f    /O
+
+0120   0x50    /P
+0121   0x51    /Q
+0122   0x52    /R
+0123   0x53    /S
+0124   0x54    /T
+0125   0x55    /U
+0126   0x56    /V
+0127   0x57    /W
+
+0130   0x58    /X
+0131   0x59    /Y
+0132   0x5a    /Z
+0133   0x5b    /bracketleft
+0134   0x5c    /backslash
+0135   0x5d    /bracketright
+0136   0x5e    /asciicircum
+0137   0x5f    /underscore
+
+0140   0x60    /quoteleft
+0141   0x61    /a
+0142   0x62    /b
+0143   0x63    /c
+0144   0x64    /d
+0145   0x65    /e
+0146   0x66    /f
+0147   0x67    /g
+
+0150   0x68    /h
+0151   0x69    /i
+0152   0x6a    /j
+0153   0x6b    /k
+0154   0x6c    /l
+0155   0x6d    /m
+0156   0x6e    /n
+0157   0x6f    /o
+
+0160   0x70    /p
+0161   0x71    /q
+0162   0x72    /r
+0163   0x73    /s
+0164   0x74    /t
+0165   0x75    /u
+0166   0x76    /v
+0167   0x77    /w
+
+0170   0x78    /x
+0171   0x79    /y
+0172   0x7a    /z
+0173   0x7b    /braceleft
+0174   0x7c    /bar
+0175   0x7d    /braceright
+0176   0x7e    /asciitilde
+0177   0x7f    non-printable
+
+0200   0x80    non-printable
+0201   0x81    non-printable
+0202   0x82    non-printable
+0203   0x83    non-printable
+0204   0x84    non-printable
+0205   0x85    non-printable
+0206   0x86    non-printable
+0207   0x87    non-printable
+
+0210   0x88    non-printable
+0211   0x89    non-printable
+0212   0x8a    non-printable
+0213   0x8b    non-printable
+0214   0x8c    non-printable
+0215   0x8d    non-printable
+0216   0x8e    non-printable
+0217   0x8f    non-printable
+
+0220   0x90    non-printable
+0221   0x91    non-printable
+0222   0x92    non-printable
+0223   0x93    non-printable
+0224   0x94    non-printable
+0225   0x95    non-printable
+0226   0x96    non-printable
+0227   0x97    non-printable
+
+0230   0x98    non-printable
+0231   0x99    non-printable
+0232   0x9a    non-printable
+0233   0x9b    non-printable
+0234   0x9c    non-printable
+0235   0x9d    non-printable
+0236   0x9e    non-printable
+0237   0x9f    non-printable
+
+0240   0xa0    /space
+0241   0xa1    /exclamdown
+0242   0xa2    /cent
+0243   0xa3    /sterling
+0244   0xa4    /Euro
+0245   0xa5    /yen
+0246   0xa6    /Scaron
+0247   0xa7    /section
+
+0250   0xa8    /scaron
+0251   0xa9    /copyright
+0252   0xaa    /ordfeminine
+0253   0xab    /guillemotleft
+0254   0xac    /logicalnot
+0255   0xad    /hyphen
+0256   0xae    /registered
+0257   0xaf    /macron
+
+0260   0xb0    /degree
+0261   0xb1    /plusminus
+0262   0xb2    /twosuperior
+0263   0xb3    /threesuperior
+0264   0xb4    /Zcaron
+0265   0xb5    /mu
+0266   0xb6    /paragraph
+0267   0xb7    /bullet
+
+0270   0xb8    /zcaron
+0271   0xb9    /onesuperior
+0272   0xba    /ordmasculine
+0273   0xbb    /guillemotright
+0274   0xbc    /OE
+0275   0xbd    /oe
+0276   0xbe    /Ydieresis
+0277   0xbf    /questiondown
+
+0300   0xc0    /Agrave
+0301   0xc1    /Aacute
+0302   0xc2    /Acircumflex
+0303   0xc3    /Atilde
+0304   0xc4    /Adieresis
+0305   0xc5    /Aring
+0306   0xc6    /AE
+0307   0xc7    /Ccedilla
+
+0310   0xc8    /Egrave
+0311   0xc9    /Eacute
+0312   0xca    /Ecircumflex
+0313   0xcb    /Edieresis
+0314   0xcc    /Igrave
+0315   0xcd    /Iacute
+0316   0xce    /Icircumflex
+0317   0xcf    /Idieresis
+
+0320   0xd0    /Eth
+0321   0xd1    /Ntilde
+0322   0xd2    /Ograve
+0323   0xd3    /Oacute
+0324   0xd4    /Ocircumflex
+0325   0xd5    /Otilde
+0326   0xd6    /Odieresis
+0327   0xd7    /multiply
+
+0330   0xd8    /Oslash
+0331   0xd9    /Ugrave
+0332   0xda    /Uacute
+0333   0xdb    /Ucircumflex
+0334   0xdc    /Udieresis
+0335   0xdd    /Yacute
+0336   0xde    /Thorn
+0337   0xdf    /germandbls
+
+0340   0xe0    /agrave
+0341   0xe1    /aacute
+0342   0xe2    /acircumflex
+0343   0xe3    /atilde
+0344   0xe4    /adieresis
+0345   0xe5    /aring
+0346   0xe6    /ae
+0347   0xe7    /ccedilla
+
+0350   0xe8    /egrave
+0351   0xe9    /eacute
+0352   0xea    /ecircumflex
+0353   0xeb    /edieresis
+0354   0xec    /igrave
+0355   0xed    /iacute
+0356   0xee    /icircumflex
+0357   0xef    /idieresis
+
+0360   0xf0    /eth
+0361   0xf1    /ntilde
+0362   0xf2    /ograve
+0363   0xf3    /oacute
+0364   0xf4    /ocircumflex
+0365   0xf5    /otilde
+0366   0xf6    /odieresis
+0367   0xf7    /divide
+
+0370   0xf8    /oslash
+0371   0xf9    /ugrave
+0372   0xfa    /uacute
+0373   0xfb    /ucircumflex
+0374   0xfc    /udieresis
+0375   0xfd    /yacute
+0376   0xfe    /thorn
+0377   0xff    /ydieresis
diff --git afm/cob.afm afm/cob.afm
index 4ade4fa..cf16f6f 100644
--- afm/cob.afm
+++ afm/cob.afm
@@ -19,7 +19,7 @@ CapHeight 562
 XHeight 439
 Ascender 626
 Descender -142
-StartCharMetrics 260
+StartCharMetrics 261
 C 32 ; WX 600 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 600 ; N exclam ; B 202 -15 398 572 ;
 C 34 ; WX 600 ; N quotedbl ; B 135 277 465 562 ;
@@ -238,6 +238,7 @@ C -1 ; WX 600 ; N Igrave ; B 77 0 523 784 ;
 C -1 ; WX 600 ; N brokenbar ; B 255 -175 345 675 ;
 C -1 ; WX 600 ; N Oacute ; B 22 -18 578 784 ;
 C -1 ; WX 600 ; N otilde ; B 30 -15 570 636 ;
+C -1 ; WX 600 ; N Euro ; B -2 0 602 562 ;
 C -1 ; WX 600 ; N Yacute ; B 12 0 589 784 ;
 C -1 ; WX 600 ; N lira ; B 72 -28 558 611 ;
 C -1 ; WX 600 ; N Icircumflex ; B 77 0 523 780 ;
@@ -281,7 +282,7 @@ C -1 ; WX 600 ; N aring ; B 35 -15 570 678 ;
 C -1 ; WX 600 ; N yacute ; B -4 -142 601 661 ;
 C -1 ; WX 600 ; N icircumflex ; B 63 0 523 657 ;
 EndCharMetrics
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 30 123 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex -30 123 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis -20 123 ;
@@ -332,6 +333,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 0 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 0 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 0 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 0 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 0 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 0 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex -20 0 ;
diff --git afm/cobo.afm afm/cobo.afm
index e0b3940..04d919a 100644
--- afm/cobo.afm
+++ afm/cobo.afm
@@ -19,7 +19,7 @@ CapHeight 562
 XHeight 439
 Ascender 626
 Descender -142
-StartCharMetrics 260
+StartCharMetrics 261
 C 32 ; WX 600 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 600 ; N exclam ; B 216 -15 495 572 ;
 C 34 ; WX 600 ; N quotedbl ; B 212 277 584 562 ;
@@ -238,6 +238,7 @@ C -1 ; WX 600 ; N Igrave ; B 77 0 642 784 ;
 C -1 ; WX 600 ; N brokenbar ; B 218 -175 488 675 ;
 C -1 ; WX 600 ; N Oacute ; B 74 -18 645 784 ;
 C -1 ; WX 600 ; N otilde ; B 71 -15 642 636 ;
+C -1 ; WX 600 ; N Euro ; B -2 0 721 562 ;
 C -1 ; WX 600 ; N Yacute ; B 109 0 708 784 ;
 C -1 ; WX 600 ; N lira ; B 107 -28 650 611 ;
 C -1 ; WX 600 ; N Icircumflex ; B 77 0 642 780 ;
@@ -281,7 +282,7 @@ C -1 ; WX 600 ; N aring ; B 62 -15 592 678 ;
 C -1 ; WX 600 ; N yacute ; B -20 -142 694 661 ;
 C -1 ; WX 600 ; N icircumflex ; B 77 0 566 657 ;
 EndCharMetrics
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 56 123 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex -4 123 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis 6 123 ;
@@ -332,6 +333,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 0 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 0 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 0 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 0 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 0 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 0 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex -20 0 ;
diff --git afm/com.afm afm/com.afm
index e65ecdf..12196d4 100644
--- afm/com.afm
+++ afm/com.afm
@@ -19,7 +19,7 @@ CapHeight 562
 XHeight 426
 Ascender 629
 Descender -157
-StartCharMetrics 260
+StartCharMetrics 261
 C 32 ; WX 600 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 600 ; N exclam ; B 236 -15 364 572 ;
 C 34 ; WX 600 ; N quotedbl ; B 187 328 413 562 ;
@@ -238,6 +238,7 @@ C -1 ; WX 600 ; N Igrave ; B 96 0 504 793 ;
 C -1 ; WX 600 ; N brokenbar ; B 275 -175 326 675 ;
 C -1 ; WX 600 ; N Oacute ; B 43 -18 557 793 ;
 C -1 ; WX 600 ; N otilde ; B 62 -15 538 606 ;
+C -1 ; WX 600 ; N Euro ; B 4 0 596 562 ;
 C -1 ; WX 600 ; N Yacute ; B 24 0 576 793 ;
 C -1 ; WX 600 ; N lira ; B 73 -21 521 611 ;
 C -1 ; WX 600 ; N Icircumflex ; B 96 0 504 775 ;
@@ -281,7 +282,7 @@ C -1 ; WX 600 ; N aring ; B 53 -15 559 627 ;
 C -1 ; WX 600 ; N yacute ; B 7 -157 592 672 ;
 C -1 ; WX 600 ; N icircumflex ; B 94 0 505 654 ;
 EndCharMetrics
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 20 121 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex -30 121 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis -30 136 ;
@@ -332,6 +333,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 0 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 0 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 0 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 0 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 0 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute -10 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex -10 0 ;
diff --git afm/coo.afm afm/coo.afm
index 79bb0c3..34bb3f2 100644
--- afm/coo.afm
+++ afm/coo.afm
@@ -19,7 +19,7 @@ CapHeight 562
 XHeight 426
 Ascender 629
 Descender -157
-StartCharMetrics 260
+StartCharMetrics 261
 C 32 ; WX 600 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 600 ; N exclam ; B 243 -15 464 572 ;
 C 34 ; WX 600 ; N quotedbl ; B 273 328 532 562 ;
@@ -238,6 +238,7 @@ C -1 ; WX 600 ; N Igrave ; B 96 0 623 793 ;
 C -1 ; WX 600 ; N brokenbar ; B 238 -175 469 675 ;
 C -1 ; WX 600 ; N Oacute ; B 94 -18 638 793 ;
 C -1 ; WX 600 ; N otilde ; B 102 -15 629 606 ;
+C -1 ; WX 600 ; N Euro ; B 4 0 715 562 ;
 C -1 ; WX 600 ; N Yacute ; B 133 0 695 793 ;
 C -1 ; WX 600 ; N lira ; B 118 -21 621 611 ;
 C -1 ; WX 600 ; N Icircumflex ; B 96 0 623 775 ;
@@ -281,7 +282,7 @@ C -1 ; WX 600 ; N aring ; B 76 -15 569 627 ;
 C -1 ; WX 600 ; N yacute ; B -4 -157 683 672 ;
 C -1 ; WX 600 ; N icircumflex ; B 95 0 551 654 ;
 EndCharMetrics
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 46 121 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex -4 121 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis -1 136 ;
@@ -332,6 +333,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 0 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 0 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 0 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 0 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 0 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute -10 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex -10 0 ;
diff --git afm/hv.afm afm/hv.afm
index 80d8cff..477f3a3 100644
--- afm/hv.afm
+++ afm/hv.afm
@@ -19,7 +19,7 @@ CapHeight 718
 XHeight 523
 Ascender 718
 Descender -207
-StartCharMetrics 228
+StartCharMetrics 229
 C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 278 ; N exclam ; B 90 0 187 718 ;
 C 34 ; WX 355 ; N quotedbl ; B 70 463 285 718 ;
@@ -181,6 +181,7 @@ C -1 ; WX 556 ; N egrave ; B 40 -15 516 734 ;
 C -1 ; WX 333 ; N twosuperior ; B 4 281 323 703 ;
 C -1 ; WX 556 ; N eacute ; B 40 -15 516 734 ;
 C -1 ; WX 556 ; N otilde ; B 35 -14 521 722 ;
+C -1 ; WX 833 ; N Euro ; B 73 0 761 718 ;
 C -1 ; WX 667 ; N Aacute ; B 14 0 654 929 ;
 C -1 ; WX 556 ; N ocircumflex ; B 35 -14 521 734 ;
 C -1 ; WX 500 ; N yacute ; B 11 -214 489 734 ;
@@ -549,7 +550,7 @@ KPX z o -15
 KPX z e -15
 EndKernPairs
 EndKernData
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 167 195 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex 167 195 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis 167 195 ;
@@ -600,6 +601,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 112 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 112 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 112 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 112 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 84 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 112 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex 112 0 ;
diff --git afm/hvb.afm afm/hvb.afm
index f428198..1cd8d29 100644
--- afm/hvb.afm
+++ afm/hvb.afm
@@ -19,7 +19,7 @@ CapHeight 718
 XHeight 532
 Ascender 718
 Descender -207
-StartCharMetrics 228
+StartCharMetrics 229
 C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 333 ; N exclam ; B 90 0 244 718 ;
 C 34 ; WX 474 ; N quotedbl ; B 98 447 376 718 ;
@@ -181,6 +181,7 @@ C -1 ; WX 556 ; N egrave ; B 23 -14 528 750 ;
 C -1 ; WX 333 ; N twosuperior ; B 9 283 324 710 ;
 C -1 ; WX 556 ; N eacute ; B 23 -14 528 750 ;
 C -1 ; WX 611 ; N otilde ; B 34 -14 578 737 ;
+C -1 ; WX 833 ; N Euro ; B 69 0 765 718 ;
 C -1 ; WX 722 ; N Aacute ; B 20 0 702 936 ;
 C -1 ; WX 611 ; N ocircumflex ; B 34 -14 578 750 ;
 C -1 ; WX 556 ; N yacute ; B 10 -214 539 750 ;
@@ -507,7 +508,7 @@ KPX y a -30
 KPX z e 10
 EndKernPairs
 EndKernData
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 195 186 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex 195 186 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis 195 186 ;
@@ -558,6 +559,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 139 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 139 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 139 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 139 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 112 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 139 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex 139 0 ;
diff --git afm/hvbo.afm afm/hvbo.afm
index 0df5aaf..35f472b 100644
--- afm/hvbo.afm
+++ afm/hvbo.afm
@@ -19,7 +19,7 @@ CapHeight 718
 XHeight 532
 Ascender 718
 Descender -207
-StartCharMetrics 228
+StartCharMetrics 229
 C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 333 ; N exclam ; B 94 0 397 718 ;
 C 34 ; WX 474 ; N quotedbl ; B 193 447 529 718 ;
@@ -181,6 +181,7 @@ C -1 ; WX 556 ; N egrave ; B 70 -14 593 750 ;
 C -1 ; WX 333 ; N twosuperior ; B 69 283 449 710 ;
 C -1 ; WX 556 ; N eacute ; B 70 -14 627 750 ;
 C -1 ; WX 611 ; N otilde ; B 82 -14 646 737 ;
+C -1 ; WX 833 ; N Euro ; B 69 0 918 718 ;
 C -1 ; WX 722 ; N Aacute ; B 20 0 750 936 ;
 C -1 ; WX 611 ; N ocircumflex ; B 82 -14 643 750 ;
 C -1 ; WX 556 ; N yacute ; B 42 -214 652 750 ;
@@ -507,7 +508,7 @@ KPX y a -30
 KPX z e 10
 EndKernPairs
 EndKernData
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 235 186 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex 235 186 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis 235 186 ;
@@ -558,6 +559,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 139 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 139 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 139 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 139 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 112 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 139 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex 139 0 ;
diff --git afm/hvo.afm afm/hvo.afm
index 4f0476f..6675240 100644
--- afm/hvo.afm
+++ afm/hvo.afm
@@ -19,7 +19,7 @@ CapHeight 718
 XHeight 523
 Ascender 718
 Descender -207
-StartCharMetrics 228
+StartCharMetrics 229
 C 32 ; WX 278 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 278 ; N exclam ; B 90 0 340 718 ;
 C 34 ; WX 355 ; N quotedbl ; B 168 463 438 718 ;
@@ -181,6 +181,7 @@ C -1 ; WX 556 ; N egrave ; B 84 -15 578 734 ;
 C -1 ; WX 333 ; N twosuperior ; B 64 281 449 703 ;
 C -1 ; WX 556 ; N eacute ; B 84 -15 587 734 ;
 C -1 ; WX 556 ; N otilde ; B 83 -14 602 722 ;
+C -1 ; WX 833 ; N Euro ; B 73 0 914 718 ;
 C -1 ; WX 667 ; N Aacute ; B 14 0 683 929 ;
 C -1 ; WX 556 ; N ocircumflex ; B 83 -14 585 734 ;
 C -1 ; WX 500 ; N yacute ; B 15 -214 600 734 ;
@@ -549,7 +550,7 @@ KPX z o -15
 KPX z e -15
 EndKernPairs
 EndKernData
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 208 195 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex 208 195 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis 208 195 ;
@@ -600,6 +601,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 112 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 112 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 112 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 112 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 84 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 112 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex 112 0 ;
diff --git afm/tib.afm afm/tib.afm
index 6ee7ef6..b6802be 100644
--- afm/tib.afm
+++ afm/tib.afm
@@ -19,7 +19,7 @@ CapHeight 676
 XHeight 461
 Ascender 676
 Descender -205
-StartCharMetrics 228
+StartCharMetrics 229
 C 32 ; WX 250 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 333 ; N exclam ; B 81 -13 251 691 ;
 C 34 ; WX 555 ; N quotedbl ; B 83 404 472 691 ;
@@ -181,6 +181,7 @@ C -1 ; WX 444 ; N egrave ; B 25 -14 426 713 ;
 C -1 ; WX 300 ; N twosuperior ; B 0 275 300 688 ;
 C -1 ; WX 444 ; N eacute ; B 25 -14 426 713 ;
 C -1 ; WX 500 ; N otilde ; B 25 -14 476 674 ;
+C -1 ; WX 944 ; N Euro ; B 14 0 921 676 ;
 C -1 ; WX 722 ; N Aacute ; B 9 0 689 923 ;
 C -1 ; WX 500 ; N ocircumflex ; B 25 -14 476 704 ;
 C -1 ; WX 500 ; N yacute ; B 16 -205 480 713 ;
@@ -585,7 +586,7 @@ KPX z o 0
 KPX z e 0
 EndKernPairs
 EndKernData
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 188 210 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex 188 210 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis 188 210 ;
@@ -636,6 +637,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 84 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 84 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 84 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 84 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 28 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 105 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex 105 0 ;
diff --git afm/tibi.afm afm/tibi.afm
index d329ebb..91b205e 100644
--- afm/tibi.afm
+++ afm/tibi.afm
@@ -19,7 +19,7 @@ CapHeight 669
 XHeight 462
 Ascender 699
 Descender -205
-StartCharMetrics 228
+StartCharMetrics 229
 C 32 ; WX 250 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 389 ; N exclam ; B 67 -13 370 684 ;
 C 34 ; WX 555 ; N quotedbl ; B 136 398 536 685 ;
@@ -181,6 +181,7 @@ C -1 ; WX 444 ; N egrave ; B 5 -13 398 697 ;
 C -1 ; WX 300 ; N twosuperior ; B 2 274 313 683 ;
 C -1 ; WX 444 ; N eacute ; B 5 -13 435 697 ;
 C -1 ; WX 500 ; N otilde ; B -3 -13 491 655 ;
+C -1 ; WX 889 ; N Euro ; B -29 -12 917 669 ;
 C -1 ; WX 667 ; N Aacute ; B -67 0 593 904 ;
 C -1 ; WX 500 ; N ocircumflex ; B -3 -13 451 690 ;
 C -1 ; WX 444 ; N yacute ; B -94 -205 435 697 ;
@@ -585,7 +586,7 @@ KPX z o 0
 KPX z e 0
 EndKernPairs
 EndKernData
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 172 207 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex 187 207 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis 167 207 ;
@@ -636,6 +637,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 84 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 69 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 74 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 84 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 28 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 112 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex 112 0 ;
diff --git afm/tii.afm afm/tii.afm
index 1db2cff..6b8de1d 100644
--- afm/tii.afm
+++ afm/tii.afm
@@ -19,7 +19,7 @@ CapHeight 653
 XHeight 441
 Ascender 683
 Descender -205
-StartCharMetrics 228
+StartCharMetrics 229
 C 32 ; WX 250 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 333 ; N exclam ; B 39 -11 302 667 ;
 C 34 ; WX 420 ; N quotedbl ; B 144 421 432 666 ;
@@ -181,6 +181,7 @@ C -1 ; WX 444 ; N egrave ; B 31 -11 412 664 ;
 C -1 ; WX 300 ; N twosuperior ; B 33 271 324 676 ;
 C -1 ; WX 444 ; N eacute ; B 31 -11 459 664 ;
 C -1 ; WX 500 ; N otilde ; B 27 -11 496 624 ;
+C -1 ; WX 833 ; N Euro ; B -18 0 873 653 ;
 C -1 ; WX 611 ; N Aacute ; B -51 0 564 876 ;
 C -1 ; WX 500 ; N ocircumflex ; B 27 -11 468 661 ;
 C -1 ; WX 444 ; N yacute ; B -24 -206 459 664 ;
@@ -585,7 +586,7 @@ KPX z o 0
 KPX z e 0
 EndKernPairs
 EndKernData
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 139 212 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex 144 212 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis 139 212 ;
@@ -636,6 +637,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 74 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 84 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 84 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 69 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 28 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 74 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex 74 0 ;
diff --git afm/tir.afm afm/tir.afm
index 58de46e..768a65f 100644
--- afm/tir.afm
+++ afm/tir.afm
@@ -19,7 +19,7 @@ CapHeight 662
 XHeight 450
 Ascender 683
 Descender -217
-StartCharMetrics 228
+StartCharMetrics 229
 C 32 ; WX 250 ; N space ; B 0 0 0 0 ;
 C 33 ; WX 333 ; N exclam ; B 130 -9 238 676 ;
 C 34 ; WX 408 ; N quotedbl ; B 77 431 331 676 ;
@@ -181,6 +181,7 @@ C -1 ; WX 444 ; N egrave ; B 25 -10 424 678 ;
 C -1 ; WX 300 ; N twosuperior ; B 1 270 296 676 ;
 C -1 ; WX 444 ; N eacute ; B 25 -10 424 678 ;
 C -1 ; WX 500 ; N otilde ; B 29 -10 470 638 ;
+C -1 ; WX 889 ; N Euro ; B 12 0 863 662 ;
 C -1 ; WX 722 ; N Aacute ; B 15 0 706 890 ;
 C -1 ; WX 500 ; N ocircumflex ; B 29 -10 470 674 ;
 C -1 ; WX 500 ; N yacute ; B 14 -218 475 678 ;
@@ -585,7 +586,7 @@ KPX z o 0
 KPX z e 0
 EndKernPairs
 EndKernData
-StartComposites 58
+StartComposites 59
 CC Aacute 2 ; PCC A 0 0 ; PCC acute 195 212 ;
 CC Acircumflex 2 ; PCC A 0 0 ; PCC circumflex 195 212 ;
 CC Adieresis 2 ; PCC A 0 0 ; PCC dieresis 195 212 ;
@@ -636,6 +637,7 @@ CC ocircumflex 2 ; PCC o 0 0 ; PCC circumflex 84 0 ;
 CC odieresis 2 ; PCC o 0 0 ; PCC dieresis 84 0 ;
 CC ograve 2 ; PCC o 0 0 ; PCC grave 84 0 ;
 CC otilde 2 ; PCC o 0 0 ; PCC tilde 84 0 ;
+CC Euro 2 ; PCC C 0 0 ; PCC equal 0 0 ;
 CC scaron 2 ; PCC s 0 0 ; PCC caron 28 0 ;
 CC uacute 2 ; PCC u 0 0 ; PCC acute 84 0 ;
 CC ucircumflex 2 ; PCC u 0 0 ; PCC circumflex 84 0 ;
diff --git afmlib/Makefile-encodings afmlib/Makefile-encodings
index f68c75b..0d8c8d2 100644
--- afmlib/Makefile-encodings
+++ afmlib/Makefile-encodings
@@ -22,7 +22,7 @@
 #
 
 ENCODINGS = e_88591.c e_88592.c e_88593.c e_88594.c e_88595.c \
-e_88597.c e_88599.c e_885910.c e_pc.c e_mac.c e_vms.c e_hp8.c e_koi8.c
+e_88597.c e_88599.c e_885910.c e_885913.c e_885915.c e_pc.c e_mac.c e_vms.c 
e_hp8.c e_koi8.c
 
 all: $(ENCODINGS)
 
@@ -53,6 +53,12 @@ e_88599.c: make-encoding.pl ../88599.txt
 e_885910.c: make-encoding.pl ../885910.txt
        ./make-encoding.pl ../885910.txt >e_885910.c
 
+e_885913.c: make-encoding.pl ../885913.txt
+       ./make-encoding.pl ../885913.txt >e_885913.c
+
+e_885915.c: make-encoding.pl ../885915.txt
+       ./make-encoding.pl ../885915.txt >e_885915.c
+
 e_pc.c: make-encoding.pl ../ibmpc.txt
        ./make-encoding.pl ../ibmpc.txt >e_pc.c
 
diff --git afmlib/Makefile.am afmlib/Makefile.am
index 33db4b0..ed64d2e 100644
--- afmlib/Makefile.am
+++ afmlib/Makefile.am
@@ -24,7 +24,7 @@
 noinst_LIBRARIES = libafm.a
 libafm_a_SOURCES = afm.c afmparse.c strhash.c e_88591.c e_88592.c      \
 e_88593.c e_88594.c e_88595.c e_88597.c e_88599.c e_885910.c e_pc.c    \
-e_mac.c e_vms.c e_hp8.c e_koi8.c deffont.c
+e_mac.c e_vms.c e_hp8.c e_koi8.c deffont.c e_885913.c e_885915.c
 
 noinst_HEADERS = afm.h afmint.h strhash.h
 
diff --git afmlib/afm.c afmlib/afm.c
index 3b82bca..f82dd94 100644
--- afmlib/afm.c
+++ afmlib/afm.c
@@ -647,6 +647,14 @@ afm_font_encoding (AFMFont font, AFMEncoding enc, unsigned 
int flags)
       apply_encoding (font, afm_885910_encoding, flags);
       break;
 
+    case AFM_ENCODING_ISO_8859_13:
+      apply_encoding (font, afm_885913_encoding, flags);
+      break;
+
+    case AFM_ENCODING_ISO_8859_15:
+      apply_encoding (font, afm_885915_encoding, flags);
+      break;
+
     case AFM_ENCODING_IBMPC:
       apply_encoding (font, afm_ibmpc_encoding, flags);
       break;
diff --git afmlib/afm.h afmlib/afm.h
index 19855ce..8fd8b5d 100644
--- afmlib/afm.h
+++ afmlib/afm.h
@@ -281,6 +281,8 @@ typedef enum
   AFM_ENCODING_ISO_8859_7,     /* ISO-8859-7 */
   AFM_ENCODING_ISO_8859_9,     /* ISO-8859-9 */
   AFM_ENCODING_ISO_8859_10,    /* ISO-8859-10 */
+  AFM_ENCODING_ISO_8859_13,    /* ISO-8859-13 */
+  AFM_ENCODING_ISO_8859_15,    /* ISO-8859-15 */
   AFM_ENCODING_IBMPC,          /* IBM PC */
   AFM_ENCODING_ASCII,          /* 7 bit ASCII */
   AFM_ENCODING_MAC,            /* Mac */
diff --git afmlib/afmint.h afmlib/afmint.h
index 7995ae5..6aedf95 100644
--- afmlib/afmint.h
+++ afmlib/afmint.h
@@ -256,6 +256,8 @@ extern AFMEncodingTable afm_88595_encoding[];
 extern AFMEncodingTable afm_88597_encoding[];
 extern AFMEncodingTable afm_88599_encoding[];
 extern AFMEncodingTable afm_885910_encoding[];
+extern AFMEncodingTable afm_885913_encoding[];
+extern AFMEncodingTable afm_885915_encoding[];
 extern AFMEncodingTable afm_ibmpc_encoding[];
 extern AFMEncodingTable afm_mac_encoding[];
 extern AFMEncodingTable afm_vms_encoding[];
diff --git afmlib/make-encoding.pl afmlib/make-encoding.pl
index 2bc615d..a1d3db1 100755
--- afmlib/make-encoding.pl
+++ afmlib/make-encoding.pl
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl
+#!/usr/bin/perl
 #
 # Create encoding files from the `*.txt' encoding files.
 # Copyright (c) 1995-1998 Markku Rossi.
diff --git docs/enscript.man docs/enscript.man
index 7b92eb9..61ce694 100644
--- docs/enscript.man
+++ docs/enscript.man
@@ -427,6 +427,12 @@ ISO\-8859\-9 (ISO Latin5)
 .B 885910, latin6
 ISO\-8859\-10 (ISO Latin6)
 .TP 8
+.B 885913, latin7
+ISO\-8859\-13 (ISO Latin7)
+.TP 8
+.B 885915, latin9
+ISO\-8859\-15 (ISO Latin9)
+.TP 8
 .B ascii
 7\-bit ascii
 .TP 8
diff --git lib/Makefile-encodings lib/Makefile-encodings
index b54da39..a820331 100644
--- lib/Makefile-encodings
+++ lib/Makefile-encodings
@@ -24,7 +24,7 @@
 
 ENCODINGS = ascii.enc asciifise.enc asciidkno.enc ibmpc.enc mac.enc \
 vms.enc hp8.enc koi8.enc 88591.enc 88592.enc 88593.enc 88594.enc \
-88595.enc 88597.enc 88599.enc 885910.enc
+88595.enc 88597.enc 88599.enc 885910.enc 885913.enc 885915.enc
 
 all: $(ENCODINGS)
 
@@ -64,6 +64,12 @@ ibmpc.enc: ../ibmpc.txt
 885910.enc: ../885910.txt
        ./make-encoding.pl ../885910.txt >885910.enc
 
+885913.enc: ../885913.txt
+       ./make-encoding.pl ../885913.txt >885913.enc
+
+885915.enc: ../885915.txt
+       ./make-encoding.pl ../885915.txt >885915.enc
+
 mac.enc: ../mac.txt
        ./make-encoding.pl ../mac.txt >mac.enc
 
diff --git lib/Makefile.am lib/Makefile.am
index 3ab98ce..fc40ecd 100644
--- lib/Makefile.am
+++ lib/Makefile.am
@@ -26,7 +26,7 @@ pkgdata_DATA = ascii.enc asciifise.enc asciidkno.enc hp8.enc 
ibmpc.enc        \
 koi8.enc 88591.enc 88592.enc 88593.enc 88594.enc 88595.enc 88597.enc   \
 88599.enc 885910.enc mac.enc ps.enc pslatin1.enc vms.enc a2ps.hdr      \
 edd.hdr emacs.hdr enscript.hdr enscript-color.hdr frame.hdr mp.hdr     \
-simple.hdr squeeze.hdr enscript.pro
+simple.hdr squeeze.hdr enscript.pro 885913.enc 885915.enc
 
 sysconf_DATA = enscript.cfg
 CLEANFILES = $(sysconf_DATA)
diff --git lib/make-encoding.pl lib/make-encoding.pl
index 63b2a52..a3b5d51 100755
--- lib/make-encoding.pl
+++ lib/make-encoding.pl
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl
+#!/usr/bin/perl
 #
 # Create encoding vectors from the `*.txt' encoding files.
 # Copyright (c) 1995-1998 Markku Rossi
diff --git src/gsint.h src/gsint.h
index 3c2527a..81c3257 100644
--- src/gsint.h
+++ src/gsint.h
@@ -108,6 +108,7 @@ extern double atan2 ___P ((double, double));
 
 #if HAVE_LC_MESSAGES
 #include <locale.h>
+#include <langinfo.h>
 #endif
 
 #ifndef HAVE_GETCWD
@@ -176,6 +177,8 @@ typedef enum
   ENC_ISO_8859_7,
   ENC_ISO_8859_9,
   ENC_ISO_8859_10,
+  ENC_ISO_8859_13,
+  ENC_ISO_8859_15,
   ENC_ASCII,
   ENC_ASCII_FISE,
   ENC_ASCII_DKNO,
diff --git src/main.c src/main.c
index a9175db..5117b0e 100644
--- src/main.c
+++ src/main.c
@@ -795,15 +795,17 @@ double bggray = 1.0;
 
 EncodingRegistry encodings[] =
 {
-  {{"88591", "latin1", NULL},          ENC_ISO_8859_1,         '\n', 8},
-  {{"88592", "latin2", NULL},          ENC_ISO_8859_2,         '\n', 8},
-  {{"88593", "latin3", NULL},          ENC_ISO_8859_3,         '\n', 8},
-  {{"88594", "latin4", NULL},          ENC_ISO_8859_4,         '\n', 8},
-  {{"88595", "cyrillic", NULL},                ENC_ISO_8859_5,         '\n', 
8},
-  {{"88597", "greek", NULL},           ENC_ISO_8859_7,         '\n', 8},
-  {{"88599", "latin5", NULL},          ENC_ISO_8859_9,         '\n', 8},
-  {{"885910", "latin6", NULL},         ENC_ISO_8859_10,        '\n', 8},
-  {{"ascii", NULL, NULL},              ENC_ASCII,              '\n', 8},
+  {{"88591", "latin1", "ISO-8859-1"},  ENC_ISO_8859_1,         '\n', 8},
+  {{"88592", "latin2", "ISO-8859-2"},  ENC_ISO_8859_2,         '\n', 8},
+  {{"88593", "latin3", "ISO-8859-3"},  ENC_ISO_8859_3,         '\n', 8},
+  {{"88594", "latin4", "ISO-8859-4"},  ENC_ISO_8859_4,         '\n', 8},
+  {{"88595", "cyrillic", "ISO-8859-5"},        ENC_ISO_8859_5,         '\n', 
8},
+  {{"88597", "greek", "ISO-8859-7"},   ENC_ISO_8859_7,         '\n', 8},
+  {{"88599", "latin5", "ISO-8859-9"},  ENC_ISO_8859_9,         '\n', 8},
+  {{"885910", "latin6", "ISO-8859-10"},        ENC_ISO_8859_10,        '\n', 
8},
+  {{"885913", "latin7", "ISO-8859-13"},        ENC_ISO_8859_13,        '\n', 
8},
+  {{"885915", "latin9", "ISO-8859-15"},        ENC_ISO_8859_15,        '\n', 
8},
+  {{"ascii", NULL, "ANSI_X3.4-1968"},  ENC_ASCII,              '\n', 8},
   {{"asciifise", "asciifi", "asciise"},        ENC_ASCII_FISE,         '\n', 
8},
   {{"asciidkno", "asciidk", "asciino"},        ENC_ASCII_DKNO,         '\n', 
8},
   {{"ibmpc", "pc", "dos"},             ENC_IBMPC,              '\n', 8},
diff --git src/util.c src/util.c
index a3814c1..26f072c 100644
--- src/util.c
+++ src/util.c
@@ -157,6 +157,14 @@ read_config (char *path, char *file)
        {
          token2 = GET_TOKEN (NULL);
          CHECK_TOKEN ();
+         if (!strcasecmp("LC_CTYPE", token2))
+           {
+             char * codeset = nl_langinfo(_NL_CTYPE_CODESET_NAME);
+             if (codeset && !strncasecmp(codeset, "iso", 3))
+               token2 = codeset;
+             else
+               token2 = "885915";
+           }
          xfree (encoding_name);
          encoding_name = xstrdup (token2);
        }
@@ -952,6 +960,16 @@ read_font_info (void)
                                        enc_flags);
              break;
 
+           case ENC_ISO_8859_13:
+             (void) afm_font_encoding (font, AFM_ENCODING_ISO_8859_13,
+                                       enc_flags);
+             break;
+
+           case ENC_ISO_8859_15:
+             (void) afm_font_encoding (font, AFM_ENCODING_ISO_8859_15,
+                                       enc_flags);
+             break;
+
            case ENC_ASCII:
              (void) afm_font_encoding (font, AFM_ENCODING_ASCII, enc_flags);
              break;
-- 
2.12.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]