ISO-8859-8 ISO-8859-8 (Hebrew) ISO-8859
A Hebrew-script encoding — like Arabic, complicated in practice by right-to-left text direction, which the encoding itself doesn't handle.
What it is
ISO-8859-8 encodes the Hebrew alphabet within the single-byte ISO-8859 framework. As with Arabic, Hebrew is a right-to-left script, and — critically — the character encoding itself doesn't handle text direction or bidirectional layout (mixed Hebrew/Latin text, numbers within Hebrew sentences, etc.); that's a separate rendering-layer concern.
Byte structure
| Byte range | Content |
|---|---|
| 0x00–0x7F | Identical to ASCII |
| 0xA0–0xFF | Hebrew letters and symbols, with several positions unassigned |
Why your text is garbled (symptom → cause)
| Symptom | Likely cause |
|---|---|
| Hebrew text completely unreadable | Encoding mismatch — text is Windows-1255 (more common on Windows) misread as ISO-8859-8, or vice versa |
| Letters decode correctly but display in the wrong reading order relative to surrounding Latin text/numbers | Bidirectional text (bidi) rendering issue, separate from character encoding — needs bidi-aware layout support |
Compatibility & gotchas
- Windows-1255 saw wider adoption on Windows systems for Hebrew text specifically, similar to the Arabic/Windows-1256 pattern.
- Bidirectional text handling is entirely separate from encoding. Correctly decoded Hebrew text can still display in a confusing or wrong order if the surrounding application/browser lacks proper bidi support — this is a rendering-layer problem, not something a different encoding choice fixes.
- UTF-8 doesn't inherently solve bidi issues either — but modern UTF-8-based rendering stacks are far more likely to include proper bidi support than legacy tooling built around ISO-8859-8.
Fixing it
- Command-line conversion:
iconv -f ISO-8859-8 -t UTF-8 input.txt -o output.txt - Display order issues after correct decoding: check for proper Unicode Bidirectional Algorithm support in the rendering context rather than assuming a decoding error.
Comparison
| Encoding | Key difference from ISO-8859-8 |
|---|---|
| Windows-1255 | More common on Windows systems for Hebrew text |
| UTF-8 | Full Unicode coverage; modern rendering stacks generally have better bidi support |
FAQ
Does ISO-8859-8 handle right-to-left text direction?
No — the encoding only maps bytes to Hebrew characters. Text direction and bidirectional layout (mixing Hebrew with Latin text or numbers) is handled entirely separately by the rendering/display layer.
Why does correctly-decoded Hebrew text still look wrong?
If decoding is confirmed correct but reading order looks wrong, especially around mixed Hebrew/Latin content, the issue is in bidirectional text rendering support, not the character encoding itself.
Fun fact
Hebrew and Arabic's shared right-to-left, bidi-dependent nature made both scripts important test cases during the development of the Unicode Bidirectional Algorithm (UAX #9) — a formal specification for how mixed-direction text should be laid out, which single-byte encodings like ISO-8859-8 predate entirely.