Справа налево. Что такое dir=rtl и как приручить арабский язык. Почему Европа пишет слева направо? Развитие технологий письма

Задумывались ли вы когда-нибудь, почему еврейская и арабская письменность имеют одну явную особенность, а именно написание справа налево? Оказывается, тому есть вполне практичное объяснение.

Дело в том, что еврейская и арабская письменность возникла на основе древневавилонского клинописного письма, а западная традиция письма - из древнеегипетского папирусного письма.

Чтобы объяснить наглядно, в чем же между ними отличие, включим воображение. Представьте, что перед вами лежит папирус, а в руках у вас стило (тонкий ножичек). Мы нарезаем иероглифы правой рукой (85% людей - правши). При этом, то, что написано справа от нас, закрыто, зато прекрасно видно то, что слева. Возникает вопрос: как вам удобнее писать? Конечно, слева направо, поскольку так удобно видеть, что уже написано.

А теперь воьмите в руки камень, молоток и зубило. Молоток в правую руку (85%), зубило - в левую. Начнем высекать клинописные иероглифы. Левая рука с зубилом нам надежно закрывает то, что написано слева, зато то, что справа, нам хорошо видно. Как нам удобнее писать? В этом случае справа налево.

Кстати, если внимательнее присмотреться к буквам еврейского алфавита, то можно заметить, что их своеобразная конфигурация свидетельствует о том, что изначально буквы высекались на чем-то твердом. Такие буквы гораздо проще изобразить зубилом, а не пером.

Конечно, с тех пор камень перестал быть единственным долговечным хранителем информации, но правила письма уже сформировались, так что было принято решение не менять правила письменности кардинальным образом.

  1. Для каждого символа в строке вычисляется направленность;
  2. Строка бьётся на блоки одинаковой направленности;
  3. Блоки выстраиваются в порядке, заданном базовым направлением.

На направленность каждого символа влияет его тип и направленность соседних символов.

Три типа символов

1) Сильно направленные (или строго типизированные, strongly typed) - например, буквы. Их направленность заранее определена - для большинства символов это LTR, для арабских и иврита - RTL.


Слова на картинке целиком строго типизированы:



2) Нейтральные - например, знаки пунктуации или пробелы. Их направленность не задана явно, они направлены так же, как соседние сильно направленные символы .


Запятая между направленными слева направо «o» и «w» в строке «Hello, world» принимает их направленность и при базовом LTR, и при RTL:



Но что, если нейтрально направленный символ попадает между двумя сильно направленными символами разной направленности? Такой символ принимает базовую направленность.


Вот тут расположение «++» в одном случае между однонаправленными «C» и «a», а в другом - между разнонаправленными «C» и арабским «و», приводит к разному результату:



То же самое случается с нейтральными символами в конце строки:



3) Слабо направленные (или слабо типизированные, weakly typed) - например, числа. Они имеют свою направленность, но никак не влияют на окружающие символы.


Непрерывные слова из цифр выстраиваются слева направо, но два числа подряд, разделённые нейтральным символом, будут идти друг за другом справа налево, если задана базовая RTL–направленность:



Ещё более наглядный случай - число, в котором разряды разделены пробелом:



При этом допускается разделять числа точкой, запятой, двоеточием - эти разделители тоже слабо направлены (подробнее можно посмотреть в спецификации):


Направленные блоки (directional run)

Последовательные символы одинаковой направленности объединяются в блоки (directional run). Эти блоки выстраиваются друг за другом в порядке, определённым базовым направлением:



Слабо направленные числа, несмотря на то, что имеют свою направленность, не влияют на формирование блоков, что может приводить к такому результату - они продолжают предыдущий направленный блок:


Зеркальные символы

Некоторые символы в разных контекстах имеют разную форму - например, открывающая скобка в RTL будет выглядеть как закрывающая в LTR (что логично, ведь контент в скобках будет идти после - то есть, слева от неё).


В большинстве случаев это не создаёт проблем, но если скобки случайно окажутся разной направленности, визуально они будут смотреть в одну сторону. Например, если скобка висит в конце строки:


Берём порядок под контроль

Как мы увидели выше, часто текст по этим правилам форматируется не так, как нам хотелось бы.


