@intlayer/docs 6.0.0 → 6.0.2-canary.0
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/dist/cjs/blog.cjs.map +1 -1
- package/dist/cjs/common.cjs +6 -5
- package/dist/cjs/common.cjs.map +1 -1
- package/dist/cjs/generated/blog.entry.cjs +318 -1863
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +1317 -6282
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs +197 -1182
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs +43 -84
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/esm/blog.mjs.map +1 -1
- package/dist/esm/common.mjs +2 -5
- package/dist/esm/common.mjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +318 -1863
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +1317 -6282
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs +197 -1182
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs +43 -84
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/types/blog.d.ts +1 -1
- package/dist/types/blog.d.ts.map +1 -1
- package/dist/types/common.d.ts +1 -1
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/generated/blog.entry.d.ts +1 -1
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +2 -1
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts +1 -1
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/docs/ar/intlayer_CMS.md +261 -85
- package/docs/ar/releases/v6.md +273 -0
- package/docs/ar/roadmap.md +1 -3
- package/docs/ar/vs_code_extension.md +94 -63
- package/docs/de/intlayer_CMS.md +247 -65
- package/docs/de/releases/v6.md +298 -0
- package/docs/de/roadmap.md +1 -3
- package/docs/de/vs_code_extension.md +89 -58
- package/docs/en/configuration.md +9 -2
- package/docs/en/intlayer_CMS.md +205 -23
- package/docs/en/intlayer_cli.md +4 -4
- package/docs/en/intlayer_visual_editor.md +7 -6
- package/docs/en/intlayer_with_nextjs_14.md +17 -1
- package/docs/en/intlayer_with_nextjs_15.md +17 -1
- package/docs/en/releases/v6.md +268 -0
- package/docs/en/roadmap.md +1 -3
- package/docs/en/vs_code_extension.md +79 -49
- package/docs/en-GB/intlayer_CMS.md +216 -52
- package/docs/en-GB/releases/v6.md +297 -0
- package/docs/en-GB/roadmap.md +1 -3
- package/docs/en-GB/vs_code_extension.md +79 -48
- package/docs/es/intlayer_CMS.md +257 -84
- package/docs/es/releases/v6.md +274 -0
- package/docs/es/roadmap.md +1 -3
- package/docs/es/vs_code_extension.md +90 -60
- package/docs/fr/intlayer_CMS.md +250 -68
- package/docs/fr/releases/v6.md +274 -0
- package/docs/fr/roadmap.md +1 -3
- package/docs/fr/vs_code_extension.md +94 -63
- package/docs/hi/intlayer_CMS.md +253 -77
- package/docs/hi/releases/v6.md +273 -0
- package/docs/hi/roadmap.md +1 -3
- package/docs/hi/vs_code_extension.md +92 -61
- package/docs/it/intlayer_CMS.md +251 -73
- package/docs/it/releases/v6.md +273 -0
- package/docs/it/roadmap.md +1 -3
- package/docs/it/vs_code_extension.md +94 -63
- package/docs/ja/intlayer_CMS.md +282 -97
- package/docs/ja/releases/v6.md +273 -0
- package/docs/ja/roadmap.md +1 -3
- package/docs/ja/vs_code_extension.md +99 -68
- package/docs/ko/intlayer_CMS.md +267 -93
- package/docs/ko/releases/v6.md +273 -0
- package/docs/ko/roadmap.md +1 -3
- package/docs/ko/vs_code_extension.md +88 -57
- package/docs/pt/intlayer_CMS.md +261 -83
- package/docs/pt/releases/v6.md +273 -0
- package/docs/pt/roadmap.md +1 -3
- package/docs/pt/vs_code_extension.md +89 -58
- package/docs/ru/intlayer_CMS.md +240 -65
- package/docs/ru/releases/v6.md +274 -0
- package/docs/ru/roadmap.md +1 -1
- package/docs/ru/vs_code_extension.md +83 -52
- package/docs/tr/intlayer_CMS.md +278 -96
- package/docs/tr/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/tr/intlayer_with_tanstack.md +3 -0
- package/docs/tr/releases/v6.md +273 -0
- package/docs/tr/roadmap.md +1 -1
- package/docs/tr/vs_code_extension.md +100 -71
- package/docs/zh/intlayer_CMS.md +257 -76
- package/docs/zh/releases/v6.md +273 -0
- package/docs/zh/roadmap.md +1 -3
- package/docs/zh/vs_code_extension.md +99 -68
- package/package.json +9 -8
- package/src/blog.ts +1 -1
- package/src/common.ts +2 -6
- package/src/generated/blog.entry.ts +323 -1864
- package/src/generated/docs.entry.ts +1317 -6278
- package/src/generated/frequentQuestions.entry.ts +202 -1183
- package/src/generated/legal.entry.ts +48 -85
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2025-09-22
|
|
3
|
+
updatedAt: 2025-09-22
|
|
4
|
+
title: Neue Intlayer v6 – Was ist neu?
|
|
5
|
+
description: Entdecken Sie, was neu ist in Intlayer v6. Wichtige Verbesserungen in Leistung, Entwicklererfahrung und neue Funktionen zur Optimierung Ihres Internationalisierungs-Workflows.
|
|
6
|
+
keywords:
|
|
7
|
+
- Intlayer
|
|
8
|
+
- Lokalisierung
|
|
9
|
+
- Entwicklung
|
|
10
|
+
- Leistung
|
|
11
|
+
- Entwicklererfahrung
|
|
12
|
+
- Funktionen
|
|
13
|
+
- React
|
|
14
|
+
- Next.js
|
|
15
|
+
- JavaScript
|
|
16
|
+
- TypeScript
|
|
17
|
+
slugs:
|
|
18
|
+
- doc
|
|
19
|
+
- releases
|
|
20
|
+
- v6
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
# Neue Intlayer v6 – Was ist neu?
|
|
24
|
+
|
|
25
|
+
Willkommen bei Intlayer v6! Diese Version konzentriert sich auf Leistung, Entwicklererfahrung und Zuverlässigkeit. Nachfolgend finden Sie die Highlights, Migrationshinweise und kopierbare Beispiele.
|
|
26
|
+
|
|
27
|
+
## Highlights
|
|
28
|
+
|
|
29
|
+
- Neuer Befehl: `npx intlayer content test` zum Erkennen fehlender Übersetzungen
|
|
30
|
+
- Neue globale `autoFill`-Option zur automatischen Generierung fehlender Übersetzungen
|
|
31
|
+
- Fill-Befehl überspringt standardmäßig vorhandene Übersetzungen: `npx intlayer fill`
|
|
32
|
+
- VS Code-Erweiterung: neue Intlayer-Aktivitätsleiste (Suche & Wörterbücher), Toolbar-/Kontextaktionen, automatische Anzeige, Fill-/Test-Befehle
|
|
33
|
+
- 10× schnellere Builds dank paralleler Verarbeitung von Promises
|
|
34
|
+
- Remote-Wörterbuch-Caching, um erneutes Abrufen beim App-Start zu vermeiden
|
|
35
|
+
- Verbesserte Protokollierung: `log.mode: 'verbose'` einstellen, um das Verhalten zu überprüfen
|
|
36
|
+
- Stärkere Validierung, um App-Abstürze bei Wörterbuchproblemen zu verhindern
|
|
37
|
+
- Live-Updates mit CMS durch `build.importMode = 'live'` und `pnpm intlayer live`
|
|
38
|
+
- Fehlerbehebungen: Vue.js-Integration, Lynx-Adapter, Visual Editor unter Windows
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Neu: Fehlende Übersetzungen testen
|
|
43
|
+
|
|
44
|
+
Prüfen Sie schnell Ihr Projekt, um fehlende Schlüssel/Sprachen zu finden.
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
npx intlayer content test
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Ausgabe:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
pnpm intlayer content test
|
|
54
|
+
Fehlende Übersetzungen:
|
|
55
|
+
- blog-data - Japanisch (ja), Koreanisch (ko), Chinesisch (zh), Deutsch (de), Italienisch (it) - src/components/BlogPage/blogData.content.ts
|
|
56
|
+
- demo-page - Französisch (fr), Italienisch (it) - src/components/DemoPage/demo.content.ts
|
|
57
|
+
- locale-switcher - Italienisch (it), Portugiesisch (pt) - src/components/LocaleSwitcher/localeSwitcher.content.ts
|
|
58
|
+
Sprachversionen: Englisch (en), Russisch (ru), Japanisch (ja), Französisch (fr), Koreanisch (ko), Chinesisch (zh), Spanisch (es), Deutsch (de), Arabisch (ar), Italienisch (it), Britisches Englisch (en-GB), Portugiesisch (pt), Hindi (hi)
|
|
59
|
+
Erforderliche Sprachversionen: Englisch (en)
|
|
60
|
+
Fehlende Sprachversionen: Japanisch (ja), Koreanisch (ko), Chinesisch (zh), Deutsch (de), Italienisch (it), Französisch (fr), Portugiesisch (pt)
|
|
61
|
+
Fehlende erforderliche Sprachversionen: -
|
|
62
|
+
Insgesamt fehlende Sprachversionen: 7
|
|
63
|
+
Insgesamt fehlende erforderliche Sprachversionen: 0
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Siehe weitere Optionen in der CLI-Dokumentation: [CLI-Referenz](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_cli.md) → „Test fehlender Übersetzungen“. Ebenso der [Testing](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/testing.md)-Leitfaden.
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Neu: Globales autoFill zum automatischen Vervollständigen fehlender Übersetzungen
|
|
71
|
+
|
|
72
|
+
Sie können jetzt autoFill global aktivieren, sodass jedes Wörterbuch mit fehlenden Übersetzungen automatisch vervollständigt wird.
|
|
73
|
+
|
|
74
|
+
```ts fileName="intlayer.config.ts"
|
|
75
|
+
import { type IntlayerConfig, Locales } from "intlayer";
|
|
76
|
+
|
|
77
|
+
const config: IntlayerConfig = {
|
|
78
|
+
internationalization: {
|
|
79
|
+
locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
|
|
80
|
+
defaultLocale: Locales.ENGLISH,
|
|
81
|
+
requiredLocales: [Locales.ENGLISH, Locales.FRENCH],
|
|
82
|
+
},
|
|
83
|
+
content: {
|
|
84
|
+
// Fehlende Übersetzungen für alle Wörterbücher automatisch generieren
|
|
85
|
+
autoFill: "./{{fileName}}.content.ts",
|
|
86
|
+
//
|
|
87
|
+
// autoFill: "/messages/{{locale}}/{{key}}/{{fileName}}.content.json",
|
|
88
|
+
//
|
|
89
|
+
// autoFill: true, // Fehlende Übersetzungen für alle Wörterbücher automatisch generieren, ähnlich wie "./{{fileName}}.content.json"
|
|
90
|
+
//
|
|
91
|
+
// autoFill: {
|
|
92
|
+
// en: "./{{fileName}}.en.content.json",
|
|
93
|
+
// fr: "./{{fileName}}.fr.content.json",
|
|
94
|
+
// es: "./{{fileName}}.es.content.json",
|
|
95
|
+
// },
|
|
96
|
+
},
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
export default config;
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Sie können pro Wörterbuch weiterhin mit dem Feld `autoFill` in Inhaltsdateien feinabstimmen. Die vollständige Referenz finden Sie in `doc/autoFill` und `doc/dictionary/content_file`.
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Fill-Befehl: sicherere Standardeinstellungen
|
|
107
|
+
|
|
108
|
+
Der Fill-Befehl füllt jetzt standardmäßig nur fehlende Übersetzungen und überspringt vorhandene Inhalte.
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
npx intlayer fill
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
Betroffene Wörterbuchschlüssel zur Verarbeitung: access-key-creation-form-schema, doc-search-metadata, doc-search-page
|
|
116
|
+
- [access-key-creation-form-schema] Wörterbuch hat keinen Dateipfad. Überspringen.
|
|
117
|
+
- [access-key-creation-form-schema] Verarbeite Inhaltsdeklaration: src/components/Dashboard/ProjectForm/AccessKey/useAccessKeyCreationFormSchema.content.ts
|
|
118
|
+
- [access-key-creation-form-schema] Keine Sprachen zum Füllen - Wörterbuch wird übersprungen
|
|
119
|
+
- [doc-search-metadata] Wörterbuch hat keinen Dateipfad. Überspringen.
|
|
120
|
+
- [doc-search-metadata] Verarbeite Inhaltsdeklaration: src/app/[locale]/(docs)/doc/search/metadata.content.ts
|
|
121
|
+
- [doc-search-metadata] Keine Sprachen zum Ausfüllen – Wörterbuch wird übersprungen
|
|
122
|
+
- [doc-search-page] Wörterbuch hat keinen Dateipfad. Überspringen.
|
|
123
|
+
- [doc-search-page] Verarbeite Inhaltsdeklaration: src/app/[locale]/(docs)/doc/search/page.content.ts
|
|
124
|
+
- [doc-search-page] [Russisch (ru)] Vorbereitung der Übersetzung für das Wörterbuch von Englisch (en) nach Russisch (ru)
|
|
125
|
+
[intlayer] Prettier-Formatierung auf src/app/[locale]/(docs)/doc/search/page.content.ts angewendet
|
|
126
|
+
- [doc-search-page] Inhaltsdeklaration geschrieben nach src/app/[locale]/(docs)/doc/search/page.content.ts
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
CI-Beispiele sind verfügbar in [CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/CI_CD.md).
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Aktualisierte VS Code-Erweiterung
|
|
134
|
+
|
|
135
|
+
Die Erweiterung enthält jetzt einen eigenen Intlayer-Tab in der Aktivitätsleiste sowie mehrere Workflow-Verbesserungen:
|
|
136
|
+
|
|
137
|
+
- Intlayer-Aktivitätsleiste mit zwei Ansichten:
|
|
138
|
+
- Such-Webview (`intlayer.searchBar`) für die Live-Suche in Wörterbüchern/Inhalten
|
|
139
|
+
- Wörterbuchbaum (`intlayer.dictionaries`), der Umgebungen, Wörterbücher und beitragende Dateien auflistet
|
|
140
|
+
- Symbolleiste in der Wörterbuchansicht: Erstellen, Abrufen (Pull), Senden (Push), Füllen, Aktualisieren, Testen, Wörterbuchdatei erstellen
|
|
141
|
+
- Kontextmenüs: Abrufen (Pull)/Senden (Push) bei Wörterbüchern; Füllen bei Dateien
|
|
142
|
+
|
|
143
|
+
- Automatisches Hervorheben: Die aktuelle Editor-Datei wird im Wörterbuchbaum hervorgehoben, wenn zutreffend
|
|
144
|
+
- Neue Befehle im Befehlsmenü verfügbar: Wörterbücher füllen und Wörterbücher testen
|
|
145
|
+
|
|
146
|
+
Details finden Sie in der [Offiziellen VS Code Erweiterung](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/vs_code_extension.md) Dokumentation.
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## Leistung: 10× schneller
|
|
151
|
+
|
|
152
|
+
- Parallele Auflösung von lokalen und entfernten Wörterbüchern
|
|
153
|
+
- Entfernte Wörterbücher werden zwischengespeichert, um erneutes Abrufen beim App-Start zu vermeiden
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
npx intlayer build
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Ausgabe:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
[intlayer] Vorbereitung von Intlayer (v6.0.1)
|
|
163
|
+
[intlayer] Wörterbücher:
|
|
164
|
+
[intlayer] ✓ Lokaler Inhalt: 163/163
|
|
165
|
+
[intlayer] ✓ Entferntes Inhalt: 100/100
|
|
166
|
+
[intlayer] - access-key-creation-form [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
167
|
+
[intlayer] - access-key-creation-form-schema [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
168
|
+
[intlayer] - access-key-form [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
169
|
+
[intlayer] - ai-ab-testing-section [entfernt: ✔ importiert]
|
|
170
|
+
[intlayer] - application-not-running-view [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
171
|
+
[intlayer] - application-template-message [lokal: ✔ erstellt] [entfernt: ✔ abgerufen]
|
|
172
|
+
[intlayer] - aside-navigation [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
173
|
+
[intlayer] - ask-reset-password [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
174
|
+
[intlayer] - ask-reset-password-schema [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
175
|
+
[intlayer] - autocompletion-section [lokal: ✔ erstellt] [entfernt: ✔ abgerufen]
|
|
176
|
+
[intlayer] - available-techno-section [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
177
|
+
[intlayer] - blog-data [lokal: ✔ erstellt]
|
|
178
|
+
[intlayer] - blog-metadata [lokal: ✔ erstellt]
|
|
179
|
+
[intlayer] - blog-nav-list [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
180
|
+
[intlayer] - blog-page [entfernt: ✔ abgerufen]
|
|
181
|
+
[intlayer] - blog-search-metadata [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
182
|
+
[intlayer] - blog-search-page [lokal: ✔ erstellt] [entfernt: ✔ importiert]
|
|
183
|
+
...
|
|
184
|
+
[intlayer] Inhalt geladen (Gesamt: 8401ms - Lokal: 4050ms - Remote: 4222ms)
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Verbesserungen beim Logging
|
|
190
|
+
|
|
191
|
+
Das Logging-System wurde verbessert, um detailliertere Informationen darüber bereitzustellen, was während der Build- und Laufzeit-Transformationen passiert.
|
|
192
|
+
|
|
193
|
+
> Aktivieren Sie ausführliche Logs, um besser zu verstehen, was während der Build- und Laufzeit-Transformationen geschieht.
|
|
194
|
+
|
|
195
|
+
```ts fileName="intlayer.config.ts"
|
|
196
|
+
export default {
|
|
197
|
+
log: {
|
|
198
|
+
mode: "verbose", // Optionen: "default" | "verbose" | "disabled"
|
|
199
|
+
},
|
|
200
|
+
};
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Siehe [Konfiguration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/configuration.md) für alle Logging-Optionen.
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## Stärkere Validierung
|
|
208
|
+
|
|
209
|
+
Die Verarbeitung von Wörterbüchern führt jetzt eine robustere Validierung durch. Wenn ein Wörterbuch nicht verarbeitet werden kann, verhindert Intlayer, dass Ihre Anwendung abstürzt, und zeigt umsetzbare Fehler an.
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
## Live-Updates mit CMS (Produktion-sicher)
|
|
214
|
+
|
|
215
|
+
Das Protokollierungssystem wurde verbessert, um detailliertere Informationen darüber bereitzustellen, was während der Build- und Laufzeittransformationen passiert.
|
|
216
|
+
|
|
217
|
+
> Aktivieren Sie ausführliche Protokolle, um besser zu verstehen, was während der Build- und Laufzeittransformationen passiert.
|
|
218
|
+
|
|
219
|
+
```ts fileName="intlayer.config.ts"
|
|
220
|
+
export default {
|
|
221
|
+
log: {
|
|
222
|
+
mode: "verbose", // Optionen: "default" | "verbose" | "disabled"
|
|
223
|
+
},
|
|
224
|
+
};
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
Siehe [Konfiguration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/configuration.md) für alle Protokollierungsoptionen.
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
## Stärkere Validierung
|
|
232
|
+
|
|
233
|
+
Die Verarbeitung von Wörterbüchern führt jetzt eine robustere Validierung durch. Wenn ein Wörterbuch nicht verarbeitet werden kann, verhindert Intlayer, dass Ihre Anwendung abstürzt, und zeigt umsetzbare Fehler an.
|
|
234
|
+
|
|
235
|
+
---
|
|
236
|
+
|
|
237
|
+
## Live-Updates mit CMS (Produktionssicher)
|
|
238
|
+
|
|
239
|
+
Liefern Sie Live-Inhaltsaktualisierungen (z. B. redaktionelle Updates) in der Produktion, ohne Ihre Anwendung neu zu bauen.
|
|
240
|
+
|
|
241
|
+
1. Aktivieren Sie den Live-Importmodus:
|
|
242
|
+
|
|
243
|
+
```ts fileName="intlayer.config.ts"
|
|
244
|
+
import { type IntlayerConfig } from "intlayer";
|
|
245
|
+
|
|
246
|
+
const config: IntlayerConfig = {
|
|
247
|
+
build: {
|
|
248
|
+
importMode: "live", // "static" | "dynamic" | "live"
|
|
249
|
+
},
|
|
250
|
+
editor: {
|
|
251
|
+
liveSync: true, // Live-Synchronisation serverseitig aktivieren
|
|
252
|
+
},
|
|
253
|
+
};
|
|
254
|
+
|
|
255
|
+
export default config;
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
2. Führen Sie Ihre App und den Live-Prozess parallel aus:
|
|
259
|
+
|
|
260
|
+
```bash
|
|
261
|
+
npx intlayer live --process 'vite preview'
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
Hinweise:
|
|
265
|
+
|
|
266
|
+
- Nur Wörterbücher, die für den Live-Modus gekennzeichnet sind, werden live abgerufen. Andere sind für Leistung optimiert.
|
|
267
|
+
- Fällt auf dynamischen Import zurück, wenn die Live-API nicht erreichbar ist.
|
|
268
|
+
|
|
269
|
+
Siehe [CMS und Live-Sync](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_CMS.md) und [Konfiguration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/configuration.md) für vollständige Anleitungen.
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
## Migrationshinweise
|
|
274
|
+
|
|
275
|
+
- Entfernt: `dictionaryOutput` (früher `i18next` oder `next-intl`). Dies wird in zukünftigen Versionen als anpassbare Adapter zurückkehren. Entfernen Sie das Feld aus Ihrer Konfiguration.
|
|
276
|
+
- Verwandte Entfernung: `i18nextResourcesDir` (siehe `doc/configuration` Changelog).
|
|
277
|
+
- Bevorzugen Sie die neue globale Option `content.autoFill`, um fehlende Übersetzungen im großen Maßstab zu generieren.
|
|
278
|
+
- Verwenden Sie `npx intlayer content test`, um PRs auf fehlende Übersetzungen zu prüfen.
|
|
279
|
+
- Für ausführliche Diagnosen setzen Sie `log.mode = 'verbose'`.
|
|
280
|
+
|
|
281
|
+
---
|
|
282
|
+
|
|
283
|
+
## Fehlerbehebungen
|
|
284
|
+
|
|
285
|
+
- Stabilität der Vue.js-Integration
|
|
286
|
+
- Verbesserungen des Lynx-Adapters
|
|
287
|
+
- Visueller Editor unter Windows
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## Nützliche Links
|
|
292
|
+
|
|
293
|
+
- [CLI-Referenz](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_cli.md)
|
|
294
|
+
- [Auto‑fill](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/autoFill.md)
|
|
295
|
+
- [Konfiguration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/configuration.md)
|
|
296
|
+
- [Referenz für Inhaltsdateien](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/dictionary/content_file.md)
|
|
297
|
+
- [Offizielle VS Code Erweiterung](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/vs_code_extension.md)
|
|
298
|
+
- [CMS und Live-Synchronisation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/intlayer_CMS.md)
|
package/docs/de/roadmap.md
CHANGED
|
@@ -112,18 +112,16 @@ Intlayer bietet verschiedene Methoden zum Einfügen und Verwalten dynamischer In
|
|
|
112
112
|
Intlayer unterstützt **TypeScript** (auch JavaScript) und **JSON** zur Deklaration von Inhalten.
|
|
113
113
|
|
|
114
114
|
- **TypeScript**:
|
|
115
|
-
|
|
116
115
|
- Stellt sicher, dass Ihre Inhaltsstruktur korrekt ist und keine Übersetzungen fehlen.
|
|
117
116
|
- Bietet strenge oder flexiblere Validierungsmodi.
|
|
118
117
|
- Ermöglicht das dynamische Abrufen von Daten aus Variablen, Funktionen oder externen APIs.
|
|
119
118
|
|
|
120
119
|
- **JSON**:
|
|
121
|
-
|
|
122
120
|
- Erleichtert die Integration mit externen Tools (wie visuellen Editoren) aufgrund seines standardisierten Formats.
|
|
123
121
|
|
|
124
122
|
> Ressourcen:
|
|
125
123
|
>
|
|
126
|
-
> - [Formate zur Inhaltsdeklaration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/dictionary/
|
|
124
|
+
> - [Formate zur Inhaltsdeklaration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/dictionary/content_file.md)
|
|
127
125
|
|
|
128
126
|
### 7. Bereinigung, Bundle-Optimierung und dynamische Importe
|
|
129
127
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-03-17
|
|
3
|
-
updatedAt: 2025-
|
|
3
|
+
updatedAt: 2025-09-22
|
|
4
4
|
title: Offizielle VS Code Erweiterung
|
|
5
5
|
description: Erfahren Sie, wie Sie die Intlayer-Erweiterung in VS Code verwenden, um Ihren Entwicklungsworkflow zu verbessern. Navigieren Sie schnell zwischen lokalisierten Inhalten und verwalten Sie Ihre Wörterbücher effizient.
|
|
6
6
|
keywords:
|
|
@@ -19,9 +19,9 @@ slugs:
|
|
|
19
19
|
|
|
20
20
|
# Offizielle VS Code Erweiterung
|
|
21
21
|
|
|
22
|
-
##
|
|
22
|
+
## Übersicht
|
|
23
23
|
|
|
24
|
-
[**Intlayer**](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) ist die offizielle Visual Studio Code Erweiterung für **Intlayer**,
|
|
24
|
+
[**Intlayer**](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) ist die offizielle Visual Studio Code Erweiterung für **Intlayer**, die darauf ausgelegt ist, die Entwicklererfahrung beim Arbeiten mit lokalisierten Inhalten in Ihren Projekten zu verbessern.
|
|
25
25
|
|
|
26
26
|

|
|
27
27
|
|
|
@@ -31,27 +31,75 @@ Erweiterungslink: [https://marketplace.visualstudio.com/items?itemName=Intlayer.
|
|
|
31
31
|
|
|
32
32
|
### Sofortige Navigation
|
|
33
33
|
|
|
34
|
-
**Gehe zu Definition
|
|
34
|
+
**Unterstützung für "Gehe zu Definition"** – Verwenden Sie `⌘ + Klick` (Mac) oder `Ctrl + Klick` (Windows/Linux) auf einem `useIntlayer`-Schlüssel, um die entsprechende Inhaltsdatei sofort zu öffnen.
|
|
35
35
|
**Nahtlose Integration** – Funktioniert mühelos mit **react-intlayer** und **next-intlayer** Projekten.
|
|
36
36
|
**Mehrsprachige Unterstützung** – Unterstützt lokalisierte Inhalte in verschiedenen Sprachen.
|
|
37
|
-
**VS Code Integration** – Integriert sich
|
|
37
|
+
**VS Code Integration** – Integriert sich reibungslos in die Navigation und die Befehlspalette von VS Code.
|
|
38
38
|
|
|
39
39
|
### Befehle zur Verwaltung von Wörterbüchern
|
|
40
40
|
|
|
41
41
|
Verwalten Sie Ihre Inhaltswörterbücher direkt aus VS Code:
|
|
42
42
|
|
|
43
|
-
- **Wörterbücher erstellen**
|
|
44
|
-
- **Wörterbücher hochladen**
|
|
45
|
-
- **Wörterbücher herunterladen**
|
|
43
|
+
- **Wörterbücher erstellen** – Generieren Sie Inhaltsdateien basierend auf Ihrer Projektstruktur.
|
|
44
|
+
- **Wörterbücher hochladen** – Laden Sie die neuesten Wörterbuchinhalte in Ihr Repository hoch.
|
|
45
|
+
- **Wörterbücher herunterladen** – Synchronisieren Sie die neuesten Wörterbuchinhalte aus Ihrem Repository mit Ihrer lokalen Umgebung.
|
|
46
|
+
- **Wörterbücher füllen** – Füllen Sie Wörterbücher mit Inhalten aus Ihrem Projekt.
|
|
47
|
+
- **Wörterbücher testen** – Erkennen Sie fehlende oder unvollständige Übersetzungen.
|
|
46
48
|
|
|
47
49
|
### Generator für Inhaltsdeklarationen
|
|
48
50
|
|
|
49
|
-
Erstellen Sie
|
|
51
|
+
Erstellen Sie einfach strukturierte Wörterbuchdateien in verschiedenen Formaten:
|
|
50
52
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
Wenn Sie gerade an einer Komponente arbeiten, wird die Datei `.content.{ts,tsx,js,jsx,mjs,cjs,json}` für Sie generiert.
|
|
54
|
+
|
|
55
|
+
Beispiel einer Komponente:
|
|
56
|
+
|
|
57
|
+
```tsx fileName="src/components/MyComponent/index.tsx"
|
|
58
|
+
const MyComponent = () => {
|
|
59
|
+
const { myTranslatedContent } = useIntlayer("my-component");
|
|
60
|
+
|
|
61
|
+
return <span>{myTranslatedContent}</span>;
|
|
62
|
+
};
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Generierte Datei im TypeScript-Format:
|
|
66
|
+
|
|
67
|
+
```tsx fileName="src/components/MyComponent/index.content.ts"
|
|
68
|
+
import { t, type Dictionary } from "intlayer";
|
|
69
|
+
|
|
70
|
+
const componentContent = {
|
|
71
|
+
key: "my-component",
|
|
72
|
+
content: {
|
|
73
|
+
myTranslatedContent: t({
|
|
74
|
+
en: "Hello World",
|
|
75
|
+
es: "Hola Mundo",
|
|
76
|
+
fr: "Bonjour le monde",
|
|
77
|
+
}),
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export default componentContent;
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Verfügbare Formate:
|
|
85
|
+
|
|
86
|
+
- **TypeScript (`.ts`)**
|
|
87
|
+
- **ES Modul (`.esm`)**
|
|
88
|
+
- **CommonJS (`.cjs`)**
|
|
89
|
+
- **JSON (`.json`)**
|
|
90
|
+
|
|
91
|
+
### Intlayer-Tab (Aktivitätsleiste)
|
|
92
|
+
|
|
93
|
+
Öffnen Sie den Intlayer-Tab, indem Sie auf das Intlayer-Symbol in der VS Code-Aktivitätsleiste klicken. Er enthält zwei Ansichten:
|
|
94
|
+
|
|
95
|
+
- **Suche**: Eine Live-Suchleiste, um Wörterbücher und deren Inhalte schnell zu filtern. Das Tippen aktualisiert die Ergebnisse sofort.
|
|
96
|
+
- **Wörterbücher**: Eine Baumansicht Ihrer Umgebungen/Projekte, Wörterbuchschlüssel und der Dateien, die Einträge beitragen. Sie können:
|
|
97
|
+
- Auf eine Datei klicken, um sie im Editor zu öffnen.
|
|
98
|
+
- Die Symbolleiste verwenden, um Aktionen auszuführen: Build, Pull, Push, Fill, Refresh, Test und Create Dictionary File.
|
|
99
|
+
- Das Kontextmenü für spezifische Aktionen verwenden:
|
|
100
|
+
- Auf einem Wörterbuch: Pull oder Push
|
|
101
|
+
- Auf einer Datei: Wörterbuch füllen
|
|
102
|
+
- Beim Wechseln der Editoren zeigt der Baum die passende Datei an, wenn sie zu einem Wörterbuch gehört.
|
|
55
103
|
|
|
56
104
|
## Installation
|
|
57
105
|
|
|
@@ -62,31 +110,33 @@ Sie können **Intlayer** direkt aus dem VS Code Marketplace installieren:
|
|
|
62
110
|
3. Suchen Sie nach **"Intlayer"**.
|
|
63
111
|
4. Klicken Sie auf **Installieren**.
|
|
64
112
|
|
|
65
|
-
Alternativ können Sie es über die Kommandozeile installieren:
|
|
66
|
-
|
|
67
|
-
```sh
|
|
68
|
-
code --install-extension intlayer
|
|
69
|
-
```
|
|
70
|
-
|
|
71
113
|
## Verwendung
|
|
72
114
|
|
|
73
115
|
### Schnelle Navigation
|
|
74
116
|
|
|
75
117
|
1. Öffnen Sie ein Projekt, das **react-intlayer** verwendet.
|
|
76
|
-
2.
|
|
118
|
+
2. Suchen Sie einen Aufruf von `useIntlayer()`, zum Beispiel:
|
|
77
119
|
|
|
78
120
|
```tsx
|
|
79
121
|
const content = useIntlayer("app");
|
|
80
122
|
```
|
|
81
123
|
|
|
82
|
-
3. **
|
|
124
|
+
3. **Command-Klick** (`⌘+Klick` auf macOS) oder **Strg-Klick** (unter Windows/Linux) auf den Schlüssel (z. B. `"app"`).
|
|
83
125
|
4. VS Code öffnet automatisch die entsprechende Wörterbuchdatei, z. B. `src/app.content.ts`.
|
|
84
126
|
|
|
85
127
|
### Verwaltung von Inhaltswörterbüchern
|
|
86
128
|
|
|
129
|
+
### Intlayer-Tab (Aktivitätsleiste)
|
|
130
|
+
|
|
131
|
+
Verwenden Sie den seitlichen Tab, um Wörterbücher zu durchsuchen und zu verwalten:
|
|
132
|
+
|
|
133
|
+
- Öffnen Sie das Intlayer-Symbol in der Aktivitätsleiste.
|
|
134
|
+
- Geben Sie in **Suche** ein, um Wörterbücher und Einträge in Echtzeit zu filtern.
|
|
135
|
+
- Durchsuchen Sie in **Wörterbücher** Umgebungen, Wörterbücher und Dateien. Verwenden Sie die Symbolleiste für Erstellen, Abrufen, Hochladen, Füllen, Aktualisieren, Testen und Wörterbuchdatei erstellen. Rechtsklicken Sie für Kontextaktionen (Abrufen/Hochladen bei Wörterbüchern, Füllen bei Dateien). Die aktuelle Editor-Datei wird im Baum automatisch angezeigt, wenn zutreffend.
|
|
136
|
+
|
|
87
137
|
#### Wörterbücher erstellen
|
|
88
138
|
|
|
89
|
-
Generieren Sie alle
|
|
139
|
+
Generieren Sie alle Wörterbuch-Inhaltsdateien mit:
|
|
90
140
|
|
|
91
141
|
```sh
|
|
92
142
|
Cmd + Shift + P (macOS) / Ctrl + Shift + P (Windows/Linux)
|
|
@@ -102,51 +152,32 @@ Laden Sie den neuesten Wörterbuchinhalt hoch:
|
|
|
102
152
|
2. Suchen Sie nach **Wörterbücher hochladen**.
|
|
103
153
|
3. Wählen Sie die hochzuladenden Wörterbücher aus und bestätigen Sie.
|
|
104
154
|
|
|
105
|
-
#### Wörterbücher
|
|
155
|
+
#### Wörterbücher abrufen
|
|
106
156
|
|
|
107
|
-
Synchronisieren Sie
|
|
157
|
+
Synchronisieren Sie die neuesten Wörterbuchinhalte:
|
|
108
158
|
|
|
109
159
|
1. Öffnen Sie die **Befehls-Palette**.
|
|
110
|
-
2. Suchen Sie nach **Wörterbücher
|
|
111
|
-
3. Wählen Sie die
|
|
112
|
-
|
|
113
|
-
## Entwicklung & Beitrag
|
|
114
|
-
|
|
115
|
-
Möchten Sie beitragen? Wir begrüßen Beiträge aus der Community!
|
|
160
|
+
2. Suchen Sie nach **Wörterbücher abrufen**.
|
|
161
|
+
3. Wählen Sie die Wörterbücher aus, die abgerufen werden sollen.
|
|
116
162
|
|
|
117
|
-
|
|
163
|
+
#### Wörterbücher füllen
|
|
118
164
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
Klonen Sie das Repository und installieren Sie die Abhängigkeiten:
|
|
122
|
-
|
|
123
|
-
```sh
|
|
124
|
-
git clone https://github.com/aymericzip/intlayer-vs-code-extension.git
|
|
125
|
-
cd intlayer-vs-code-extension
|
|
126
|
-
npm install
|
|
127
|
-
```
|
|
165
|
+
Füllen Sie Wörterbücher mit Inhalten aus Ihrem Projekt:
|
|
128
166
|
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
1. Öffnen Sie das Projekt in **VS Code**.
|
|
134
|
-
2. Drücken Sie `F5`, um ein neues **Extension Development Host**-Fenster zu starten.
|
|
135
|
-
|
|
136
|
-
### Pull Request einreichen
|
|
137
|
-
|
|
138
|
-
Wenn Sie die Erweiterung verbessern, reichen Sie bitte einen PR auf [GitHub](https://github.com/aymericzip/intlayer-vs-code-extension) ein.
|
|
139
|
-
|
|
140
|
-
## Feedback & Probleme
|
|
141
|
-
|
|
142
|
-
Haben Sie einen Fehler gefunden oder eine Funktionsanfrage? Öffnen Sie ein Issue in unserem **GitHub-Repository**:
|
|
167
|
+
1. Öffnen Sie die **Befehls-Palette**.
|
|
168
|
+
2. Suchen Sie nach **Wörterbücher füllen**.
|
|
169
|
+
3. Führen Sie den Befehl aus, um die Wörterbücher zu befüllen.
|
|
143
170
|
|
|
144
|
-
|
|
171
|
+
#### Wörterbücher testen
|
|
145
172
|
|
|
146
|
-
|
|
173
|
+
Validieren Sie Wörterbücher und finden Sie fehlende Übersetzungen:
|
|
147
174
|
|
|
148
|
-
|
|
175
|
+
1. Öffnen Sie die **Befehls-Palette**.
|
|
176
|
+
2. Suchen Sie nach **Wörterbücher testen**.
|
|
177
|
+
3. Überprüfen Sie die gemeldeten Probleme und beheben Sie diese bei Bedarf.
|
|
149
178
|
|
|
150
179
|
## Dokumentationsverlauf
|
|
151
180
|
|
|
152
|
-
|
|
181
|
+
| Version | Datum | Änderungen |
|
|
182
|
+
| ------- | ---------- | ----------------- |
|
|
183
|
+
| 5.5.10 | 2025-06-29 | Verlauf initiiert |
|
package/docs/en/configuration.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-08-13
|
|
3
|
-
updatedAt: 2025-09-
|
|
3
|
+
updatedAt: 2025-09-23
|
|
4
4
|
title: Configuration
|
|
5
5
|
description: Learn how to configure Intlayer for your application. Understand the various settings and options available to customize Intlayer to your needs.
|
|
6
6
|
keywords:
|
|
@@ -532,7 +532,7 @@ Build options apply to the `@intlayer/babel` and `@intlayer/swc` plugins.
|
|
|
532
532
|
- _Note_: Available modes:
|
|
533
533
|
- "static": Dictionaries are imported statically. Replaces `useIntlayer` with `useDictionary`.
|
|
534
534
|
- "dynamic": Dictionaries are imported dynamically using Suspense. Replaces `useIntlayer` with `useDictionaryDynamic`.
|
|
535
|
-
- "live": Dictionaries are fetched dynamically using the live sync API. Replaces `useIntlayer` with `
|
|
535
|
+
- "live": Dictionaries are fetched dynamically using the live sync API. Replaces `useIntlayer` with `useDictionaryDynamic`.
|
|
536
536
|
- _Note_: Dynamic imports rely on Suspense and may slightly impact rendering performance.
|
|
537
537
|
- _Note_: If disabled all locales will be loaded at once, even if they are not used.
|
|
538
538
|
- _Note_: This option relies on the `@intlayer/babel` and `@intlayer/swc` plugins.
|
|
@@ -541,6 +541,12 @@ Build options apply to the `@intlayer/babel` and `@intlayer/swc` plugins.
|
|
|
541
541
|
- _Note_: If set to "live", only the dictionaries that are including remote content, and set as "live" flags will be transformed as live mode. Others will be imported dynamically as "dynamic" mode to optimize the number of fetch queries, and load performance.
|
|
542
542
|
- _Note_: Live mode will use the live sync API to fetch the dictionaries. If the API call fails, the dictionaries will be imported dynamically as "dynamic" mode.
|
|
543
543
|
- _Note_: This option will not impact the `getIntlayer`, `getDictionary`, `useDictionary`, `useDictionaryAsync` and `useDictionaryDynamic` functions.
|
|
544
|
+
- **outputFormat**:
|
|
545
|
+
- _Type_: `'esm' | 'cjs'`
|
|
546
|
+
- _Default_: `'esm'`
|
|
547
|
+
- _Description_: Controls the output format of the dictionaries.
|
|
548
|
+
- _Example_: `'cjs'`
|
|
549
|
+
- _Note_: The output format of the dictionaries.
|
|
544
550
|
|
|
545
551
|
- **traversePattern**:
|
|
546
552
|
- _Type_: `string[]`
|
|
@@ -555,6 +561,7 @@ Build options apply to the `@intlayer/babel` and `@intlayer/swc` plugins.
|
|
|
555
561
|
|
|
556
562
|
| Version | Date | Changes |
|
|
557
563
|
| ------- | ---------- | --------------------------------------------------------------------------------------- |
|
|
564
|
+
| 6.0.2 | 2025-09-23 | Add `outputFormat` option |
|
|
558
565
|
| 6.0.0 | 2025-09-21 | Remove `dictionaryOutput` field and `i18nextResourcesDir` field |
|
|
559
566
|
| 6.0.0 | 2025-09-16 | Add `live` import mode |
|
|
560
567
|
| 6.0.0 | 2025-09-04 | Replace `hotReload` field by `liveSync` and add `liveSyncPort` and `liveSyncURL` fields |
|