Configuration language and translation

This is one of the three pillars of the Drupal 8 Multilingual Initiative (D8MI) and deals with configuration language assignment and translation. For the definition of this pillar, we use "configuration" for anything that does not use entities and is not part of the built-in user interface (which is generated with t(), format_plural and friends).

There are plans in the Drupal 8 Configuration Management Initiative (CMI) to introduce an XML based configuration format that would be stored in the file system for easier deployment and versioning and in an active storage (such as database) for quick access. Drupal core historically does a poor job supporting language and translation for configuration, especially that configuration is usually stored in all kinds of ways and formats. However, with Drupal 8, if we can succeed with the introduction of one common configuration storage / retrieval format, we can tap into that to add language/translation support.

Our current hope is that Drupal 8 will use the CMI format for all of its configuration needs, so we can implement a common language support / translation system there. Drupal 7 and before supported so called textgroups in the locale module to provide a string translation storage mechanism, however, that proved to be both fragile, bad for developer experience and not very good for usability either. Therefore we are removing textgroups altogether. (A migration path for the Drupal 8 structures is planned to be provided in contributed modules such as Internationalization module).

The aim of this pillar of the initiative is to work with the Configuration Management Initiative to come up with solutions to mark configuration pieces with languages as well as add translation support to them.

More information on the Configuration Management Initiative:

  1. CMI home: http://groups.drupal.org/build-systems-change-management/cmi
  2. Architecture document: http://groups.drupal.org/node/191283
  3. Internationalization discussion: http://groups.drupal.org/node/185609
Legend:
Critical issue
Major issue
Current top priority

Currently in the works for Drupal 8

See all these issues also at http://drupal.org/project/issues/search/drupal?issue_tags=language-config%2C+D8MI&issue_tags_op=and. This view of issues is automatically cached and might be out of date up to two hours at times.

To doTo reviewTo be committed
#1498880: Introduce a form language switcher
tasknormalactivelanguage-content
Legend:
Critical issue
Major issue
Current top priority

Other related issues

See all these issues also at http://drupal.org/project/issues/search/drupal?issue_tags=language-config%2C+D8MI&issue_tags_op=and. This view of issues is automatically cached and might be out of date up to two hours at times.

BackportPostponedClosed
#1431292: Migrate date format configuration to CMI
tasknormalpostponedConfiguration system
#1188430: Rip out textgroup support from locale module
taskmajorclosed (fixed)Issue summary initiativelanguage-ui
#1270608: File-based configuration API
feature requestmajorclosed (fixed)Configuration system
#135464: Add language options to block visibility
tasknormalclosed (fixed)
Assigned to Artusamak
#1223502: Update for ripping out textgroup support in Drupal locale module
tasknormalclosed (duplicate)D8 upgrade pathlanguage-ui
#1301148: Stop pretending we have configuration translation for languages
tasknormalclosed (fixed)API clean-uplanguage-baseUsability