В этом случае нам пригодятся инструменты для встраивания желаемого направления в существующий контекст или переопределения направлений конкретных символов.

Изоляция (isolate)

С заданием базового направления мы уже познакомились выше: это делает атрибут dir. Это глобальный атрибут , он применим к любому элементу.


dir создаёт новый уровень встраивания (embedding level) и изолирует содержимое от внешнего контекста. Контент внутри направлен согласно значению атрибута, а внешняя направленность самого контейнера становится нейтральной.


Явная установка атрибута dir позволяет избежать почти всех проблем форматирования смешанного текста:


أنا أحب C++ و Java


Если направленность контента неизвестна заранее, можно указать auto в качестве значения атрибута dir. Тогда направление содержимого определится с помощью «некоторой эвристики» - оно просто возьмётся у первого попавшегося строго типизированного символа.


{comment}


Аналогично работает тег и css-правило unicode-bidi: isolate:


Landmark: {name} - {distance}

Встраивание (embed)

Можно открыть новый уровень встраивания без изоляции - правило unicode-bidi: embed в комбинации с нужным значением правила direction определяют и направление внутри элемента, и его направленность снаружи. Но это на практике не нужно почти никогда.

Переопределение (override)

или unicode-bidi: bidi-override; direction: rtl . Переопределяет направление каждого символа внутри элемента. Нужно использовать крайне редко (например, если нужно поменять местами два конкретных символа) и не забывать изолировать дочерние элементы.


Hello, world!


При этом снаружи элемент трактуется как сильно направленный. Чтобы он вёл себя как isolate снаружи, но как bidi-override внутри, нужно использовать unicode-bidi: isolate-override .

Управляющие символы (marks)

Вставка управляющих символов - неприятный способ, но он полезен, когда у нас нет доступа к разметке, но есть доступ к контенту. Например, это могут быть просто невидимые сильно направленные символы, ‎ и ‏ (‎ / ‏ или \u200e / \u200f). Они помогают задать нужное направление нейтральному символу.


Например, в этом случае, чтобы восклицательный знак в конце строки принял направление LTR, нужно, чтобы он находился между двумя LTR символами:


Hello, world!‎

Также любая описанная выше логика реализуется через управляющие символы. Для изоляции - LRI/RLI, для переопределения - LRO/RLO, и т.д. - смотри подробное руководство по управляющим символам.

Поддержка браузерами

К сожалению, в IE тег , dir="auto" и соответствующие им правила CSS не поддерживаются. Кроме того, спецификация этих правил всё ещё на стадии Editor"s Draft.


Если нужен аналог dir="auto" , работающий в любом браузере, можно парсить контент регуляркой и выставлять атрибут dir самостоятельно. Но лучше, конечно, так не делать.

HTML или CSS?

Однозначно, управлять направлением текста по возможности нужно через HTML–атрибут dir и тег , а не через правила CSS. Направление текста - это не стилизация, это часть контента. Страница может быть вставлена через какой-нибудь instant view или быть прочитана через RSS–reader.

Перед заключением: немного боли

Мы познакомились с теорией. Но знание теории не освобождает от необходимости страдать.


Главная проблема, с которой я столкнулся на первых же минутах разработки под RTL–язык, это его чужеродность. Мы пишем код слева направо. Моя система, браузер и редактор работают слева направо, все наши внутренние продукты - слева направо. Поэтому, как только в это пространство попадает арабский язык, всё плохо и больно:

Манипуляции с текстом

Если символы на экране расположены не в том порядке, в каком они на самом деле располагаются в строке, что будет, если попытаться редактировать двунаправленный текст? Или хотя бы выделить и скопировать его часть?


Ничего хорошего. Попробуйте сами:


Landmarks: دبي مارينا مول - 600 m, داماك العقارية - 1.2 km
a‮z‭b‮y‭c‮x‭d‮w‭e‮v‭f‮u‭g‮t‭h‮s‭i‮r‭j‮q‭k‮p‭l‮o‭m‮n‭

Манипуляции с кодом

И то же самое при правке кода в редакторе и код-ревью - боль.


Даже в порядке элементов в массиве нельзя быть уверенным:



Или того хуже, код вообще не выглядит валидным:



