MACINTOSH KERMIT FONTS: PROPOSED DESIGN

  Frank da Cruz, Columbia University

  Last update: Wed Jun  3 11:38:28 1992

The present Mac Kermit font (Mac Kermit version 0.99(94) and earlier) has
numerous problems: it's ugly; it doesn't scale well (or at all) to sizes other
than 9 or 18 points; its code points for accented letters and other special
characters don't agree with standard (or more precisely, Quickdraw) encoding;
and it is internal to Mac Kermit only, so (a) can't be seen from keycaps, and
(b) can't be used by other applications.

The goal is to replace Mac Kermit's built-in font with a new one that can
be used for true international-version VT320 emulation:

 1. Built into Mac Kermit, but also available as an external font for use
    with other applications, by Keycaps, etc.

 2. Available in a variety of sizes (such as 7, 9, 10, 12, 14, and 18).

 3. Contains all the characters of ASCII, ISO 8859-1 Latin Alphabet 1, and the
    DEC Multinational Character Set, as well as the characters of all the
    7-bit National Replacement Character sets (NRCs) supported by the VT320:
    British, Canadian French, Dutch, Norwegian, German, Finnish, etc etc,
    most of which are also in Latin-1.

 4. The code points of the characters in (3) correspond to the code points
    for the same characters in the Apple Quickdraw character set, so (for
    example) Kermit-font international text, when converted to (say) Courier,
    will still read correctly (a-grave will still be a-grave), at least for
    all the characters that the two sets have in common.

 5. The invertible mapping between Latin-1 and the text portion of the Mac
    Kermit character set will be used for both terminal emulation and file
    transfer.  The full translation must be invertible over all 256 bytes.

 6. DEC Special Graphics, DEC Technical Set, and "display controls" characters
    must be available, and mixable on the same screen with text font.

 7. Screen fonts should be ordinary bitmap fonts for compatibility with old
    System versions, etc.  Printer fonts are Type-1 PostScript fonts.  There
    should be no dependence on System 7, Suitcase, TrueType, etc etc.

 8. Regular and bold versions are needed.  (Note: Mac Kermit's present
    VT100 font also has an Italic style, which is used in lieu of the VT100
    "blinking" character attribute -- I don't know why.)

This document proposes such a character set and font.  It is hoped that Apple
will recognize this (perhaps in amended form after discussion and further
work) as the official representation for Latin-1 on the Mac, to promote
interoperability with other Mac applications that need a Latin-1 character
set.  Or else Apple should publish its own official Latin-1/Mac mapping.

THE MACINTOSH KERMIT VT TERMINAL EMULATION FONT

On the Mac, a font is a particular character set (Standard, Quickdraw, Symbol,
or other) rendered in a particular style, with variants for italic, bold,
underlined, shadow, etc.  A font may have at most 256 elements.

A major problem we face right now is that Mac Kermit's "VT100" font is not
encoded like other Mac fonts.  So even if you manage to get a correct-looking
display of your Swedish or French text on the screen, if you change the font
from VT100 to (say) Courier, all the accented characters become garbage.  We
have to recode Mac Kermit's fonts to remove this problem.

We can't just substitute, say, Courier for Mac Kermit's VT100 fonts because
Courier lacks certain characters from Latin-1.  And we also have to support VT
terminal characters that aren't available in any Mac fonts.

For the current level of terminal emulation, we need to support ASCII (95
graphic characters, including space) plus Latin-1 (96), plus DEC Special
Graphics (33) plus DEC Technical (94), plus Display Controls (64) = 382
characters.  In addition, we might also wish to support DEC MCS, which is
identical to Latin-1, except it includes OE/oe ligatures instead of multiply
and divide signs, and lacks the Icelandic characters and several others.  This
would raise the total number of characters needed by Mac Kermit to about 384.

We also want a complete set of "display controls".  These are graphic
representations for each control character that fit in a single character
cell, for example a small "CR" to represent Carriage Return, a small "LF"
to represent Linefeed.  A Display Control character is made of two small
characters representing an abbreviation of the control character mnemonic,
arranged like this within the character cell:

  +--+
  |L |
  | F|
  +--+

ISO Standard 6429 names and describes the 8-bit control characters used by the
VT200-300 series of terminals.  These are also listed in the VT200-300 series
manuals.  The complete list of display controls is found in these manuals.
For the C1 display controls, DEC simply uses the hex value 80, 80, ... 9F, for
example:

  +--+
  |9 |
  | F|
  +--+

Thus there are 65 display control characters: 0-31, 127-159.

All the required characters can be represented using only two encodings/fonts.
Here is a possible design.

Font "A" (Let's call it Macintosh Extended Latin).  This is the "text font".

 . Characters 0 through 31 and 127 are display controls.

 . Characters 32 through 126 are ASCII.

 . Characters 128 through 255 are as follows:

   Characters from Latin-1 and DEC-MCS that also exist in QuickDraw encoding
   use the QuickDraw encodings.  Merge SPACE and NO-BREAK SPACE for the
   purposes of display -- they look the same.  Define all remaining Quickdraw
   positions as "unused".  There are 47 of these.

   Characters from Latin-1 and DEC-MCS that do NOT exist in QuickDraw are
   created and inserted in unused positions, rendered in the same style.
   These are:  

   ISO Name              PostScript name
     broken vertical bar   /brokenbar
     superscript 1         /onesuperior
     superscript 2         /twosuperior
     superscript 3         /threesuperior
     fraction 1/4          /onequarter
     fraction 1/2          /onehalf
     fraction 3/4          /threequarters
     Icelandic thorn       /Thorn, /thorn
     Icelandic eth         /Eth, /eth
     Y-acute               /Yacute, /yacute
     Multiply              /multiply

   This makes a total of 14 characters.  47-14 = 33, enough for
   The C1 controls, which should be left undefined.

Font "X" ("VT Special?"): VT special graphic characters, display controls, etc:

The DEC Special Graphics set is a 7-bit 94-character set identical to ASCII
except in columns 6 and 7, so 32 new characters are needed: box corners,
diamond, plus/minus, less-equal, greater-equal, not-equal, etc, plus character
137 (5/15) is blank instead of underline.  It is described in all DEC terminal
manuals, VT100 and later.  This set is currently supported by Mac Kermit.  The
final character of the designation sequence is "0".  Because it is a 94-byte
set, it can be designated to any of G0..G3:

  ESC ( 0 designates the DEC Special Graphics set to G0
  ESC ) 0 designates the DEC Special Graphics set to G1
  ESC * 0 designates the DEC Special Graphics set to G2
  ESC + 0 designates the DEC Special Graphics set to G3

The DEC Technical Set, which is also currently supported by Mac Kermit, is
described in the DEC VT320 and 340 Programmer Reference Manual, Volume 1,
page 27, Figure 2-8.  It is a 94-byte set that can be designated to any of
G0..G3.  The final character of the designation sequence is ">":

  ESC ( > designates the DEC Technical set to G0
  ESC ) > designates the DEC Technical set to G1
  ESC * > designates the DEC Technical set to G2
  ESC + > designates the DEC Technical set to G3

NOTE: the DEC Special Graphics and Technical character sets and final
character of their designation sequences are NOT registered with the ISO, and
therefore the final characters "0" or ">" might conflict with those of a
registered set.

So "Font X" can have the following very natural layout:

    0-31:   C0 Display Controls (NU, SH, SX, ... US)
   32-126:  DEC Special Graphics (32-94 are the same as ASCII)
  127:      Display control for Delete
  128-159:  C1 Display Controls (hex)
  160:      UNDEFINED
  161-254:  DEC Technical Set
  255:      Display control for 127 (DT).

This design means that Kermit's internal terminal character set translations
will also have to change.  Kermit will now have to translate characters during
the terminal i/o process (port to screen, keyboard to port).  It will NOT have
to translate during print-screen or cut-and-paste operations.

The display-control graphics are used only when the user has checked the
"Symbolic Control Characters" box in Mac Kermit's Terminal Settings dialog.

When the user selects a different font from the font menu, that font replaces
only Font A -- Font X is always loaded internally, and selectable by menu
assignment or host escape sequence (e.g. ESC ( 0 for DEC Special Graphics).
Kermit's normal mappings and translations continue to apply to Font A
characters, so it's up to the user to pick a font that makes sense, or check
"terminal character-set transparent".  This is a nice feature because it
allows users to extend Kermit to support additional character sets just by
selecting new fonts (as Font A) in Kermit's Font menu, and still maintain VT
terminal compatibility, display controls, etc.

Using this design, it should be easy to add support for other 8-bit sets: for
example, Font B might be based on ISO 8859-2: "simply" copy Font A and replace
characters 160-255 with those from Latin-2, retaining the greatest possible
encoding correspondence with whatever Macintosh encoding is used in Eastern
Europe (if any).

ENCODING

Here is a list of the characters of ISO 8859-1 Latin Alphabet 1 and the
corresponding codes in the Apple QuickDraw character set:

ISO Name               Latin-1 QuickDraw
--------------------   ------- ---------
No-break space           160      202
Inverted exclamation     161      193
Cent sign                162      162
Pound sign               163      163
Currency sign            164      219
Yen sign                 165      180
Broken bar               166       - 
Paragraph sign           167      164
Diaeresis                168      172
Copyright sign           169      169
Feminine ordinal         170      187
Left angle quotation     171      199
Not sign                 172      194
Soft hyphen              173       - 
Registered trade mark    174      168
Macron                   175      248
Degree sign, ring above  176      161
Plus-minus sign          177      177
Superscript two          178       - 
Superscript three        179       - 
Acute accent             180      171
Micro sign               181      181
Pilcrow sign             182      166
Middle dot               183      225
Cedilla                  184      252
Superscript one          185       - 
Masculine ordinal        186      188
Right angle quotation    187      200
One quarter              188       - 
One half                 189       - 
Three quarters           190       - 
Inverted question mark   191      192
A grave                  192      203
A acute                  193      231
A circumflex             194      229
A tilde                  195      204
A diaeresis              196      128
A ring above             197      129
A with E                 198      174
C Cedilla                199      130
E grave                  200      233
E acute                  201      131
E circumflex             202      230
E diaeresis              203      232
I grave                  204      237
I acute                  205      234
I circumflex             206      235
I diaeresis              207      236
Icelandic Eth            208       - 
N tilde                  209      132
O grave                  210      241
O acute                  211      238
O circumflex             212      239
O tilde                  213      205
O diaeresis              214      133
Multiplication sign      215       - 
O oblique stroke         216      175
U grave                  217      244
U acute                  218      242
U circumflex             219      243
U diaeresis              220      134
Y acute                  221       - 
Icelandic Thorn          222       - 
German sharp s           223      167
a grave                  224      136
a acute                  225      135
a circumflex             226      137
a tilde                  227      139
a diaeresis              228      138
a ring above             229      140
a with e                 230      190
c cedilla                231      141
e grave                  232      143
e acute                  233      142
e circumflex             234      144
e diaeresis              235      145
i grave                  236      147
i acute                  237      146
i circumflex             238      148
i diaeresis              239      149
Icelandic eth            240       - 
n tilde                  241      150
o grave                  242      152
o acute                  243      151
o circumflex             244      153
o tilde                  245      155
o diaeresis              246      154
Division sign            247      214
o oblique stroke         248      191
u grave                  249      157
u acute                  250      156
u circumflex             251      158
u diaeresis              252      159
y acute                  253       - 
Icelandic thorn          254       - 
y diaeresis              255      216

To allow both Latin-1 and DEC MCS terminal character sets, we should also
include the OE/oe ligature, which occupies the same code points in DEC MCS
as the Latin-1 division and multiplication signs:

DEC-MCS OE digraph      (215)     206      206
DEC-MCS oe digraph      (247)     207      207

This leaves us with the following empty QuickDraw code points:

 1. 160    Dagger
 2. 165    Center Dot (fat)
 3. 170    TM (not circled)
 4. 173    Not equals
 5. 176    Infinity
 6. 178    <=
 7. 179    >=
 8. 182    delta
 9. 183    Sigma
10. 184    Pi
11. 185    pi
12. 186    Integral
13. 189    Omega
14. 195    Radical
15. 196    Florin
16. 197    Approx =
17. 198    Delta
18. 201    Ellipsis
19. 208    En-dash
20. 209    Em-dash
21. 210    Left doublequote
22. 211    Right doublequote
23. 212    Left singlequote
24. 213    Right singlequote
25. 215    Diamond
26. 217    Y diaeresis
27. 218    Slash
28. 220    Left angle bracket
29. 221    Right angle bracket
30. 222    fi ligature
31. 223    fl ligature
32. 224    Double dagger
33. 226    Baseline singlequote
34. 227    Baseline doublequote
35. 228    Per mil
36. 240    Apple
37. 245    i-dotless
38. 246    Circumflex
39. 247    Tilde
40. 249    Breve
41. 250    Dot accent
42. 251    Ring above
43. 253    Hungarian umlaut
44. 254    Ogonek
45. 255    Caron

We need to assign code points for the 15 characters from Latin-1 that do not
exist in QuickDraw.  45 free code points are available, leaving 30 free after
we make these assignments.

Here is a possible mapping of the Latin-1 characters that are not part of the
QuickDraw character set.  The mappings are chosen so as to replace the most
"useless" QuickDraw characters, reserving others that might be used in some
future terminal or file character set for possible future use, and also to use
the closest available QuickDraw characters in the few cases where it is
desirable to show something reasonable in case the user displays a "Font A"
file in (say) Courier/QuickDraw (such as center dot in place of multiply).
The Icelandic Thorn and Eth characters are placed at the same positions that
Apple uses on its Icelandic-model Macs.

Name                   Latin-1  Font-A  Postscript (for printer font)
                       -------  ------  -----------------------------
No break space           160      202    /space
Broken bar               166      160    /brokenbar
Soft hyphen              173      208    /hyphen
Superscript two          178      170    /twosuperior
Superscript three        179      173    /threesuperior
Superscript one          185      176    /onesuperior
One quarter              188      178    /onequarter
One half                 189      179    /onehalf
Three quarters           190      186    /threequarters
Icelandic Eth            208      220    /Eth
Multiplication sign      215      165    /multiply
Y acute                  221      160    /Yacute
Icelandic Thorn          222      222    /Thorn
Icelandic eth            240      221    /eth
y acute                  253      224    /yacute
Icelandic thorn          254      223    /thorn

This leaves 30 codes still free.  Whatever mapping we choose, it should be the
same as the file transfer character-set mapping, so we can cut and paste
terminal screens and transfer files with the same results.

I learned (the hard way, and with help from Bur Davis at Adobe) that when
constructing a Courier-based PostScript Latin-1 font, certain characters that
are not actually used in Latin-1 must still be present in the font, otherwise
many Latin-1 characters themselves cannot be printed on certain kinds of
PostScript printers (see kermit/charsets/textps.c on watsun).

The problem is that in early versions of PostScript (pre-47.0, I think),
Courier was a "stroke font", in which many of the accented characters are
composed from other characters (for example, i-grave = i-dotless + grave).
Thus dotless i and the various accents must be present in the font.  So if our
printer font were to be like Courier, we must allocate at least the following
from our 30 free positions.  The suggested encodings are QuickDraw encodings
when the character is part of the QuickDraw character set, otherwise they are
chosen arbitrarily (*).

                  Suggested
  Name            Encoding     PostScript     Remarks
  ------------    --------     ----------     -------
  Grave accent      197*       /grave         Not in QuickDraw
  Dotless i         245        /dotlessi      
  Circumflex        246        /circumflex
  Tilde             247        /tilde         Not the same as /asciitilde
  Ring above        251        /ring

For future expansion into other Roman-based language groups (East European,
etc), we should also include:

                  Suggested
  Name            Encoding     PostScript     Remarks
  ------------    --------     ----------     -------
  Breve             249        /breve
  Caron             255        /caron
  Ogonek            254        /ogonek  
  Hungarian Umlaut  253        /hungarumlaut
  Dot accent        250        /dotaccent
  L with stroke     220*       /Lslash        Not in QuickDraw
  l with stroke     221*       /lslash        Not in QuickDraw

And for compatibility with the Dutch ISO 646 variant as well as various
proprietary host character sets (like Data General):

  Florin sign       196        /florin

For a total of 14 more characters, reducing our free positions from 30 to 16.

The printer version of Font A should be easy to create: it's simply a
PostScript encoding vector -- the characters are already known to PostScript.
The printer version of Font X will have to be printed as a bit map screen font.

COMPLETE LISTING OF MAC KERMIT TEXT FONT ENCODING

When a character does not appear in Quickdraw, the corresponding Quickdraw
character is named in the rightmost column to show the effect of font changes
between Mac Extended Latin and purely Quickdraw-based fonts.

When a character does not appear in Latin-1, it is marked with a "*" in the
Latin column.  All such characters are assigned to the C1 area (128-159).

The PostScript character name is given to facilitate construction of a Mac
Extended Latin PostScript font.

The following table produces an invertible translation between Mac Extended
Latin and Latin Alphabet 1.  Sixteen character positions remain unused and
undefined, and may be used for future expansion.

Code   Character Name         PostScript Name   Apple  Latin   Quickdraw

128    A diaeresis              /Adieresis       128    196
129    A ring above             /Aring           129    197
130    C Cedilla                /Ccedilla        130    199
131    E acute                  /Eacute          131    201
132    N tilde                  /Ntilde          132    209
133    O diaeresis              /Odieresis       133    214
134    U diaeresis              /Udieresis       134    220
135    a acute                  /aacute          135    225
136    a grave                  /agrave          136    224
137    a circumflex             /acircumflex     137    226
138    a diaeresis              /adieresis       138    228
139    a tilde                  /atilde          139    227
140    a ring above             /aring           140    229
141    c cedilla                /ccedilla        141    231
142    e acute                  /eacute          142    233
143    e grave                  /egrave          143    232
144    e circumflex             /ecircumflex     144    234
145    e diaeresis              /edieresis       145    235
146    i acute                  /iacute          146    237
147    i grave                  /igrave          147    236
148    i circumflex             /icircumflex     148    238
149    i diaeresis              /idieresis       149    239
150    n tilde                  /ntilde          150    241
151    o acute                  /oacute          151    243
152    o grave                  /ograve          152    242
153    o circumflex             /ocircumflex     153    244
154    o diaeresis              /odieresis       154    246
155    o tilde                  /otilde          155    245
156    u acute                  /uacute          156    250             
157    u grave                  /ugrave          157    249
158    u circumflex             /ucircumflex     158    251
159    u diaeresis              /udieresis       159    252
160    Y acute                  /Yacute          ---    221    Ellipsis
161    Degree sign, ring above  /ring            161    176
162    Cent sign                /cent            162    162
163    Pound sign               /sterling        163    163
164    Paragraph (section) sign /section         164    167
165    Multiplication sign      /multiply        ---    215    Middle Dot
166    Pilcrow sign             /paragraph       166    182
167    German sharp s           /germandbls      167    223
168    Registered trade mark    /registered      168    174
169    Copyright sign           /copyright       169    169
170    Superscript two          /twosuperior     ---    178    TM
171    Acute accent             /acute           171    180
172    Diaeresis                /dieresis        172    168
173    Superscript three        /threesuperior   ---    179    Not equal
174    A with E                 /AE              174    198
175    O oblique stroke         /Oslash          175    216
176    Superscript one          /onesuperior     ---    185    Infinity
177    Plus-minus sign          /plusminus       177    177
178    One quarter              /onequarter      ---    188    Less-equal
179    One half                 /onehalf         ---    189    Greater-equal
180    Yen sign                 /yen             180    165
181    Micro sign               /mu              181    181
182      UNUSED                                  ---    128 *  delta
183      UNUSED                                  ---    129 *  Sigma
184      UNUSED                                  ---    130 *  Pi
185      UNUSED                                  ---    131 *  pi
186    Three quarters           /threequarters   ---    190    Integral
187    Feminine ordinal         /ordfeminine     187    170
188    Masculine ordinal        /ordmasculine    188    186
189      UNUSED                                  ---    132 *  Omega
190    a with e                 /ae              190    230
191    o oblique stroke         /oslash          191    248
192    Inverted question mark   /questiondown    192    191
193    Inverted exclamation     /exclamdown      193    161
194    Not sign                 /logicalnot      194    172
195    L with stroke            /Lslash          ---    142 *  L.Anglebracket
196    Florin sign              /florin          196    133 *
197    Grave accent             /grave           ---    134 *  Approx-equal
198      UNUSED                                  ---    135 *  Delta
199    Left angle quotation     /guillemotleft   199    171
200    Right angle quotation    /guillemotright  200    187
201    Broken bar               /brokenbar       ---    166    Dagger
202    No break space           /space           ---    160    Word space
203    A grave                  /Agrave          203    192
204    A tilde                  /Atilde          204    195
205    O tilde                  /Otilde          205    213
206    OE digraph               /OE              206    136 *
207    oe digraph               /oe              207    137 *
208    Soft hyphen              /hyphen          ---    173    En-dash
209      UNUSED                                  ---    144 *  fi ligature
210      UNUSED                                  ---    138 *  L.Doublequote
211      UNUSED                                  ---    139 *  R.Doublequote
212    l with stroke            /lslash          ---    143 *  R.Anglebracket
213      UNUSED                                  ---    146 *  Double dagger
214    Division sign            /divide          214    247
215      UNUSED                                  ---    145 *  fl ligature
216    y diaeresis              /ydieresis       216    255
217    Y diaeresis                               ---    140 *  Y diaeresis
218      UNUSED                                  ---    141 *  Slash
219    Currency sign            /currency        219    164
220    Icelandic Eth            /Eth             ---    208    Radical
221    Icelandic eth            /eth             ---    240    L.Singlequote
222    Icelandic Thorn          /Thorn           ---    222    Em-dash
223    Icelandic thorn          /thorn           ---    254    Diamond
224    y acute                  /yacute          ---    253    R.Singlequote
225    Middle dot               /bullet          225    183
226      UNUSED                                  ---    147 *  Base singlequote
226      UNUSED                                  ---    148 *  Base doublequote
228      UNUSED                                  ---    149 *  Per mil
229    A circumflex             /Acircumflex     229    194
230    E circumflex             /Ecircumflex     230    202
231    A acute                  /Aacute          231    193
232    E diaeresis              /Edieresis       232    203
233    E grave                  /Egrave          233    200
234    I acute                  /Iacute          234    205
235    I circumflex             /Icircumflex     235    206
236    I diaeresis              /Idieresis       236    207
237    I grave                  /Igrave          237    204
238    O acute                  /Oacute          238    211
239    O circumflex             /Ocircumflex     239    212
240      UNUSED                                  ---    150 *  Apple symbol
241    O grave                  /Ograve          241    210
242    U acute                  /Uacute          242    218
243    U circumflex             /Ucircumflex     243    219
244    U grave                  /Ugrave          244    217
245    Dotless i                /dotlessi        245    151 *
246    Circumflex               /circumflex      246    152 *
247    Tilde                    /tilde           247    153 *
248    Macron                   /macron          248    175
249    Breve                    /breve           249    154 *
250    Dot accent               /dotaccent       250    155 *
251    Ring above               /ring            251    156 *
252    Cedilla                  /cedilla         252    184
253    Hungarian Umlaut         /hungarumlaut    253    157 *
254    Ogonek                   /ogonek          254    158 *
255    Caron                    /caron           255    159 *


INVERTIBLE TRANSLATION TABLES

From Extended Mac Latin (Font A) to Latin-1:

  0,   1,   2,   3,   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,  37,  38,  39,  40,  41,  42,  43,  44,  45,  46,  47,
 48,  49,  50,  51,  52,  53,  54,  55,  56,  57,  58,  59,  60,  61,  62,  63,
 64,  65,  66,  67,  68,  69,  70,  71,  72,  73,  74,  75,  76,  77,  78,  79,
 80,  81,  82,  83,  84,  85,  86,  87,  88,  89,  90,  91,  92,  93,  94,  95,
 96,  97,  98,  99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
196, 197, 199, 201, 209, 214, 220, 225, 224, 226, 228, 227, 229, 231, 233, 232,
234, 235, 237, 236, 238, 239, 241, 243, 242, 244, 246, 245, 250, 249, 251, 252,
221, 176, 162, 163, 167, 215, 182, 223, 174, 169, 178, 180, 168, 179, 198, 216,
185, 177, 188, 189, 165, 181, 128, 129, 130, 131, 190, 170, 186, 132, 230, 248,
191, 161, 172, 142, 133, 134, 135, 171, 187, 166, 160, 192, 195, 213, 136, 137,
173, 144, 138, 139, 143, 146, 247, 145, 255, 140, 141, 164, 208, 240, 222, 254,
253, 183, 147, 148, 149, 194, 202, 193, 203, 200, 205, 206, 207, 204, 211, 212,
150, 210, 218, 219, 217, 151, 152, 153, 175, 154, 155, 156, 184, 157, 158, 159

Latin-1 to Extended Mac Latin:

  0,   1,   2,   3,   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,  37,  38,  39,  40,  41,  42,  43,  44,  45,  46,  47,
 48,  49,  50,  51,  52,  53,  54,  55,  56,  57,  58,  59,  60,  61,  62,  63,
 64,  65,  66,  67,  68,  69,  70,  71,  72,  73,  74,  75,  76,  77,  78,  79,
 80,  81,  82,  83,  84,  85,  86,  87,  88,  89,  90,  91,  92,  93,  94,  95,
 96,  97,  98,  99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
182, 183, 184, 185, 189, 196, 197, 198, 206, 207, 210, 211, 217, 218, 195, 212,
209, 215, 213, 226, 227, 228, 240, 245, 246, 247, 249, 250, 251, 253, 254, 255,
202, 193, 162, 163, 219, 180, 201, 164, 172, 169, 187, 199, 194, 208, 168, 248,
161, 177, 170, 173, 171, 181, 166, 225, 252, 176, 188, 200, 178, 179, 186, 192,
203, 231, 229, 204, 128, 129, 174, 130, 233, 131, 230, 232, 237, 234, 235, 236,
220, 132, 241, 238, 239, 205, 133, 165, 175, 244, 242, 243, 134, 160, 222, 167,
136, 135, 137, 139, 138, 140, 190, 141, 143, 142, 144, 145, 147, 146, 148, 149,
221, 150, 152, 151, 153, 155, 154, 214, 191, 157, 156, 158, 159, 224, 223, 216


FUTURE EXPANSION

Sixteen positions are free.

  Latin Alphabet 2 has 34 characters that are not in Mac Extended Latin.
  Latin Alphabet 3 has 22 characters that are not in Mac Extended Latin.
  Latin Alphabet 4 has 36 characters that are not in Mac Extended Latin.
  Latin Alphabet 5 has  5 characters that are not in Mac Extended Latin.

None of these sets of additional characters except Latin-5 will fit.  The
five characters from Latin-5 are used for Turkish:

  G-breve, g-breve, S-cedilla, s-cedilla, Uppercase I with dot above.

So by adding these five characters we can also fully support Turkish.


RELATED FILES

On watsun.cc.columbia.edu, in the directory kermit/charsets, accessible via
anonymous FTP:

  maclatin.proposal - This file
  latin1.c       -  C program to generate ISO 8859-1 Latin Alphabet 1 table
  decmscs.c      -  C program to generate DEC Multinational Character set table
  dec-special.c  -  C program to generate DEC Special Graphics table
  dectech.c      -  C program to generate DEC Technical table
  maclatin.c     -  C program to generate Mac Extended Latin table
  maclatin.hqx   -  A BinHex-encoded preliminary version of the Mac Latin font
  macfontx.txt   -  Proposal for Mac Font X (DEC Special and DEC Technical)

and in the directory kermit/a, a listing of VT320 escape sequences:

  msvibm.vt

and in directory kermit/e, a document that contains, among other things,
summaries of the ISO character-set-related standards, including ISO 4873
and 2022 (all about designation and invocation of character sets):

  isok7.txt

(note:, as the draft number increases, the "7" might become "8", etc.)

(End of document)