Перекодировать текст из ISO-8859-6 ↓
Шестая часть стандарта ISO-8859 была утверждена в 1987 году и предназначалась для арабского языка. Её основой стал стандарт ASMO 708, разработанный Арабской организацией по стандартизации и метрологии. Кодировка получила второе имя Latin/Arabic, поскольку объединяет латинские буквы ASCII и арабский алфавит в одной таблице.
По сравнению с другими частями стандарта ISO-8859-6 выглядит довольно пустой. Арабский алфавит содержит всего 28 основных букв, и вместе с огласовками и знаками препинания они занимают лишь часть верхней половины таблицы. Многие позиции остались незаполненными. Это редкий случай, когда кодировка не использует всё доступное пространство, и программы, строго следующие стандарту, считают неиспользованные байты ошибкой.
Как и в Windows-1256, буквы в ISO-8859-6 хранятся только в основной форме. Выбор правильного начертания в зависимости от положения в слове выполняет программа отображения. Это стало стандартным подходом для арабской письменности и позднее было сохранено в Юникоде.
Главный недостаток кодировки состоит в том, что она поддерживает только арабский язык. Персидские буквы "پ", "چ", "ژ" и "گ", а также буквы урду и других языков, использующих арабскую письменность, в ней отсутствуют. Поэтому для персидского и урду она не подходила, и пользователи этих языков выбирали Windows-1256 или другие кодировки.
Ещё одна особенность ISO-8859-6 связана с цифрами. В таблице нет отдельных восточноарабских цифр, и программы использовали обычные арабские цифры из ASCII, отображая их в нужной форме в зависимости от настроек. Это снижало объём таблицы, но иногда приводило к путанице при обмене документами между системами с разными настройками.
При чтении текста в ISO-8859-6 как Windows-1256 ошибка заметна не всегда. Часть букв в двух кодировках совпадает по позициям, но некоторые подменяются. Слово "مرحبا", то есть "здравствуйте", превращается в "هرحبا": первая буква заменяется другой, а остальные остаются правильными. Такую ошибку легко пропустить, особенно если не знать языка. При чтении в западноевропейской кодировке арабские буквы превращаются в латинские буквы с акцентами и символы.
Сегодня ISO-8859-6 используется редко. Она встречается в старых документах, электронной почте и некоторых системах, работавших на Unix. Если в арабском тексте отдельные буквы заменены другими или вместо арабских букв стоят латинские символы, попробуйте указать ISO-8859-6 исходной кодировкой и преобразовать текст в UTF-8.