Blockly'deki varsayılan mesajlar (ör. içerik menüsündeki metin) birçok farklı dile çevrildi. en
yerel ayarı varsayılan olarak yüklenir ancak diğer kullanılabilir yerel ayarlar da dahil edilebilir.
npm ile yerel ayarı yapılandırma
import * as Blockly from 'blockly';
ile Blockly'yi içe aktardığınızda şu varsayılan modüllere sahip olursunuz: Blockly core, Blockly yerleşik bloklar, JavaScript oluşturucu ve İngilizce dil dosyaları.
Diğer yerel ayarları kullanırken içe aktarma işlemlerinizi daha dikkatli bir şekilde tanımlamanız gerekir:
Blockly varsayılan modüllerini içe aktar
import * as Blockly from 'blockly/core';
import 'blockly/blocks';
import 'blockly/javascript'; // Or the generator of your choice
Blockly dilleri içe aktarma
Örneğin, Fransızca mesaj kümesini içe aktarmak için:
import * as Fr from 'blockly/msg/fr';
Desteklenen Blockly yerel ayarlarının tam listesi için şu adrese bakın: https://github.com/google/blockly/tree/master/msg/js
Yerel ayarı yapılandır
İstenen mesaj kümesini içe aktardıktan sonra Blockly'de yerel ayarı yapabilirsiniz. Bu işlev şu anda yalnızca Blockly'nin npm sürümünde mevcuttur.
Blockly.setLocale(Fr);
Bunun, çalışma alanı yüklenmeden önce çağrılması gerekir.
npm olmadan yerel ayarı yapılandırma
Bloklu mesaj dizininden uygun komut dosyası src'yi eklediğinizde çeviriler otomatik olarak dahil edilir.
<script src="../../blockly_compressed.js"></script>
<script src="../../blocks_compressed.js"></script>
<script src="../../msg/js/ar.js"></script>
Özel çeviriler
Blockly, tüm varsayılan dizeleri için çevirileri içerir ancak metin içeren özel bloklarınız varsa bu dizeler için kendi çevirilerinizi eklemek isteyebilirsiniz. Örneğin, blockly/msg/es
yapısı aşağıdaki gibidir:
Blockly.Msg["COLOUR_RGB_RED"] = "rojo";
Özel çevirilerinizi içeren bir nesneyle setLocale
yöntemini çağırarak Blockly.Msg
nesnesine yeni özellik olarak ek özel mesajlar ekleyebilirsiniz. Gelecekte eklenebilecek varsayılan çevirilerle çakışmamak için çevirilerinizin önüne özel bir önek ekleyebilirsiniz.
// 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
, giriş nesnesindeki her anahtarı Blockly.Msg
içine yerleştirir. Farklı anahtarlarla birden çok kez çağırabilirsiniz ancak yinelenen bir anahtarla ikinci kez çağrıldığında ilkinin üzerine yazılır.
Bloğunuzdaki çevrilmiş dizeye referans vermek için, yapılandırdığınız yerel ayarın dizesini içeren Blockly.Msg['HELLO']
kullanın.
İlgili konular
- Sağdan sola diller: RTL demosuna bakın
- Engellemeleri yerelleştirme