Translatable modules/Principles/nl

 Dit zijn de principes volgens welk het Vertaalbare modules framework zal worden ontworpen, gemaakt en ter beschikking komt.



Het ervaren van het vertalen moet gelijk zijn aan dat bij van de core, de extensies en pagina's
De gebruikerservaring van vertalers moet vergelijkbaar zijn aan die bij het vertalen van core MediaWiki en extensies op translatewiki.net, het vertalen van pagina's op meta, mediawiki.org, enz. Er zijn wel wat aanpassingen noodzakelijk.



Alle meertalige wiki's
At this stage, the project must address the needs of all multilingual Wikimedia wikis: Wikidata, Commons, Meta, mediawiki.org, and possibly also Outreach, Incubator, Multi-Wikisource, Beta Wikiversity, Wikimania, Wikispecies. All wikis that have the Translate extension are potential targets. (All Wikimedia content wikis run Scribunto.)

It should also be useful for any wiki project outside of the Wikimedia world that uses Scribunto modules.



Doel
Once the framework is developed and deployed, module developers should feel encouraged and empowered to create new modules that have translatable messages using the new framework, and to convert existing modules to this framework.

To make transition to the new framework easier for Module and template developers, it may be good to develop scripts that convert source strings and translations from existing translated modules to the new framework.

Standaardisatie
The same framework should be deployed and used on all of Wikimedia’s multilingual sites. All the Scribunto functions to load and parse messages will be added to extension code and deployed everywhere. No local modules should be needed to use the framework.



Wiki principes
The source messages must be easily editable by wiki editors, much like modules and templates are now. Most of them must be editable by all editors. Some of them may be protected from vandalism to be editable only by people in particular permission groups, such as “interface editors” or “sysops”, according to wiki community policies.

It must be reasonably easy to find who contributed a translation using page history, logs, or some other mechanism.



Vertaalberichten vinden
There needs to be an easy to browse catalog of modules whose messages need to be translated. This is similar to the main page in translatewiki.net. The primary entry point to this must be Translate’s Message group selector. The grouping must be controlled by the wiki editing community. The grouping is needed because a wiki may have hundreds or even thousands of translatable modules, and looking them up in one message group selector is not scalable.

Het dient ook gemakkelijk te zijn om berichten te vinden die van de module documentatie-pagina's vertaald moeten worden, en op de pagina's waardoor die worden aangeroepen en het gebruiken van ?uselang=qqx in de URL op de berichten keys te vinden.

It should be possible to mark some messages as “optional”, as it is done for MediaWiki messages in translatewiki.net.



Performance en updaten
The new framework must not significantly hurt the wikis’ performance. It must not add page save, load, or rendering cost.

Once a source message is updated, it must be immediately seen on the pages where the module is used, similarly to how pages that use templates and modules are re-rendered after the template or the module is updated. The existing translations must appear as out of date (“fuzzy”) in the translation interface, and should appear with an indication that they are out of date in the rendered wiki page where the module is invoked.



Ruwe berichten bewerken
The source messages will be edited in the storage that will be selected: a wiki page with JSON, a translatable wikitext page, or something else (to be decided). Source messages should have context documentation, similarly to “qqq” in core MediaWiki and extensions, and they will be edited raw, or through Translate’s “Edit documentation” feature.

Editing the translations as raw source code is not supposed to be necessary. Translations should be edited only through a translation interface. In core and extensions it’s essentially the only way to edit translation, although it may be possible to allow editing translations manually if there is strong community demand for it.



Lokaal aanpassen van berichten
Wikis must be able to change translations that come from another wiki, as it is with core and extensions messages, which can be customized in the MediaWiki namespace. This is not immediately relevant for single wikis (unless we store the translations for all sites on Commons), but it will definitely become relevant when modules start being global.



Berichten syntaxis en parameters
In core MediaWiki and extensions, many messages have parameters, sometimes also known as “placeholders”. They are named $1, $2, etc., and they are filled in run time. Parameters are particularly important for making messages robustly translatable because different languages have different word order. Something like this is needed in modules, too.

The magic words PLURAL, GENDER, and GRAMMAR will be supported in module messages as in MediaWiki messages. This should be available for both content language and page language.



Vertaalgeheugen
The Translate interface must use Translation memory as it does with translatable pages and MediaWiki translation.



Berichten delen tussen modules
It is an open question whether to allow the sharing of the same message or several messages across several modules. It is usually discouraged in MediaWiki (Avoid message re-use), however, it is conceivable that this will be useful for module developers.

To be decided later, in the community consultation stage.



Importeren en exporteren
Messages must be easily and automatically importable and exportable by Special:Import and Special:Export. This is similar to TemplateStyles: If a template uses TemplateStyles, the Import function automatically imports the necessary CSS pages in the same XML package.



Meer informatie

 * Discuss at Talk:Translatable modules.
 * - the part that needs the most discussion and review
 * - the part that needs the most discussion and review
 * - the part that needs the most discussion and review