Роббинс Арнольд
Шрифт:
Только что освещенные интерфейсы стандартной библиотеки С решают простые части проблемы локализации. Для денежных, числовых значений, значений времени и даты, также, как для проблем сортировки строк, применяется управление посредством таблиц специфичных для локали данных (таких, как списки названий месяцев и дней).
Однако, большая часть взаимодействия пользователя с текстовой программой осуществляется в виде выводимых сообщений, таких, как приглашения или сообщения об ошибках. Проблема заключается в необходимости избежания множества версий одной и той же программы, которые отличаются лишь содержанием строк сообщений. Решением де-факто в мире GNU является GNU
GNU
13.3.1. Установка текстового домена:
Законченное приложение может содержать множество компонентов: отдельные исполняемые файлы, написанные на С или C++ или на языках сценариев, которые также могут получить доступ к возможностям
Каждый компонент должен вызывать эту функцию со строкой, указывающей на текстовый домен, в составе первоначальной инициализации в
Если текстовый домен не установлен с помощью
13.3.2. Перевод сообщений:
Следующим после установки текстового домена шагом является использование функции
Аргументы, используемые в этих функциях, следующие:
Переводимая строка. Она действует в качестве ключа к базе данных переводов.
Текстовый домен, из которого нужно получить перевод. Таким образом, хотя
Одна из описанных ранее категорий доменов (
Тогда '
В 99,9% времени бывает нужно использовать
Все функции возвращают строки. Строка является либо переводом данного