## Hebrew Character Sets in Kermit 95

Contents

- Hebrew File Transfer
- Hebrew Terminal Emulation
- Configuring K95 for Hebrew Terminal Emulation
- Entering Hebrew Characters on the Keyboard
- Using Kermit 95's Hebrew Keyboard Mode

The Hebrew character sets known to Kermit 95 are:

      Kermit Name    Type   Description
       HEBREW-ISO    8-bit    ISO 8859-8 Latin/Hebrew
       HEBREW-7      7-bit    7-Bit Hebrew from Hebrew-model DEC VT100
       CP862         8-bit    Hebrew PC Code Page

### Hebrew File Transfer

Hebrew file transfer is fully described in Using C-Kermit.

Commands:

`SET TRANSFER CHARACTER-SET HEBREW-ISO`
  ISO 8859-8 Latin/Hebrew Alphabet

`SET FILE CHARACTER-SET HEBREW-ISO`
  ISO 8859-8 Latin/Hebrew Alphabet

`SET FILE CHARACTER-SET CP862`
  Hebrew PC Code Page

`SET FILE CHARACTER-SET HEBREW-7`
  DEC 7-Bit (VT100) Hebrew

An invertible translation table between Latin/Hebrew and CP862 is used during both terminal emulation and file transfer. The translation table between Hebrew-7 and Latin/Hebrew, however, is not invertible because these character sets are different sizes.

Here is an example of uploading a Hebrew file from a PC to UNIX. The PC version is coded in the Hebrew PC code page, and the UNIX version is to be stored in the 7-bit Hebrew character-set so it can be sent as network e-mail:

    C-Kermit> set file character-set hebrew-7 ; I want 7-bit text for email
    C-Kermit> receive                         ; Wait for the file.
    <Alt-X>                                   ; Escape back to the PC
    K-95> set file type text                  ; Make sure we are in text mode
    K-95> set file character-set cp862        ; File is in Hebrew PC code page
    K-95> set xfer character-set hebrew       ; Send using ISO Latin/Hebrew
    K-95> send rab.oof                        ; Send the file

The file sender automatically tells the file receiver that the transfer character-set is Hebrew.

The three Hebrew character sets are also available for use in Kermit's TRANSLATE command, which translates a local file from one character-set to another. Thus you can use Kermit to convert a local file from, say, Latin/Hebrew to Hebrew-7.

Kermit's Hebrew file transfer features can be used in conjunction with MS-DOS Kermit 3.13 and later and C-Kermit 5A(189) and later (with which Kermit 95 shares the same translation tables to ensure consistent translations) and IBM Mainframe Kermit 4.2 or later, which translates between Latin/Hebrew and IBM CECP 424 (the Hebrew EBCDIC Country Extended Code Page).

### Hebrew Terminal Emulation

In Kermit 95, "Hebrew terminal emulation" means the use of Hebrew characters while emulating VT100, VT320, ANSI, or other type of terminal, and translation between the Windows encoding for Hebrew and the host encoding.

It does not mean right-to-left writing direction; thus it would be the responsibility of the host application to place Hebrew characters in the desired position on the screen by using escape sequences. This should not be surprising, however, since very few of the terminals that Kermit emulates support right-to-left writing direction either.

Kermit 95's Hebrew support was widely used with Hebrew University's ALEPH bibliographic software.

#### The PC Hebrew Character Set

Kermit 95 can be used to display Hebrew characters on the host if you have the Hebrew code page, CP862, loaded on your PC. In Windows 95, it is not likely that you have this, or can have it, unless you have installed the Israeli version of Windows; see the Kermit 95 Bug List for more information about this.

In Windows NT/2000/XP, we don't use code pages at all, but instead we use Unicode, which NT supports. It is recommended that you use a True Type Unicode encoded font with Kermit 95. The one that comes with Windows NT is Lucida Console (fixed-pitch Unicode), but unfortunately this font does not include a full set of Hebrew letters. If you install an additional font that does contain Hebrew characters you can leave everything as it is. Otherwise, you can use the bitmap (code page) fonts and instruct Kermit 95 to use your Hebrew PC code page with:

      SET TERMINAL UNICODE OFF
      SET TERMINAL CODE-PAGE 862
      SET TERMINAL LOCAL-CHARACTER-SET CP862

