This module allows you to setup language hierarchies where translations of a site's content, settings and interface can fall back to parent language translations, without ever falling back to English or other irrelevant languages.
It implements hook_language_fallback_candidates_alter()
, without which translations from any available language are used as fallbacks, which is usually unexpected.
For Drupal 8, interface translations, content entities (nodes, terms, etc), configuration and URL aliases (via a core patch) are covered.
For Drupal 7, the modules covers the node & entity translation systems, interface & any i18n string translations (e.g. views, fields, field groups, taxonomies, panels, etc), system settings (variables/configuration), aliases, menus, XML sitemaps, and more.