Как стать автором
Обновить

Комментарии 17

Вот Олег Филиппов обрадуется. Теперь ему снова ваш CSS реверсить ;)

все для него :)
Про RTL в вебе написано множество статей, а нативный клиент вы переводили на RTL? Что для этого сделали? Вот это было бы интересно!

UPDATE: а вот строчку внизу я и не увидел, каюсь.
Жду статью про нативный клиент!

Спасибо! Буквально сейчас один из наших сотрудников готовит демку для потенциального заказчика из саудовской Аравии.

Это поэтому вы меню «файл» в правый угол перенесли? А можно для европейцев и славян вернуть его в привычное место?
А разве 1С кто-то пользуется за пределами СНГ?
Да. Есть внедрения в Австрии, Германии, Италии, Румынии, Польше, Испании, США, Канаде, Турции, Латинской Америке, ОАЭ, Англии, Швеции, Болгарии, Чехии, Китае и других странах.
Список партнеров 1С за рубежом.
Я тут представил программирование на 1С на арабском…
Программировать в 1С можно только на русском и английском :)
ты не поверишь программирование «на русском» для англоязычных выглядит аналогично
Я понимаю, но русский текст хотя бы идёт слева направо и влезает в моноширинные шрифты, а вот что делать с арабским с его RTL и обязательной связностью символов…

Так почему ты решил что там на нативном пишут? Может всеже на английском? Ты бы ещё про китайские иероглифы вспомнил, вообще сверху вниз ;)

Потому что это 1С, коль уж у него есть ЯП на основе русской письменности и лексики, мало ли что, может и на арабском есть. И вообще, дайте пофантазировать, ну!
Хорошая статья — много деталей, фактически, мини-документация по использованию RTL-интерфейса. Но как я понимаю, основными её чтецами будут арабо-говорящие программисты. Поэтому, было бы здорово, чтобы ваш сотрудник ещё бы помог в переводе на арабский язык.
Спасибо за пример со шрифтом — тоже нахожусь сейчас в стадии поиска подходящей альтернативы для арабского — попробую ваш подход.

А по поводу переворачивания стилей — возможно, я что-то упустил, и в статье указаны причины конкретного подхода, но вы не пробовали использовать какие-то плагины для отзеркаливания CSS или, как альтернативу, значения start и end для выравнивания, отступов и т.п.?
Использование плагина для отзеркаливания CSS не упростит задачу, так как любое автоматическое преобразование CSS неминуемо приведёт к тому, что плагин преобразует right в left и наоборот там, где не нужно. Всё нужно будет перепроверять за плагином. Кроме того, автоматическое отзеркаливание CSS — это лишь часть работы, ведь нужно сделать аналогичное действие и с JS в тех местах, где идёт обращение к свойствам CSS, содержащим left или right.

start, end не поддерживаются в Internet Explorer, который по-прежнему поддерживается веб-клиентом 1С.
Согласен по второму пункту.

А по первому — по статье вырисовывается подход, при котором компоненты вручную переворачиваются и проверяются там где нужно. Видимо, это из-за того, что в идеале хотелось иметь возможность держать на одной странице как RTL так и LTR компоненты? Может, добавить пример, как это могло бы выглядеть?

Для полноты картины читателям я бы рекомендовал рассмотреть подход, при котором весь CSS автоматически переворачивается, и следить надо только за исключениями (калькулятор, поле ввода телефона и прочие чисто LTR компоненты). Все приложения, конечно, уникальные, и у всех есть свои нюансы, но, честно говоря, впервые слышу что автоматическое переворачивание принесло больше проблем.

Также хочется предостеречь от использования глобального text-align на HTML. Желание поставить выравнивание текста на самый верх документа кажется поначалу логичным, но проблемы начнут возникать, как только в интерфейсе появится текст противоположной направленности (арабское имя или адрес в англоязычном, или, например, русское слово — в арабском интерфейсе). Наше общение с переводчиками на иврит и арабский показало, что хотя юзеры там уже привыкли к самым диким сочетаниям направления текста, наиболее привычно им читать по правилам языка. То есть носителю арабского, понимающему английский, наиболее удобно видеть арабский текст справа, а латиницу — слева (хотя и здесь будут исключения).

И в этом случае глобальный text-align начинает портить жизнь. Победить его можно c помощью text-align: initial, но, увы, это свойство не поддерживается в ИЕ<=11. Я бы предложил вообще не ставить его — браузер сам разместит текст как надо
Зарегистрируйтесь на Хабре , чтобы оставить комментарий