aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib
diff options
context:
space:
mode:
authorEito Katagiri <eitoball@gmail.com>2013-10-12 20:47:57 +0900
committerEito Katagiri <eitoball@gmail.com>2015-07-02 09:53:34 +0900
commitc7fc843431ffd2b775cc798d4c2c844fee3c9958 (patch)
tree553ea6d398127b3afe2385bdd5f4211b4354e8d3 /activesupport/lib
parent776e5991a9abf11818cb803e80976cea8b454c17 (diff)
downloadrails-c7fc843431ffd2b775cc798d4c2c844fee3c9958.tar.gz
rails-c7fc843431ffd2b775cc798d4c2c844fee3c9958.tar.bz2
rails-c7fc843431ffd2b775cc798d4c2c844fee3c9958.zip
fix pluralize behavior for words that consist of non-ascii characters
The code below returns "猫" in 3.2, but "猫s" in 4.0. ```ruby ActiveSupport::Inflector.inflections do |inflect| inflect.uncountable "猫" end "猫".pluralize ```
Diffstat (limited to 'activesupport/lib')
-rw-r--r--activesupport/lib/active_support/inflector/methods.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/activesupport/lib/active_support/inflector/methods.rb b/activesupport/lib/active_support/inflector/methods.rb
index be369d21c6..cb36a16a51 100644
--- a/activesupport/lib/active_support/inflector/methods.rb
+++ b/activesupport/lib/active_support/inflector/methods.rb
@@ -372,7 +372,7 @@ module ActiveSupport
def apply_inflections(word, rules)
result = word.to_s.dup
- if word.empty? || inflections.uncountables.include?(result.downcase[/\b\w+\Z/])
+ if word.empty? || inflections.uncountables.include?(result.downcase[/\b\p{Word}+\Z/])
result
else
rules.each { |(rule, replacement)| break if result.sub!(rule, replacement) }