Локализация программного обеспечения

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Программное обеспечение, локализованное на итальянский язык

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

Для локализации в английском языке иногда применяют сокращение «L10n». Где буквы «L» и «n» — начало и окончание слова Localization (произносится - Локализейшен, рус. - Локализация), а цифра 10 — количество букв между ними.

Что такое локализация[править | править вики-текст]

MikTeX — пример сложного ПО, локализованного не полностью.
Зелёные — функции, которые начинают работать сразу после подключения языкового пакета:
1. Ввод и отображение русских букв.
2. Ключевое слово «Глава».
Оранжевые — функции, присутствующие в MikTeX, но требующие от пользователя дополнительных действий.
3. Наклонный знак «≤» — вводится командой \leqslant (вместо \le).
Красные — функции, не адаптированные под русскую типографику (а пакетов, исправляющих это, в стандартной поставке нет).
4. Курсивный знак интеграла.
5. Курсивная греческая буква.

Локализация — это перевод интерфейса на другой язык, разделенный на три уровня[1]:

  1. Обеспечить поддержку языка и национальных стандартов — необходимый минимум, чтобы программа могла выполнять свои функции в другой стране.
  2. Перевод текстов в интерфейсе программы на целевой язык.
    • В сложном ПО не все части стоит переводить — например, многие не согласны с переводом имён функций Excel на русский язык.
    • Корректное выравнивание и размещение элементов интерфейса с учётом того, что сообщения-строки в разных языках могут иметь существенно разные размеры (например, обычное сообщение на английском, будучи переведено на немецкий язык, как правило, становится длиннее на 17,3 %[4]). Кроме того, существуют языки с написанием справа налево (арабский, иврит) и сверху вниз (японский);
    • Чрезвычайно важен перевод терминологии. Например, спорным является применяемый в Windows термин «обозреватель», обозначающий браузер.
    • Если есть текст на изображениях, его нужно перерисовать. Если есть речевые сообщения, их надо наговорить.
  3. Тонкая настройка под целевую страну.
    • Работа со словоформами. Примером будет пресловутое «Найдено 3 файлов».
    • Дополнительные стандарты, не влияющие на основную функциональность программы. Например: формат даты/времени в медиаплеере, особенности типографики.
    • Обеспечение интероперабельности локализированной программы с исходной. Например: мы ввели в документ формулу «x*2,5». Будет ли она работать, если открыть его в английской версии?
    • Учёт национального менталитета. Например: красный цвет у русских ассоциируется не только с опасностью, но и с праздником. На территории СНГ распространён клиент обмена сообщениями ICQ, но мало используются AOL Instant Messenger, MSN Messenger и т. д. В играх зачастую приходится менять юмор, а изредка — даже корректировать сюжет (например, в Syberia 2 турецкий иммигрант Sirkos превратился в еврея Цукермана).
    • Американский почтовый ящик, который мы привыкли видеть в программах электронной почты
      Перерисовка графики (сплэш-экранов, значков и т. д.) под реалии другой страны. Например, в разных странах могут выглядеть по-разному дорожные знаки, вилки и розетки, почтовый ящик. Глобус поворачивают к зрителю той страной, на которую рассчитывается продукт. В Великобритании у выключателя включенным является нижнее положение, в бывшем СССР — верхнее. Значки перерисовывают крайне редко, поэтому дизайнеры изначально стараются сделать их как можно более «интернациональными».
    • Корректировка клипарт-библиотек. Например, добавляются картинки местных праздников. В мусульманских странах клипарт пересматривается коренным образом — изымаются все изображения человека и животных, и добавляются арабески.

Таким образом, локализация — это сложная и всеобъемлющая операция[5], и уже при разработке ПО соображения будущей интернационализации должны учитываться самым серьёзным образом. Мы привыкли видеть программное обеспечение, русифицированное по первому-второму уровню; сложного ПО с исчерпывающей русификацией практически не существует. Примером глубокой локализации может служить операционная система Mac OS X компании Apple, где локализация нередко включает и национально-ориентированные пиктограммы.

Инструментарий для локализации[править | править вики-текст]

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

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

Для локализации программного обеспечения часто применяются специализированные средства, например, Passolo, которые позволяют переводить меню и сообщения в программных ресурсах и непосредственно в откомпилированных программах, а также тестировать корректность локализации. Для перевода аудиовизуальных материалов (главным образом фильмов) также используются специализированные средства, например, Swift, которые объединяют в себе некоторые аспекты памяти переводов, но дополнительно обеспечивают возможность появления субтитров по времени, их форматирования на экране, следования.

Смотри также MUI (локализация)

Языковые теги и коды[править | править вики-текст]

Языковые теги могут использоваться для обозначения региональных особенностей того или иного языка. Имеется основной субтег для идентификации языка (например, «en» для английского) и возможный дополнительный субтег для уточнения региона использования (например, «GB» — Great Britain, Великобритания). Между субтегами обычно ставится дефис, в отдельных случаях — черта снизу. Примеры языковых тегов:

  • Английский язык: en-GB (Британский английский), en-US (Американский английский), en-AU (Австралийский английский).
  • Испанский язык: es-ES (Кастильский испанский, письменный и разговорный язык Испании), es-MX (Мексиканский испанский), es-AR (Аргентинский испанский), es-CO (Колумбийский испанский).
  • Португальский язык: pt-PT (Европейский португальский, письменный и разговорный язык Португалии), pt-BR (Бразильский португальский).
  • Китайский язык: zh-CN (Материковый Китай, упрощённые иероглифы), zh-TW (Тайвань, традиционные иероглифы), zh-HK (Гонконг, традиционные иероглифы).
  • Русский язык: ru-RU (Русский, Россия), ru-UA (Русский, Украина), uk-UA (Украинский, Украина)[6]

Языковые коды определяются стандартом ISO 639-2 в виде трехбуквенного термина для идентификации каждого языка, например «eng» для английского или «tvl» для языка Тувалу. В то же время, эти коды не могут использоваться в качестве тегов, если соответствующий язык имеет двухбуквенный код согласно стандарту ISO 639-1.

Примечания[править | править вики-текст]

  1. FoxSoft=Инструменты локализации: Русификация программных продуктов
  2. Точка с запятой. IT Happens (9 августа 2011). — Пример ПО, некорректно работающего в локализованной ОС. Проверено 7 февраля 2014.
  3. Например, старые версии Winamp с растровым шрифтом корректно работают в локализированной ОС, но не выводят русских названий.
  4. Язык в интерфейсе: на короткий-длинный рассчитайся!
  5. 7 ключевых аспектов локализации игры
  6. ISO Language Code Table

См. также[править | править вики-текст]

Логотип Викисловаря
В Викисловаре есть статья «локализация»

Ссылки[править | править вики-текст]