| Directory lout/maps - Lout Character Mapping (LCM) files |
| |
| Jeffrey H. Kingston |
| 14 March 1996 |
| |
| This directory contains Lout Character Mapping (LCM) files, which define |
| the names and codes of all characters known to Lout, plus various mappings. |
| Lout works with all characters via their codes, so it is not possible to |
| have an unencoded character. |
| |
| LCM files replace the CEV and CMA files of previous versions of Lout. The |
| format has changed but the information in the files is consistent with the |
| old CEV and CMA files (no changes to the encodings, etc.). The format |
| change was needed to implement kerning of accented characters. |
| |
| LCM files may contain blank lines and comment lines (which begin with #). |
| Each of the remaining lines defines one character, and must contain the |
| following entries, in order, separated by white space: |
| |
| (1) Decimal character code, which must be unique in this file. These codes |
| must appear sorted into increasing order. Codes not mentioned in this |
| file have no associated character. |
| |
| (2) Octal value of the decimal code, written in ASCII. |
| |
| (3) Character name. Width and height information for a character with this |
| name must exist in every PostScript font metrics file that shares a Lout |
| fontdef with this file, but the character name need not be encoded in the |
| font metrics file, nor need any character code there agree with the |
| character code here. Lout will ensure (by including encoding vectors |
| in its output) that the character codes defined in this file apply, not |
| the codes in font metrics files. |
| |
| The character name may be -none-, and this is equivalent to omitting the |
| line. There must be no subsequent entries on the line in this case. |
| |
| If the character has entry UA below, and there is no kerning information |
| for the character in the font metrics file, Lout will apply the kerning |
| information for the corresponding unaccented character to the accented |
| character. This is always a good thing to do. |
| |
| If the character has entry UA below, and there is no entry in some |
| font metrics file for the character, then (contrary to the above) |
| instead of complaining that the character is missing from the font |
| metrics file, Lout will silently apply the size information for |
| the corresponding unaccented character to the accented character. |
| Lout will still print the character code for the accented character, |
| however. This is always good horizontally but occasionally not |
| enough space is allowed for the character vertically. |
| |
| (4) Zero or more functions, each beginning with a string identifying which |
| function it is, and followed by function-dependent information ending |
| in a semicolon. Functions may appear in any order; omitting a function |
| is fine and means that the function does not apply to that character. |
| At present the functions are |
| |
| UC <charname>; Corresponding upper-case character (must be the |
| name of a character appearing elsewhere in the |
| same file). This entry is used by Lout when |
| producing small capitals. |
| |
| LC <charname>; Corresponding lower-case character (must be the |
| name of a character appearing elsewhere in the |
| same file). This entry is not currently used. |
| |
| UA <charname>; Corresponding unaccented character (must be the |
| name of a character appearing elsewhere in the |
| same file). This entry is used by Lout to |
| guess size and kerning information for accented |
| characters (when this information is missing from |
| some font metrics file) by using the size and |
| kerning information of the corresponding unaccented |
| character. |
| |
| AC <charname>; Name of the accent character (acute, ogonek, etc.) |
| that forms the accent of this character (must be the |
| name of a character appearing elsewhere in the |
| same file). This entry is not currently used. |
| |
| The particular LCM files in this directory are: |
| |
| Std.LCM The StandardEncoding encoding vector, exactly as on page |
| 598 of the PostScript LRM 2nd Ed., plus the mappings. |
| |
| Latin1.LCM The ISOLatin1Encoding encoding vector, exactly as on page |
| 599 of the PostScript LRM 2nd Ed., plus the mappings. |
| This is not usable with Lout as is because the ligature |
| characters fi and fl have no encoding, and because the |
| standard packages use characters not in this encoding. |
| |
| LtLatin1.LCM Equal to Latin1.LCM augmented with some other characters |
| used by Lout and its standard packages. See the header |
| in the file for the details. |
| |
| LtLatin2.LCM Similar to LtLatin1.LCM but uses the Latin2 character set. |
| |
| koi8r.LCM For Russian |
| |
| Symb.LCM The Symbol encoding vector, exactly as on page 606 of the |
| PostScript LRM 2nd Ed., plus mappings. |
| |
| Ding.LCM The Zapf Dingbats encoding vector, taken from the Zapf |
| Dingbats font metrics file, plus mappings. |
| |
| null.LCM Useful skeleton file for building LCM files. |