ref: a0997f38c468d728ad5178fcdb203f1486be669b
parent: 1b4758d596b70384d7f6389171030611a0f97f7c
author: Humm <hummsmith42@gmail.com>
date: Fri Apr 9 12:05:30 EDT 2021
trofftable.rc: make work
--- a/sys/lib/troff/font/devutf/shell.lib
+++ b/sys/lib/troff/font/devutf/shell.lib
@@ -5,7 +5,8 @@
RESOLUTION=720
UNITWIDTH=10
-OCTALESCAPES=${OCTALESCAPES:-160} # <= code means add \0ddd names
+if(~ $#OCTALESCAPES 0)
+ OCTALESCAPES=160 # <= code means add \0ddd names
DOWNLOADVECTOR=FALSE # TRUE can mean incomplete tables
#
@@ -16,49 +17,48 @@
# font.
#
-BuiltinTables() {
- cat <<-'//End of BuiltinTables'
- Proportional R Times-Roman
- Proportional I Times-Italic
- Proportional B Times-Bold
- Proportional BI Times-BoldItalic
- Proportional AB AvantGarde-Demi
- Proportional AI AvantGarde-BookOblique
- Proportional AR AvantGarde-Book
- Proportional AX AvantGarde-DemiOblique
- Proportional H Helvetica
- Proportional HB Helvetica-Bold
- Proportional HI Helvetica-Oblique
- Proportional HX Helvetica-BoldOblique
- Proportional Hb Helvetica-Narrow-Bold
- Proportional Hi Helvetica-Narrow-Oblique
- Proportional Hr Helvetica-Narrow
- Proportional Hx Helvetica-Narrow-BoldOblique
- Proportional KB Bookman-Demi
- Proportional KI Bookman-LightItalic
- Proportional KR Bookman-Light
- Proportional KX Bookman-DemiItalic
- Proportional NB NewCenturySchlbk-Bold
- Proportional NI NewCenturySchlbk-Italic
- Proportional NR NewCenturySchlbk-Roman
- Proportional NX NewCenturySchlbk-BoldItalic
- Proportional PA Palatino-Roman
- Proportional PB Palatino-Bold
- Proportional PI Palatino-Italic
- Proportional PX Palatino-BoldItalic
- Proportional ZI ZapfChancery-MediumItalic
- FixedWidth C Courier
- FixedWidth CB Courier-Bold
- FixedWidth CI Courier-Oblique
- FixedWidth CO Courier
- FixedWidth CW Courier
- FixedWidth CX Courier-BoldOblique
- Dingbats ZD ZapfDingbats
- Greek GR Symbol
- Symbol S Symbol
- Special S1 Times-Roman
- Description DESC ---
- //End of BuiltinTables
+fn BuiltinTables {
+ echo 'Proportional R Times-Roman
+Proportional I Times-Italic
+Proportional B Times-Bold
+Proportional BI Times-BoldItalic
+Proportional AB AvantGarde-Demi
+Proportional AI AvantGarde-BookOblique
+Proportional AR AvantGarde-Book
+Proportional AX AvantGarde-DemiOblique
+Proportional H Helvetica
+Proportional HB Helvetica-Bold
+Proportional HI Helvetica-Oblique
+Proportional HX Helvetica-BoldOblique
+Proportional Hb Helvetica-Narrow-Bold
+Proportional Hi Helvetica-Narrow-Oblique
+Proportional Hr Helvetica-Narrow
+Proportional Hx Helvetica-Narrow-BoldOblique
+Proportional KB Bookman-Demi
+Proportional KI Bookman-LightItalic
+Proportional KR Bookman-Light
+Proportional KX Bookman-DemiItalic
+Proportional NB NewCenturySchlbk-Bold
+Proportional NI NewCenturySchlbk-Italic
+Proportional NR NewCenturySchlbk-Roman
+Proportional NX NewCenturySchlbk-BoldItalic
+Proportional PA Palatino-Roman
+Proportional PB Palatino-Bold
+Proportional PI Palatino-Italic
+Proportional PX Palatino-BoldItalic
+Proportional ZI ZapfChancery-MediumItalic
+FixedWidth C Courier
+FixedWidth CB Courier-Bold
+FixedWidth CI Courier-Oblique
+FixedWidth CO Courier
+FixedWidth CW Courier
+FixedWidth CX Courier-BoldOblique
+Dingbats ZD ZapfDingbats
+Greek GR Symbol
+Symbol S Symbol
+Special S1 Times-Roman
+Proportional CMR12 CMR12
+Description DESC ---'
}
#
@@ -65,7 +65,7 @@
# AllTables prints the complete list of builtin font names.
#
-AllTables() {
+fn AllTables {
BuiltinTables | awk '{print $2}'
}
@@ -84,222 +84,220 @@
# flagged with the PostScript comment "% missing".
#
-StandardCharset() {
- cat <<-'//End of StandardCharset'
- (!) /exclam
- (") /quotedbl
- (dq) (") % synonym
- (#) /numbersign
- ($) /dollar
- (%) /percent
- (&) /ampersand
- (') /quoteright
- (\() /parenleft
- (\)) /parenright
- (*) /asterisk
- (+) /plus
- (,) /comma
- (-) /hyphen % changed from minus by request
- (.) /period
- (/) /slash
- (0) /zero
- (1) /one
- (2) /two
- (3) /three
- (4) /four
- (5) /five
- (6) /six
- (7) /seven
- (8) /eight
- (9) /nine
- (:) /colon
- (;) /semicolon
- (<) /less
- (=) /equal
- (>) /greater
- (?) /question
- (@) /at
- (A) /A
- (B) /B
- (C) /C
- (D) /D
- (E) /E
- (F) /F
- (G) /G
- (H) /H
- (I) /I
- (J) /J
- (K) /K
- (L) /L
- (M) /M
- (N) /N
- (O) /O
- (P) /P
- (Q) /Q
- (R) /R
- (S) /S
- (T) /T
- (U) /U
- (V) /V
- (W) /W
- (X) /X
- (Y) /Y
- (Z) /Z
- ([) /bracketleft
- (\\) /backslash
- (bs) (") % synonym
- (]) /bracketright
- (^) /asciicircum
- (_) /underscore
- (`) /quoteleft
- (a) /a
- (b) /b
- (c) /c
- (d) /d
- (e) /e
- (f) /f
- (g) /g
- (h) /h
- (i) /i
- (j) /j
- (k) /k
- (l) /l
- (m) /m
- (n) /n
- (o) /o
- (p) /p
- (q) /q
- (r) /r
- (s) /s
- (t) /t
- (u) /u
- (v) /v
- (w) /w
- (x) /x
- (y) /y
- (z) /z
- ({) /braceleft
- (|) /bar
- (}) /braceright
- (~) /asciitilde
- (\\`) /grave % devpost character
- (ga) (") % synonym
- (!!) /exclamdown
- (c|) /cent
- (ct) (") % devpost synonym
- (L-) /sterling
- (ps) (") % devpost synonym
- (xo) /currency
- (cr) (") % devpost synonym
- (Y-) /yen
- (yn) (") % devpost synonym
- (||) /brokenbar % missing
- (so) /section
- (sc) (") % devpost synonym
- ("") /dieresis
- (:a) (") % devpost synonym
- (co) /copyright
- (a_) /ordfeminine
- (<<) /guillemotleft
- (-,) /logicalnot
- (hy) /hyphen
- (--) /minus
- (ro) /registered
- (rg) (") % devpost synonym
- (-^) /macron
- (-a) (") % devpost synonym
- (0^) /degree % missing
- (+-) /plusminus % missing
- (2^) /twosuperior % missing
- (3^) /threesuperior % missing
- (\\') /acute
- (aa) (") % devpost synonym
- (/u) /mu % missing
- (P!) /paragraph
- (pg) (") % devpost synonym
- (.^) /periodcentered
- (,,) /cedilla
- (,a) (") % devpost synonym
- (1^) /onesuperior % missing
- (o_) /ordmasculine
- (>>) /guillemotright
- (14) /onequarter % missing
- (12) /onehalf % missing
- (34) /threequarters % missing
- (??) /questiondown
- (A`) /Agrave
- (A') /Aacute
- (A^) /Acircumflex
- (A~) /Atilde
- (A") /Adieresis
- (A*) /Aring
- (AE) /AE
- (C,) /Ccedilla
- (E`) /Egrave
- (E') /Eacute
- (E^) /Ecircumflex
- (E") /Edieresis
- (I`) /Igrave
- (I') /Iacute
- (I^) /Icircumflex
- (I") /Idieresis
- (D-) /Eth % missing
- (N~) /Ntilde
- (O`) /Ograve
- (O') /Oacute
- (O^) /Ocircumflex
- (O~) /Otilde
- (O") /Odieresis
- (xx) /multiply % missing
- (O/) /Oslash
- (U`) /Ugrave
- (U') /Uacute
- (U^) /Ucircumflex
- (U") /Udieresis
- (Y') /Yacute % missing
- (TH) /Thorn % missing
- (ss) /germandbls
- (a`) /agrave
- (a') /aacute
- (a^) /acircumflex
- (a~) /atilde
- (a") /adieresis
- (a*) /aring
- (ae) /ae
- (c,) /ccedilla
- (e`) /egrave
- (e') /eacute
- (e^) /ecircumflex
- (e") /edieresis
- (i`) /igrave
- (i') /iacute
- (i^) /icircumflex
- (i") /idieresis
- (d-) /eth % missing
- (n~) /ntilde
- (o`) /ograve
- (o') /oacute
- (o^) /ocircumflex
- (o~) /otilde
- (o") /odieresis
- (-:) /divide % missing
- (o/) /oslash
- (u`) /ugrave
- (u') /uacute
- (u^) /ucircumflex
- (u") /udieresis
- (y') /yacute % missing
- (th) /thorn % missing
- (y") /ydieresis
- (^a) /circumflex % devpost accent
- (~a) /tilde % devpost accent
- (Ua) /breve % devpost accent
- (.a) /dotaccent % devpost accent
- (oa) /ring % devpost accent
- ("a) /hungarumlaut % devpost accent
- (Ca) /ogonek % devpost accent
- (va) /caron % devpost accent
- //End of StandardCharset
+fn StandardCharset {
+ echo '(!) /exclam
+(") /quotedbl
+(dq) (") % synonym
+(#) /numbersign
+($) /dollar
+(%) /percent
+(&) /ampersand
+('') /quoteright
+(\() /parenleft
+(\)) /parenright
+(*) /asterisk
+(+) /plus
+(,) /comma
+(-) /hyphen % changed from minus by request
+(.) /period
+(/) /slash
+(0) /zero
+(1) /one
+(2) /two
+(3) /three
+(4) /four
+(5) /five
+(6) /six
+(7) /seven
+(8) /eight
+(9) /nine
+(:) /colon
+(;) /semicolon
+(<) /less
+(=) /equal
+(>) /greater
+(?) /question
+(@) /at
+(A) /A
+(B) /B
+(C) /C
+(D) /D
+(E) /E
+(F) /F
+(G) /G
+(H) /H
+(I) /I
+(J) /J
+(K) /K
+(L) /L
+(M) /M
+(N) /N
+(O) /O
+(P) /P
+(Q) /Q
+(R) /R
+(S) /S
+(T) /T
+(U) /U
+(V) /V
+(W) /W
+(X) /X
+(Y) /Y
+(Z) /Z
+([) /bracketleft
+(\\) /backslash
+(bs) (") % synonym
+(]) /bracketright
+(^) /asciicircum
+(_) /underscore
+(`) /quoteleft
+(a) /a
+(b) /b
+(c) /c
+(d) /d
+(e) /e
+(f) /f
+(g) /g
+(h) /h
+(i) /i
+(j) /j
+(k) /k
+(l) /l
+(m) /m
+(n) /n
+(o) /o
+(p) /p
+(q) /q
+(r) /r
+(s) /s
+(t) /t
+(u) /u
+(v) /v
+(w) /w
+(x) /x
+(y) /y
+(z) /z
+({) /braceleft
+(|) /bar
+(}) /braceright
+(~) /asciitilde
+(\\`) /grave % devpost character
+(ga) (") % synonym
+(!!) /exclamdown
+(c|) /cent
+(ct) (") % devpost synonym
+(L-) /sterling
+(ps) (") % devpost synonym
+(xo) /currency
+(cr) (") % devpost synonym
+(Y-) /yen
+(yn) (") % devpost synonym
+(||) /brokenbar % missing
+(so) /section
+(sc) (") % devpost synonym
+("") /dieresis
+(:a) (") % devpost synonym
+(co) /copyright
+(a_) /ordfeminine
+(<<) /guillemotleft
+(-,) /logicalnot
+(hy) /hyphen
+(--) /minus
+(ro) /registered
+(rg) (") % devpost synonym
+(-^) /macron
+(-a) (") % devpost synonym
+(0^) /degree % missing
+(+-) /plusminus % missing
+(2^) /twosuperior % missing
+(3^) /threesuperior % missing
+(\\'') /acute
+(aa) (") % devpost synonym
+(/u) /mu % missing
+(P!) /paragraph
+(pg) (") % devpost synonym
+(.^) /periodcentered
+(,,) /cedilla
+(,a) (") % devpost synonym
+(1^) /onesuperior % missing
+(o_) /ordmasculine
+(>>) /guillemotright
+(14) /onequarter % missing
+(12) /onehalf % missing
+(34) /threequarters % missing
+(??) /questiondown
+(A`) /Agrave
+(A'') /Aacute
+(A^) /Acircumflex
+(A~) /Atilde
+(A") /Adieresis
+(A*) /Aring
+(AE) /AE
+(C,) /Ccedilla
+(E`) /Egrave
+(E'') /Eacute
+(E^) /Ecircumflex
+(E") /Edieresis
+(I`) /Igrave
+(I'') /Iacute
+(I^) /Icircumflex
+(I") /Idieresis
+(D-) /Eth % missing
+(N~) /Ntilde
+(O`) /Ograve
+(O'') /Oacute
+(O^) /Ocircumflex
+(O~) /Otilde
+(O") /Odieresis
+(xx) /multiply % missing
+(O/) /Oslash
+(U`) /Ugrave
+(U'') /Uacute
+(U^) /Ucircumflex
+(U") /Udieresis
+(Y'') /Yacute % missing
+(TH) /Thorn % missing
+(ss) /germandbls
+(a`) /agrave
+(a'') /aacute
+(a^) /acircumflex
+(a~) /atilde
+(a") /adieresis
+(a*) /aring
+(ae) /ae
+(c,) /ccedilla
+(e`) /egrave
+(e'') /eacute
+(e^) /ecircumflex
+(e") /edieresis
+(i`) /igrave
+(i'') /iacute
+(i^) /icircumflex
+(i") /idieresis
+(d-) /eth % missing
+(n~) /ntilde
+(o`) /ograve
+(o'') /oacute
+(o^) /ocircumflex
+(o~) /otilde
+(o") /odieresis
+(-:) /divide % missing
+(o/) /oslash
+(u`) /ugrave
+(u'') /uacute
+(u^) /ucircumflex
+(u") /udieresis
+(y'') /yacute % missing
+(th) /thorn % missing
+(y") /ydieresis
+(^a) /circumflex % devpost accent
+(~a) /tilde % devpost accent
+(Ua) /breve % devpost accent
+(.a) /dotaccent % devpost accent
+(oa) /ring % devpost accent
+("a) /hungarumlaut % devpost accent
+(Ca) /ogonek % devpost accent
+(va) /caron % devpost accent'
}
#
@@ -306,481 +304,475 @@
# DingbatsCharset guarantees changes in StandardCharset don't show up in ZD.
#
-DingbatsCharset() {
- cat <<-'//End of DingbatsCharset'
- (!) /exclam
- (") /quotedbl
- (#) /numbersign
- ($) /dollar
- (%) /percent
- (&) /ampersand
- (') /quoteright
- (\() /parenleft
- (\)) /parenright
- (*) /asterisk
- (+) /plus
- (,) /comma
- (-) /minus % also hyphen in devpost
- (.) /period
- (/) /slash
- (0) /zero
- (1) /one
- (2) /two
- (3) /three
- (4) /four
- (5) /five
- (6) /six
- (7) /seven
- (8) /eight
- (9) /nine
- (:) /colon
- (;) /semicolon
- (<) /less
- (=) /equal
- (>) /greater
- (?) /question
- (@) /at
- (A) /A
- (B) /B
- (C) /C
- (D) /D
- (E) /E
- (F) /F
- (G) /G
- (H) /H
- (I) /I
- (J) /J
- (K) /K
- (L) /L
- (M) /M
- (N) /N
- (O) /O
- (P) /P
- (Q) /Q
- (R) /R
- (S) /S
- (T) /T
- (U) /U
- (V) /V
- (W) /W
- (X) /X
- (Y) /Y
- (Z) /Z
- ([) /bracketleft
- (\\) /backslash
- (]) /bracketright
- (^) /asciicircum
- (_) /underscore
- (`) /quoteleft
- (a) /a
- (b) /b
- (c) /c
- (d) /d
- (e) /e
- (f) /f
- (g) /g
- (h) /h
- (i) /i
- (j) /j
- (k) /k
- (l) /l
- (m) /m
- (n) /n
- (o) /o
- (p) /p
- (q) /q
- (r) /r
- (s) /s
- (t) /t
- (u) /u
- (v) /v
- (w) /w
- (x) /x
- (y) /y
- (z) /z
- ({) /braceleft
- (|) /bar
- (}) /braceright
- (~) /asciitilde
- (\\`) /grave % devpost character
- (!!) /exclamdown
- (c|) /cent
- (L-) /sterling
- (xo) /currency
- (Y-) /yen
- (||) /brokenbar % missing
- (so) /section
- ("") /dieresis
- (co) /copyright
- (a_) /ordfeminine
- (<<) /guillemotleft
- (-,) /logicalnot
- (hy) /hyphen
- (ro) /registered
- (-^) /macron
- (0^) /degree % missing
- (+-) /plusminus % missing
- (2^) /twosuperior % missing
- (3^) /threesuperior % missing
- (\\') /acute
- (/u) /mu % missing
- (P!) /paragraph
- (.^) /periodcentered
- (,,) /cedilla
- (1^) /onesuperior % missing
- (o_) /ordmasculine
- (>>) /guillemotright
- (14) /onequarter % missing
- (12) /onehalf % missing
- (34) /threequarters % missing
- (??) /questiondown
- (A`) /Agrave
- (A') /Aacute
- (A^) /Acircumflex
- (A~) /Atilde
- (A") /Adieresis
- (A*) /Aring
- (AE) /AE
- (C,) /Ccedilla
- (E`) /Egrave
- (E') /Eacute
- (E^) /Ecircumflex
- (E") /Edieresis
- (I`) /Igrave
- (I') /Iacute
- (I^) /Icircumflex
- (I") /Idieresis
- (D-) /Eth % missing
- (N~) /Ntilde
- (O`) /Ograve
- (O') /Oacute
- (O^) /Ocircumflex
- (O~) /Otilde
- (O") /Odieresis
- (xx) /multiply % missing
- (O/) /Oslash
- (U`) /Ugrave
- (U') /Uacute
- (U^) /Ucircumflex
- (U") /Udieresis
- (Y') /Yacute % missing
- (TH) /Thorn % missing
- (ss) /germandbls
- (a`) /agrave
- (a') /aacute
- (a^) /acircumflex
- (a~) /atilde
- (a") /adieresis
- (a*) /aring
- (ae) /ae
- (c,) /ccedilla
- (e`) /egrave
- (e') /eacute
- (e^) /ecircumflex
- (e") /edieresis
- (i`) /igrave
- (i') /iacute
- (i^) /icircumflex
- (i") /idieresis
- (d-) /eth % missing
- (n~) /ntilde
- (o`) /ograve
- (o') /oacute
- (o^) /ocircumflex
- (o~) /otilde
- (o") /odieresis
- (-:) /divide % missing
- (o/) /oslash
- (u`) /ugrave
- (u') /uacute
- (u^) /ucircumflex
- (u") /udieresis
- (y') /yacute % missing
- (th) /thorn % missing
- (y") /ydieresis
- //End of DingbatsCharset
+fn DingbatsCharset {
+ echo '(!) /exclam
+(") /quotedbl
+(#) /numbersign
+($) /dollar
+(%) /percent
+(&) /ampersand
+('') /quoteright
+(\() /parenleft
+(\)) /parenright
+(*) /asterisk
+(+) /plus
+(,) /comma
+(-) /minus % also hyphen in devpost
+(.) /period
+(/) /slash
+(0) /zero
+(1) /one
+(2) /two
+(3) /three
+(4) /four
+(5) /five
+(6) /six
+(7) /seven
+(8) /eight
+(9) /nine
+(:) /colon
+(;) /semicolon
+(<) /less
+(=) /equal
+(>) /greater
+(?) /question
+(@) /at
+(A) /A
+(B) /B
+(C) /C
+(D) /D
+(E) /E
+(F) /F
+(G) /G
+(H) /H
+(I) /I
+(J) /J
+(K) /K
+(L) /L
+(M) /M
+(N) /N
+(O) /O
+(P) /P
+(Q) /Q
+(R) /R
+(S) /S
+(T) /T
+(U) /U
+(V) /V
+(W) /W
+(X) /X
+(Y) /Y
+(Z) /Z
+([) /bracketleft
+(\\) /backslash
+(]) /bracketright
+(^) /asciicircum
+(_) /underscore
+(`) /quoteleft
+(a) /a
+(b) /b
+(c) /c
+(d) /d
+(e) /e
+(f) /f
+(g) /g
+(h) /h
+(i) /i
+(j) /j
+(k) /k
+(l) /l
+(m) /m
+(n) /n
+(o) /o
+(p) /p
+(q) /q
+(r) /r
+(s) /s
+(t) /t
+(u) /u
+(v) /v
+(w) /w
+(x) /x
+(y) /y
+(z) /z
+({) /braceleft
+(|) /bar
+(}) /braceright
+(~) /asciitilde
+(\\`) /grave % devpost character
+(!!) /exclamdown
+(c|) /cent
+(L-) /sterling
+(xo) /currency
+(Y-) /yen
+(||) /brokenbar % missing
+(so) /section
+("") /dieresis
+(co) /copyright
+(a_) /ordfeminine
+(<<) /guillemotleft
+(-,) /logicalnot
+(hy) /hyphen
+(ro) /registered
+(-^) /macron
+(0^) /degree % missing
+(+-) /plusminus % missing
+(2^) /twosuperior % missing
+(3^) /threesuperior % missing
+(\\'') /acute
+(/u) /mu % missing
+(P!) /paragraph
+(.^) /periodcentered
+(,,) /cedilla
+(1^) /onesuperior % missing
+(o_) /ordmasculine
+(>>) /guillemotright
+(14) /onequarter % missing
+(12) /onehalf % missing
+(34) /threequarters % missing
+(??) /questiondown
+(A`) /Agrave
+(A'') /Aacute
+(A^) /Acircumflex
+(A~) /Atilde
+(A") /Adieresis
+(A*) /Aring
+(AE) /AE
+(C,) /Ccedilla
+(E`) /Egrave
+(E'') /Eacute
+(E^) /Ecircumflex
+(E") /Edieresis
+(I`) /Igrave
+(I'') /Iacute
+(I^) /Icircumflex
+(I") /Idieresis
+(D-) /Eth % missing
+(N~) /Ntilde
+(O`) /Ograve
+(O'') /Oacute
+(O^) /Ocircumflex
+(O~) /Otilde
+(O") /Odieresis
+(xx) /multiply % missing
+(O/) /Oslash
+(U`) /Ugrave
+(U'') /Uacute
+(U^) /Ucircumflex
+(U") /Udieresis
+(Y'') /Yacute % missing
+(TH) /Thorn % missing
+(ss) /germandbls
+(a`) /agrave
+(a'') /aacute
+(a^) /acircumflex
+(a~) /atilde
+(a") /adieresis
+(a*) /aring
+(ae) /ae
+(c,) /ccedilla
+(e`) /egrave
+(e'') /eacute
+(e^) /ecircumflex
+(e") /edieresis
+(i`) /igrave
+(i'') /iacute
+(i^) /icircumflex
+(i") /idieresis
+(d-) /eth % missing
+(n~) /ntilde
+(o`) /ograve
+(o'') /oacute
+(o^) /ocircumflex
+(o~) /otilde
+(o") /odieresis
+(-:) /divide % missing
+(o/) /oslash
+(u`) /ugrave
+(u'') /uacute
+(u^) /ucircumflex
+(u") /udieresis
+(y'') /yacute % missing
+(th) /thorn % missing
+(y") /ydieresis'
}
-SymbolCharset() {
- cat <<-'//End of SymbolCharset'
- (---) /exclam
- (fa) /universal
- (---) /numbersign
- (te) /existential
- (---) /percent
- (---) /ampersand
- (st) /suchthat
- (---) /parenleft
- (---) /parenright
- (**) /asteriskmath
- (pl) /plus
- (---) /comma
- (mi) /minus
- (---) /period
- (sl) /slash
- (---) /zero
- (---) /one
- (---) /two
- (---) /three
- (---) /four
- (---) /five
- (---) /six
- (---) /seven
- (---) /eight
- (---) /nine
- (---) /colon
- (---) /semicolon
- (<) /less
- (eq) /equal
- (>) /greater
- (---) /question
- (cg) /congruent
- (*A) /Alpha
- (\244x) (")
- (*B) /Beta
- (\244y) (")
- (*X) /Chi
- (\244\257) (")
- (*D) /Delta
- (\244{) (")
- (*E) /Epsilon
- (\244|) (")
- (*F) /Phi
- (\244\256) (")
- (*G) /Gamma
- (\244z) (")
- (*Y) /Eta
- (\244~) (")
- (*I) /Iota
- (\244\241) (")
- (---) /theta1
- (\244\331) (")
- (*K) /Kappa
- (\244\242) (")
- (*L) /Lambda
- (\244\243) (")
- (*M) /Mu
- (\244\244) (")
- (*N) /Nu
- (\244\245) (")
- (*O) /Omicron
- (\244\247) (")
- (*P) /Pi
- (\244\250) (")
- (*H) /Theta
- (\244\240) (")
- (*R) /Rho
- (\244\251) (")
- (*S) /Sigma
- (\244\253) (")
- (*T) /Tau
- (\244\254) (")
- (*U) /Upsilon
- (\244\255) (")
- (ts) /sigma1
- (\244\312) (")
- (*W) /Omega
- (\244\261) (")
- (*C) /Xi
- (\244\246) (")
- (*Q) /Psi
- (\244\260) (")
- (*Z) /Zeta
- (\244}) (")
- (---) /bracketleft
- (tf) /therefore
- (---) /bracketright
- (pp) /perpendicular
- (ul) /underscore
- (_) (") % synonym
- (rn) /radicalex
- (*a) /alpha
- (\244\271) (")
- (*b) /beta
- (\244\272) (")
- (*x) /chi
- (\244\317) (")
- (*d) /delta
- (\244\274) (")
- (*e) /epsilon
- (\244\275) (")
- (*f) /phi
- (\244\316) (")
- (*g) /gamma
- (\244\273) (")
- (*y) /eta
- (\244\277) (")
- (*i) /iota
- (\244\301) (")
- (---) /phi1
- (\244\335) (")
- (*k) /kappa
- (\244\302) (")
- (*l) /lambda
- (\244\303) (")
- (*m) /mu
- (\244\304) (")
- (*n) /nu
- (\244\305) (")
- (*o) /omicron
- (\244\307) (")
- (*p) /pi
- (\244\310) (")
- (*h) /theta
- (\244\300) (")
- (*r) /rho
- (\244\311) (")
- (*s) /sigma
- (\244\313) (")
- (*t) /tau
- (\244\314) (")
- (*u) /upsilon
- (\244\315) (")
- (---) /omega1
- (\244\336) (")
- (*w) /omega
- (\244\321) (")
- (*c) /xi
- (\244\306) (")
- (*q) /psi
- (\244\320) (")
- (*z) /zeta
- (\244\276) (")
- (---) /braceleft
- (or) /bar
- (---) /braceright
- (ap) /similar
- (---) /Upsilon1
- (fm) /minute
- (<=) /lessequal
- (fr) /fraction % devpost character
- (if) /infinity
- (fn) /florin % devpost character
- (---) /club
- (---) /diamond
- (---) /heart
- (---) /spade
- (ab) /arrowboth
- (<-) /arrowleft
- (ua) /arrowup
- (->) /arrowright
- (da) /arrowdown
- (de) /degree
- (+-) /plusminus
- (---) /second
- (>=) /greaterequal
- (mu) /multiply
- (pt) /proportional
- (pd) /partialdiff
- (bu) /bullet
- (di) /divide
- (!=) /notequal
- (==) /equivalence
- (~~) /approxequal
- (el) /ellipsis
- (av) /arrowvertex
- (ah) /arrowhorizex
- (CR) /carriagereturn
- (af) /aleph
- (If) /Ifraktur
- (Rf) /Rfraktur
- (ws) /weierstrass
- (Ox) /circlemultiply
- (O+) /circleplus
- (es) /emptyset
- (ca) /intersection
- (cu) /union
- (sp) /propersuperset
- (ip) /reflexsuperset
- (!b) /notsubset
- (sb) /propersubset
- (ib) /reflexsubset
- (mo) /element
- (!m) /notelement
- (an) /angle
- (gr) /gradient
- (rg) /registerserif
- (co) /copyrightserif
- (tm) /trademarkserif
- (---) /product
- (sr) /radical
- (c.) /dotmath
- (no) /logicalnot
- (l&) /logicaland
- (l|) /logicalor
- (---) /arrowdblboth
- (---) /arrowdblleft
- (---) /arrowdblup
- (---) /arrowdblright
- (---) /arrowdbldown
- (lz) /lozenge
- (b<) /angleleft
- (RG) /registersans
- (CO) /copyrightsans
- (TM) /trademarksans
- (---) /summation
- (LT) /parenlefttp
- (br) /parenleftex
- (LX) (") % synonym
- (LB) /parenleftbt
- (lc) /bracketlefttp
- (lx) /bracketleftex
- (lf) /bracketleftbt
- (lt) /bracelefttp
- (lk) /braceleftmid
- (lb) /braceleftbt
- (bv) /braceex
- (|) (") % synonym
- (b>) /angleright
- (is) /integral
- (---) /integraltp
- (---) /integralex
- (---) /integralbt
- (RT) /parenrighttp
- (RX) /parenrightex
- (RB) /parenrightbt
- (rc) /bracketrighttp
- (rx) /bracketrightex
- (rf) /bracketrightbt
- (rt) /bracerighttp
- (rk) /bracerightmid
- (rb) /bracerightbt
- (~=) (55 0 1) % charlib
- //End of SymbolCharset
+fn SymbolCharset {
+ echo '(---) /exclam
+(fa) /universal
+(---) /numbersign
+(te) /existential
+(---) /percent
+(---) /ampersand
+(st) /suchthat
+(---) /parenleft
+(---) /parenright
+(**) /asteriskmath
+(pl) /plus
+(---) /comma
+(mi) /minus
+(---) /period
+(sl) /slash
+(---) /zero
+(---) /one
+(---) /two
+(---) /three
+(---) /four
+(---) /five
+(---) /six
+(---) /seven
+(---) /eight
+(---) /nine
+(---) /colon
+(---) /semicolon
+(<) /less
+(eq) /equal
+(>) /greater
+(---) /question
+(cg) /congruent
+(*A) /Alpha
+(\244x) (")
+(*B) /Beta
+(\244y) (")
+(*X) /Chi
+(\244\257) (")
+(*D) /Delta
+(\244{) (")
+(*E) /Epsilon
+(\244|) (")
+(*F) /Phi
+(\244\256) (")
+(*G) /Gamma
+(\244z) (")
+(*Y) /Eta
+(\244~) (")
+(*I) /Iota
+(\244\241) (")
+(---) /theta1
+(\244\331) (")
+(*K) /Kappa
+(\244\242) (")
+(*L) /Lambda
+(\244\243) (")
+(*M) /Mu
+(\244\244) (")
+(*N) /Nu
+(\244\245) (")
+(*O) /Omicron
+(\244\247) (")
+(*P) /Pi
+(\244\250) (")
+(*H) /Theta
+(\244\240) (")
+(*R) /Rho
+(\244\251) (")
+(*S) /Sigma
+(\244\253) (")
+(*T) /Tau
+(\244\254) (")
+(*U) /Upsilon
+(\244\255) (")
+(ts) /sigma1
+(\244\312) (")
+(*W) /Omega
+(\244\261) (")
+(*C) /Xi
+(\244\246) (")
+(*Q) /Psi
+(\244\260) (")
+(*Z) /Zeta
+(\244}) (")
+(---) /bracketleft
+(tf) /therefore
+(---) /bracketright
+(pp) /perpendicular
+(ul) /underscore
+(_) (") % synonym
+(rn) /radicalex
+(*a) /alpha
+(\244\271) (")
+(*b) /beta
+(\244\272) (")
+(*x) /chi
+(\244\317) (")
+(*d) /delta
+(\244\274) (")
+(*e) /epsilon
+(\244\275) (")
+(*f) /phi
+(\244\316) (")
+(*g) /gamma
+(\244\273) (")
+(*y) /eta
+(\244\277) (")
+(*i) /iota
+(\244\301) (")
+(---) /phi1
+(\244\335) (")
+(*k) /kappa
+(\244\302) (")
+(*l) /lambda
+(\244\303) (")
+(*m) /mu
+(\244\304) (")
+(*n) /nu
+(\244\305) (")
+(*o) /omicron
+(\244\307) (")
+(*p) /pi
+(\244\310) (")
+(*h) /theta
+(\244\300) (")
+(*r) /rho
+(\244\311) (")
+(*s) /sigma
+(\244\313) (")
+(*t) /tau
+(\244\314) (")
+(*u) /upsilon
+(\244\315) (")
+(---) /omega1
+(\244\336) (")
+(*w) /omega
+(\244\321) (")
+(*c) /xi
+(\244\306) (")
+(*q) /psi
+(\244\320) (")
+(*z) /zeta
+(\244\276) (")
+(---) /braceleft
+(or) /bar
+(---) /braceright
+(ap) /similar
+(---) /Upsilon1
+(fm) /minute
+(<=) /lessequal
+(fr) /fraction % devpost character
+(if) /infinity
+(fn) /florin % devpost character
+(---) /club
+(---) /diamond
+(---) /heart
+(---) /spade
+(ab) /arrowboth
+(<-) /arrowleft
+(ua) /arrowup
+(->) /arrowright
+(da) /arrowdown
+(de) /degree
+(+-) /plusminus
+(---) /second
+(>=) /greaterequal
+(mu) /multiply
+(pt) /proportional
+(pd) /partialdiff
+(bu) /bullet
+(di) /divide
+(!=) /notequal
+(==) /equivalence
+(~~) /approxequal
+(el) /ellipsis
+(av) /arrowvertex
+(ah) /arrowhorizex
+(CR) /carriagereturn
+(af) /aleph
+(If) /Ifraktur
+(Rf) /Rfraktur
+(ws) /weierstrass
+(Ox) /circlemultiply
+(O+) /circleplus
+(es) /emptyset
+(ca) /intersection
+(cu) /union
+(sp) /propersuperset
+(ip) /reflexsuperset
+(!b) /notsubset
+(sb) /propersubset
+(ib) /reflexsubset
+(mo) /element
+(!m) /notelement
+(an) /angle
+(gr) /gradient
+(rg) /registerserif
+(co) /copyrightserif
+(tm) /trademarkserif
+(---) /product
+(sr) /radical
+(c.) /dotmath
+(no) /logicalnot
+(l&) /logicaland
+(l|) /logicalor
+(---) /arrowdblboth
+(---) /arrowdblleft
+(---) /arrowdblup
+(---) /arrowdblright
+(---) /arrowdbldown
+(lz) /lozenge
+(b<) /angleleft
+(RG) /registersans
+(CO) /copyrightsans
+(TM) /trademarksans
+(---) /summation
+(LT) /parenlefttp
+(br) /parenleftex
+(LX) (") % synonym
+(LB) /parenleftbt
+(lc) /bracketlefttp
+(lx) /bracketleftex
+(lf) /bracketleftbt
+(lt) /bracelefttp
+(lk) /braceleftmid
+(lb) /braceleftbt
+(bv) /braceex
+(|) (") % synonym
+(b>) /angleright
+(is) /integral
+(---) /integraltp
+(---) /integralex
+(---) /integralbt
+(RT) /parenrighttp
+(RX) /parenrightex
+(RB) /parenrightbt
+(rc) /bracketrighttp
+(rx) /bracketrightex
+(rf) /bracketrightbt
+(rt) /bracerighttp
+(rk) /bracerightmid
+(rb) /bracerightbt
+(~=) (55 0 1) % charlib'
}
-SpecialCharset() {
- cat <<-'//End of SpecialCharset'
- (ru) /underscore
- ('') /quotedblright % devpost character
- (``) /quotedblleft % devpost character
- (dg) /dagger % devpost character
- (dd) /daggerdbl % devpost character
- (en) /endash % devpost character
- (\\-) (") % synonym
- (em) /emdash
+fn SpecialCharset {
+ echo '(ru) /underscore
+('''') /quotedblright % devpost character
+(``) /quotedblleft % devpost character
+(dg) /dagger % devpost character
+(dd) /daggerdbl % devpost character
+(en) /endash % devpost character
+(\\-) (") % synonym
+(em) /emdash
% (ff) (60 2 1) % charlib
% (Fi) (84 2 1) % charlib
% (Fl) (84 2 1) % charlib
- (14) (75 2 1) % charlib
- (12) (75 2 1) % charlib
- (34) (75 2 1) % charlib
- (bx) (50 2 1) % charlib
- (ob) (38 2 1) % charlib
- (ci) (75 0 1) % charlib
- (sq) (50 2 1) % charlib
- (Sl) (50 2 1) % charlib
- (L1) (110 1 1) % charlib
- (LA) (110 1 1) % charlib
- (LV) (110 3 1) % charlib
- (LH) (210 1 1) % charlib
- (lh) (100 0 1) % charlib
- (rh) (100 0 1) % charlib
- (lH) (100 0 1) % charlib
- (rH) (100 0 1) % charlib
- (PC) (220 2 1) % charlib
- (DG) (185 2 1) % charlib
- //End of SpecialCharset
+(14) (75 2 1) % charlib
+(12) (75 2 1) % charlib
+(34) (75 2 1) % charlib
+(bx) (50 2 1) % charlib
+(ob) (38 2 1) % charlib
+(ci) (75 0 1) % charlib
+(sq) (50 2 1) % charlib
+(Sl) (50 2 1) % charlib
+(L1) (110 1 1) % charlib
+(LA) (110 1 1) % charlib
+(LV) (110 3 1) % charlib
+(LH) (210 1 1) % charlib
+(lh) (100 0 1) % charlib
+(rh) (100 0 1) % charlib
+(lH) (100 0 1) % charlib
+(rH) (100 0 1) % charlib
+(PC) (220 2 1) % charlib
+(DG) (185 2 1) % charlib'
}
#
@@ -791,271 +783,269 @@
# set appeared sometime after Version 50.0.
#
-Latin1() {
- if [ "$DOWNLOADVECTOR" = TRUE ]; then
- cat <<-'//End of ISOLatin1Encoding'
- /ISOLatin1Encoding [
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /space
- /exclam
- /quotedbl
- /numbersign
- /dollar
- /percent
- /ampersand
- /quoteright
- /parenleft
- /parenright
- /asterisk
- /plus
- /comma
- /minus
- /period
- /slash
- /zero
- /one
- /two
- /three
- /four
- /five
- /six
- /seven
- /eight
- /nine
- /colon
- /semicolon
- /less
- /equal
- /greater
- /question
- /at
- /A
- /B
- /C
- /D
- /E
- /F
- /G
- /H
- /I
- /J
- /K
- /L
- /M
- /N
- /O
- /P
- /Q
- /R
- /S
- /T
- /U
- /V
- /W
- /X
- /Y
- /Z
- /bracketleft
- /backslash
- /bracketright
- /asciicircum
- /underscore
- /quoteleft
- /a
- /b
- /c
- /d
- /e
- /f
- /g
- /h
- /i
- /j
- /k
- /l
- /m
- /n
- /o
- /p
- /q
- /r
- /s
- /t
- /u
- /v
- /w
- /x
- /y
- /z
- /braceleft
- /bar
- /braceright
- /asciitilde
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /.notdef
- /dotlessi
- /grave
- /acute
- /circumflex
- /tilde
- /macron
- /breve
- /dotaccent
- /dieresis
- /.notdef
- /ring
- /cedilla
- /.notdef
- /hungarumlaut
- /ogonek
- /caron
- /space
- /exclamdown
- /cent
- /sterling
- /currency
- /yen
- /brokenbar
- /section
- /dieresis
- /copyright
- /ordfeminine
- /guillemotleft
- /logicalnot
- /hyphen
- /registered
- /macron
- /degree
- /plusminus
- /twosuperior
- /threesuperior
- /acute
- /mu
- /paragraph
- /periodcentered
- /cedilla
- /onesuperior
- /ordmasculine
- /guillemotright
- /onequarter
- /onehalf
- /threequarters
- /questiondown
- /Agrave
- /Aacute
- /Acircumflex
- /Atilde
- /Adieresis
- /Aring
- /AE
- /Ccedilla
- /Egrave
- /Eacute
- /Ecircumflex
- /Edieresis
- /Igrave
- /Iacute
- /Icircumflex
- /Idieresis
- /Eth
- /Ntilde
- /Ograve
- /Oacute
- /Ocircumflex
- /Otilde
- /Odieresis
- /multiply
- /Oslash
- /Ugrave
- /Uacute
- /Ucircumflex
- /Udieresis
- /Yacute
- /Thorn
- /germandbls
- /agrave
- /aacute
- /acircumflex
- /atilde
- /adieresis
- /aring
- /ae
- /ccedilla
- /egrave
- /eacute
- /ecircumflex
- /edieresis
- /igrave
- /iacute
- /icircumflex
- /idieresis
- /eth
- /ntilde
- /ograve
- /oacute
- /ocircumflex
- /otilde
- /odieresis
- /divide
- /oslash
- /ugrave
- /uacute
- /ucircumflex
- /udieresis
- /yacute
- /thorn
- /ydieresis
- ] def
- //End of ISOLatin1Encoding
- fi
+fn Latin1 {
+ if(~ $"DOWNLOADVECTOR TRUE){
+ echo ' /ISOLatin1Encoding [
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/space
+/exclam
+/quotedbl
+/numbersign
+/dollar
+/percent
+/ampersand
+/quoteright
+/parenleft
+/parenright
+/asterisk
+/plus
+/comma
+/minus
+/period
+/slash
+/zero
+/one
+/two
+/three
+/four
+/five
+/six
+/seven
+/eight
+/nine
+/colon
+/semicolon
+/less
+/equal
+/greater
+/question
+/at
+/A
+/B
+/C
+/D
+/E
+/F
+/G
+/H
+/I
+/J
+/K
+/L
+/M
+/N
+/O
+/P
+/Q
+/R
+/S
+/T
+/U
+/V
+/W
+/X
+/Y
+/Z
+/bracketleft
+/backslash
+/bracketright
+/asciicircum
+/underscore
+/quoteleft
+/a
+/b
+/c
+/d
+/e
+/f
+/g
+/h
+/i
+/j
+/k
+/l
+/m
+/n
+/o
+/p
+/q
+/r
+/s
+/t
+/u
+/v
+/w
+/x
+/y
+/z
+/braceleft
+/bar
+/braceright
+/asciitilde
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/.notdef
+/dotlessi
+/grave
+/acute
+/circumflex
+/tilde
+/macron
+/breve
+/dotaccent
+/dieresis
+/.notdef
+/ring
+/cedilla
+/.notdef
+/hungarumlaut
+/ogonek
+/caron
+/space
+/exclamdown
+/cent
+/sterling
+/currency
+/yen
+/brokenbar
+/section
+/dieresis
+/copyright
+/ordfeminine
+/guillemotleft
+/logicalnot
+/hyphen
+/registered
+/macron
+/degree
+/plusminus
+/twosuperior
+/threesuperior
+/acute
+/mu
+/paragraph
+/periodcentered
+/cedilla
+/onesuperior
+/ordmasculine
+/guillemotright
+/onequarter
+/onehalf
+/threequarters
+/questiondown
+/Agrave
+/Aacute
+/Acircumflex
+/Atilde
+/Adieresis
+/Aring
+/AE
+/Ccedilla
+/Egrave
+/Eacute
+/Ecircumflex
+/Edieresis
+/Igrave
+/Iacute
+/Icircumflex
+/Idieresis
+/Eth
+/Ntilde
+/Ograve
+/Oacute
+/Ocircumflex
+/Otilde
+/Odieresis
+/multiply
+/Oslash
+/Ugrave
+/Uacute
+/Ucircumflex
+/Udieresis
+/Yacute
+/Thorn
+/germandbls
+/agrave
+/aacute
+/acircumflex
+/atilde
+/adieresis
+/aring
+/ae
+/ccedilla
+/egrave
+/eacute
+/ecircumflex
+/edieresis
+/igrave
+/iacute
+/icircumflex
+/idieresis
+/eth
+/ntilde
+/ograve
+/oacute
+/ocircumflex
+/otilde
+/odieresis
+/divide
+/oslash
+/ugrave
+/uacute
+/ucircumflex
+/udieresis
+/yacute
+/thorn
+/ydieresis
+] def'
+ }
- echo "ISOLatin1Encoding /$1 ReEncode"
+ echo 'ISOLatin1Encoding /'^$1^' ReEncode'
}
#
@@ -1066,11 +1056,11 @@
# all available.
#
-Proportional() {
- echo "/unitwidth $UNITWIDTH def"
- echo "/resolution $RESOLUTION def"
- echo "/octalescapes $OCTALESCAPES def"
- echo "/charset ["
+fn Proportional {
+ echo /unitwidth $UNITWIDTH def
+ echo /resolution $RESOLUTION def
+ echo /octalescapes $OCTALESCAPES def
+ echo '/charset ['
# Get <>_ and | from S. Use accents for ascii ^ and ~.
StandardCharset | awk '
$1 == "(<)" && $2 == "/less" {$1 = "(---)"}
@@ -1087,118 +1077,118 @@
}
{printf "%s\t%s\n", $1, $2}
'
- echo "] def"
+ echo '] def'
Latin1 $2
- echo "/$2 SelectFont"
- echo "(opO) SetAscender"
+ echo /$2 SelectFont
+ echo '(opO) SetAscender'
- echo "(name $1\\\\n) Print"
- echo "(fontname $2\\\\n) Print"
- echo "/$1 NamedInPrologue"
- echo "(spacewidth ) Print 32 GetWidth Print (\n) Print"
- echo "(charset\\\\n) Print"
- echo "BuildFontCharset"
+ echo '(name '^$1^'\n) Print'
+ echo '(fontname '^$2^'\n) Print'
+ echo /$1 NamedInPrologue
+ echo '(spacewidth ) Print 32 GetWidth Print (\n) Print'
+ echo '(charset\n) Print'
+ echo BuildFontCharset
}
-FixedWidth() {
- echo "/unitwidth $UNITWIDTH def"
- echo "/resolution $RESOLUTION def"
- echo "/octalescapes $OCTALESCAPES def"
- echo "/charset ["
+fn FixedWidth {
+ echo '/unitwidth $UNITWIDTH def'
+ echo '/resolution $RESOLUTION def'
+ echo '/octalescapes $OCTALESCAPES def'
+ echo '/charset ['
StandardCharset
- echo "] def"
+ echo '] def'
Latin1 $2
- echo "/$2 SelectFont"
- echo "(opO) SetAscender"
+ echo /$2 SelectFont
+ echo '(opO) SetAscender'
- echo "(name $1\\\\n) Print"
- echo "(fontname $2\\\\n) Print"
- echo "/$1 NamedInPrologue"
- echo "(spacewidth ) Print 32 GetWidth Print (\n) Print"
- echo "(charset\\\\n) Print"
- echo "BuildFontCharset"
+ echo '(name '^$1^'\n) Print'
+ echo '(fontname '^$2^'\n) Print'
+ echo /$1 NamedInPrologue
+ echo '(spacewidth ) Print 32 GetWidth Print (\n) Print'
+ echo '(charset\n) Print'
+ echo BuildFontCharset
}
-Dingbats() {
- echo "/unitwidth $UNITWIDTH def"
- echo "/resolution $RESOLUTION def"
- echo "/octalescapes $OCTALESCAPES def"
- echo "/charset ["
+fn Dingbats {
+ echo '/unitwidth $UNITWIDTH def'
+ echo '/resolution $RESOLUTION def'
+ echo '/octalescapes $OCTALESCAPES def'
+ echo '/charset ['
DingbatsCharset | awk '$1 != "(---)" && $2 ~ /^\/[a-zA-Z]/ {
printf "%s\tISOLatin1Encoding %s GetCode\n", $1, $2
}'
- echo "] def"
+ echo '] def'
- echo "/$2 SelectFont"
- echo "( ) SetAscender"
+ echo /$2 SelectFont
+ echo '( ) SetAscender'
- echo "(name $1\\\\n) Print"
- echo "(fontname $2\\\\n) Print"
- echo "/$1 NamedInPrologue"
- echo "(charset\\\\n) Print"
- echo "BuildFontCharset"
+ echo '(name '^$1^'\n) Print'
+ echo '(fontname '^$2^'\n) Print'
+ echo /$1 NamedInPrologue
+ echo '(charset\n) Print'
+ echo BuildFontCharset
}
-Greek() {
- echo "/unitwidth $UNITWIDTH def"
- echo "/resolution $RESOLUTION def"
- echo "/charset ["
+fn Greek {
+ echo /unitwidth $UNITWIDTH def
+ echo /resolution $RESOLUTION def
+ echo /charset [
SymbolCharset | awk '
BEGIN {hit = -1}
$1 ~ /\(\*[a-zA-Z]\)/ {print; hit = NR}
$2 == "(\")" && hit == NR-1 {print; hit = NR}
'
- echo "] def"
+ echo ] def
- echo "/$2 SelectFont"
- echo "(orO) SetAscender"
+ echo /$2 SelectFont
+ echo '(orO) SetAscender'
- echo "(name $1\\\\n) Print"
- echo "(fontname $2\\\\n) Print"
- echo "/$1 NamedInPrologue"
- echo "(spacewidth ) Print 32 GetWidth Print (\n) Print"
- echo "(charset\\\\n) Print"
- echo "BuildFontCharset"
+ echo '(name '^$1^'\n) Print'
+ echo '(fontname '^$2^'\n) Print'
+ echo /$1 NamedInPrologue
+ echo '(spacewidth ) Print 32 GetWidth Print (\n) Print'
+ echo '(charset\n) Print'
+ echo BuildFontCharset
}
-Symbol() {
- echo "/unitwidth $UNITWIDTH def"
- echo "/resolution $RESOLUTION def"
- echo "/charset ["
+fn Symbol {
+ echo /unitwidth $UNITWIDTH def
+ echo /resolution $RESOLUTION def
+ echo /charset [
SymbolCharset
- echo "] def"
+ echo ] def
- echo "ChangeMetrics"
- echo "/S SelectFont"
- echo "(orO) SetAscender"
+ echo ChangeMetrics
+ echo /S SelectFont
+ echo '(orO) SetAscender'
- echo "(name $1\\\\n) Print"
- echo "(fontname $2\\\\n) Print"
- echo "/$1 NamedInPrologue"
- echo "(special\\\\n) Print"
- echo "(charset\\\\n) Print"
- echo "BuildFontCharset"
+ echo '(name '^$1^'\n) Print'
+ echo '(fontname '^$2^'\n) Print'
+ echo /$1 NamedInPrologue
+ echo '(special\n) Print'
+ echo '(charset\n) Print'
+ echo BuildFontCharset
}
-Special() {
- echo "/unitwidth $UNITWIDTH def"
- echo "/resolution $RESOLUTION def"
- echo "/charset ["
+fn Special {
+ echo /unitwidth $UNITWIDTH def
+ echo /resolution $RESOLUTION def
+ echo /charset [
SpecialCharset
- echo "] def"
+ echo ] def
- echo "ChangeMetrics"
- echo "/S1 SelectFont"
+ echo ChangeMetrics
+ echo /S1 SelectFont
- echo "(# Times-Roman special font\\\\n) Print"
- echo "(name $1\\\\n) Print"
- echo "(fontname $2\\\\n) Print"
- echo "/$1 NamedInPrologue"
- echo "(special\\\\n) Print"
- echo "(charset\\\\n) Print"
- echo "BuildFontCharset"
+ echo '(# Times-Roman special font\n) Print'
+ echo '(name '^$1^'\n) Print'
+ echo '(fontname '^$2^'\n) Print'
+ echo /$1 NamedInPrologue
+ echo '(special\n) Print'
+ echo '(charset\n) Print'
+ echo BuildFontCharset
}
#
@@ -1206,33 +1196,31 @@
# consistency.
#
-Description() {
- echo "/charset [" # awk - so the stack doesn't overflow
+fn Description {
+ echo /charset [ # awk - so the stack doesn't overflow
StandardCharset | awk '$1 !~ /\(\\[0-9]/ {print $1}'
SymbolCharset | awk '$1 !~ /\(\\[0-9]/ {print $1}'
SpecialCharset | awk '$1 !~ /\(\\[0-9]/ {print $1}'
- echo "] def"
+ echo ] def
- cat <<-//DESC
- (#Device Description - utf character set
+ echo '(#Device Description - utf character set
- PDL PostScript
- Encoding Latin1
+PDL PostScript
+Encoding Latin1
- fonts 10 R I B BI CW H HI HB S1 S
- sizes 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
- 23 24 25 26 27 28 29 30 31 32 33 34 35 36 38 40 42 44 46
- 48 50 52 54 56 58 60 64 68 72 78 84 90 96 100 105 110 115
- 120 125 130 135 140 145 150 155 160 0
- res $RESOLUTION
- hor 1
- vert 1
- unitwidth $UNITWIDTH
+fonts 10 R I B BI CW H HI HB S1 S
+sizes 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
+23 24 25 26 27 28 29 30 31 32 33 34 35 36 38 40 42 44 46
+48 50 52 54 56 58 60 64 68 72 78 84 90 96 100 105 110 115
+120 125 130 135 140 145 150 155 160 0
+res $RESOLUTION
+hor 1
+vert 1
+unitwidth $UNITWIDTH
- //DESC
- echo "(charset\\\\n) Print"
- echo "BuildDescCharset"
- echo "(\\\\n) Print"
+) Print'
+ echo '(charset\n) Print'
+ echo BuildDescCharset
+ echo '(\n) Print'
}
--- a/sys/src/cmd/postscript/trofftable/trofftable.1.man
+++ b/sys/src/cmd/postscript/trofftable/trofftable.1.man
@@ -1,46 +1,63 @@
-.ds dF /usr/lib/font
-.ds dQ /usr/lib/postscript
-.TH TROFFTABLE 1 "DWB 3.2"
+.ds dF /sys/lib/troff/font
+.ds dQ /sys/lib/postscript/prologues
+.TH TROFFTABLE 1
.SH NAME
-.B trofftable
-\- output a PostScript program that builds a font width table
+trofftable \- output a PostScript program that builds a font width table
.SH SYNOPSIS
-\*(mBtrofftable\f1
-.OP "" options []
-.OP "" shortname
-.OP "" longname []
-.SH DESCRIPTION
.B trofftable
+[
+.B -t
+.I name
+] [
+.B -C
+.I file
+] [
+.B -H
+.I hostdir
+] [
+.B -L
+.I file
+] [
+.B -S
+.I file
+] [
+.B -T
+.I name
+]
+.I shortname
+[
+.I longname
+]
+.SH DESCRIPTION
+.I Trofftable
writes a PostScript program on the standard output that builds a
font width table or typesetter description file.
-The following
-.I options
-are understood:
-.TP 1.0i
-.OP \-t name
+The following options are understood:
+.TP
+.BI -t " name"
Use
.I name
as the template for fonts not in the default set.
Choose
-.MW R
+.B R
for proportionally spaced fonts and
-.MW CW
+.B CW
for fixed width fonts.
Try
-.MW ZD
+.B ZD
(ZapfDingbats) if the font has a non-standard
character set.
The default is
-.MR R .
-.TP 1.0i
-.OP \-C file
+.BR R .
+.TP
+.BI -C " file"
Copy
.I file
into each PostScript table program;
.I file
must contain legitimate PostScript.
-.TP 1.0i
-.OP \-H hostdir
+.TP
+.BI -H " hostdir"
Use
.I hostdir
as the host resident font directory.
@@ -50,24 +67,24 @@
resident font program and is included in the PostScript width
table program.
There is no default.
-.TP 1.0i
-.OP \-L file
+.TP
+.BI -L " file"
Use
.I file
as the PostScript prologue.
.br
The default is
-.MW \*(dQ/trofftable.ps
-.TP 1.0i
-.OP \-S file
+.B \*(dQ/trofftable.ps
+.TP
+.BI -S " file"
Use
.I file
as the shell library file.
Overrides the choice made with the
-.OP \-T
+.B -T
option.
-.TP 1.0i
-.OP \-T name
+.TP
+.BI -T " name"
Set the target device to
.IR name .
Device
@@ -74,31 +91,31 @@
.I name
means
.br
-.MI \*(dF/dev name /shell.lib
+.BI \*(dF/dev name /shell.lib
is the shell library file.
There is no default.
.PP
One of
-.OP \-T
+.B -T
or
-.OP \-S
+.B -S
is required.
If both are given
-.OP \-S
+.B -S
wins.
Either
-.OP \-H
+.B -H
or
-.OP \-C
+.B -C
can be used to include a host resident font.
.PP
The shell library file defines a collection of functions used to
build troff tables.
The default set of tables is the list of names returned by the
-.MW AllTables
+.B AllTables
function.
Changes to the default list can be made by updating the
-.MW BuiltinTables
+.B BuiltinTables
function.
.PP
.I Shortname
@@ -112,16 +129,16 @@
.I shortname
is a default table name.
PostScript table programs created by
-.B trofftable
+.I trofftable
return data to the host computer using PostScript's
-.MW print
+.B print
operator.
See
-.BR hardcopy (1)
+.IR hardcopy (1)
if you don't have access to the printer's serial port.
.SH EXAMPLES
Get the PostScript program that builds a width table for font
-.MR R :
+.BR R :
.EX
trofftable -Tpost R >R.ps
.EE
@@ -133,9 +150,9 @@
.EE
A font must be available on the printer when the table is built.
Use
-.OP \-H
+.B -H
or
-.OP \-C
+.B -C
to include host resident fonts.
.SH WARNINGS
A width table will not build properly if the printer cannot access
@@ -142,23 +159,23 @@
the PostScript font.
.PP
The
-.OP -TLatin1
+.B -TLatin1
option only works on PostScript printers that support the full
.SM ISO
Latin-1 character set.
The error message from older printers will likely indicate a missing
-.MW ISOLatin1Encoding
+.B ISOLatin1Encoding
array.
.SH FILES
-.MW \*(dF/dev*/shell.lib
+.B \*(dF/dev*/shell.lib
.br
-.MW \*(dQ/dpost.ps
+.B \*(dQ/dpost.ps
.br
-.MW \*(dQ/trofftable.ps
+.B \*(dQ/trofftable.ps
.SH SEE ALSO
-.BR dpost (1),
-.BR hardcopy (1),
-.BR postio (1),
-.BR troff (1),
-.BR buildtables (1),
-.BR font (5)
+.IR dpost (1),
+.IR hardcopy (1),
+.IR postio (1),
+.IR troff (1),
+.IR buildtables (1),
+.IR font (5)
--- a/sys/src/cmd/postscript/trofftable/trofftable.rc
+++ b/sys/src/cmd/postscript/trofftable/trofftable.rc
@@ -5,6 +5,8 @@
# serial port. Try hardcopy if you don't have access to the port.
#
+rfork e
+
POSTLIB=/sys/lib/postscript/prologues
FONTDIR=/sys/lib/troff/font
@@ -15,7 +17,7 @@
HOSTFONTDIR=()
DEVICE=()
LIBRARY=()
-TEMPLATE=-R
+TEMPLATE=R
SLOWDOWN=25
STARTCOMMENTS=256
@@ -28,8 +30,8 @@
while (! ~ $#* 0 && ~ $1 -*) {
switch ($1) {
- case -C; shift; COPYFILE=$COPYFILE' '$1
- case -C*; COPYFILE=$COPYFILE' '`{echo $1 | sed s/-C//}
+ case -C; shift; COPYFILE=($COPYFILE $1)
+ case -C*; COPYFILE=($COPYFILE `{echo $1 | sed s/-C//})
case -F; shift; FONTDIR=$1
case -F*; FONTDIR=`{echo $1 | sed s/-F//}
@@ -63,7 +65,7 @@
shift
}
-if (! ~ $#DEVICE 0 && ! ~ $#LIBRARY 0) {
+if (~ $#DEVICE 0 && ~ $#LIBRARY 0) {
echo $0: no device or shell library >[1=2]
exit 1
}
@@ -73,8 +75,8 @@
exit 1
}
-if (test -d $HOSTFONTDIR -a -f $HOSTFONTDIR/$1) {
- COPYFILE=$COPYFILE' '$HOSTFONTDIR/$1
+if (! ~ $#HOSTFONTDIR 0 && test -d $HOSTFONTDIR -a -f $HOSTFONTDIR/$1) {
+ COPYFILE=($COPYFILE $HOSTFONTDIR/$1)
}
#
@@ -81,20 +83,23 @@
# Include the shell library and get the command used to build the table.
# Make awk call a separate library function??
#
-if (~ $#LIBRARY 0 || ~ $LIBRARY '') LIBRARY=$FONTDIR/dev$DEVICE/shell.lib
+if (~ $#LIBRARY 0) LIBRARY=$FONTDIR/dev$DEVICE/shell.lib
. $LIBRARY
if (~ $#* 1) TEMPLATE=$1
+if (~ $#* 2) pname=$2
+if not pname=''
+
CMD=`{BuiltinTables | awk '$2 == template"" {
if ( pname == "" )
pname = $3
printf "%s %s %s", $1, tname, pname
exit 0
-}' template=$TEMPLATE tname=$1 pname=$2}
+}' 'template='$TEMPLATE 'tname='$1 'pname='$pname}
-if (! $CMD) {
+if (~ $#CMD 0) {
echo $0: $TEMPLATE not found >[1=2]
exit 1
}
@@ -111,8 +116,8 @@
echo $ENDPROLOG
echo $BEGINSETUP
-if (~ $COPYFILE '') COPYFILE=/dev/null
-cat $COPYFILE
+if (! ~ $#COPYFILE 0)
+ cat $COPYFILE
echo /slowdown $SLOWDOWN def
echo /startcomments $STARTCOMMENTS def
echo $ENDSETUP
@@ -120,4 +125,3 @@
$CMD
echo $TRAILER
-