The OS/2 version of Kermit 95 comes with a Hebrew "PC font" equivalent to Code Page 862. You can use this in fullscreen sessions only -- NOT in an OS/2 Window, and even then it works only if your video driver allows it. In Kermit/2, the commands:

      SET TERMINAL FONT 862
      SET TERMINAL LOCAL-CHARACTER-SET CP862

actually attempts to load the Hebrew CP862 font into your video adapter (this can't be done in Windows).

### Configuring K95 for Hebrew Terminal Emulation

Hebrew character-set translation is enabled during terminal emulation via the commands:

      SET TERMINAL REMOTE-CHARACTER-SET { HEBREW-ISO, HEBREW-7, CP862 }
      SET TERMINAL LOCAL-CHARACTER-SET CP862
      SET TERMINAL BYTESIZE 8    ; Not needed for Hebrew-7

(choose the character set that is appropriate for the host or service you are connecting to.)

### Entering Hebrew Characters on the Keyboard

In Windows it is possible to install more than one keyboard layout in the Keyboard Control Panel on the Input Locales page. When more than one Input Locale/Layout combination is defined, you are required to choose one of them as the default, and to choose a key combination (such as Left Alt + Shift) to switch among them. This is called the Switch-Locale key sequence. The default Input-Locale is the Input-Locale that each Window uses when it is opened.

For instance, it is possible to install:

      Input Locale                                  Layout
      ------------------------------------------    ---------------
      English (United States)                       US
      Hebrew                                        Hebrew

with "English (United States)" as the default input locale and a Switch-Locale key sequence of "Left_Alt+Shift". Since the keyboard only has one alphabet on it, this "alphabet shift" key is needed to switch between the two defined alphabets. In Hebrew Windows, for example, it is necessary to type Roman letters when you type Windows file names or Kermit 95 commands and Hebrew letters when writing in the Hebrew language.

In Windows NT/2000/XP, the Hot-key combination switches the Input-Locale for the entire system. In Windows 95/98/ME, the Input-Locale is switched only for the current application window, allowing different applications to use different languages at the same time.

#### Keyboard Shifting in Windows NT/2000/XP

In Windows NT/2000/XP, you can give the following commands to Kermit 95:

      SET TERMINAL UNICODE OFF ; if Hebrew characters are missing from font
      SET TERMINAL CODE-PAGE 1255
      SET TERMINAL LOCAL-CHARACTER-SET CP1255
      SET TERMINAL REMOTE-CHARACTER-SET HEBREW-ISO (or HEBREW-7)

When the current locale is "English (United States)" K95 receives Roman characters from the keyboard. When the current locale is "Hebrew" K95 receives Hebrew characters from the keyboard. To toggle between the two, press the Switch-Locale key sequence.

When issuing commands to K95 switch to the "English" locale and when sending Hebrew characters to the host switch to the "Hebrew" locale. There is no limitation to mixing Roman and Hebrew characters via this method at the K95 command prompt or in terminal mode.

Note that only characters that are in the active code page may be delivered to K95 from the keyboard. In the above example code page 1255 is used because it is available on all versions of NT and it contains all of the Roman characters needed for English and the Hebrew characters used by CP862. (CP862 is not available on the U.S. version of NT but may be available on some international versions.)

When issuing commands to Kermit 95 use the English Input-Locale and switch to the Hebrew Input-Locale when Hebrew characters are necessary in command mode for file names, or when sending characters to the host. Note that an Alt- or Ctrl- key combination can generate different values for each locale.

#### Windows 95/98/ME

When using Windows 9x/ME, locale switching does not work properly in 32-bit console applications so Kermit 95 has to simulate the switching of keyboard layouts. Hebrew Windows 95 uses CP862 as its default code page for the DOS and Windows-32 Console environments. Therefore, both Roman and Hebrew characters are available for display.

For 16-bit DOS applications the current locale is ignored. All keystrokes generate Roman letters regardless of what locales are installed.

In Kermit 95, both Left Alt-Shift and Ctrl-Shift are "hotkeys" that toggle the Keyboard Input-Locale among those installed. Each time K95 is started it uses the Default Input-Locale as set in the Keyboard Control Panel until you switch it with Alt-Shift or Ctrl-Shift.

If CP862 is your PC's Console code page, K95 detects this automatically when it starts and configure the Local Character-set to the same value.

### Using Kermit 95's Hebrew Keyboard Mode

If you have a font with Hebrew characters, but lack a Hebrew keyboard and driver, you can use Kermit 95's built-in Hebrew keyboard mode, to make Kermit do the necessary key translations:

- The \KkbHebrew verb, which may be assigned to any key. It is assigned by default to Ctrl-Alt-Shift-H. It switches the main keypad (mostly the lowercase letters) into Hebrew mode (see keymap below). When the keyboard is in Hebrew mode, the terminal type in the status line has "-H" appended to it, for example "VT220-H".

- The \KkbEnglish verb to switch the main keypad back to English mode.

- The \KkbHebrew function is performed automatically in VT emulation if the host application sends `CSI ? 35 h`, and the \KkbEnglish function with `CSI ? 35 l`.

- Hebrew keyboard mode is cleared when you execute the \Kreset (reset terminal) function, assigned to Alt-r by default.

The Hebrew key layout associated with these verbs follows follows the layout used by Hebrew WordPerfect, Windows, and Word. The names of the Hebrew letters are from the ISO 8859-8 Standard. These are the key assignments when the keyboard is in Hebrew mode, listed in three different orders for easy lookup:

    Hebrew Order             Roman Order              QWERTY Keyboard Order  q = Slash                , = Taw                  q = Slash
      w = Apostrophe           . = Terminal Zade        w = Apostrophe
      ' = Comma                ' = Comma                e = Qoph
      / = Period               / = Period               r = Resh
      t = Aleph                ; = Terminal Pe          t = Aleph
      c = Bet                  a = Shin                 y = Tet
      d = Gimel                b = Nun                  u = Waw
      s = Dalet                c = Bet                  i = Terminal Nun
      v = He                   d = Gimel                o = Terminal Mem
      u = Waw                  e = Qoph                 p = Pe
      z = Zain                 f = Kaph                 a = Shin
      j = Chet                 g = Ayin                 s = Dalet
      y = Tet                  h = Yod                  d = Gimel
      h = Yod                  i = Terminal Nun         f = Kaph
      l = Terminal Kaph        j = Chet                 g = Ayin
      f = Kaph                 k = Lamed                h = Yod
      k = Lamed                l = Terminal Kaph        j = Chet
      o = Terminal Mem         m = Zade                 k = Lamed
      n = Mem                  n = Mem                  l = Terminal Kaph
      i = Terminal Nun         o = Terminal Mem         ; = Terminal Pe
      b = Nun                  p = Pe                   ' = Comma
      x = Samech               q = Slash                z = Zain
      g = Ayin                 r = Resh                 x = Samech
      ; = Terminal Pe          s = Dalet                c = Bet
      p = Pe                   t = Aleph                v = He
      . = Terminal Zade        u = Waw                  b = Nun
      m = Zade                 v = He                   n = Mem
      e = Qoph                 w = Apostrophe           m = Zade
      r = Resh                 x = Samech               , = Taw
      a = Shin                 y = Tet                  . = Terminal Zade
      , = Taw                  z = Zain                 / = Period

To use Kermit 95 with host-based Hebrew software such as ALEPH (the Hebrew University library software), give these commands to Kermit:

      SET TERMINAL BYTESIZE 8
      SET TERM CODE-PAGE 862
      SET TERM CHARACTER-SET HEBREW-ISO cp862
      SET TERM KEY HEBREW \372 \KKBHEBREW     ; F5 = Enter Hebrew keyboard mode
      SET TERM KEY HEBREW \373 \KKBENGLISH    ; F6 = Enter English keyboard mode
      SET TERM KEY HEBREW \374 \KDECF7        ; F7 = DEC F7 (for ALEPH software)

Of course, you can assign the `\KkbHebrew`, `\KkbEnglish`, and `\KdecF7` verbs to any other keys of your choice.

To define your own Hebrew key map, create a file containing the desired `SET TERM KEY HEBREW` commands, in which the assigned values are CP862 values. TAKE this file, and then whenever you execute the `\KkbHebrew` verb, your keyboard will have the mappings defined in this file.

Click Back on your Browser's Toolbar to return.