The translation table files in this directory were collected from several sources (among them ftp://ftp.unicode.org, Linux kbd package, ftp://dkuug.dk/) and are believed to be correct in their mappings, but not checked in detail. The Unicode/UCS2 values for some of the RFC 1345 Mnemonic codes are out of date, a cleanup and update would be needed for serious use. [See also http://czyborra.com/charsets/iso8859.html for codepages survey.] These changes were made to all of the files used from ftp.unicode.org: a) add the MIME name of the charset. b) add a name for the display charset (used on Options screen) c) add the codepage number d) remove lines for control characters 0x00 to 0x1f, 0x7f to 0x9f. e) comment-out ASCII lines 0x20 to 0x7f f) use idem to represent the commented-out lines g) change C-style 0xNNNN constants to Unicode-style U+NNNN. Other changes include h) add code-points to several lines to provide Unicode equivalents i) add extra mappings at the end of the files j) comment-out other one-one mappings in the 0xa0-0xff range. More translation files can be easily provided (and new character entities added to entities.h), this set is just to test whether the system works in principle (and also how it behaves with incomplete data...) See the file README.format for a brief explanation of what's in the table files. The examples have names *_uni or *_suni with a .tbl suffix, but it doesn't really matter. The auxiliary program makeuctb (MAKE UniCode TaBle) is used to "compile" them into C header files, which can be included by UCdomap.c. Ideally, this should be taken care of by the Makefiles. On VMS, use build-chrtrans.com to compile and link makeuctb.exe and create the set of .h files from the current set of .tbl files. Thereafter, use build-header.com to update particular .h files. To make a new chartrans table available to Lynx (and thereby make a new charset known to Lynx) you currently have to manually edit UCdomap.c, in two places: a) Near the top, you will find a bunch of lines (some may be commented out) #include ".h" Add or comment out as you wish. But it is probably safest to leave the commonly used ones, referring to "def7_uni.h" and "iso01_uni.h", in place. b) At the bottom, you will find a bunch of lines (again, some may be commented out by default) of the form UC_CHARSET_SETUP_; which should correspond to the #include lines from a). Again, add or subtract as you wish (but preferably consistent with what you did under a)...) [The is derived from the charset's MIME name. if in doubt, check the last lines of the corresponding ...uni.h file.] c) To let make automatically notice when you have changed one of the table files, and automatically regenerate the *uni.h file(s), you also have to add any new tables to both src/Makefile *and* src/chrtrans/Makefile. Or, for auto-config, the equivalent files named makefile.in before running ./configure, or makefile after running ./configure. (That may be inconvenient, but I didn't want to depend on features than not all makes may have.) Note that for recompiling Lynx, a `make clean' should not be necessary if you have *only* made changes to the files in src/chrtrans. On VMS, add entries for new tables to build-chrtrans.com, but you can update the particular file with build-header.com, then use the top directory's build.com and answer 'n' to its prompts about whether to update the WWW library and chrtrans modules.