Complete C++ i18n gettext() “hello world” example показывает стандартный способ обработки сообщений в программе на C++ с использованием gettext(). Каталоги сообщений хранятся в файлах Portable Object на основе файла Portable Object Template, созданного непосредственно из исходного кода C++ с использованием xgettext, msginit и msgfmt. Каков соответствующий метод обработки сообщений с помощью XSLT?I18n для XSLT (или что такое gettext() и xgettext для C++ для XSLT)?
В частности, чтобы сделать C++ Привет-всемерная поддержка код i18n один просто добавляет два включает в себя, вызывает некоторые функции настройки и обертывает строк в вызовах GetText():
#include <libintl.h>
#include <locale.h>
..
setlocale(LC_ALL, "");
bindtextdomain("hellogt", ".");
textdomain("hellogt");
std::cout << gettext("hello, world!") << std::endl;
...
Затем английский текст извлекается из исходную программу и преобразован в переносимый шаблон объекта для использования переводчиками, которые создают файлы каталога файлов Machine Object для использования программой времени выполнения с помощью программ утилит: xgettext, msginit и msgfmt. Наконец, при запуске программы отображается команда оболочки Linux для идентификации языка времени исполнения как испанского.
Основная цель выполнения программы hello-world - соединить все части системы, чтобы получить практически бесполезный пример для работы. Итак, как показывает пример C++ для C++ в среде Linux, я ищу то же самое, но вместо XSLT.
- В примере на C++ имеется набор файлов include и объектных файлов, которые связаны с hellogt. Есть ли код для XSLT, который предоставляет функции setlocale, bindtextdomain и textdomain? Как код подключается к языку времени выполнения пользователя?
- Есть ли код XSLT, который обеспечивает преобразование во время выполнения из текста на английском языке через файлы каталога сообщений, такие как gettext()?
- Существуют ли служебные программы для извлечения англиканского текста из исходного XML-файла для использования переводчиками вместе с программами для преобразования результатов в файлы каталога каталогов полезного использования, такие как xgettext, msginit и msgfmt?
- Как определяется идентификатор языка пользовательской среды выполнения?
Например, у меня есть приложение Javascript, Emle, которое обрабатывает XML с использованием XSLT в HTML. Сообщения определяются в специфической для конкретного приложения коллекции XML-файлов, специфичных для языка. Они извлекаются с использованием специального XSLT-кода приложения. Хотя это говорит о # 2, метод, похоже, не дает возможности воспользоваться услугами перевода, такими как предоставленные LaunchPad. Пример Emle English message file, используемый Emle XSLT file
Вы ищете общий способ сопоставления данного сообщения, такого как misc-all-fireFoxOnly, из исходного файла во все экземпляры соответствующего целевого HTML-файла для всех экземпляров misc-all-fireFoxOnly в целевой среде, используя только XSLT ? Итак, вы начинаете с какого-то файла, который имеет в нем Misc-all-fireFoxOnly, и в конечном итоге с HTML-файлом, который использует misc-all-fireFoxOnly, не имея на самом деле карты из источника в цель, правильно ли я понимаю? –
Я ищу XSLT-код для добавления в свой код вместе с утилитами поддержки для обработки сообщений.Я добавил дополнительные сведения к вопросу. –