yfm2xliff
helps you translate your yfm files.
installation library
npm install @doc-tools/yfm2xliff --save
const {compose, extract} = require('@doc-tools/yfm2xliff');
installation cli
git clone git@github.com:yandex-cloud/yfm2xliff.git yfm2xliff
cd yfm2xliff
npm install
npm link
dependencies
library has peer dependency @doc-tools/transform
npm install @doc-tools/transform
usage library
api
note: types are provided for educational purposes, there is no typings available for the library for now.
type ExtractParameters = {
source: string;
target: string;
md: string;
mdPath: string;
sklPath: string
options: {
plugings: [];
...
}
}
type ExtractOutput = {
skeleton: string;
xliff: string;
data: {
markdownFileName: string;
skeletonFilename: string;
srcLang: string;
trgLang: string;
units: string[]
}
}
extract(ExtractParameters) => ExtractOutput
compose
type Xliff = string;
type Skeleton = string;
type CallBack = <T>(err: Error, generated: ComposeOutput) => CallBackOutput
type CallbackOutput = any;
compose(xliff: Xliff, skeleton: Skeleton, cb: CallBack) => CallbackOutput
example
refer to cli extractor, extract tests for usage examples.
compose
refer to cli composer for usage example.
usage cli
supports:
- extraction of the text tokens from markup to the xliff format.
- their composition in the translated markup document.
environment variables
supported by all commands
DEBUG
- enables failures logging to the filesystem
output_dir/.yfm2xliff.failures.log
.
continues to extract/compose
even if some failures occured in the process.
commands
extract text tokens for translation from all of the markup files inside the given directory into xliff.
options
- -i/input - input directory to get markup files from
- -o/output - output directory to persist extracted tokens in the xliff format (preserves original file path)
example
yfm2xliff extract -i cloud-docs/ru -o cloud-docs-extracted
compose
compose translated text units from all of the xliff files inside the given directory into translated markup.
environment variables
USE_SOURCE
- uses originally extracted text tokens instead of the translated ones, thus giving you original non translated markup.
options
- -i/input - input directory to get translated units from xliff files.
- -o/output - output directory to persist translated markup (preserves original file path)
example
yfm2xliff compose -i cloud-docs-extracted -o cloud-docs-translated