Ticket #7199: more_inflector_inflections.diff
| File more_inflector_inflections.diff, 3.0 kB (added by jeremymcanally, 2 years ago) |
|---|
-
activesupport/lib/active_support/inflections.rb
old new 1 1 Inflector.inflections do |inflect| 2 2 inflect.plural(/$/, 's') 3 3 inflect.plural(/s$/i, 's') 4 inflect.plural(/( ax|test)is$/i, '\1es')5 inflect.plural(/( octop|vir)us$/i, '\1i')4 inflect.plural(/(emphas|ax|test|cri|diagnos|synops|thes)is$/i, '\1es') 5 inflect.plural(/(stimul|hippopotam|octop|vir|syllab|foc|alumn|fung|radi)us$/i, '\1i') 6 6 inflect.plural(/(alias|status)$/i, '\1es') 7 7 inflect.plural(/(bu)s$/i, '\1ses') 8 inflect.plural(/(buffal|tomat )o$/i, '\1oes')8 inflect.plural(/(buffal|tomat|torped)o$/i, '\1oes') 9 9 inflect.plural(/([ti])um$/i, '\1a') 10 10 inflect.plural(/sis$/i, 'ses') 11 11 inflect.plural(/(?:([^f])fe|([lr])f)$/i, '\1\2ves') 12 12 inflect.plural(/(hive)$/i, '\1s') 13 13 inflect.plural(/([^aeiouy]|qu)y$/i, '\1ies') 14 14 inflect.plural(/(x|ch|ss|sh)$/i, '\1es') 15 inflect.plural(/(matr| vert|ind)ix|ex$/i, '\1ices')15 inflect.plural(/(matr|append|vert|ind)ix|ex$/i, '\1ices') 16 16 inflect.plural(/([m|l])ouse$/i, '\1ice') 17 17 inflect.plural(/^(ox)$/i, '\1en') 18 18 inflect.plural(/(quiz)$/i, '\1zes') 19 inflect.plural(/(phenomen|criteri)on$/i, '\1a') 20 inflect.plural(/^(?!(.*hu|.*ger|.*sha))(.*)(wo)?man/, '\2men') 21 inflect.plural(/(addend|strat|dat|medi|memorand|curricul|bacteri)um/, '\1a ') 22 inflect.plural(/(nebul|formul|vit|vertebr|alg|alumn)a/, '\1ae') 19 23 20 24 inflect.singular(/s$/i, '') 21 25 inflect.singular(/(n)ews$/i, '\1ews') … … 34 38 inflect.singular(/(bus)es$/i, '\1') 35 39 inflect.singular(/(o)es$/i, '\1') 36 40 inflect.singular(/(shoe)s$/i, '\1') 37 inflect.singular(/( cris|ax|test)es$/i, '\1is')38 inflect.singular(/( octop|vir)i$/i, '\1us')41 inflect.singular(/(emphas|cris|ax|test|diagnos|synops|thes)es$/i, '\1is') 42 inflect.singular(/(stimul|hippopotam|octop|vir|syllab|foc|alumn|fung|radi)i$/i, '\1us') 39 43 inflect.singular(/(alias|status)es$/i, '\1') 40 44 inflect.singular(/^(ox)en/i, '\1') 41 45 inflect.singular(/(vert|ind)ices$/i, '\1ex') 42 inflect.singular(/(matr )ices$/i, '\1ix')46 inflect.singular(/(matr|append|ind|vert)ices$/i, '\1ix') 43 47 inflect.singular(/(quiz)zes$/i, '\1') 48 inflect.singular(/(phenomen|criteri)a$/i, '\1on') 49 inflect.singular(/(.*)(wo)?men/, '\1\2man') 50 inflect.singular(/(addend|strat|dat|medi|memorand|curricul|bacteri)a/, '\1um') 51 inflect.singular(/(nebula|formula|vita|vertebra|alga|alumna)e/, '\1') 44 52 45 53 inflect.irregular('person', 'people') 46 inflect.irregular('man', 'men')47 54 inflect.irregular('child', 'children') 48 55 inflect.irregular('sex', 'sexes') 49 56 inflect.irregular('move', 'moves') 57 inflect.irregular('tooth', 'teeth') 58 inflect.irregular('die', 'dice') 59 inflect.irregular('talisman', 'talismans') 50 60 51 inflect.uncountable(%w(equipment information rice money species series fish sheep ))61 inflect.uncountable(%w(equipment information rice money species series fish sheep deer media offspring)) 52 62 end