So this is either a feature request, bug, or design issue. The way that translations are installed when a language is added, even if local, are by intercepting the language add form submission.
As such, local translations will not get installed if:
- you are installing a language in an install profile either through config/install or via an install hook
- even if your install profile includes the correct 'interface translation' keys using a local path for the server pattern
Technically, this is an issue for remote translations as well, but local translations are a more annoying issue. This is also NOT documented well in locale.api.php either. The documentation makes it sound like all you have to do is to add the keys and the po files and everything will get installed.
This is probably also loosely related to issue #2631584: Provide a proper API for updating translations, where there is no proper API for updating the translation. However, there would still be an issue that the update is handled by intercepting the UI form submission and not through and entity add hook or similar intercept.
Comments
Comment #2
diamondsea