Los mensajes predeterminados en Blockly (como el texto en el menú contextual) se tradujeron a muchos idiomas diferentes. La configuración regional en
se carga de forma predeterminada, pero también se pueden incluir las otras configuraciones regionales disponibles.
Cómo configurar la configuración regional con npm
Cuando importes Blockly con import * as Blockly from 'blockly';
, obtendrás
los módulos predeterminados: Blockly core, Blockly integrado, el generador de JavaScript y los archivos en inglés.
Para usar otras configuraciones regionales, te recomendamos que definas tus importaciones con más cuidado:
Cómo importar módulos predeterminados de Blockly
import * as Blockly from 'blockly/core';
import 'blockly/blocks';
import 'blockly/javascript'; // Or the generator of your choice
Importar idiomas de Blockly
Por ejemplo, para importar el conjunto de mensajes en francés:
import * as Fr from 'blockly/msg/fr';
Para obtener una lista completa de las configuraciones regionales de Blockly compatibles, consulta: https://github.com/google/blockly/tree/master/msg/js
Configurar configuración regional
Después de importar el conjunto de mensajes deseado, debes establecer la configuración regional en Blockly. Actualmente, esta función solo se incluye en la versión de npm de Blockly.
Blockly.setLocale(Fr);
Se debe llamar a esta función antes de que se cargue el lugar de trabajo.
Cómo configurar la configuración regional sin npm
Incluye el src de la secuencia de comandos adecuada del directorio de mensajes de Blockly, y las traducciones se incluirán automáticamente.
<script src="../../blockly_compressed.js"></script>
<script src="../../blocks_compressed.js"></script>
<script src="../../msg/js/ar.js"></script>
Traducciones personalizadas
Blockly incluye traducciones para todas sus strings predeterminadas, pero si tienes bloques personalizados con texto, te recomendamos que incluyas tus propias traducciones para esas strings. Por ejemplo, la estructura de blockly/msg/es
es similar a la siguiente:
Blockly.Msg["COLOUR_RGB_RED"] = "rojo";
Puedes agregar mensajes personalizados adicionales como propiedades nuevas en el objeto Blockly.Msg
llamando a setLocale
con un objeto con tus traducciones personalizadas. Es posible que desees agregar un prefijo a tus traducciones con un prefijo personalizado para evitar colisiones con cualquier traducción predeterminada que se pueda agregar en el 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
coloca cada clave del objeto de entrada en Blockly.Msg
. Puedes llamarla varias veces con claves distintas, pero llamarla por segunda vez con una clave duplicada reemplazará a la primera.
Para hacer referencia a la string traducida en el bloque, usa Blockly.Msg['HELLO']
, que debe contener la string de la configuración regional que configuraste.
Temas relacionados
- Idiomas que se escriben de derecha a izquierda: Consulta la demostración de RTL.
- Localización de bloques