Власти Эквадора лишили Джулиана Ассанжа убежища в лондонском посольстве. Основатель WikiLeaks задержан британской полицией, и это уже назвали самым большим предательством в истории Эквадора. За что мстят Ассанжу и что его ждет?

Программист и журналист из Австралии Джулиан Ассанж приобрел широкую известность после того, как в 2010 году основанный им сайт WikiLeaks опубликовал секретные документы Госдепартамента США, а также материалы, касающиеся военных действий в Ираке и Афганистане.

Но узнать того, кого полицейские, поддерживая под руки, выводили из здания, было довольно сложно. Ассанж отпустил бороду и совсем не был похож на энергичного мужчину, каким до сих пор представал на фотографиях.

По словам эквадорского президента Ленина Морено, в убежище Ассанжу было отказано из-за неоднократного нарушения им международных конвенций.

Ожидается, что в полицейском участке в центре Лондона он пробудет до тех пор, пока не предстанет в Вестминстерском магистратском суде.

Почему президента Эквадора обвиняют в предательстве

Бывший президент Эквадора Рафаэль Корреа назвал решение нынешнего правительства самым большим предательством в истории страны. "То, что он (Морено. - Прим. ред.) сделал, - это преступление, которое человечество никогда не забудет", - заявил Корреа.

Лондон, напротив, поблагодарил Морено. В британском МИД считают, что справедливость восторжествовала. У представителя российского дипломатического ведомства Марии Захаровой другое мнение. "Рука "демократии" сжимает горло свободе", - отметила она. В Кремле выразили надежду, что права арестованного будут соблюдены.

Эквадор укрывал Ассанжа, потому что бывший президент придерживался левоцентристских взглядов, критиковал политику США и приветствовал публикацию WikiLeaks секретных документов о войнах в Ираке и в Афганистане. Еще до того как интернет-активисту понадобилось убежище, он успел лично познакомиться с Корреа: брал у него интервью для канала Russia Today.

Однако в 2017 году власть в Эквадоре сменилась, страна взяла курс на сближение с США. Новый президент назвал Ассанжа "камнем в ботинке" и сразу дал понять, что его пребывание на территории посольства не затянется.

По мнению Корреа, момент истины наступил в конце июня прошлого года, когда в Эквадор с визитом прибыл вице-президент США Майкл Пенс. Тогда все и решили. "Можете не сомневаться: Ленин - просто лицемер. Он уже договорился с американцами о судьбе Ассанжа. А теперь пробует сделать так, чтобы мы проглотили пилюлю, говоря, что Эквадор якобы продолжает диалог", - заявил Корреа в интервью каналу Russia Today.

Как Ассанж наживал новых врагов

За день до ареста главный редактор WikiLeaks Кристин Храфнссон рассказал, что за Ассанжем велась тотальная слежка. "WikiLeaks раскрыл масштабную шпионскую операцию в отношении Джулиана Ассанжа в посольстве Эквадора", - отметил он. По его данным, вокруг Ассанжа понаставили камер и диктофонов, а полученные сведения передавались администрации Дональда Трампа.

Храфнссон уточнил, что Ассанжа собирались выдворить из посольства неделей раньше. Этого не произошло только потому, что WikiLeaks обнародовал данную информацию. О планах властей Эквадора порталу сообщил высокопоставленный источник, однако глава эквадорского МИД Хосе Валенсия опроверг слухи.

Выдворению Ассанжа предшествовал коррупционный скандал вокруг Морено. В феврале WikiLeaks опубликовал пакет бумаг INA Papers, где прослеживались операции офшорной компании INA Investment, основанной братом эквадорского лидера. В Кито заявили, что это заговор Ассанжа с венесуэльским президентом Николасом Мадуро и бывшим главой Эквадора Рафаэлем Корреа с целью свергнуть Морено.

В начале апреля Морено пожаловался на поведение Ассанжа в лондонской миссии Эквадора. "Мы должны защитить жизнь господина Ассанжа, но он уже перешел все границы в смысле нарушения соглашения, к которому мы с ним пришли, - заявил президент. - Это не значит, что он не может свободно говорить, но он не может лгать и заниматься хакерством". При этом еще в феврале прошлого года стало известно, что Ассанжа в посольстве лишили возможности взаимодействовать с внешним миром, в частности ему отключили доступ в интернет.

