translation 1.19 → 1.20

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ff2388659bd454e1ff1cbcad7133161a66902007d08e4735b80c628289665c15
4
- data.tar.gz: d9a4222b6014f21dc2b29cc9de1afb60d725301d6d93a9cd7f0ba5b0cbc8d2e8
3
+ metadata.gz: 39f833e4f98c4424feca4172a7f70c3b9639f24df3aaaa8e873632a54a5bb290
4
+ data.tar.gz: c76f080ced71805a079f47f6475412f1a1f4b24574e6470e77aa0d924ffd4211
5
5
  SHA512:
6
- metadata.gz: 917f60afd4befcabb144943a3b9ebd26d2d4cd372ef286432d0bc0c03aafc9aff6bae7e4b956abcc11506f35be33e752cd011ff10f1b8a7b77e84038a0bf783f
7
- data.tar.gz: 8a9b12a2c66a7f060f2861150ad171ab4ebeb94b87fb18bc4763c2529871f8b58963c221cd9844844a3ef56dd9e4e32c262cf85b5df751a650f19e97e0de2a7e
6
+ metadata.gz: 40fb09a74db12309e1dc787cc9ced44874cbc96250d6eb62cafe6b8f63962557756560f70c64f33e0e520a12a87bff14809b04b8a86c593fe4c1f48363977272
7
+ data.tar.gz: 834e92a56f1d11c178905db2326e346f9108f3237bf83645a59605680344878f15a9c79d5d22295fa05804fc3374942b7999852848affb82dfa55c1f5057b5dc
data/README.md CHANGED
@@ -204,20 +204,23 @@ Since you created a new project, the translation history and tags will unfortuna
204
204
 
205
205
  ### Custom Languages
206
206
 
207
- You may want to add a custom language that is derived from an existing language.
208
- It's useful if you want to change some translations for another instance of the
209
- application or for a specific customer.
207
+ A custom language is always derived from an existing language. It's useful if you want
208
+ to adapt some translations to another instance of your application, or to a specific
209
+ customer.
210
210
 
211
- The structure of a custom language is : existing language code + "-" + custom text.
211
+ The structure of a custom language is: `existing language code` + `-` + `custom text`, where
212
+ `custom text` can only contain alphanumeric characters and `-`.
212
213
 
213
214
  Examples: `en-microsoft` or `fr-BE-custom`.
214
215
 
215
- Custom languages can be added like any other language and fallbacks work as expected.
216
- It means that if the `en-microsoft.some_key` is missing, then it will fallback to
217
- `en.some_key`. So you only need to translate keys that should be customized.
216
+ Custom languages can be added and used like any other language.
218
217
 
219
- Note that fallback are chained, so `fr-be-custom` will fallback to `fr-be` that will
220
- itself fallback to `fr`.
218
+ Fallbacks work as expected. It means that if the `en-microsoft.some_key` is missing,
219
+ then it will fallback to `en.some_key`. So you only need to translate keys that
220
+ should be customized.
221
+
222
+ Note that fallback are chained, so `fr-BE-custom` will fallback to `fr-BE` that will
223
+ fallback to `fr`.
221
224
 
222
225
  Using GetText syntax, it will only fallback to the source language. So either you
223
226
  create a fallback mechanism by yourself or you avoid fallbacking
@@ -237,9 +240,12 @@ class ApplicationController < ActionController::Base
237
240
  end
238
241
  ```
239
242
 
240
- It will automatically set the locale extracted from the user's browser `HTTP_ACCEPT_LANGUAGE` value, and keep it in the session between requests.
243
+ First time the user will connect, it will automatically set the locale extracted
244
+ from the user's browser `HTTP_ACCEPT_LANGUAGE` value, and keep it in the session between
245
+ requests.
241
246
 
242
- Update the current locale by redirecting the user to https://yourdomain.com?locale=fr or even https://yourdomain.com/fr if you scoped your routes like this:
247
+ Update the current locale by redirecting the user to https://yourdomain.com?locale=fr
248
+ or even https://yourdomain.com/fr if you scoped your routes like this:
243
249
 
244
250
  ```ruby
245
251
  scope "/:locale", :constraints => { locale: /[a-z]{2}/ } do
@@ -247,7 +253,8 @@ scope "/:locale", :constraints => { locale: /[a-z]{2}/ } do
247
253
  end
248
254
  ```
249
255
 
250
- The `set_locale` code is [here](https://github.com/translation/rails/blob/master/lib/translation_io/controller.rb#L3), feel free to override it with your own locale management.
256
+ The `set_locale` code is [here](https://github.com/translation/rails/blob/master/lib/translation_io/controller.rb#L3),
257
+ feel free to override it with your own locale management.
251
258
 
252
259
  Don't forget to define your available locales with [I18n.available_locales](http://guides.rubyonrails.org/i18n.html#setup-the-rails-application-for-internationalization).
253
260
 
@@ -31,7 +31,7 @@ module TranslationIO
31
31
  end
32
32
 
33
33
  def ignored?(key)
34
- key.present? && ignored_key_prefixes.any? { |p| key_without_locale(key).match(/^#{p}\b/) != nil }
34
+ key.present? && ignored_key_prefixes.any? { |prefix| key_without_locale(key).match(/^#{Regexp.escape(prefix)}\b/) != nil }
35
35
  end
36
36
 
37
37
  def localization?(key, value)
@@ -40,7 +40,7 @@ module TranslationIO
40
40
 
41
41
  def localization_prefix?(key)
42
42
  localization_key_prefixes.any? do |prefix|
43
- key_without_locale(key).match(/^#{prefix}\b/) != nil
43
+ key_without_locale(key).match(/^#{Regexp.escape(prefix)}\b/) != nil
44
44
  end
45
45
  end
46
46
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: translation
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.19'
4
+ version: '1.20'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Hoste
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-09-13 00:00:00.000000000 Z
12
+ date: 2019-10-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: gettext