@simplyalec/ngx-i18nsupport-lib
v1.13.2
Published
A Typescript library to work with Angular generated i18n files (xliff, xmb)
Downloads
8
Maintainers
Readme
ngx-i18nsupport-lib
A Typescript library to work with Angular generated i18n files (XLIFF Version 1.2 and 2.0, XMB)
Table of Contents
Introduction
Installation
npm install @simplyalec/ngx-i18nsupport-lib --save-dev
Usage
TranslationMessagesFileFactory
This class is the entry point of the library.
You can use TranslationMessagesFileFactory
to load Angular generated message files.
The format of the files can be XLIFF 1.2, XLIFF 2.0 or XMB.
It returns a format independent abstraction of the file content, which is described in the interfade ITranslationMessagesFile
Example
// Usage of fromFileContent to read a file with a known format
let filename = ...;
let encoding = 'UTF-8';
let content = fs.readFileSync(filename, encoding);
let file: ITranslationMessagesFile
= TranslationMessagesFileFactory.fromFileContent('xlf', content, filename, encoding);
console.log(Utils.format('Translation from %s to %s',
file.sourceLanguage(),
file.targetLanguage()));
file.forEachTransUnit((tu: ITransUnit) => {
console.log(tu.sourceContent());
});
You can also use fromUnknownFormatFileContent
to read a file of any supported format.
The library will detect the correct file format:
...
let file: ITranslationMessagesFile
= TranslationMessagesFileFactory.fromUnknownFormatFileContent(content, filename, encoding);
ITranslationMessagesFile
A messages file.
For API details have a look at the interface.
ITransUnit
A single translation contained in the messages file.
For API details have a look at the interface.
Tests
npm test
This will run a testsuite that checks all relevant aspects of the library.
This is a fork
This repo is a fork of the ngx-i18nsupport from Martin Roob. This fork is purely in maintenance mode and has updated dependencies.
References
- Angular Cookbook Internationalization (i18n)
- XLIFF Spec