Per i file XML di RKWard, i18n per lo più funzionerà. Se state scrivendo il vostro .pluginmap (ad es. per un'estensione esterna), dovrete specificare un po_id accanto all'id del pluginmap. Ciò definisce il «catalogo dei messaggi» da utilizzare. In generale questo dovrebbe essere impostato identico all'id del vostro .pluginmap, ma se fornite diversi .pluginmap correlati in un singolo pacchetto, probabilmente vorrete specificare un po_id comune nelle vostre mappe. Il po_id di un file .pluginmap è ereditato da tutte le estensioni dichiarate in esso, a meno che non si dichiari un diverso po_id.
Per le estensioni e le pagine di aiuto, non è necessario dire a RKWard quali stringhe devono essere tradotte, perché questo risulta generalmente dal loro utilizzo. Tuttavia, come spiegato sopra, dovreste tenere d'occhio le stringhe che potrebbero essere ambigue o richiedere spiegazioni per essere tradotte correttamente. Per le stringhe che potrebbero avere significati diversi, fornire un i18n_context come questo:
<checkbox id="scale" label="Scala" i18n_context="Mostra la scala"/>
<checkbox id="scale" label="Scala" i18n_context="Ridimensiona il grafico"/>
Fornire i18n_context farà sì che le due stringhe vengano tradotte separatamente. Altrimenti condividerebbero un'unica traduzione. Inoltre, il contesto viene mostrato al traduttore. L'attributo i18n_context è supportato su tutti gli elementi che possono avere stringhe traducibili, da qualche parte, inclusi gli elementi che contengono testo al loro interno (elementi ad es. <text>).
In altri casi la stringa da tradurre ha un singolo significato non ambiguo, ma può ancora aver bisogno di spiegazioni. In questo caso puoi aggiungere un commento che sarà mostrato ai traduttori. Gli esempi potrebbero includere:
<!-- i18n: No, questo non è un errore di battitura per il grafico dello schermo! -->
<component id="scree_plot" label="Scree plot"/>
<!-- i18n: Se potete, scrivete questa stringa breve. Avere più di 15 caratteri
sembra davvero brutto a questo punto, e il significato dovrebbe essere per lo più evidente per
l'utente (selezione da un elenco di valori mostrato accanto a questo elemento) -->
<valueslot id="selected" label="Scegli uno"/>
Notare che tali commenti devono precedere l'elemento a cui si applicano e devono iniziare con «i18n:» o «TRANSLATORS:».
Infine, in rari casi, potresti voler escludere determinate stringhe dalla traduzione. Questo potrebbe avere senso, ad esempio, se offri la possibilità di scegliere tra diversi nomi di funzioni di R in un controllo <radio>. In questo caso, non vuoi che queste vengano tradotte (ma, a seconda del contesto, dovresti valutare l'idea di assegnare un'etichetta descrittiva):
<radio id="transformation" label="Funzione R da applicare">
<option id="as.list" noi18n_label="as.list()"/>
<option id="as.vector" noi18n_label="as.vector()"/>
[...]
</radio>
Notare che si ometterà l'attributo etichetta, quindi, e si specificherà invece noi18n_label. Inoltre, notare che contrariamente a i18n_context e ai commenti, l'uso di noi18n_label renderà la propria estensione incompatibile con le versioni di RKWard prima della 0.6.3.