Translatable modules/Current solutions/nl
Het project Translatable modules probeert een een nieuw framework te maken voor het vertalen van modules.
Hier staan voorbeelden van de huidige oplossingen voor het opslaan en tonen van vertaalde berichten in modules en sjablonen, die door de oorspronkelijke schrijver van dit artikel gevonden zijn. Als u andere gebruikte oplossingen kent, voeg ze dan a.u.b. toe.
Als er in dit project een nieuwe oplossing wordt gemaakt, dan moet die:
- De huidige oplossingen laten werken.
- De goede functies van de huidige oplossingen hebben.
- Nieuwe functies toevoegen die problemen met de huidige oplossingen helpen oplossen.
- Een eenvoudig pad aanbieden voor het vertalen door ontwikkelaars die de nieuwe oplossing willen gaan gebruiken.
Lua tabel 1: Module:I18n op Commons
Module I18n op Commons laad vertaalberichten en vertalingen van andere modules, genaamd Module I18n/*, voorbeeld: Module I18n/artwork.
Elke key verwijst naar een lijst waarden die geïndexeerd zijn op taalcode. De vertalingen dienen te worden verwerkt in de broncode van de module.
Lua tabel 2: Module:Wikidades/i18n op de Catalaanse Wikipedia
De Catalaanse Wikipedia heeft lokale modules voor het tonen van infoboxen met de rijke gestructureerde data van Wikidata. Deze zijn lokaal maar zodanig gemaakt dat het exporteren naar andere talen eenvoudig is. Veel van de vertaalberichten zijn eigenlijk Q-itemlabels die in Wikidata zijn vertaald, maar degene die daar niet kunnen worden vertaald worden als Lua-tabellen vertaald. Elke taal wordt in een gescheiden module opgeslagen, bijvoorbeeld:
- Engels: w:ca:Module:Wikidades/i18n/en
- Catalaans: w:ca:Module:Wikidades/i18n (geen taalcode)
- Galicisch: w:ca:Module:Wikidades/i18n/gl
De vertalingen moeten in de broncode van de module gewijzigd worden. Om het bruikbaar te maken moet de package van modules en sjablonen geëxporteerd worden naar de Wikipedia in de gewenste taal.
tab-bestanden op Commons
Deze is door vrijwilligers ontwikkeld als onderdeel van het project Multilingual Templates and Modules.
Berichten worden opgeslagen in tab-bestanden met gebruik van functies in Module:TNT (niet te verwarren met het sjabloon Template:TNT).
Een voordeel van tab-bestanden is dat die globaal op Commons worden opgeslagen. Zij kunnen op elke wiki gelezen worden met Lua code. Om op andere wiki's dan Commons bruikbaar te zijn, moet de code van de modules gekopieerd worden naar die wiki, handmatig of met de bot DiBabel.
Een lijst met alle tab-bestanden met vertaalberichten op Commons staat hier.
De vertalingen dienen te worden bewerkt in de ruwe tab-bestanden.
Module:ModuleMsg op Meta
De Module:ModuleMsg op Meta implementeert het laden van modules van de vertaalbare pagina's.
Vertaalberichten worden toegevoegd aan een vertaalbare pagina en geladen met de functie get_msgs, deze gebruikt identifiers van de translation unit markers (<!--T:*-->
) als message keys.
Voorbeeld: :meta:Module:Wikimedia Resource Center gebruikt berichten van :meta:Template:I18n/Wikimedia Resource Center.
Een voordeel van deze methode is dat de er op lijkende Translate interface al wordt gebruikt voor het voorbereiden van de pagina's en het vertalen.
Andere oplossingen?
Er kunnen andere oplossingen zijn voor het vertalen van modules die de oorspronkelijke schrijver van dit artikel niet heeft gevonden. Voeg ze dan a.u.b. toe!
Meer informatie
- Discussie over Translatable modules.
- Belanghebbenden in het project
- Principes bij ontwikkelen en ontwerp
- Voorgestelde oplossingen - het deel waar de meeste discussie over en beoordeling van nodig is
- Engineering overwegingen
Andere voorbeelden
- Meta: m:Template:Translatable content template
- Commons: c:Help:Autotranslate - Dit sjabloon wordt als onderdeel van een mechanisme gebruikt voor het tonen van de inhoud van een sjabloon in de taal van de gebruiker.