Угловые диалекты / акценты 2+ i18n
Допустим, мы настроили и используем угловые теги i18n, аналогичные документации:
<div i18n>Hello World</div>
Мы генерируем наши переводы, используя ng xi18n --i18nFormat=xlf
Пока все хорошо, теперь мы хотим начать генерировать конкретные переводы для диалектов / акцентов, например de_AT (австрийский немецкий). В нашем приложении их очень мало. Поэтому, чтобы поддерживать переводческие файлы, мы не хотим создавать совершенно новые .xlf
для каждого диалекта, но используйте базовый messages.de.xlf
и каким-то образом отвести акценты / диалекты оттуда.
Первой мыслью для первого шага было создание нового messages.de_AT.xlf
содержащий только эти конкретные переводы, например:
<trans-unit id="5d9f8[...]f66d3e" datatype="html" approved="yes">
<source>Hello World</source>
<target state="translated">Griasdi Welt</target>
<context-group purpose="location">
<context context-type="sourcefile">src/app/hello-world.component.ts</context>
<context context-type="linenumber">16</context>
</context-group>
</trans-unit>
Но понятия не имею, как это сделать и что делать потом. Поэтому я ищу некоторые приемы или примеры проектов. Заранее спасибо!
(Я использую Angular 6)
0 ответов
Angular нужен полный файл перевода, чтобы построить проект на заданном языке.
Что вы могли бы сделать, так это создать messages.de_AT.xlf.partial
файл с только конкретными переводами AT, затем найдите / создайте инструмент для объединения ваших базовых немецких переводов messages.de.xlf
с messages.de_AT.xlf.partial
, в результате чего messages.de_AT.xlf
.
Я быстро просмотрел и не смог найти готового инструмента для слияния, но, поскольку файлы xlf на самом деле являются файлами XML, вы, вероятно, могли бы написать свой собственный сценарий, который это делает.