Tips for reading Hebrew from the Web

As of September 2001, browsers differ considerably in their ability to display the Hebrew script. Therefore, a person who wishes to read Hebrew from the Web should choose an appropriate browser. I classified browsers into three categories: BiDi browsers, browsers with partial support, and with poor support. As the level of support for Hebrew makes quite a noticeable difference when reading Hebrew documents, Hebrew readers are encouraged to upgrade to a BiDi browser.

BiDi browsers
These browsers support the bi-directional algorithm, as well as character encodings used for Hebrew.
Partial Hebrew support
Browsers with partial support do not have bi-directional support, but have decent support for encodings and character rendering. These browsers may be used to read visually encoded documents.
Poor Hebrew support
These browsers do not even support the ISO-8859-8 encoding commonly used for Hebrew. They allow, to a certain extent and with considerable pain, to read visually encoded documents in ISO-8859-8 by using special fonts. Browsers with poor support do not choose automatically the appropriate fonts for displaying characters, but can be induced to do so with additional software.

I have not tested yet support for Hebrew characters beyond the 22 letters and 5 final forms, such as those used in Yiddish. Mark H. David's survey of Yiddish capable Web-browsers points out that Internet Explorer 5.0 and Tango 3.0 are Yiddish capable.

BiDi browsers

Netscape 6.1

The first (official) BiDi Netscape browser. I have not tested this browser yet.

See also BiDi Mozilla Status page.

Internet Explorer 5

Pros:
Strong (but not full) support for Hebrew display. Extendible to other languages display. Free.
Cons:
Aggressive installation. High system requirements. Does not support Hebrew input (in non-Hebrew aware systems).
Installation:
You should use the custom installation and choose both "auto language select" (which is required for the browser to take into account the character encoding) and "Hebrew text support". None of these features is included in the "typical" installation. You must choose the "Hebrew text support" even if you have "Hebrew enabled" Windows. Otherwise Internet Explorer will not support ISO-8859-8 and ISO-8859-8-i but only Windows-1255.

Internet Explorer 5.0 won't run on localized Hebrew (or Arabic) Windows 98, and you'll have to get a localized Hebrew (or Arabic) browser too (or upgrade to localized Japanese Windows 98 with Hebrew enabled).

If you do not have Hebrew fonts installed on your system, Internet Explorer's setup will discover that and will install some (without asking you).

Internet Explorer installation is rather aggressive. For example it will make itself the default browser for many MIME types and file extensions (You may partly escape that by making a careful choice in some "advanced" menu).

