You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Internally, (*) was used to replace %{locale}, which was then translated to re regex part (.*), matching any yml-filename when %{locale}.yml was being used in read-section. So when using multiple files in the read section, translations often became scattered across the configured files.
Solution
As the locales in a Rails app can be configured almost freely (as the programmer pleases), I did not want to make assumptions about the used characters to replace the .*-regex. Instead, I am now using locales or base_localefrom the configuration to match the locales, like this regex: (en|fr|de). It requires the user to set the available locales in the i18n-tasks.yml configuration file, at least for the isolating router.
It requires the user to set the available locales in the i18n-tasks.yml configuration file, at least for the isolating router.
That seems like a very significant requirement change. Can we avoid requiring that somehow?
In order to keep the locale regex as non-greedy as possible, we could either
specify the actual locales to match or
make assumptions about the characters used in the locales and compile those into a regex
Maybe for 1. we could take the locales from somewhere else automatically? I don't know the depths of i18n-tasks so any input/help/suggestion would be appreciated. :)
How about we simply fall back to the old behaviour if the locales aren't specified?
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes too broad
localeregexpProblem
Internally,
(*)was used to replace%{locale}, which was then translated to re regex part(.*), matching any yml-filename when%{locale}.ymlwas being used inread-section. So when using multiple files in thereadsection, translations often became scattered across the configured files.Solution
As the locales in a Rails app can be configured almost freely (as the programmer pleases), I did not want to make assumptions about the used characters to replace the
.*-regex. Instead, I am now usinglocalesorbase_localefrom the configuration to match the locales, like this regex:(en|fr|de). It requires the user to set the available locales in thei18n-tasks.ymlconfiguration file, at least for the isolating router.Fixes #607