I messaggi predefiniti in Blockly (ad esempio il testo nel menu contestuale) sono stati tradotti in molte lingue diverse. Per impostazione predefinita viene caricato il codice lingua en
, ma è possibile includere anche gli altri codici lingua disponibili.
Configurazione delle impostazioni internazionali con npm
Quando importi Blockly con import * as Blockly from 'blockly';
, ottieni i moduli predefiniti: il nucleo di Blockly, i blocchi integrati di Blockly, il generatore di JavaScript e i file lang in inglese.
Per utilizzare altre impostazioni internazionali, ti consigliamo di definire le importazioni con maggiore attenzione:
Importare i moduli predefiniti di Blockly
import * as Blockly from 'blockly/core';
import 'blockly/blocks';
import 'blockly/javascript'; // Or the generator of your choice
Importare le lingue di Blockly
Ad esempio, per importare l'insieme di messaggi in francese:
import * as Fr from 'blockly/msg/fr';
Per un elenco completo delle lingue di Blockly supportate, visita la pagina: https://github.com/google/blockly/tree/master/msg/js
Configura impostazioni internazionali
Dopo aver importato il set di messaggi desiderato, ti consigliamo di impostare le impostazioni internazionali in Blockly. Questa funzione è attualmente inclusa solo nella release npm di Blockly.
Blockly.setLocale(Fr);
Questa operazione deve essere chiamata prima del caricamento dell'area di lavoro.
Configurazione delle impostazioni internazionali senza npm
Includi lo script src appropriato dalla directory msg di Blockly e le traduzioni verranno incluse automaticamente.
<script src="../../blockly_compressed.js"></script>
<script src="../../blocks_compressed.js"></script>
<script src="../../msg/js/ar.js"></script>
Traduzioni personalizzate
Blockly include le traduzioni per tutte le stringhe predefinite, ma se hai blocchi personalizzati con testo, ti consigliamo di includere le tue traduzioni per queste stringhe. Ad esempio, la struttura di blockly/msg/es
è simile alla seguente:
Blockly.Msg["COLOUR_RGB_RED"] = "rojo";
Puoi aggiungere altri messaggi personalizzati come nuove proprietà all'oggetto Blockly.Msg
chiamando setLocale
con un oggetto contenente le tue traduzioni personalizzate. Ti consigliamo di anteporre alle traduzioni un prefisso personalizzato per evitare conflitti con le traduzioni predefinite che potrebbero essere aggiunte in futuro.
// In custom_es.js
export const CustomEs = {
HELLO: "Hola",
}
// In your setup code
import * as Es from blockly/msg/Es;
import { CustomEs } from ../custom_es;
Blockly.setLocale(Es);
Blockly.setLocale(CustomEs);
setLocale
inserisce ogni chiave dell'oggetto di input in Blockly.Msg
. Puoi chiamarla più volte con chiavi distinte, ma se la chiami una seconda volta con una chiave duplicata, la prima verrà sovrascritta.
Per fare riferimento alla stringa tradotta nel blocco, utilizza Blockly.Msg['HELLO']
che deve contenere la stringa per le impostazioni internazionali che hai configurato.
Argomenti correlati
- Lingue con scrittura da destra a sinistra: guarda la demo RTL
- Localizzare i blocchi