Drupal Plural Forms Manager 3.1.0 Adds Checks for Translation Errors
New tools for detecting incorrect plural translations are available in Plural Forms Manager 3.1.0, a contributed Drupal module released on 21 October 2026. The update introduces language health checks, translation form validation and corrections to how plural rules are handled during imports and exports. Drupal contributor and module maintainer Gábor Hojtsy detailed the changes in a blog post published on 22 October.
Plural rules determine which translation appears for a number, including languages that require more than two forms. Drupal calculates these rules from imported translation files and stores the results in a lookup table, but core does not retain the original formula or provide an interface for correcting it. An incorrect rule can cause a site to select the wrong translation, while incomplete translation entries can produce missing or empty text.
Previously named Plural Formula Configurator, the module has expanded beyond manually configuring these rules. Version 3.1.0 automatically assigns known plural formulas to existing languages that lack them, using language information from Drupal's localisation service or the site's existing configuration. It also provides a searchable formula browser and suggestions for regional language variants, such as Austrian German, which can use the German plural formula. The module retains its existing machine name, l10n_pconfig.
The most significant addition for site administrators is a Plural status tab on Drupal's language administration page. It checks whether a language's configured formula matches Drupal's computed lookup table and whether its interface and configuration translations contain the required plural variants. The checks also identify empty variants and missing @count placeholders where the translated text needs to display a number. Individual language reports provide links to affected translations, while Drupal's status report indicates how many languages have detected plural problems.
Translation forms have also been changed to describe which numbers each variant covers. Instead of relying on labels such as "Singular form" and "2. plural form", the module supplies descriptions based on the language's actual rules. The changes apply to Interface Translation, Configuration Translation and plural formatting settings in Views numeric fields. Validation now prevents saving certain incomplete translations, including missing required variants or count placeholders, rather than allowing those errors to remain unnoticed.
Another set of fixes concerns Portable Object (.po) files, which Drupal uses to import and export translations. The module's release notes confirm corrections to exported plural formulas and the number of translation entries generated for each plural string. Without the contributed workaround, Drupal core can export the same default two-form formula regardless of the language. The underlying limitation is documented in Drupal core issue #2882617, which concerns the absence of a stored, reusable version of the original plural formula.
The update also addresses a separate import problem documented in core issue #3631998. Drupal's import process checks an obsolete state key, locale.translation.plurals, even though the computed formulas are stored under locale.translation.formulae. Because the expected value is absent, an imported file can replace a language's existing plural formula even when the options to overwrite translations are disabled. Plural Forms Manager protects the configured formula unless translation overwriting is enabled or the language does not yet have a formula.
The core issue includes a reproducible example involving Hungarian. A language configured with two plural forms is changed to three after importing a file containing a different formula, despite both translation overwrite options being switched off. The example demonstrates how an import can alter language behaviour without an administrator explicitly authorising that change. The contributed module's import protection is intended to prevent this particular failure.
Export improvements also extend to Drush 12, 13 and 14. According to Hojtsy, the module supplies language-specific plural formulas in exported file headers and generates the appropriate number of translation entries in source-only templates. The update includes a workaround for a separate Drush error affecting template exports. These changes address different parts of the translation workflow, from preserving language rules to producing files that can be reused without introducing incorrect formula information.
Not all plural translation problems have been resolved. A core issue involving empty translations in imported .po files describes how Drupal can store delimiter-only values as valid translations, preventing the original text from appearing. A related Configuration Translation issue documents similar behaviour when every plural variant is left empty. Plural Forms Manager adds diagnostics for existing empty variants and a workaround for the configuration translation form, but the underlying .po import issue still requires a core fix.
Hojtsy also identified a limitation that the module does not address. Core issue #3631950, opened on 20 October, documents cases where Drupal's PHP and JavaScript translation systems select different plural variants for the same number. The reported examples include Russian at 201 and Polish at 202, along with differences involving missing translations and non-integer values. A proposed core change seeks to make the two implementations consistent, but this remains separate from the contributed module's improvements.
Plural Forms Manager 3.1.0 supports Drupal 10, 11 and 12. Administrators with the "Administer languages" permission can review the new Plural status interface after enabling the module and examine detected errors before correcting affected translations. Checking exported file headers and testing translation imports in a non-production environment can provide additional assurance, particularly for sites using several languages or custom regional variants. Hojtsy has encouraged contributors to review the outstanding core issues so that the underlying improvements can eventually benefit Drupal installations without the additional module.
References
-
Plural Forms Manager 3.1.0 | Drupal.org (21 October 2026)


