Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024)

Материал из 0x1.tv

Докладчик
Кирилл Изместьев

В статье рассматривается проблема распространения татарского языка в информационном пространстве. А зачем вообще переводить компьютерные программы?

В первую очередь, компьютер — это важное устройство, которое мы используем повседневно.

Во-вторых, это элемент языковой среды. Язык — основа идентичности народа. Для сохранения языка важно, чтобы он постоянно развивался, адаптировался к новым реалиям, чтобы в языке появлялись современные слова, связанные с компьютерной тематикой.

Описывается опыт по локализации оболочки XFCE 4 операционной системы «Альт Образование» с открытым исходным кодом на татарский язык.

Видео

Презентация

Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024).pdf

Thesis

Введение: для чего это надо?

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

Зачем вообще переводить компьютерные программы? В первую очередь, компьютер — это важное устройство, которое мы используем повседневно. Во-вторых, это элемент языковой среды. Язык — основа идентичности народа. Для сохранения языка важно, чтобы он постоянно развивался, адаптировался к новым реалиям, чтобы в языке появлялись современные слова, связанные с компьютерной тематикой.

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

Всё начинается с добавления локали — набора параметров, определяющего региональные настройки пользовательского интерфейса, такие как язык, страна, часовой пояс, набор символов, формат вывода даты, времени, используемая денежная единица и пр.

Установка региональных параметров является частью большого процесса локализации. При этом изменение региональных настроек часто доступно конечному пользователю системы без перепрограммирования программного обеспечения (ПО), в отличие от перевода сообщений пользовательского интерфейса, который часто требует изменения программного кода разработчиками ПО. Обычно код языка — это 2 символа.

Что имеется

  • Дистрибутив ОС «Альт Образование» 10.2. В библиотеке glibc существует 2 локали:
    • tt_RU — для кириллицы, и
    • tt_RU@iqtelif — для латинского написания.
  • Татарская клавиатура. Её можно добавить выбрав из списка «Русская» — «Татарская».
  • Стандартная установка «Альт Образование» включает графическую оболочку XFCE. Альтернативную оболочку KDE можно установить при установке системы. Для оболочки KDE была сделана татарская локализация, работа велась с 2005 года. Для XFCE 4 — не было. ОС «Альт Образование» используется в различных учебных заведениях, парк компьютеров в которых не везде самый свежий. Оболочка XFCE 4 из коробки потребляет несколько меньше ресурсов компьютера, и при выборе: что установить на не самое свежее железо? — лучше устанавливать XFCE.

Что было исследовано и добавлено

  • [1.] Формат переменной:

LANGUAGE=tt:ru

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

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

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

Для этого добавляем строку в файле /etc/profile.d/lang.sh

export LANGUAGE=tt:ru


  • [2.] В пакете libnatspec татарская локаль уже была, но называлась tt_ru.UTF8, и если прописать иначе, то в Thunar

вместо надписей на татарском языке отображаются не читаемые символы.

Задача: подготовить минимальный комплект для показа визуального ряда на татарском языке в базовой поставке «Альт Образование».

1. В обновлённой системе определяем элементы интерфейса, которые будут показываться:

  • XFCE (включая панели, плагины и сеанс)
  • Меню (категории и пункты меню)
  • NetworkManager-applet-gtk


2. Исходим из того, что берём файлы, переведённые на русский, и декомпилируем .mo в исходный .po. Они лежат в каталоге /usr/share/locale/ru/LC_MESSAGES/

mkdir  /tmp/tt
cd /usr/share/locale/ru/LC_MESSAGES/
for i in xfce4-*.mo NetworkManager*.mo; 
             do msgunfmt <m>i -o  /tmp/tt/</m>{i/.mo/.po}; done

3. Подготавливаем строки с категориями (поле Name в \\/usr/share/desktop-directories/*.directory) и названиями приложений (GenericName и Comment) в /usr/share/applications (и ниже) в файлах .desktop: {\scriptsize

sed -n 's/^Name=//p' /usr/share/desktop-directories/*.directory >  /tmp/tt/DIRECTORY
sed -ne 's/^\(GenericName\|Comment\)=//pi' $(find /usr/share/applications 
                                                -name \*.desktop) >  /tmp/tt/DESKTOP

}

Патч в libxfce4uti для отображения надписей в меню на Татарском языке, а в случае отсутствия перевода — на русском (вместо английского)[1]. Результат на рисунках ниже.

Локализованное Меню

  1. [3.] Неочевидность перевода после локализации пакета lightdm-gtk-greeter: «Password» остаётся на английском, перевод

хранится в пакете Linux-PAM. Он передавался на перевод отдельно после исследования.


  1. [4.] Трудности, с которыми столкнулись переводчики — это, например, обратный порядок слов.


Локализованный файловый менеджер Thunar

В результате собран пакет localization-tt, содержащий .po файлы базовых приложений XFCE, которые видны на рабочем столе и в меню.

Тестировался (из сборочного задания) следующим образом:

apt-repo test 355257

в файле /etc/locale.conf меняем строку на:

LANG=tt_RU.UTF8

в файле /etc/sysconfig/i18n меняем строки на:

LANG=tt_RU.UTF8

SUPPORTED=tt_RU.UTF8

Добавляем строку в файле /etc/profile.d/lang.sh

export LANGUAGE=tt:ru

Устанавливаем пакет libxfce4util с патчем для отображения меню на татарском языке.

Скачиваем файлы .desktop и .directories[2].

Заменяем файлы с татарским переводом /usr/share/desktop-directories и /usr/share/applications.

Добавляем раскладку клавиатуры из списка Русская — Татарская.

Планы по развитию проекта

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


Татарская локализация ОС «Альт Образование» (Кирилл Изместьев, OSSDEVCONF-2024)!.jpg

Примечания и ссылки

  1. Патч в libxfce4uti для отображения надписей в меню на Татарском языке. [1]
  2. Архив подготовленных данных → [2]