Next: Miscellaneous Up: Eight Bit Clean Issues Previous: Inputting Characters with the Contents

## Upper Case - Lower Case Conversions

The above discussion centers around input and output of characters with the high bit set. How jed treats them internally is another issue and new questions arise. For example, what is the uppercase equivalent of a character with ASCII code 231? This may vary from language to language. Some languages even have characters whose uppercase equivalent correspond to multiple characters. For jed, the following assumptions have been made:

- Each character is only 8 bits.
- Each character has a unique uppercase equivalent.
- Each character has a unique lowercase equivalent.

It would be nice if a fourth assumption could be made:

- The value of the lowercase of a character is greater than or equal to its uppercase counterpart.

However, apparently this is not possible since most IBMPC character sets violate this assumption. Hence, jed does not assume it. Suppose `X` is the upper case value of some character and suppose `Y` is its lower case value. Then to make jed aware of this fact and use it case conversions, it may be necessary to put a statement of the form:

         define_case (X, Y);

in the startup file. For example, suppose 211 is the uppercase of 244. Then, the line

          define_case (211, 244);

will make jed use this fact in operations involving the case of a character.

This has already been done for the ISO Latin 1 character set. See the file `iso-latin.sl` for details. For MSDOS, this will not work. Instead use the files `dos437.sl` and `dos850.sl`. By default, jed's internal lookup tables are initialized to the ISO Latin set for Unix and VMS systems and to the DOS 437 code page for the IBMPC. To change the defaults, it is only necessary to load the appropriate file. For example, to load `dos850.sl` definitions, put

          evalfile ("dos850"); pop ();

in the startup file (e.g., `site.sl`). In addition to uppercase/lowercase information, these files also contain word definitions, i.e., which characters constitute a ``word''.

Next: Miscellaneous Up: Eight Bit Clean Issues Previous: Inputting Characters with the Contents