@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,273 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2025-09-22
|
|
3
|
+
updatedAt: 2025-09-22
|
|
4
|
+
title: Nuovo Intlayer v6 - Novità
|
|
5
|
+
description: Scopri le novità di Intlayer v6. Miglioramenti significativi nelle prestazioni, nell'esperienza dello sviluppatore e nuove funzionalità per migliorare il tuo flusso di lavoro di internazionalizzazione.
|
|
6
|
+
keywords:
|
|
7
|
+
- Intlayer
|
|
8
|
+
- Localizzazione
|
|
9
|
+
- Sviluppo
|
|
10
|
+
- Prestazioni
|
|
11
|
+
- Esperienza dello sviluppatore
|
|
12
|
+
- Funzionalità
|
|
13
|
+
- React
|
|
14
|
+
- Next.js
|
|
15
|
+
- JavaScript
|
|
16
|
+
- TypeScript
|
|
17
|
+
slugs:
|
|
18
|
+
- doc
|
|
19
|
+
- releases
|
|
20
|
+
- v6
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
# Nuovo Intlayer v6 - Novità
|
|
24
|
+
|
|
25
|
+
Benvenuto in Intlayer v6! Questa versione si concentra su prestazioni, esperienza dello sviluppatore e affidabilità. Di seguito i punti salienti, con note di migrazione ed esempi da copiare e incollare.
|
|
26
|
+
|
|
27
|
+
## Punti salienti
|
|
28
|
+
|
|
29
|
+
- Nuovo comando: `npx intlayer content test` per rilevare le traduzioni mancanti
|
|
30
|
+
- Nuova opzione globale `autoFill` per generare automaticamente le traduzioni mancanti
|
|
31
|
+
- Il comando Fill salta per impostazione predefinita le traduzioni esistenti: `npx intlayer fill`
|
|
32
|
+
- Estensione VS Code: nuova Intlayer Activity Bar (Ricerca e Dizionari), azioni sulla toolbar/context, auto-rivelazione, comandi Fill/Test
|
|
33
|
+
- Build 10× più veloci grazie alla parallelizzazione delle promise
|
|
34
|
+
- Caching remoto del dizionario per evitare il refetch all'avvio dell'app
|
|
35
|
+
- Logging migliorato: imposta `log.mode: 'verbose'` per ispezionare il comportamento
|
|
36
|
+
- Validazione più rigorosa per prevenire crash dell'app su problemi di dizionario
|
|
37
|
+
- Aggiornamenti live con CMS usando `build.importMode = 'live'` e `pnpm intlayer live`
|
|
38
|
+
- Correzioni: integrazione Vue.js, adattatore Lynx, Visual Editor su Windows
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Nuovo: Test delle traduzioni mancanti
|
|
43
|
+
|
|
44
|
+
Esegui rapidamente un audit del tuo progetto per trovare quali chiavi/locali mancano.
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
npx intlayer content test
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Output:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
pnpm intlayer content test
|
|
54
|
+
Traduzioni mancanti:
|
|
55
|
+
- blog-data - Giapponese (ja), Coreano (ko), Cinese (zh), Tedesco (de), Italiano (it) - src/components/BlogPage/blogData.content.ts
|
|
56
|
+
- demo-page - Francese (fr), Italiano (it) - src/components/DemoPage/demo.content.ts
|
|
57
|
+
- locale-switcher - Italiano (it), Portoghese (pt) - src/components/LocaleSwitcher/localeSwitcher.content.ts
|
|
58
|
+
Locali: Inglese (en), Russo (ru), Giapponese (ja), Francese (fr), Coreano (ko), Cinese (zh), Spagnolo (es), Tedesco (de), Arabo (ar), Italiano (it), Inglese britannico (en-GB), Portoghese (pt), Hindi (hi)
|
|
59
|
+
Locali richieste: Inglese (en)
|
|
60
|
+
Locali mancanti: Giapponese (ja), Coreano (ko), Cinese (zh), Tedesco (de), Italiano (it), Francese (fr), Portoghese (pt)
|
|
61
|
+
Locali richieste mancanti: -
|
|
62
|
+
Totale locali mancanti: 7
|
|
63
|
+
Totale locali richiesti mancanti: 0
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Consulta più opzioni nella documentazione CLI: [Riferimento CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/intlayer_cli.md) → "Test traduzioni mancanti". Così come la guida [Testing](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/testing.md).
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Novità: autoFill globale per completare le traduzioni mancanti
|
|
71
|
+
|
|
72
|
+
Ora puoi abilitare l'auto‑fill globalmente in modo che qualsiasi dizionario con traduzioni mancanti venga completato automaticamente.
|
|
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
|
+
// Genera automaticamente le traduzioni mancanti per tutti i dizionari
|
|
85
|
+
autoFill: "./{{fileName}}.content.ts",
|
|
86
|
+
//
|
|
87
|
+
// autoFill: "/messages/{{locale}}/{{key}}/{{fileName}}.content.json",
|
|
88
|
+
//
|
|
89
|
+
// autoFill: true, // genera automaticamente le traduzioni mancanti per tutti i dizionari come usando "./{{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
|
+
Puoi ancora perfezionare per dizionario utilizzando il campo `autoFill` nei file di contenuto. Consulta la documentazione completa in `doc/autoFill` e `doc/dictionary/content_file`.
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Comando fill: impostazioni predefinite più sicure
|
|
107
|
+
|
|
108
|
+
Il comando fill ora, per impostazione predefinita, riempie solo le traduzioni mancanti e salta il contenuto esistente.
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
npx intlayer fill
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
Chiavi del dizionario interessate per l'elaborazione: access-key-creation-form-schema, doc-search-metadata, doc-search-page
|
|
116
|
+
- [access-key-creation-form-schema] Il dizionario non ha un percorso file. Saltando.
|
|
117
|
+
- [access-key-creation-form-schema] Elaborazione della dichiarazione di contenuto: src/components/Dashboard/ProjectForm/AccessKey/useAccessKeyCreationFormSchema.content.ts
|
|
118
|
+
- [access-key-creation-form-schema] Nessuna locale da riempire - Dizionario saltato
|
|
119
|
+
- [doc-search-metadata] Il dizionario non ha un percorso file. Saltato.
|
|
120
|
+
- [doc-search-metadata] Elaborazione della dichiarazione di contenuto: src/app/[locale]/(docs)/doc/search/metadata.content.ts
|
|
121
|
+
- [doc-search-metadata] Nessuna localizzazione da riempire - Dizionario saltato
|
|
122
|
+
- [doc-search-page] Il dizionario non ha un percorso file. Saltato.
|
|
123
|
+
- [doc-search-page] Elaborazione della dichiarazione di contenuto: src/app/[locale]/(docs)/doc/search/page.content.ts
|
|
124
|
+
- [doc-search-page] [Russo (ru)] Preparazione della traduzione per il dizionario da Inglese (en) a Russo (ru)
|
|
125
|
+
[intlayer] Applicata la formattazione Prettier a src/app/[locale]/(docs)/doc/search/page.content.ts
|
|
126
|
+
- [doc-search-page] Dichiarazione di contenuto scritta in src/app/[locale]/(docs)/doc/search/page.content.ts
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
Esempi di CI sono disponibili in [CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/CI_CD.md).
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Estensione VS Code aggiornata
|
|
134
|
+
|
|
135
|
+
L'estensione ora include una scheda Intlayer dedicata nella Barra delle Attività e diversi miglioramenti del flusso di lavoro:
|
|
136
|
+
|
|
137
|
+
- Barra delle Attività Intlayer con due viste:
|
|
138
|
+
- Webview di ricerca (`intlayer.searchBar`) per la ricerca live nel dizionario/contenuto
|
|
139
|
+
- Albero dei dizionari (`intlayer.dictionaries`) che elenca ambienti, dizionari e file contributori
|
|
140
|
+
- Barra degli strumenti nella vista Dizionari: Build, Pull, Push, Fill, Refresh, Test, Create Dictionary File
|
|
141
|
+
- Menu contestuali: Pull/Push sui dizionari; Fill sui file
|
|
142
|
+
- Rilevamento automatico: il file corrente nell'editor è evidenziato nell'albero dei Dizionari quando applicabile
|
|
143
|
+
- Nuovi comandi disponibili dalla Command Palette: Riempi Dizionari e Testa Dizionari
|
|
144
|
+
|
|
145
|
+
Consulta i dettagli nella documentazione della [Estensione Ufficiale per VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/vs_code_extension.md).
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## Prestazioni: 10× più veloce
|
|
150
|
+
|
|
151
|
+
- Risoluzione parallela dei dizionari locali e remoti
|
|
152
|
+
- I dizionari remoti sono memorizzati nella cache per evitare di essere recuperati nuovamente all'avvio dell'app
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
npx intlayer build
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Output:
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
[intlayer] Preparazione di Intlayer (v6.0.1)
|
|
162
|
+
[intlayer] Dizionari:
|
|
163
|
+
[intlayer] ✓ Contenuto locale: 163/163
|
|
164
|
+
[intlayer] ✓ Contenuto remoto: 100/100
|
|
165
|
+
[intlayer] - access-key-creation-form [locale: ✔ costruito] [remoto: ✔ importato]
|
|
166
|
+
[intlayer] - access-key-creation-form-schema [local: ✔ built] [distant: ✔ imported]
|
|
167
|
+
[intlayer] - access-key-form [local: ✔ built] [distant: ✔ imported]
|
|
168
|
+
[intlayer] - ai-ab-testing-section [distant: ✔ imported]
|
|
169
|
+
[intlayer] - application-not-running-view [local: ✔ built] [distant: ✔ imported]
|
|
170
|
+
[intlayer] - application-template-message [local: ✔ built] [distant: ✔ fetched]
|
|
171
|
+
[intlayer] - aside-navigation [local: ✔ built] [distant: ✔ imported]
|
|
172
|
+
[intlayer] - ask-reset-password [local: ✔ built] [distant: ✔ imported]
|
|
173
|
+
[intlayer] - ask-reset-password-schema [local: ✔ built] [distant: ✔ imported]
|
|
174
|
+
[intlayer] - sezione-autocompletamento [local: ✔ built] [distant: ✔ fetched]
|
|
175
|
+
[intlayer] - sezione-tecnologie-disponibili [local: ✔ built] [distant: ✔ imported]
|
|
176
|
+
[intlayer] - dati-blog [local: ✔ built]
|
|
177
|
+
[intlayer] - metadati-blog [local: ✔ built]
|
|
178
|
+
[intlayer] - lista-navigazione-blog [local: ✔ built] [distant: ✔ imported]
|
|
179
|
+
[intlayer] - pagina-blog [distant: ✔ fetched]
|
|
180
|
+
[intlayer] - metadati-ricerca-blog [local: ✔ built] [distant: ✔ imported]
|
|
181
|
+
[intlayer] - pagina-ricerca-blog [local: ✔ built] [distant: ✔ imported]
|
|
182
|
+
...
|
|
183
|
+
[intlayer] Contenuto caricato (Totale: 8401ms - Locale: 4050ms - Remoto: 4222ms)
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## Miglioramenti al sistema di logging
|
|
189
|
+
|
|
190
|
+
Il sistema di logging è stato migliorato per fornire informazioni più dettagliate su ciò che accade durante le trasformazioni in fase di build e runtime.
|
|
191
|
+
|
|
192
|
+
> Abilita i log dettagliati per comprendere meglio cosa accade durante le trasformazioni in fase di build e runtime.
|
|
193
|
+
|
|
194
|
+
```ts fileName="intlayer.config.ts"
|
|
195
|
+
export default {
|
|
196
|
+
log: {
|
|
197
|
+
mode: "verbose", // opzioni: "default" | "verbose" | "disabled"
|
|
198
|
+
},
|
|
199
|
+
};
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
Consulta la [Configurazione](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/configuration.md) per tutte le opzioni di logging.
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
## Validazione più rigorosa
|
|
207
|
+
|
|
208
|
+
Il processo di gestione dei dizionari ora esegue una validazione più robusta. Quando un dizionario non riesce a essere processato, Intlayer evita di interrompere la tua applicazione e mostra errori azionabili.
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## Aggiornamenti live con CMS (Sicuro per la produzione)
|
|
213
|
+
|
|
214
|
+
Fornisci aggiornamenti di contenuto in tempo reale (ad esempio, aggiornamenti editoriali) in produzione senza ricostruire la tua applicazione.
|
|
215
|
+
|
|
216
|
+
1. Abilita la modalità di importazione live:
|
|
217
|
+
|
|
218
|
+
```ts fileName="intlayer.config.ts"
|
|
219
|
+
import { type IntlayerConfig } from "intlayer";
|
|
220
|
+
|
|
221
|
+
const config: IntlayerConfig = {
|
|
222
|
+
build: {
|
|
223
|
+
importMode: "live", // "static" | "dynamic" | "live"
|
|
224
|
+
},
|
|
225
|
+
editor: {
|
|
226
|
+
liveSync: true, // abilita la sincronizzazione live lato server
|
|
227
|
+
},
|
|
228
|
+
};
|
|
229
|
+
|
|
230
|
+
export default config;
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
2. Esegui la tua app e il processo live affiancati:
|
|
234
|
+
|
|
235
|
+
```bash
|
|
236
|
+
npx intlayer live --process 'vite preview'
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
Note:
|
|
240
|
+
|
|
241
|
+
- Solo i dizionari contrassegnati per usare la modalità live saranno recuperati in tempo reale. Gli altri sono ottimizzati per le prestazioni.
|
|
242
|
+
- Torna all'importazione dinamica se l'API live non è raggiungibile.
|
|
243
|
+
|
|
244
|
+
Vedi [CMS e Live Sync](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/intlayer_CMS.md) e [Configurazione](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/configuration.md) per una guida completa.
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
## Note sulla migrazione
|
|
249
|
+
|
|
250
|
+
- Rimosso: `dictionaryOutput` (precedentemente `i18next` o `next-intl`). Tornerà come adattatori pluggabili nelle versioni future. Rimuovi il campo dalla tua configurazione.
|
|
251
|
+
- Rimozione correlata: `i18nextResourcesDir` (vedi changelog in `doc/configuration`).
|
|
252
|
+
- Preferisci la nuova opzione globale `content.autoFill` per generare traduzioni mancanti su larga scala.
|
|
253
|
+
- Usa `npx intlayer content test` per bloccare le PR in caso di traduzioni mancanti.
|
|
254
|
+
- Per una diagnostica dettagliata, imposta `log.mode = 'verbose'`.
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
## Correzioni
|
|
259
|
+
|
|
260
|
+
- Stabilità dell'integrazione con Vue.js
|
|
261
|
+
- Miglioramenti all'adattatore Lynx
|
|
262
|
+
- Editor Visivo su Windows
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
## Link utili
|
|
267
|
+
|
|
268
|
+
- [Riferimento CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/intlayer_cli.md)
|
|
269
|
+
- [Compilazione automatica](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/autoFill.md)
|
|
270
|
+
- [Configurazione](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/configuration.md)
|
|
271
|
+
- [Riferimento file di contenuto](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/content_file.md)
|
|
272
|
+
- [Estensione ufficiale per VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/vs_code_extension.md)
|
|
273
|
+
- [CMS e Sincronizzazione Live](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/intlayer_CMS.md)
|
package/docs/it/roadmap.md
CHANGED
|
@@ -112,18 +112,16 @@ Intlayer offre vari metodi per inserire e gestire contenuti dinamici, garantendo
|
|
|
112
112
|
Intlayer supporta **TypeScript** (e anche JavaScript) e **JSON** per dichiarare i contenuti.
|
|
113
113
|
|
|
114
114
|
- **TypeScript**:
|
|
115
|
-
|
|
116
115
|
- Garantisce che la struttura del contenuto sia corretta e che non manchino traduzioni.
|
|
117
116
|
- Offre modalità di validazione rigorose o più flessibili.
|
|
118
117
|
- Permette il recupero dinamico dei dati da variabili, funzioni o API esterne.
|
|
119
118
|
|
|
120
119
|
- **JSON**:
|
|
121
|
-
|
|
122
120
|
- Facilita l'integrazione con strumenti esterni (come editor visuali) grazie al suo formato standardizzato.
|
|
123
121
|
|
|
124
122
|
> Risorse:
|
|
125
123
|
>
|
|
126
|
-
> - [Formati di Dichiarazione del Contenuto](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/
|
|
124
|
+
> - [Formati di Dichiarazione del Contenuto](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/dictionary/content_file.md)
|
|
127
125
|
|
|
128
126
|
### 7. Pulizia, ottimizzazione del bundle e importazioni dinamiche
|
|
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: Estensione Ufficiale per VS Code
|
|
5
5
|
description: Scopri come utilizzare l'estensione Intlayer in VS Code per migliorare il tuo flusso di lavoro di sviluppo. Naviga rapidamente tra contenuti localizzati e gestisci i tuoi dizionari in modo efficiente.
|
|
6
6
|
keywords:
|
|
@@ -31,27 +31,75 @@ Link all'estensione: [https://marketplace.visualstudio.com/items?itemName=Intlay
|
|
|
31
31
|
|
|
32
32
|
### Navigazione Istantanea
|
|
33
33
|
|
|
34
|
-
**Supporto Vai alla Definizione** – Usa
|
|
35
|
-
**Integrazione Perfetta** – Funziona senza
|
|
34
|
+
**Supporto Vai alla Definizione** – Usa `⌘ + Click` (Mac) o `Ctrl + Click` (Windows/Linux) su una chiave `useIntlayer` per aprire immediatamente il file di contenuto corrispondente.
|
|
35
|
+
**Integrazione Perfetta** – Funziona senza problemi con i progetti **react-intlayer** e **next-intlayer**.
|
|
36
36
|
**Supporto Multilingue** – Supporta contenuti localizzati in diverse lingue.
|
|
37
|
-
**Integrazione con VS Code** – Si integra
|
|
37
|
+
**Integrazione con VS Code** – Si integra fluidamente con la navigazione e la palette dei comandi di VS Code.
|
|
38
38
|
|
|
39
39
|
### Comandi per la Gestione dei Dizionari
|
|
40
40
|
|
|
41
41
|
Gestisci i tuoi dizionari di contenuti direttamente da VS Code:
|
|
42
42
|
|
|
43
|
-
- **Costruisci Dizionari**
|
|
44
|
-
- **Carica Dizionari**
|
|
45
|
-
- **Scarica Dizionari**
|
|
43
|
+
- **Costruisci Dizionari** – Genera file di contenuto basati sulla struttura del tuo progetto.
|
|
44
|
+
- **Carica Dizionari** – Carica l'ultimo contenuto del dizionario nel tuo repository.
|
|
45
|
+
- **Scarica Dizionari** – Sincronizza l'ultimo contenuto del dizionario dal tuo repository al tuo ambiente locale.
|
|
46
|
+
- **Riempi Dizionari** – Popola i dizionari con contenuti dal tuo progetto.
|
|
47
|
+
- **Testa Dizionari** – Identifica traduzioni mancanti o incomplete.
|
|
46
48
|
|
|
47
49
|
### Generatore di Dichiarazioni di Contenuto
|
|
48
50
|
|
|
49
|
-
Genera facilmente file di
|
|
51
|
+
Genera facilmente file di dizionario strutturati in diversi formati:
|
|
50
52
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
Se stai lavorando su un componente, genererà per te il file `.content.{ts,tsx,js,jsx,mjs,cjs,json}`.
|
|
54
|
+
|
|
55
|
+
Esempio di componente:
|
|
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
|
+
File generato in formato TypeScript:
|
|
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
|
+
Formati disponibili:
|
|
85
|
+
|
|
86
|
+
- **TypeScript (`.ts`)**
|
|
87
|
+
- **Modulo ES (`.esm`)**
|
|
88
|
+
- **CommonJS (`.cjs`)**
|
|
89
|
+
- **JSON (`.json`)**
|
|
90
|
+
|
|
91
|
+
### Scheda Intlayer (Barra delle Attività)
|
|
92
|
+
|
|
93
|
+
Apri la scheda Intlayer cliccando sull'icona Intlayer nella barra delle attività di VS Code. Contiene due viste:
|
|
94
|
+
|
|
95
|
+
- **Ricerca**: Una barra di ricerca live per filtrare rapidamente i dizionari e i loro contenuti. La digitazione aggiorna i risultati istantaneamente.
|
|
96
|
+
- **Dizionari**: Una vista ad albero dei tuoi ambienti/progetti, delle chiavi del dizionario e dei file che contribuiscono con voci. Puoi:
|
|
97
|
+
- Cliccare su un file per aprirlo nell'editor.
|
|
98
|
+
- Usare la barra degli strumenti per eseguire azioni: Build, Pull, Push, Fill, Refresh, Test e Create Dictionary File.
|
|
99
|
+
- Usare il menu contestuale per azioni specifiche dell'elemento:
|
|
100
|
+
- Su un dizionario: Pull o Push
|
|
101
|
+
- Su un file: Fill Dictionary
|
|
102
|
+
- Quando cambi editor, l'albero rivelerà il file corrispondente se appartiene a un dizionario.
|
|
55
103
|
|
|
56
104
|
## Installazione
|
|
57
105
|
|
|
@@ -62,12 +110,6 @@ Puoi installare **Intlayer** direttamente dal Marketplace di VS Code:
|
|
|
62
110
|
3. Cerca **"Intlayer"**.
|
|
63
111
|
4. Clicca su **Installa**.
|
|
64
112
|
|
|
65
|
-
In alternativa, installalo tramite la riga di comando:
|
|
66
|
-
|
|
67
|
-
```sh
|
|
68
|
-
code --install-extension intlayer
|
|
69
|
-
```
|
|
70
|
-
|
|
71
113
|
## Utilizzo
|
|
72
114
|
|
|
73
115
|
### Navigazione Rapida
|
|
@@ -79,12 +121,20 @@ code --install-extension intlayer
|
|
|
79
121
|
const content = useIntlayer("app");
|
|
80
122
|
```
|
|
81
123
|
|
|
82
|
-
3. **Command-click** (`⌘+Click` su macOS) o **Ctrl+Click** (su Windows/Linux) sulla chiave (
|
|
83
|
-
4. VS Code aprirà automaticamente il file dizionario corrispondente, ad esempio `src/app.content.ts`.
|
|
124
|
+
3. **Command-click** (`⌘+Click` su macOS) o **Ctrl+Click** (su Windows/Linux) sulla chiave (ad esempio, `"app"`).
|
|
125
|
+
4. VS Code aprirà automaticamente il file del dizionario corrispondente, ad esempio `src/app.content.ts`.
|
|
84
126
|
|
|
85
127
|
### Gestione dei Dizionari di Contenuto
|
|
86
128
|
|
|
87
|
-
|
|
129
|
+
### Scheda Intlayer (Barra delle Attività)
|
|
130
|
+
|
|
131
|
+
Usa la scheda laterale per navigare e gestire i dizionari:
|
|
132
|
+
|
|
133
|
+
- Apri l'icona Intlayer nella Barra delle Attività.
|
|
134
|
+
- In **Ricerca**, digita per filtrare dizionari e voci in tempo reale.
|
|
135
|
+
- In **Dizionari**, esplora ambienti, dizionari e file. Usa la barra degli strumenti per Costruire, Scaricare, Caricare, Riempire, Aggiornare, Testare e Creare File Dizionario. Clic destro per azioni contestuali (Scarica/Carica sui dizionari, Riempi sui file). Il file attualmente aperto nell’editor si rivela automaticamente nell’albero quando applicabile.
|
|
136
|
+
|
|
137
|
+
#### Costruire Dizionari
|
|
88
138
|
|
|
89
139
|
Genera tutti i file di contenuto dei dizionari con:
|
|
90
140
|
|
|
@@ -92,61 +142,42 @@ Genera tutti i file di contenuto dei dizionari con:
|
|
|
92
142
|
Cmd + Shift + P (macOS) / Ctrl + Shift + P (Windows/Linux)
|
|
93
143
|
```
|
|
94
144
|
|
|
95
|
-
Cerca **
|
|
145
|
+
Cerca **Costruisci Dizionari** ed esegui il comando.
|
|
96
146
|
|
|
97
|
-
#### Caricare
|
|
147
|
+
#### Caricare Dizionari
|
|
98
148
|
|
|
99
|
-
Carica l
|
|
149
|
+
Carica l’ultimo contenuto dei dizionari:
|
|
100
150
|
|
|
101
|
-
1. Apri la **
|
|
102
|
-
2. Cerca **
|
|
151
|
+
1. Apri la **Palette dei Comandi**.
|
|
152
|
+
2. Cerca **Carica Dizionari**.
|
|
103
153
|
3. Seleziona i dizionari da caricare e conferma.
|
|
104
154
|
|
|
105
|
-
#### Scaricare
|
|
155
|
+
#### Scaricare Dizionari
|
|
106
156
|
|
|
107
|
-
Sincronizza l
|
|
157
|
+
Sincronizza l’ultimo contenuto del dizionario:
|
|
108
158
|
|
|
109
|
-
1. Apri la **
|
|
110
|
-
2. Cerca **
|
|
159
|
+
1. Apri la **Palette dei Comandi**.
|
|
160
|
+
2. Cerca **Scarica Dizionari**.
|
|
111
161
|
3. Scegli i dizionari da scaricare.
|
|
112
162
|
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
Vuoi contribuire? Accogliamo con piacere i contributi della community!
|
|
116
|
-
|
|
117
|
-
URL del repository: https://github.com/aymericzip/intlayer-vs-code-extension
|
|
118
|
-
|
|
119
|
-
### Iniziare
|
|
120
|
-
|
|
121
|
-
Clona il repository e installa le dipendenze:
|
|
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
|
-
```
|
|
128
|
-
|
|
129
|
-
> Usa il package manager `npm` per la compatibilità con il pacchetto `vsce` per costruire e pubblicare l'estensione.
|
|
130
|
-
|
|
131
|
-
### Eseguire in Modalità Sviluppo
|
|
132
|
-
|
|
133
|
-
1. Apri il progetto in **VS Code**.
|
|
134
|
-
2. Premi `F5` per avviare una nuova finestra **Extension Development Host**.
|
|
135
|
-
|
|
136
|
-
### Inviare una Pull Request
|
|
137
|
-
|
|
138
|
-
Se migliori l'estensione, invia una PR su [GitHub](https://github.com/aymericzip/intlayer-vs-code-extension).
|
|
163
|
+
#### Riempire Dizionari
|
|
139
164
|
|
|
140
|
-
|
|
165
|
+
Riempi i dizionari con contenuti dal tuo progetto:
|
|
141
166
|
|
|
142
|
-
|
|
167
|
+
1. Apri la **Palette dei Comandi**.
|
|
168
|
+
2. Cerca **Riempi Dizionari**.
|
|
169
|
+
3. Esegui il comando per popolare i dizionari.
|
|
143
170
|
|
|
144
|
-
|
|
171
|
+
#### Testare Dizionari
|
|
145
172
|
|
|
146
|
-
|
|
173
|
+
Valida i dizionari e trova le traduzioni mancanti:
|
|
147
174
|
|
|
148
|
-
|
|
175
|
+
1. Apri la **Palette dei Comandi**.
|
|
176
|
+
2. Cerca **Testa Dizionari**.
|
|
177
|
+
3. Rivedi i problemi segnalati e correggili se necessario.
|
|
149
178
|
|
|
150
|
-
## Cronologia
|
|
179
|
+
## Cronologia Documentazione
|
|
151
180
|
|
|
152
|
-
|
|
181
|
+
| Versione | Data | Modifiche |
|
|
182
|
+
| -------- | ---------- | ----------------- |
|
|
183
|
+
| 5.5.10 | 2025-06-29 | Inizio cronologia |
|