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

Материал из Википедии — свободной энциклопедии
(перенаправлено с «Локализация»)
Перейти к: навигация, поиск
Программное обеспечение, локализованное на итальянский язык. Видна попытка сделать нейтральную иконку — глобус, повёрнутый Атлантическим океаном.

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

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

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

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

Локализация не ограничивается переводом интерфейса на другой язык. Это многоуровневая операция, первые шаги которой можно выполнить, даже оставив интерфейс нетронутым,[1] а последние — требуют взаимодействия программистов, дизайнеров и переводчиков[2]:

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

Таким образом, локализация — это сложная и всеобъемлющая операция[8], и уже при разработке ПО соображения будущей интернационализации должны учитываться самым серьёзным образом. Мы привыкли видеть программное обеспечение, русифицированное по первому-второму уровню; сложного ПО с исчерпывающей русификацией практически не существует. Примером глубокой локализации может служить операционная система 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 (русский, Россия),
  • Украинский язык uk-UA (украинский, Украина)[9]

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

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

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

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

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