ICU-meervoudgenerator voor Flutter ARB-bestanden

Kies je talen: de tool toont de meervoudscategorieën die elke taal vereist, met voorbeeldgetallen, en maakt het ICU-bericht klaar om in je ARB-bestanden te plakken. Gratis, zonder account, en alles blijft in je browser.

Maak een meervoudsbericht

Talen

Controleer daarna of elke vertaling haar placeholder behoudt

LocalePilot is een desktopapp die al je ARB-bestanden opent, de ICU-placeholders van elke vertaling met de bron vergelijkt, ontbrekende sleutels meldt en exporteert met een back-up. De app wordt afgerond voor macOS: laat je e-mailadres achter om te horen wanneer hij uitkomt.

Waarom een meervoud per taal verschilt

De categorieën zero, one, two, few, many en other volgen de CLDR-regels van elke taal. In het Engels en het Nederlands betekent one alleen 1; in het Frans dekt het 0 en 1; Russisch en Pools voegen few en many toe; Arabisch gebruikt ze alle zes; Japans heeft er maar één, other. Een bericht met twee takken dat voor het Engels is geschreven, is dus onvolledig zodra je het vertaalt.

De tool leest deze regels in je browser (Intl.PluralRules): de getoonde categorieën en voorbeeldgetallen zijn die van de taal zelf, dus je hoeft geen tabel bij te houden.

De valkuil =1 met gen-l10n

Een tak =1 wordt de categorie one in de code die flutter gen-l10n genereert. In het Frans geldt die categorie ook voor nul: met count = 0 zou "1 article restant" verschijnen. Gebruik liever de categorie one met het getal in de tekst, of voeg een tak =0 toe: de tool biedt die aan als selectievakje. Details staan in de handleiding over ICU-meervoud en placeholders.

Het resultaat gebruiken

  1. Kopieer de regel "key": "{count, plural, …}" van elke taal naar het bijbehorende bestand app_xx.arb.
  2. Voeg de @key-metadata één keer toe, in het templatebestand.
  3. Voer flutter gen-l10n uit: een ontbrekende tak other of een niet-gesloten accolade stopt de generatie, met de bestandsnaam.

Met de checker voor ontbrekende ARB-sleutels controleer je daarna of geen vertaling haar placeholder heeft laten vallen of hernoemd.

Beperkingen van de tool

De tool maakt de structuur, niet de vertaling: de tekst van elke vorm schrijf je zelf. Hij ondersteunt geen select-berichten of geneste meervoudsvormen, en verdubbelt geen apostroffen als je use-escaping in l10n.yaml hebt aangezet.

Veelgestelde vragen

Welke meervoudscategorieën heb ik nodig voor het Nederlands?

One (alleen 1) en other. Voor het Frans is het anders: one dekt daar 0 en 1, en de categorie many, die alleen miljoenen betreft, markeert de tool als optioneel.

Waarom is de tak other verplicht?

flutter gen-l10n weigert een plural zonder tak other en stopt de generatie, met vermelding van het bestand. De tool voegt hem altijd toe.

Wat is het verschil tussen =1 en one?

In de gegenereerde code wordt =1 de categorie one, die in het Frans ook 0 dekt. Zet het getal in de tak one of voeg =0 toe.

Wordt mijn tekst naar een server gestuurd?

Nee. De berichten worden in de pagina samengesteld op basis van de meervoudsregels van je browser; er wordt niets verstuurd.

Werkt het voor een taal die niet in de lijst staat?

Ja: typ de code (bijvoorbeeld cs of sv) in het vrije veld. De tool accepteert elke code die je browser kent.

Wat is het verschil met LocalePilot?

Deze tool schrijft één meervoudsbericht. LocalePilot is een desktopapp (wordt afgerond voor macOS) die al je ARB-bestanden opent en vóór de export de ICU-placeholders van elke vertaling controleert.

Ontvang een bericht bij de lancering

LocalePilot wordt afgerond. Laat je e-mailadres achter om te horen wanneer het uitkomt.

  • macOS 12 of nieuwer · Ollama of LM Studio optioneel
  • App-interface in het Engels, Frans, Spaans, Italiaans en Portugees.