1
0
Fork 0
freesewing/markdown/dev/reference/plugins/i18n/en.md
2022-02-19 08:04:25 +01:00

52 lines
1.2 KiB
Markdown

---
title: "@freesewing/plugin-i18n"
---
The **@freesewing/plugin-i18n** plugin provides a mechanism to translate your designs.
It does that by attaching to [the insertText lifecycle hook](/reference/api/hooks/inserttext) to
intercept all operations that add text to a design and attempt to translate the text
prior to insertion.
<Note>
This plugin provides the mechanism for translation, but does not come with translations itself.
For this, you can use our [i18n package](/reference/packages/i18n).
</Note>
## Installation
```bash
npm install @freesewing/plugin-i18n
```
## Usage
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
```js
import aaron from "@freesewing/aaron";
import i18n from "@freesewing/plugin-i18n";
import translations from "@freesewing/i18n";
const pattern = new aaron()
.use(i18nPlugin, { strings: translations });
```
You should also pass a second argument which holds your translations.
It should be structured as such:
```js
{
strings:
en: {
example: "Example"
},
nl: {
example: "Voorbeeld"
},
// More languages can follow
}
}
```