Почему Швеция прекратила преследование Ассанжа

В конце прошлого года западные СМИ со ссылкой на источники сообщили, что Ассанжу предъявят обвинения в США. Официально это так и не подтвердили, однако именно из-за позиции Вашингтона Ассанжу пришлось укрыться в эквадорском посольстве шесть лет назад.

Швеция же в мае 2017-го прекратила расследование двух дел об изнасиловании, в которых обвиняли основателя портала. Ассанж потребовал от правительства страны компенсацию судебных издержек в размере 900 тысяч евро.

Ранее, в 2015 году, шведская прокуратура также сняла с него три обвинения за истечением срока давности.

Куда привело расследование дела об изнасиловании

Ассанж прибыл в Швецию летом 2010 года, надеясь получить защиту от американских властей. Но попал под следствие по делу об изнасиловании. В ноябре 2010-го в Стокгольме выдали ордер на его арест, Ассанжа объявили в международный розыск. Его задержали в Лондоне, однако вскоре выпустили под залог в 240 тысяч фунтов.

В феврале 2011-го британский суд постановил экстрадировать Ассанжа в Швецию, после чего последовал ряд успешных для основателя WikiLeaks апелляций .

Британские власти поместили его домашний арест перед тем, как принять решение об экстрадиции в Швецию. Нарушив данное властям обещание, Ассанж попросил убежища в посольстве Эквадора, которое и было ему предоставлено. С тех пор Великобритания имеет собственные претензии к основателю WikiLeaks.

Что теперь ждет Ассанжа

Как сообщили в полиции, мужчину повторно арестовали по запросу США об экстрадиции за публикацию засекреченных документов. В то же время заместитель главы британского МИД Алан Дункан заявил, что Ассанжа не вышлют в Соединенные Штаты, в случае если ему там будет грозить смертная казнь.

В Великобритании Ассанж, скорее всего, предстанет перед судом во второй половине дня 11 апреля. Об этом говорится на странице WikiLeaks в Twitter. Вероятно, британские власти будут добиваться максимального срока заключения в 12 месяцев, сообщила мать мужчины со ссылкой на его адвоката.

В то же время прокуратура Швеции рассматривает возможность возобновления расследования по обвинению в изнасиловании. Адвокат Элизабет Масси Фритц, представлявшая интересы пострадавшей, будет этого добиваться.

В иврите и арабском языке направление письма справа налево. Многие ошибочно думают, что это как-то связано с религией. Причина простая: изначально письменность (клинопись, иероглифы, пиктографическое письмо, то есть, на основе изображений) была приспособлена к тому, на чём и чем «писали». И в кавычки слово взято именно по причине «на чём и чем», ведь первые письмена люди стали изображали на камне и глиняных табличках (знаки выдавливались заострённой палочкой на ещё сырой глине).

«Письменными принадлежностями» при работе с камнем служили молоток и зубило. Представьте такого «писателя»: чтобы высечь слово на камне, молоток он держит в правой руке (большинство людей на планете, примерно 85 процентов, – правши), зубило – в левой. А чтобы было видно, что он уже наваял, ему удобнее и логичнее долбить по камню справа налево. Либо сверху вниз.

Точно так же удобнее и безопаснее для уже написанного было создавать текст на глиняных табличках. Поэтому у шумеров, которые и изобрели клинопись, изначально текст записывался справа налево, колонками, а затем, начиная с 2400-2350 гг. до н. э., для рукописных текстов – слева направо строками.

Одна из первых засвидетельствованных в истории человечества систем фонетического (в котором графический знак привязан к определённому звучанию) письма – финикийская – придерживалась этой же логики. (Древнее государство Финикия находилось на восточном побережье Средиземного моря с центром в современном Ливане.) Появившись около XV века до н. э., она стала родоначальницей большинства современных алфавитных и некоторых других систем письма, в том числе еврейского, арамейского, иберского и ливийского письма, греческого, а через греческий – и латинского с кириллицей, малоазийских алфавитов.

