@intlayer/docs 8.3.0-canary.4 → 8.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/ar/compiler.md +84 -49
- package/docs/ar/configuration.md +80 -37
- package/docs/ar/intlayer_with_nextjs_16.md +174 -1
- package/docs/ar/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ar/intlayer_with_react_router_v7.md +224 -1
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/ar/intlayer_with_svelte_kit.md +175 -2
- package/docs/ar/intlayer_with_tanstack.md +176 -1
- package/docs/ar/intlayer_with_vite+preact.md +174 -1
- package/docs/ar/intlayer_with_vite+react.md +174 -1
- package/docs/ar/intlayer_with_vite+solid.md +174 -1
- package/docs/ar/intlayer_with_vite+svelte.md +174 -1
- package/docs/ar/intlayer_with_vite+vue.md +174 -1
- package/docs/de/compiler.md +83 -48
- package/docs/de/configuration.md +434 -212
- package/docs/de/intlayer_with_nextjs_16.md +176 -1
- package/docs/de/intlayer_with_nextjs_compiler.md +106 -349
- package/docs/de/intlayer_with_react_router_v7.md +225 -2
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +221 -79
- package/docs/de/intlayer_with_svelte_kit.md +158 -2
- package/docs/de/intlayer_with_tanstack.md +159 -1
- package/docs/de/intlayer_with_vite+preact.md +157 -1
- package/docs/de/intlayer_with_vite+react.md +157 -1
- package/docs/de/intlayer_with_vite+solid.md +159 -3
- package/docs/de/intlayer_with_vite+svelte.md +157 -1
- package/docs/de/intlayer_with_vite+vue.md +157 -1
- package/docs/en/compiler.md +60 -33
- package/docs/en/configuration.md +80 -57
- package/docs/en/intlayer_with_nextjs_16.md +176 -0
- package/docs/en/intlayer_with_nextjs_compiler.md +179 -1
- package/docs/en/intlayer_with_react_router_v7.md +159 -0
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +159 -0
- package/docs/en/intlayer_with_svelte_kit.md +159 -0
- package/docs/en/intlayer_with_tanstack.md +160 -1
- package/docs/en/intlayer_with_vite+preact.md +159 -0
- package/docs/en/intlayer_with_vite+react.md +159 -0
- package/docs/en/intlayer_with_vite+solid.md +148 -27
- package/docs/en/intlayer_with_vite+svelte.md +159 -0
- package/docs/en/intlayer_with_vite+vue.md +142 -41
- package/docs/en-GB/compiler.md +66 -34
- package/docs/en-GB/configuration.md +78 -36
- package/docs/es/compiler.md +83 -48
- package/docs/es/configuration.md +429 -206
- package/docs/es/intlayer_with_adonisjs.md +1 -1
- package/docs/es/intlayer_with_express.md +1 -1
- package/docs/es/intlayer_with_fastify.md +1 -1
- package/docs/es/intlayer_with_hono.md +1 -1
- package/docs/es/intlayer_with_nestjs.md +1 -1
- package/docs/es/intlayer_with_nextjs_16.md +176 -3
- package/docs/es/intlayer_with_nextjs_compiler.md +175 -2
- package/docs/es/intlayer_with_nuxt.md +1 -1
- package/docs/es/intlayer_with_react_router_v7.md +227 -4
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +162 -4
- package/docs/es/intlayer_with_svelte_kit.md +158 -2
- package/docs/es/intlayer_with_tanstack.md +160 -2
- package/docs/es/intlayer_with_vite+preact.md +162 -6
- package/docs/es/intlayer_with_vite+react.md +160 -4
- package/docs/es/intlayer_with_vite+solid.md +163 -7
- package/docs/es/intlayer_with_vite+svelte.md +157 -1
- package/docs/es/intlayer_with_vite+vue.md +165 -9
- package/docs/fr/compiler.md +81 -46
- package/docs/fr/configuration.md +355 -134
- package/docs/fr/intlayer_with_adonisjs.md +1 -1
- package/docs/fr/intlayer_with_express.md +1 -1
- package/docs/fr/intlayer_with_fastify.md +1 -1
- package/docs/fr/intlayer_with_hono.md +1 -1
- package/docs/fr/intlayer_with_nestjs.md +1 -1
- package/docs/fr/intlayer_with_nextjs_16.md +183 -7
- package/docs/fr/intlayer_with_nextjs_compiler.md +179 -3
- package/docs/fr/intlayer_with_react_router_v7.md +229 -3
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +237 -6
- package/docs/fr/intlayer_with_svelte_kit.md +158 -2
- package/docs/fr/intlayer_with_tanstack.md +159 -1
- package/docs/fr/intlayer_with_vite+preact.md +164 -8
- package/docs/fr/intlayer_with_vite+react.md +162 -6
- package/docs/fr/intlayer_with_vite+solid.md +163 -7
- package/docs/fr/intlayer_with_vite+svelte.md +157 -1
- package/docs/fr/intlayer_with_vite+vue.md +164 -8
- package/docs/hi/compiler.md +81 -46
- package/docs/hi/configuration.md +87 -44
- package/docs/hi/intlayer_with_nextjs_16.md +174 -1
- package/docs/hi/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/hi/intlayer_with_react_router_v7.md +224 -1
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/hi/intlayer_with_svelte_kit.md +158 -2
- package/docs/hi/intlayer_with_tanstack.md +159 -1
- package/docs/hi/intlayer_with_vite+preact.md +157 -1
- package/docs/hi/intlayer_with_vite+react.md +157 -1
- package/docs/hi/intlayer_with_vite+solid.md +157 -1
- package/docs/hi/intlayer_with_vite+svelte.md +157 -1
- package/docs/hi/intlayer_with_vite+vue.md +157 -1
- package/docs/id/compiler.md +84 -51
- package/docs/id/configuration.md +83 -45
- package/docs/id/intlayer_with_nextjs_16.md +174 -1
- package/docs/id/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/id/intlayer_with_react_router_v7.md +224 -1
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/id/intlayer_with_svelte_kit.md +158 -2
- package/docs/id/intlayer_with_tanstack.md +159 -1
- package/docs/id/intlayer_with_vite+preact.md +157 -1
- package/docs/id/intlayer_with_vite+react.md +157 -1
- package/docs/id/intlayer_with_vite+solid.md +157 -1
- package/docs/id/intlayer_with_vite+svelte.md +157 -1
- package/docs/id/intlayer_with_vite+vue.md +157 -1
- package/docs/it/compiler.md +81 -46
- package/docs/it/configuration.md +426 -204
- package/docs/it/intlayer_with_nextjs_16.md +174 -1
- package/docs/it/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/it/intlayer_with_react_router_v7.md +225 -2
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/it/intlayer_with_svelte_kit.md +158 -2
- package/docs/it/intlayer_with_tanstack.md +159 -1
- package/docs/it/intlayer_with_vite+preact.md +157 -1
- package/docs/it/intlayer_with_vite+react.md +157 -1
- package/docs/it/intlayer_with_vite+solid.md +159 -3
- package/docs/it/intlayer_with_vite+svelte.md +157 -1
- package/docs/it/intlayer_with_vite+vue.md +157 -1
- package/docs/ja/compiler.md +94 -58
- package/docs/ja/configuration.md +88 -45
- package/docs/ja/intlayer_with_nextjs_16.md +174 -1
- package/docs/ja/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ja/intlayer_with_react_router_v7.md +184 -394
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/ja/intlayer_with_svelte_kit.md +119 -595
- package/docs/ja/intlayer_with_tanstack.md +131 -642
- package/docs/ja/intlayer_with_vite+preact.md +111 -1231
- package/docs/ja/intlayer_with_vite+react.md +129 -1304
- package/docs/ja/intlayer_with_vite+solid.md +159 -3
- package/docs/ja/intlayer_with_vite+svelte.md +157 -1
- package/docs/ja/intlayer_with_vite+vue.md +157 -1
- package/docs/ko/compiler.md +88 -52
- package/docs/ko/configuration.md +87 -44
- package/docs/ko/intlayer_with_nextjs_16.md +174 -1
- package/docs/ko/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ko/intlayer_with_react_router_v7.md +225 -2
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +226 -2
- package/docs/ko/intlayer_with_svelte_kit.md +158 -2
- package/docs/ko/intlayer_with_tanstack.md +159 -1
- package/docs/ko/intlayer_with_vite+preact.md +157 -1
- package/docs/ko/intlayer_with_vite+react.md +157 -1
- package/docs/ko/intlayer_with_vite+solid.md +159 -3
- package/docs/ko/intlayer_with_vite+svelte.md +157 -1
- package/docs/ko/intlayer_with_vite+vue.md +157 -1
- package/docs/pl/compiler.md +84 -51
- package/docs/pl/configuration.md +83 -37
- package/docs/pl/intlayer_with_nextjs_16.md +174 -1
- package/docs/pl/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/pl/intlayer_with_react_router_v7.md +224 -1
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/pl/intlayer_with_svelte_kit.md +158 -2
- package/docs/pl/intlayer_with_tanstack.md +159 -1
- package/docs/pl/intlayer_with_vite+preact.md +157 -1
- package/docs/pl/intlayer_with_vite+react.md +157 -1
- package/docs/pl/intlayer_with_vite+solid.md +157 -1
- package/docs/pl/intlayer_with_vite+svelte.md +157 -1
- package/docs/pl/intlayer_with_vite+vue.md +157 -1
- package/docs/pt/compiler.md +81 -46
- package/docs/pt/configuration.md +404 -194
- package/docs/pt/intlayer_with_nextjs_16.md +174 -1
- package/docs/pt/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/pt/intlayer_with_react_router_v7.md +224 -1
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/pt/intlayer_with_svelte_kit.md +158 -2
- package/docs/pt/intlayer_with_tanstack.md +159 -1
- package/docs/pt/intlayer_with_vite+preact.md +157 -1
- package/docs/pt/intlayer_with_vite+react.md +157 -1
- package/docs/pt/intlayer_with_vite+solid.md +157 -1
- package/docs/pt/intlayer_with_vite+svelte.md +157 -1
- package/docs/pt/intlayer_with_vite+vue.md +157 -1
- package/docs/ru/compiler.md +90 -57
- package/docs/ru/configuration.md +76 -46
- package/docs/ru/intlayer_with_nextjs_16.md +174 -1
- package/docs/ru/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/ru/intlayer_with_react_router_v7.md +224 -1
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/ru/intlayer_with_svelte_kit.md +158 -2
- package/docs/ru/intlayer_with_tanstack.md +159 -1
- package/docs/ru/intlayer_with_vite+preact.md +157 -1
- package/docs/ru/intlayer_with_vite+react.md +157 -1
- package/docs/ru/intlayer_with_vite+solid.md +157 -1
- package/docs/ru/intlayer_with_vite+svelte.md +157 -1
- package/docs/ru/intlayer_with_vite+vue.md +157 -1
- package/docs/tr/compiler.md +85 -52
- package/docs/tr/configuration.md +83 -40
- package/docs/tr/intlayer_with_nextjs_16.md +174 -1
- package/docs/tr/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/tr/intlayer_with_react_router_v7.md +224 -1
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/tr/intlayer_with_svelte_kit.md +158 -2
- package/docs/tr/intlayer_with_tanstack.md +159 -1
- package/docs/tr/intlayer_with_vite+preact.md +157 -1
- package/docs/tr/intlayer_with_vite+react.md +157 -1
- package/docs/tr/intlayer_with_vite+solid.md +157 -1
- package/docs/tr/intlayer_with_vite+svelte.md +157 -1
- package/docs/tr/intlayer_with_vite+vue.md +157 -1
- package/docs/uk/compiler.md +96 -61
- package/docs/uk/configuration.md +83 -37
- package/docs/uk/intlayer_with_nextjs_16.md +174 -1
- package/docs/uk/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/uk/intlayer_with_react_router_v7.md +224 -1
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/uk/intlayer_with_svelte_kit.md +157 -1
- package/docs/uk/intlayer_with_tanstack.md +159 -1
- package/docs/uk/intlayer_with_vite+preact.md +157 -1
- package/docs/uk/intlayer_with_vite+react.md +157 -1
- package/docs/uk/intlayer_with_vite+solid.md +157 -1
- package/docs/uk/intlayer_with_vite+svelte.md +157 -1
- package/docs/uk/intlayer_with_vite+vue.md +157 -1
- package/docs/vi/compiler.md +85 -50
- package/docs/vi/configuration.md +85 -39
- package/docs/vi/intlayer_with_nextjs_16.md +174 -1
- package/docs/vi/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/vi/intlayer_with_react_router_v7.md +224 -1
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +225 -1
- package/docs/vi/intlayer_with_svelte_kit.md +158 -2
- package/docs/vi/intlayer_with_tanstack.md +159 -1
- package/docs/vi/intlayer_with_vite+preact.md +157 -1
- package/docs/vi/intlayer_with_vite+react.md +157 -1
- package/docs/vi/intlayer_with_vite+solid.md +157 -1
- package/docs/vi/intlayer_with_vite+svelte.md +157 -1
- package/docs/vi/intlayer_with_vite+vue.md +157 -1
- package/docs/zh/compiler.md +84 -49
- package/docs/zh/configuration.md +80 -37
- package/docs/zh/intlayer_with_adonisjs.md +1 -1
- package/docs/zh/intlayer_with_express.md +1 -1
- package/docs/zh/intlayer_with_fastify.md +1 -1
- package/docs/zh/intlayer_with_hono.md +1 -1
- package/docs/zh/intlayer_with_nestjs.md +1 -1
- package/docs/zh/intlayer_with_nextjs_16.md +174 -1
- package/docs/zh/intlayer_with_nextjs_compiler.md +174 -1
- package/docs/zh/intlayer_with_react_router_v7.md +227 -4
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +228 -4
- package/docs/zh/intlayer_with_svelte_kit.md +158 -2
- package/docs/zh/intlayer_with_tanstack.md +159 -1
- package/docs/zh/intlayer_with_vite+preact.md +159 -3
- package/docs/zh/intlayer_with_vite+react.md +157 -1
- package/docs/zh/intlayer_with_vite+solid.md +161 -5
- package/docs/zh/intlayer_with_vite+svelte.md +157 -1
- package/docs/zh/intlayer_with_vite+vue.md +158 -2
- package/package.json +6 -6
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-04-18
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Vite + Solid i18n - Wie Sie eine Solid App übersetzen in 2026
|
|
5
5
|
description: Entdecken Sie, wie Sie Ihre Vite- und Solid-Website mehrsprachig gestalten. Folgen Sie der Dokumentation, um sie zu internationalisieren (i18n) und zu übersetzen.
|
|
6
6
|
keywords:
|
|
@@ -45,7 +45,7 @@ history:
|
|
|
45
45
|
</Tab>
|
|
46
46
|
</Tabs>
|
|
47
47
|
|
|
48
|
-
##
|
|
48
|
+
## Inhaltsverzeichnis
|
|
49
49
|
|
|
50
50
|
<TOC/>
|
|
51
51
|
|
|
@@ -68,7 +68,7 @@ Mit Intlayer können Sie:
|
|
|
68
68
|
|
|
69
69
|
## Schritt-für-Schritt-Anleitung zur Einrichtung von Intlayer in einer Vite- und Solid-Anwendung
|
|
70
70
|
|
|
71
|
-
##
|
|
71
|
+
## Inhaltsverzeichnis
|
|
72
72
|
|
|
73
73
|
<TOC/>
|
|
74
74
|
|
|
@@ -579,6 +579,162 @@ Für weitere Details zur Nutzung der Erweiterung siehe die [Intlayer VS Code Ext
|
|
|
579
579
|
|
|
580
580
|
---
|
|
581
581
|
|
|
582
|
+
### (Optional) Schritt 12 : Inhalt Ihrer Komponenten extrahieren
|
|
583
|
+
|
|
584
|
+
Wenn Sie eine bestehende Codebasis haben, kann die Transformation von Tausenden von Dateien zeitaufwendig sein.
|
|
585
|
+
|
|
586
|
+
Um diesen Prozess zu erleichtern, bietet Intlayer einen [Compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/compiler.md) / [Extractor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/cli/extract.md) an, um Ihre Komponenten zu transformieren und den Inhalt zu extrahieren.
|
|
587
|
+
|
|
588
|
+
Um es einzurichten, können Sie einen `compiler`-Abschnitt in Ihrer `intlayer.config.ts`-Datei hinzufügen:
|
|
589
|
+
|
|
590
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
591
|
+
import { type IntlayerConfig } from "intlayer";
|
|
592
|
+
|
|
593
|
+
const config: IntlayerConfig = {
|
|
594
|
+
// ... Rest Ihrer Konfiguration
|
|
595
|
+
compiler: {
|
|
596
|
+
/**
|
|
597
|
+
* Gibt an, ob der Compiler aktiviert sein soll.
|
|
598
|
+
*/
|
|
599
|
+
enabled: true,
|
|
600
|
+
|
|
601
|
+
/**
|
|
602
|
+
* Definiert den Pfad der Ausgabedateien
|
|
603
|
+
*/
|
|
604
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
605
|
+
|
|
606
|
+
/**
|
|
607
|
+
* Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
|
|
608
|
+
*/
|
|
609
|
+
saveComponents: false,
|
|
610
|
+
|
|
611
|
+
/**
|
|
612
|
+
* Präfix für Wörterbuchschlüssel
|
|
613
|
+
*/
|
|
614
|
+
dictionaryKeyPrefix: "",
|
|
615
|
+
},
|
|
616
|
+
};
|
|
617
|
+
|
|
618
|
+
export default config;
|
|
619
|
+
```
|
|
620
|
+
|
|
621
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
622
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
623
|
+
const config = {
|
|
624
|
+
// ... Rest Ihrer Konfiguration
|
|
625
|
+
compiler: {
|
|
626
|
+
/**
|
|
627
|
+
* Gibt an, ob der Compiler aktiviert sein soll.
|
|
628
|
+
*/
|
|
629
|
+
enabled: true,
|
|
630
|
+
|
|
631
|
+
/**
|
|
632
|
+
* Definiert den Pfad der Ausgabedateien
|
|
633
|
+
*/
|
|
634
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
635
|
+
|
|
636
|
+
/**
|
|
637
|
+
* Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
|
|
638
|
+
*/
|
|
639
|
+
saveComponents: false,
|
|
640
|
+
|
|
641
|
+
/**
|
|
642
|
+
* Präfix für Wörterbuchschlüssel
|
|
643
|
+
*/
|
|
644
|
+
dictionaryKeyPrefix: "",
|
|
645
|
+
},
|
|
646
|
+
};
|
|
647
|
+
|
|
648
|
+
export default config;
|
|
649
|
+
```
|
|
650
|
+
|
|
651
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
652
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
653
|
+
const config = {
|
|
654
|
+
// ... Rest Ihrer Konfiguration
|
|
655
|
+
compiler: {
|
|
656
|
+
/**
|
|
657
|
+
* Gibt an, ob der Compiler aktiviert sein soll.
|
|
658
|
+
*/
|
|
659
|
+
enabled: true,
|
|
660
|
+
|
|
661
|
+
/**
|
|
662
|
+
* Definiert den Pfad der Ausgabedateien
|
|
663
|
+
*/
|
|
664
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
665
|
+
|
|
666
|
+
/**
|
|
667
|
+
* Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
|
|
668
|
+
*/
|
|
669
|
+
saveComponents: false,
|
|
670
|
+
|
|
671
|
+
/**
|
|
672
|
+
* Präfix für Wörterbuchschlüssel
|
|
673
|
+
*/
|
|
674
|
+
dictionaryKeyPrefix: "",
|
|
675
|
+
},
|
|
676
|
+
};
|
|
677
|
+
|
|
678
|
+
module.exports = config;
|
|
679
|
+
```
|
|
680
|
+
|
|
681
|
+
<Tabs>
|
|
682
|
+
<Tab value='Extraktionsbefehl'>
|
|
683
|
+
|
|
684
|
+
Führen Sie den Extractor aus, um Ihre Komponenten zu transformieren und den Inhalt zu extrahieren
|
|
685
|
+
|
|
686
|
+
```bash packageManager="npm"
|
|
687
|
+
npx intlayer extract
|
|
688
|
+
```
|
|
689
|
+
|
|
690
|
+
```bash packageManager="pnpm"
|
|
691
|
+
pnpm intlayer extract
|
|
692
|
+
```
|
|
693
|
+
|
|
694
|
+
```bash packageManager="yarn"
|
|
695
|
+
yarn intlayer extract
|
|
696
|
+
```
|
|
697
|
+
|
|
698
|
+
```bash packageManager="bun"
|
|
699
|
+
bunx intlayer extract
|
|
700
|
+
```
|
|
701
|
+
|
|
702
|
+
</Tab>
|
|
703
|
+
<Tab value='Babel-Compiler'>
|
|
704
|
+
|
|
705
|
+
Aktualisieren Sie Ihre `vite.config.ts`, um das `intlayerCompiler`-Plugin aufzunehmen:
|
|
706
|
+
|
|
707
|
+
```ts fileName="vite.config.ts"
|
|
708
|
+
import { defineConfig } from "vite";
|
|
709
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
710
|
+
|
|
711
|
+
export default defineConfig({
|
|
712
|
+
plugins: [
|
|
713
|
+
intlayer(),
|
|
714
|
+
intlayerCompiler(), // Fügt das Compiler-Plugin hinzu
|
|
715
|
+
],
|
|
716
|
+
});
|
|
717
|
+
```
|
|
718
|
+
|
|
719
|
+
```bash packageManager="npm"
|
|
720
|
+
npm run build # Oder npm run dev
|
|
721
|
+
```
|
|
722
|
+
|
|
723
|
+
```bash packageManager="pnpm"
|
|
724
|
+
pnpm run build # Oder pnpm run dev
|
|
725
|
+
```
|
|
726
|
+
|
|
727
|
+
```bash packageManager="yarn"
|
|
728
|
+
yarn build # Oder yarn dev
|
|
729
|
+
```
|
|
730
|
+
|
|
731
|
+
```bash packageManager="bun"
|
|
732
|
+
bun run build # Or bun run dev
|
|
733
|
+
```
|
|
734
|
+
|
|
735
|
+
</Tab>
|
|
736
|
+
</Tabs>
|
|
737
|
+
|
|
582
738
|
### Weiterführende Schritte
|
|
583
739
|
|
|
584
740
|
Um weiterzugehen, können Sie den [visuellen Editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_visual_editor.md) implementieren oder Ihre Inhalte mit dem [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_CMS.md) auslagern.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-04-18
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Vite + Svelte i18n - Wie Sie eine Svelte App übersetzen in 2026
|
|
5
5
|
description: Entdecken Sie, wie Sie Ihre Vite- und Svelte-Website mehrsprachig gestalten. Folgen Sie der Dokumentation, um sie zu internationalisieren (i18n) und zu übersetzen.
|
|
6
6
|
keywords:
|
|
@@ -520,6 +520,162 @@ Für weitere Details zur Verwendung der Erweiterung lesen Sie die [Intlayer VS C
|
|
|
520
520
|
|
|
521
521
|
---
|
|
522
522
|
|
|
523
|
+
### (Optional) Schritt 9 : Inhalt Ihrer Komponenten extrahieren
|
|
524
|
+
|
|
525
|
+
Wenn Sie eine bestehende Codebasis haben, kann die Transformation von Tausenden von Dateien zeitaufwendig sein.
|
|
526
|
+
|
|
527
|
+
Um diesen Prozess zu erleichtern, bietet Intlayer einen [Compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/compiler.md) / [Extractor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/cli/extract.md) an, um Ihre Komponenten zu transformieren und den Inhalt zu extrahieren.
|
|
528
|
+
|
|
529
|
+
Um es einzurichten, können Sie einen `compiler`-Abschnitt in Ihrer `intlayer.config.ts`-Datei hinzufügen:
|
|
530
|
+
|
|
531
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
532
|
+
import { type IntlayerConfig } from "intlayer";
|
|
533
|
+
|
|
534
|
+
const config: IntlayerConfig = {
|
|
535
|
+
// ... Rest Ihrer Konfiguration
|
|
536
|
+
compiler: {
|
|
537
|
+
/**
|
|
538
|
+
* Gibt an, ob der Compiler aktiviert sein soll.
|
|
539
|
+
*/
|
|
540
|
+
enabled: true,
|
|
541
|
+
|
|
542
|
+
/**
|
|
543
|
+
* Definiert den Pfad der Ausgabedateien
|
|
544
|
+
*/
|
|
545
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
546
|
+
|
|
547
|
+
/**
|
|
548
|
+
* Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
|
|
549
|
+
*/
|
|
550
|
+
saveComponents: false,
|
|
551
|
+
|
|
552
|
+
/**
|
|
553
|
+
* Präfix für Wörterbuchschlüssel
|
|
554
|
+
*/
|
|
555
|
+
dictionaryKeyPrefix: "",
|
|
556
|
+
},
|
|
557
|
+
};
|
|
558
|
+
|
|
559
|
+
export default config;
|
|
560
|
+
```
|
|
561
|
+
|
|
562
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
563
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
564
|
+
const config = {
|
|
565
|
+
// ... Rest Ihrer Konfiguration
|
|
566
|
+
compiler: {
|
|
567
|
+
/**
|
|
568
|
+
* Gibt an, ob der Compiler aktiviert sein soll.
|
|
569
|
+
*/
|
|
570
|
+
enabled: true,
|
|
571
|
+
|
|
572
|
+
/**
|
|
573
|
+
* Definiert den Pfad der Ausgabedateien
|
|
574
|
+
*/
|
|
575
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
576
|
+
|
|
577
|
+
/**
|
|
578
|
+
* Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
|
|
579
|
+
*/
|
|
580
|
+
saveComponents: false,
|
|
581
|
+
|
|
582
|
+
/**
|
|
583
|
+
* Präfix für Wörterbuchschlüssel
|
|
584
|
+
*/
|
|
585
|
+
dictionaryKeyPrefix: "",
|
|
586
|
+
},
|
|
587
|
+
};
|
|
588
|
+
|
|
589
|
+
export default config;
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
593
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
594
|
+
const config = {
|
|
595
|
+
// ... Rest Ihrer Konfiguration
|
|
596
|
+
compiler: {
|
|
597
|
+
/**
|
|
598
|
+
* Gibt an, ob der Compiler aktiviert sein soll.
|
|
599
|
+
*/
|
|
600
|
+
enabled: true,
|
|
601
|
+
|
|
602
|
+
/**
|
|
603
|
+
* Definiert den Pfad der Ausgabedateien
|
|
604
|
+
*/
|
|
605
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
606
|
+
|
|
607
|
+
/**
|
|
608
|
+
* Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
|
|
609
|
+
*/
|
|
610
|
+
saveComponents: false,
|
|
611
|
+
|
|
612
|
+
/**
|
|
613
|
+
* Präfix für Wörterbuchschlüssel
|
|
614
|
+
*/
|
|
615
|
+
dictionaryKeyPrefix: "",
|
|
616
|
+
},
|
|
617
|
+
};
|
|
618
|
+
|
|
619
|
+
module.exports = config;
|
|
620
|
+
```
|
|
621
|
+
|
|
622
|
+
<Tabs>
|
|
623
|
+
<Tab value='Extraktionsbefehl'>
|
|
624
|
+
|
|
625
|
+
Führen Sie den Extractor aus, um Ihre Komponenten zu transformieren und den Inhalt zu extrahieren
|
|
626
|
+
|
|
627
|
+
```bash packageManager="npm"
|
|
628
|
+
npx intlayer extract
|
|
629
|
+
```
|
|
630
|
+
|
|
631
|
+
```bash packageManager="pnpm"
|
|
632
|
+
pnpm intlayer extract
|
|
633
|
+
```
|
|
634
|
+
|
|
635
|
+
```bash packageManager="yarn"
|
|
636
|
+
yarn intlayer extract
|
|
637
|
+
```
|
|
638
|
+
|
|
639
|
+
```bash packageManager="bun"
|
|
640
|
+
bunx intlayer extract
|
|
641
|
+
```
|
|
642
|
+
|
|
643
|
+
</Tab>
|
|
644
|
+
<Tab value='Babel-Compiler'>
|
|
645
|
+
|
|
646
|
+
Aktualisieren Sie Ihre `vite.config.ts`, um das `intlayerCompiler`-Plugin aufzunehmen:
|
|
647
|
+
|
|
648
|
+
```ts fileName="vite.config.ts"
|
|
649
|
+
import { defineConfig } from "vite";
|
|
650
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
651
|
+
|
|
652
|
+
export default defineConfig({
|
|
653
|
+
plugins: [
|
|
654
|
+
intlayer(),
|
|
655
|
+
intlayerCompiler(), // Fügt das Compiler-Plugin hinzu
|
|
656
|
+
],
|
|
657
|
+
});
|
|
658
|
+
```
|
|
659
|
+
|
|
660
|
+
```bash packageManager="npm"
|
|
661
|
+
npm run build # Oder npm run dev
|
|
662
|
+
```
|
|
663
|
+
|
|
664
|
+
```bash packageManager="pnpm"
|
|
665
|
+
pnpm run build # Oder pnpm run dev
|
|
666
|
+
```
|
|
667
|
+
|
|
668
|
+
```bash packageManager="yarn"
|
|
669
|
+
yarn build # Oder yarn dev
|
|
670
|
+
```
|
|
671
|
+
|
|
672
|
+
```bash packageManager="bun"
|
|
673
|
+
bun run build # Or bun run dev
|
|
674
|
+
```
|
|
675
|
+
|
|
676
|
+
</Tab>
|
|
677
|
+
</Tabs>
|
|
678
|
+
|
|
523
679
|
### Weiterführende Schritte
|
|
524
680
|
|
|
525
681
|
Um weiterzugehen, können Sie den [visuellen Editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_visual_editor.md) implementieren oder Ihre Inhalte mit dem [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_CMS.md) auslagern.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-04-18
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Vite + Vue i18n - Wie Sie eine Vue App übersetzen in 2026
|
|
5
5
|
description: Entdecken Sie, wie Sie Ihre Vite- und Vue-Website mehrsprachig machen. Folgen Sie der Dokumentation, um sie zu internationalisieren (i18n) und zu übersetzen.
|
|
6
6
|
keywords:
|
|
@@ -1110,6 +1110,162 @@ Für weitere Details zur Verwendung der Erweiterung siehe die [Intlayer VS Code
|
|
|
1110
1110
|
|
|
1111
1111
|
---
|
|
1112
1112
|
|
|
1113
|
+
### (Optional) Schritt 12 : Inhalt Ihrer Komponenten extrahieren
|
|
1114
|
+
|
|
1115
|
+
Wenn Sie eine bestehende Codebasis haben, kann die Transformation von Tausenden von Dateien zeitaufwendig sein.
|
|
1116
|
+
|
|
1117
|
+
Um diesen Prozess zu erleichtern, bietet Intlayer einen [Compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/compiler.md) / [Extractor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/cli/extract.md) an, um Ihre Komponenten zu transformieren und den Inhalt zu extrahieren.
|
|
1118
|
+
|
|
1119
|
+
Um es einzurichten, können Sie einen `compiler`-Abschnitt in Ihrer `intlayer.config.ts`-Datei hinzufügen:
|
|
1120
|
+
|
|
1121
|
+
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
1122
|
+
import { type IntlayerConfig } from "intlayer";
|
|
1123
|
+
|
|
1124
|
+
const config: IntlayerConfig = {
|
|
1125
|
+
// ... Rest Ihrer Konfiguration
|
|
1126
|
+
compiler: {
|
|
1127
|
+
/**
|
|
1128
|
+
* Gibt an, ob der Compiler aktiviert sein soll.
|
|
1129
|
+
*/
|
|
1130
|
+
enabled: true,
|
|
1131
|
+
|
|
1132
|
+
/**
|
|
1133
|
+
* Definiert den Pfad der Ausgabedateien
|
|
1134
|
+
*/
|
|
1135
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1136
|
+
|
|
1137
|
+
/**
|
|
1138
|
+
* Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
|
|
1139
|
+
*/
|
|
1140
|
+
saveComponents: false,
|
|
1141
|
+
|
|
1142
|
+
/**
|
|
1143
|
+
* Präfix für Wörterbuchschlüssel
|
|
1144
|
+
*/
|
|
1145
|
+
dictionaryKeyPrefix: "",
|
|
1146
|
+
},
|
|
1147
|
+
};
|
|
1148
|
+
|
|
1149
|
+
export default config;
|
|
1150
|
+
```
|
|
1151
|
+
|
|
1152
|
+
```javascript fileName="intlayer.config.mjs" codeFormat="esm"
|
|
1153
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1154
|
+
const config = {
|
|
1155
|
+
// ... Rest Ihrer Konfiguration
|
|
1156
|
+
compiler: {
|
|
1157
|
+
/**
|
|
1158
|
+
* Gibt an, ob der Compiler aktiviert sein soll.
|
|
1159
|
+
*/
|
|
1160
|
+
enabled: true,
|
|
1161
|
+
|
|
1162
|
+
/**
|
|
1163
|
+
* Definiert den Pfad der Ausgabedateien
|
|
1164
|
+
*/
|
|
1165
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1166
|
+
|
|
1167
|
+
/**
|
|
1168
|
+
* Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
|
|
1169
|
+
*/
|
|
1170
|
+
saveComponents: false,
|
|
1171
|
+
|
|
1172
|
+
/**
|
|
1173
|
+
* Präfix für Wörterbuchschlüssel
|
|
1174
|
+
*/
|
|
1175
|
+
dictionaryKeyPrefix: "",
|
|
1176
|
+
},
|
|
1177
|
+
};
|
|
1178
|
+
|
|
1179
|
+
export default config;
|
|
1180
|
+
```
|
|
1181
|
+
|
|
1182
|
+
```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
|
|
1183
|
+
/** @type {import('intlayer').IntlayerConfig} */
|
|
1184
|
+
const config = {
|
|
1185
|
+
// ... Rest Ihrer Konfiguration
|
|
1186
|
+
compiler: {
|
|
1187
|
+
/**
|
|
1188
|
+
* Gibt an, ob der Compiler aktiviert sein soll.
|
|
1189
|
+
*/
|
|
1190
|
+
enabled: true,
|
|
1191
|
+
|
|
1192
|
+
/**
|
|
1193
|
+
* Definiert den Pfad der Ausgabedateien
|
|
1194
|
+
*/
|
|
1195
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
1196
|
+
|
|
1197
|
+
/**
|
|
1198
|
+
* Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
|
|
1199
|
+
*/
|
|
1200
|
+
saveComponents: false,
|
|
1201
|
+
|
|
1202
|
+
/**
|
|
1203
|
+
* Präfix für Wörterbuchschlüssel
|
|
1204
|
+
*/
|
|
1205
|
+
dictionaryKeyPrefix: "",
|
|
1206
|
+
},
|
|
1207
|
+
};
|
|
1208
|
+
|
|
1209
|
+
module.exports = config;
|
|
1210
|
+
```
|
|
1211
|
+
|
|
1212
|
+
<Tabs>
|
|
1213
|
+
<Tab value='Extraktionsbefehl'>
|
|
1214
|
+
|
|
1215
|
+
Führen Sie den Extractor aus, um Ihre Komponenten zu transformieren und den Inhalt zu extrahieren
|
|
1216
|
+
|
|
1217
|
+
```bash packageManager="npm"
|
|
1218
|
+
npx intlayer extract
|
|
1219
|
+
```
|
|
1220
|
+
|
|
1221
|
+
```bash packageManager="pnpm"
|
|
1222
|
+
pnpm intlayer extract
|
|
1223
|
+
```
|
|
1224
|
+
|
|
1225
|
+
```bash packageManager="yarn"
|
|
1226
|
+
yarn intlayer extract
|
|
1227
|
+
```
|
|
1228
|
+
|
|
1229
|
+
```bash packageManager="bun"
|
|
1230
|
+
bunx intlayer extract
|
|
1231
|
+
```
|
|
1232
|
+
|
|
1233
|
+
</Tab>
|
|
1234
|
+
<Tab value='Babel-Compiler'>
|
|
1235
|
+
|
|
1236
|
+
Aktualisieren Sie Ihre `vite.config.ts`, um das `intlayerCompiler`-Plugin aufzunehmen:
|
|
1237
|
+
|
|
1238
|
+
```ts fileName="vite.config.ts"
|
|
1239
|
+
import { defineConfig } from "vite";
|
|
1240
|
+
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
1241
|
+
|
|
1242
|
+
export default defineConfig({
|
|
1243
|
+
plugins: [
|
|
1244
|
+
intlayer(),
|
|
1245
|
+
intlayerCompiler(), // Fügt das Compiler-Plugin hinzu
|
|
1246
|
+
],
|
|
1247
|
+
});
|
|
1248
|
+
```
|
|
1249
|
+
|
|
1250
|
+
```bash packageManager="npm"
|
|
1251
|
+
npm run build # Oder npm run dev
|
|
1252
|
+
```
|
|
1253
|
+
|
|
1254
|
+
```bash packageManager="pnpm"
|
|
1255
|
+
pnpm run build # Oder pnpm run dev
|
|
1256
|
+
```
|
|
1257
|
+
|
|
1258
|
+
```bash packageManager="yarn"
|
|
1259
|
+
yarn build # Oder yarn dev
|
|
1260
|
+
```
|
|
1261
|
+
|
|
1262
|
+
```bash packageManager="bun"
|
|
1263
|
+
bun run build # Or bun run dev
|
|
1264
|
+
```
|
|
1265
|
+
|
|
1266
|
+
</Tab>
|
|
1267
|
+
</Tabs>
|
|
1268
|
+
|
|
1113
1269
|
### Weiterführende Schritte
|
|
1114
1270
|
|
|
1115
1271
|
Um weiterzugehen, können Sie den [visuellen Editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_visual_editor.md) implementieren oder Ihre Inhalte mit dem [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_CMS.md) auslagern.
|
package/docs/en/compiler.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-09-09
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-03-12
|
|
4
4
|
title: Intlayer Compiler | Automated Content Extraction for i18n
|
|
5
5
|
description: Automate your internationalization process with the Intlayer Compiler. Extract content directly from your components for faster, more efficient i18n in Vite, Next.js, and more.
|
|
6
6
|
keywords:
|
|
@@ -161,7 +161,7 @@ See complete tutorial: [Intlayer Compiler with Next.js](https://github.com/aymer
|
|
|
161
161
|
|
|
162
162
|
To customize the compiler behavior, you can update the `intlayer.config.ts` file in the root of your project.
|
|
163
163
|
|
|
164
|
-
|
|
164
|
+
````ts fileName="intlayer.config.ts"
|
|
165
165
|
import { type IntlayerConfig, Locales } from "intlayer";
|
|
166
166
|
|
|
167
167
|
const config: IntlayerConfig = {
|
|
@@ -173,43 +173,67 @@ const config: IntlayerConfig = {
|
|
|
173
173
|
enabled: true,
|
|
174
174
|
|
|
175
175
|
/**
|
|
176
|
-
*
|
|
176
|
+
* Defines the output files path. Replaces `outputDir`.
|
|
177
|
+
*
|
|
178
|
+
* - `./` paths are resolved relative to the component directory.
|
|
179
|
+
* - `/` paths are resolved relative to the project root (`baseDir`).
|
|
180
|
+
*
|
|
181
|
+
* - Including the `{{locale}}` variable in the path will trigger the generation of separate dictionaries per locale.
|
|
182
|
+
*
|
|
183
|
+
* Example:
|
|
184
|
+
* ```ts
|
|
185
|
+
* {
|
|
186
|
+
* // Create Multilingual .content.ts files close to the component
|
|
187
|
+
* output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
188
|
+
*
|
|
189
|
+
* // output: './{{fileName}}{{extension}}', // Equivalent using template string
|
|
190
|
+
* }
|
|
191
|
+
* ```
|
|
192
|
+
*
|
|
193
|
+
* ```ts
|
|
194
|
+
* {
|
|
195
|
+
* // Create centralize per-locale JSON at the root of the project
|
|
196
|
+
* output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`,
|
|
197
|
+
*
|
|
198
|
+
* // output: '/locales/{{locale}}/{{key}}.content.json', // Equivalent using template string
|
|
199
|
+
* }
|
|
200
|
+
* ```
|
|
201
|
+
*
|
|
202
|
+
* Variable list:
|
|
203
|
+
* - `fileName`: The name of the file.
|
|
204
|
+
* - `key`: The key of the content.
|
|
205
|
+
* - `locale`: The locale of the content.
|
|
206
|
+
* - `extension`: The extension of the file.
|
|
207
|
+
* - `componentFileName`: The name of the component file.
|
|
208
|
+
* - `componentExtension`: The extension of the component file.
|
|
209
|
+
* - `format`: The format of the dictionary.
|
|
210
|
+
* - `componentFormat`: The format of the component dictionary.
|
|
211
|
+
* - `componentDirPath`: The directory path of the component.
|
|
177
212
|
*/
|
|
178
|
-
|
|
179
|
-
"**/*.{js,ts,mjs,cjs,jsx,tsx,vue,svelte}",
|
|
180
|
-
"!**/node_modules/**",
|
|
181
|
-
],
|
|
213
|
+
output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
182
214
|
|
|
183
215
|
/**
|
|
184
|
-
*
|
|
185
|
-
|
|
186
|
-
excludePattern: ["**/node_modules/**"],
|
|
187
|
-
|
|
188
|
-
/**
|
|
189
|
-
* Output directory for the optimized dictionaries.
|
|
216
|
+
* Indicates if the components should be saved after being transformed.
|
|
217
|
+
* That way, the compiler can be run only once to transform the app, and then it can be removed.
|
|
190
218
|
*/
|
|
191
|
-
|
|
219
|
+
saveComponents: false,
|
|
192
220
|
|
|
193
221
|
/**
|
|
194
|
-
* Inset only content
|
|
222
|
+
* Inset only content into the generated file. Useful for per-locale i18next or ICU MessageFormat JSON outputs.
|
|
223
|
+
*
|
|
224
|
+
* - `output: ({ locale, key }) => `./locale/${locale}/${key}.json`,`
|
|
195
225
|
*/
|
|
196
226
|
noMetadata: false,
|
|
197
227
|
|
|
198
228
|
/**
|
|
199
229
|
* Dictionary key prefix
|
|
200
230
|
*/
|
|
201
|
-
dictionaryKeyPrefix: "", //
|
|
202
|
-
|
|
203
|
-
/**
|
|
204
|
-
* Indicates if the components should be saved after being transformed.
|
|
205
|
-
* That way, the compiler can be run only once to transform the app, and then it can be removed.
|
|
206
|
-
*/
|
|
207
|
-
saveComponents: false,
|
|
231
|
+
dictionaryKeyPrefix: "", // Add an optional prefix for the extracted dictionary keys
|
|
208
232
|
},
|
|
209
233
|
};
|
|
210
234
|
|
|
211
235
|
export default config;
|
|
212
|
-
|
|
236
|
+
````
|
|
213
237
|
|
|
214
238
|
### Compiler Configuration Reference
|
|
215
239
|
|
|
@@ -222,23 +246,18 @@ The following properties can be configured in the `compiler` block of your `intl
|
|
|
222
246
|
|
|
223
247
|
- **dictionaryKeyPrefix**:
|
|
224
248
|
- _Type_: `string`
|
|
225
|
-
- _Default_: `'
|
|
249
|
+
- _Default_: `''`
|
|
226
250
|
- _Description_: Prefix for the extracted dictionary keys.
|
|
227
251
|
|
|
228
252
|
- **transformPattern**:
|
|
229
253
|
- _Type_: `string | string[]`
|
|
230
254
|
- _Default_: `['**/*.{js,ts,mjs,cjs,jsx,tsx,vue,svelte}', '!**/node_modules/**']`
|
|
231
|
-
- _Description_: Patterns to traverse the code to optimize.
|
|
255
|
+
- _Description_: (Deprecated: use `build.traversePattern` instead) Patterns to traverse the code to optimize.
|
|
232
256
|
|
|
233
257
|
- **excludePattern**:
|
|
234
258
|
- _Type_: `string | string[]`
|
|
235
259
|
- _Default_: `['**/node_modules/**']`
|
|
236
|
-
- _Description_: Patterns to exclude from the optimization.
|
|
237
|
-
|
|
238
|
-
- **outputDir** (Deprecated):
|
|
239
|
-
- _Type_: `string`
|
|
240
|
-
- _Default_: `'compiler'`
|
|
241
|
-
- _Description_: The directory where the extracted dictionaries will be stored.
|
|
260
|
+
- _Description_: (Deprecated: use `build.traversePattern` instead) Patterns to exclude from the optimization.
|
|
242
261
|
|
|
243
262
|
- **output**:
|
|
244
263
|
- _Type_: `FilePathPattern`
|
|
@@ -251,7 +270,7 @@ The following properties can be configured in the `compiler` block of your `intl
|
|
|
251
270
|
- **noMetadata**:
|
|
252
271
|
- _Type_: `boolean`
|
|
253
272
|
- _Default_: `false`
|
|
254
|
-
- _Description_: Indicates if the metadata should be saved in the file. If true, the compiler will not save the metadata of the dictionaries (key, content wrapper).
|
|
273
|
+
- _Description_: Indicates if the metadata should be saved in the file. If true, the compiler will not save the metadata of the dictionaries (key, content wrapper). Useful for per-locale i18next or ICU MessageFormat JSON outputs.
|
|
255
274
|
- _Note_: Useful if used with `loadJSON` plugin.
|
|
256
275
|
- _Example_:
|
|
257
276
|
If `true`:
|
|
@@ -287,4 +306,12 @@ npx intlayer test # Test if there is missing translations
|
|
|
287
306
|
npx intlayer fill # Fill missing translations
|
|
288
307
|
```
|
|
289
308
|
|
|
290
|
-
|
|
309
|
+
### Extract
|
|
310
|
+
|
|
311
|
+
Intlayer provide a CLI tool to extract content from your code. You can use the `intlayer extract` command to extract content from your code.
|
|
312
|
+
|
|
313
|
+
```bash
|
|
314
|
+
npx intlayer extract
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
> For more details, refer to the [CLI documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/cli/index.md)
|