Internet Explorer may have conflicts with other Internet clients. For example, due to the way Internet Explorer interacts with the operating system "Internet shortcut" files (with extension .url) cannot be assigned to be activated by another browser (that is, if you don't want Internet Explorer to launch another browser when you choose a "favorite"). Also reinstalling Windows 95 or upgrading to Windows 98 will require uninstalling Internet Explorer.

Configuration:
Make sure that in the encoding menu (View -> Encoding) "Auto select" is checked. Otherwise Internet Explorer will not make use of the charset parameter of served documents.

You may configure different fonts for different character encodings (Tools -> Internet Options -> General -> Fonts). E.g., "Times new Roman" for "Latin based" and Arial for "Hebrew". (Internet Explorer's documentation uses the misleading terms "language encoding" and "language script" rather than "character encoding"). Internet Explorer won't apply the Hebrew selected fonts to Hebrew characters in documents that are "Latin based" (.i.e, encoded with ISO-8859-1.)

Internet Explorer 5 supports content negotiation w.r.t. language. Use the languages menu (Tools -> Internet Options -> General -> Languages) to specify your preferences. If you do that, it is also recommended that you will disable the "Show friendly HTTP error messages" (Tools -> Internet Options-> Advanced [browsing]). A server may response with a 406 status code if a document in your preferred languages does not exist. In this case the server lists (and provides links to) the available versions in the enclosed HTML document. Internet Explorer's friendly message just informs you that the server cannot fulfill your request without pointing out the reason and without listing the available alternative documents.

Tango 3.3.1

Tango is no longer distributed.

Partial Hebrew support

Lynx (at least from 2.7.2)

Pros:
Displays visually encoded documents correctly. Small download and modest systems requirements. Free.
Cons:
No support for BiDi. The poor rendering of tables and the need to tab through links makes it less comfortable to use in Hebrew visually encoded documents.
Installation and configuration:
In order to read Hebrew with Lynx you must have a Hebrew "visual" display installed on your terminal or PC.

If you are using Windows with Hebrew enabled (and probably also the localized Hebrew Windows) it is most likely that your DOS display (both console window and full screen) is cp862. This will work fine if you configure Lynx to this display.

The default terminal emulator that comes with Windows uses the operating system's default, which is windows-1255 in Hebrew enabled Windows. It will not work properly with Lynx, as the emulator will assume that the text is bi-directional. There are terminal emulators that support Hebrew "visual" displays. One is Midasoft's Koala Terminal that supports ISO-8859-8 as well as many other displays. Using an emulator that supports many display may be useful for a person interested in reading documents in either, say, Hebrew or Russian.

You should note that cp862 and ISO-8859-8 displays do not contain glyphs for some of the characters used in Yiddish. Lynx will use approximations to render those. Yiddish readers would benefit from using a (visual) display of windows-1255 (cp1255), MacOS Hebrew, or ISO-10646.

The display of Windows 95 may be changed via the control panel. That of the full screen DOS may be changed by running a program available on the Windows 95 CD-ROM. (Read your Windows 95 documentation)

The following is for Windows 95. There are of course analogous mechanisms for other operating systems.

In your lynx.cfg file set the the display character set with the one supported by the DOS display of your PC, e.g.:
CHARACTER_SET:cp862

Lynx supports content negotiation w.r.t language and charset. You may configure the Accept-Language HTTP request header using the PREFERRED_LANGUAGE directive. E.g.:
PREFERRED_LANGUAGE:he;q=1.0,yi;q=0.9,en;q=0.8

Using the accept-charset HTTP header you may indicate your preferences for visually encoded documents over bi-directional ones. Lynx uses the PREFERRED_CHARSET directive for configuring this header:
PREFERRED_CHARSET:iso-8859-8;q=1.0;windows-1255;q=0.0;iso-8859-8-i;q=0.0
Well configured servers will give you the visual document rather than the bi-directional one if they serve both.

Lynx may be configured to assume a certain character encoding for unlabeled documents. You may assign it to be ISO-8859-8. This makes sense if other non-labeled documents that you expect to receive will render reasonably, e.g, documents in Western languages encoded with ISO-8859-1. However, if you expect to receive unlabeled documents in Russian it may be a non-optimal choice:
ASSUME_CHARSET:iso-8859-8

Since Lynx will refuse to display documents labeled with iso-8895-8-i you may assign:
ASSUME_UNREC_CHARSET:windows-1255
This way an ISO-8859-8-i document (and any other unrecognized document) will be displayed and you will be able to look for a link to a visual (hence Lynx displayable) version.

Poor Hebrew support

Netscape 6.01 and lower

Netscape 6.01 does not support bi-directional text. Netscape 6.1 does.

Opera 5.12

Opera 5.12 does not support Hebrew characters or bi-directional text

Pros:
Fast. Small download and modest system requirements. Good support for style sheets and plugins.
Cons:
Doesn't support Hebrew. Costs money (or annoying ads).
Installation and configuration:
If you have regular Hebrew fonts in your system they won't work properly with Opera: they will in error be rendered right-to-left in visually encoded documents. Thus you have to install special "Hebrew hackers' fonts." These fonts pretend to be Latin fonts, and thus will be rendered left-to-right. You should note that when these fonts Opera will fail rendering many accented Latin characters.

You may view visually encoded Hebrew documents encoded in ISO-8859-8 using the "Hebrew hackers' fonts". Opera does not identify the character encoding of a document, and you'll have to toggle the settings yourself. As Opera has 14 different font choices you may use a user's style sheet to allow easy shifting (Preferences -> Document Appearance). Of course you should check "Enable User CSS" in one and only one of "Document Mode" or "User Mode." Here is an example style sheet:

body {font-family: "Web Hebrew AD"}
pre, tt, code, kbd, samp {font-family: "Web Hebrew monospace"}

To generate automatic font selection, you may use a client side proxy to append a style sheet to a document based on an ISO-8859-8 charset parameter. At this opportunity of using a proxy you can append useful outgoing Accept-Language and Accept-Charset HTTP headers, as Opera doesn't send any.