Plugins vertalen
Met het rkwarddev-pakket kunnen externe plugins worden gemaakt met volledige ondersteuning voor i18n. Bijvoorbeeld hebben alle relevante functies die XML-objecten genereren een optionele parameter voor het opgeven van i18n_context
of noi18n_label
:
varComment <- rk.XML.varselector(id.name="vars", i18n=list(comment="Hoofd variabele-selector")) varContext <- rk.XML.varselector(id.name="vars", i18n=list(context="Hoofd variabele-selector")) cboxNoi18n <- rk.XML.cbox(label="Macht", id.name="macht", i18n=FALSE)
Bovenstaande voorbeelden hebben uitvoer als volgt:
# varComment <!-- i18n: Hoofd variable-selector --> <varselector id="vars" /> # varContext <varselector id="vars" i18n_context="Hoofd variable-selector" /> # cboxNoi18n <checkbox id="macht" noi18n_label="Macht" value="true" />
Er is ook ondersteuning voor vertaalbare JS-code. In feite probeert het pakket standaard i18n()
-aanroepen toe te voegen op plaatsen waar dit gewoonlijk nuttig is. De functie rk.JS.header()
is hiervan een goed voorbeeld:
jsHeader <- rk.JS.header("Test-resultaten")
Dit produceert de volgende JS-code:
new Header(i18n("Test-resultaten")).print();
Maar u kunt ook zelf strings in uw JS-code markeren als vertaalbaar, met de functie i18n()
, precies zoals wanneer u het JS-script direct zou schrijven.