Алфавитом для древнееврейского языка послужило очень близкое к финикийскому палеоеврейское письмо, возникшее в X веке до н. э.

Арабское письмо, появившееся лишь в V веке, тоже берёт своё начало от финикийского – оно произошло от набатейского письма, развившегося из арамейского письма. (В VII веке на арабский перешли и сами финикийцы: территория их бывшего государства была захвачена Арабским халифатом.)

Любопытно, что древние греки, чей алфавит берёт начало в финикийском, первое время писали в обе стороны. То есть, поочерёдно: начинали писать одну строку в одном направлении, слева направо, а вторую строку – справа налево и так далее. Как пахарь за плугом, в который впряжён вол. Греки так и назвали этот способ письма – бустрофедон (от др.-греч. «бык» и «поворачиваю»).

Пользовались этим способом не только греки, бустрофедон встречается в памятниках южноаравийского, этрусского, малоазийских и других видов письма.

Вообще можно сказать, что разные народы писали, как говорится, кто во что горазд. Например, древние тюрки, имевшие руническую письменность, писали горизонтально, справа налево. Древние египтяне, для которых письмо было неразрывно связано с живописью, писали на своих папирусах иногда в одну, а иногда в другую сторону, ассирийцы – слева направо.

Древние китайцы, корейцы и японцы записывали тексты в вертикальные колонки, идущие справа налево. А писали они иероглифы на горизонтальных свитках, постепенно разворачивая его левую часть. Китайцы на Тайване и сегодня пишут, как правило, сверху вниз, причём столбцы идут справа налево, а вот в КНР, да и в обеих Кореях с Японией под влиянием европейских языков в XIX-XX веках принято европейское направление (впрочем, в «старой» художественной литературе и научных изданиях почти всегда используют горизонтальное письмо).

Как выглядят книги при таком «разночтении»? Те, в которых используется горизонтальное письмо, выглядят привычно для нас и открываются тоже привычно – справа налево. У вертикально написанных книг обложка открывается слева направо.

Кстати, некоторые врачи говорят, что при чтении по горизонтали глаз меньше устаёт, чем при чтении по вертикали. Верят ли им «горизонтально читающие»? Вряд ли.

Сколько же еще казалось бы банальных вопросов, которые буквально постоянно у нас на глазах. Однако, ответы на них мы никогда не пытались найти потому что не замечали этого вопроса - привыкли к нему. А ведь зачастую такие вопросы скрывают интересные, глубокие и иногда просто изящные ответы.

Задумывались ли вы когда-нибудь, почему еврейская и арабская письменность имеют одну явную особенность, а именно написание справа налево? Оказывается, тому есть вполне практичное объяснение.

Семитские языки, в число которых входит и арабский, и иврит, одни из древнейших на планете. Они зарождались в то время, когда никто даже и мечтать не мог о бумаге, ведь она появилась лишь в около двух тысяч лет назад. Еврейская и арабская письменность возникла на основе древневавилонского клинописного письма, а западная традиция письма — из древнеегипетского папирусного письма.

Чтобы объяснить наглядно, в чем же между ними отличие, включим воображение. Представьте, что перед вами лежит папирус, а в руках у вас стило (тонкий ножичек). Мы нарезаем иероглифы правой рукой (85% людей — правши). При этом, то, что написано справа от нас, закрыто, зато прекрасно видно то, что слева. Возникает вопрос: как вам удобнее писать? Конечно, слева направо, поскольку так удобно видеть, что уже написано.


А теперь возьмите в руки камень, молоток и зубило. Молоток в правую руку (85%), зубило — в левую. Начнем высекать клинописные иероглифы. Левая рука с зубилом нам надежно закрывает то, что написано слева, зато то, что справа, нам хорошо видно. Как нам удобнее писать? В этом случае - справа налево.


Кстати, если внимательнее присмотреться к буквам еврейского алфавита, то можно заметить, что их своеобразная конфигурация свидетельствует о том, что изначально буквы высекались на чем-то твердом. Такие буквы гораздо проще изобразить зубилом, а не пером.

Конечно, с тех пор камень перестал быть единственным долговечным хранителем информации, но правила письма уже сформировались, так что было принято решение не менять правила письменности кардинальным образом.

Согласны с такой версией?