unpack brazilian-rails
This commit is contained in:
6
vendor/gems/brazilian-rails/lib/brazilian-rails.rb
vendored
Normal file
6
vendor/gems/brazilian-rails/lib/brazilian-rails.rb
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
PROJECTS = %w(brdinheiro brcep brdata brhelper brnumeros brstring brcpfcnpj)
|
||||
|
||||
PROJECTS.each do |project|
|
||||
require project
|
||||
end
|
||||
|
||||
61
vendor/gems/brazilian-rails/lib/inflector_portuguese.rb
vendored
Normal file
61
vendor/gems/brazilian-rails/lib/inflector_portuguese.rb
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
# Infelizmente não é possível colocar todas as regras...
|
||||
#
|
||||
# http://pt.wikipedia.org/wiki/Plural e
|
||||
# http://pt.wikipedia.org/wiki/Singular
|
||||
module Inflector
|
||||
ActiveSupport::Inflector.inflections do |inflect|
|
||||
inflect.clear
|
||||
|
||||
inflect.plural(/$/, 's')
|
||||
inflect.plural(/(s)$/i, '\1')
|
||||
inflect.plural(/^(paí)s$/i, '\1ses')
|
||||
inflect.plural(/(z|r)$/i, '\1es')
|
||||
inflect.plural(/al$/i, 'ais')
|
||||
inflect.plural(/el$/i, 'eis')
|
||||
inflect.plural(/ol$/i, 'ois')
|
||||
inflect.plural(/ul$/i, 'uis')
|
||||
inflect.plural(/([^aeou])il$/i, '\1is')
|
||||
inflect.plural(/m$/i, 'ns')
|
||||
inflect.plural(/^(japon|escoc|ingl|dinamarqu|fregu|portugu)ês$/i, '\1eses')
|
||||
inflect.plural(/^(|g)ás$/i, '\1ases')
|
||||
inflect.plural(/ão$/i, 'ões')
|
||||
inflect.plural(/^(irm|m)ão$/i, '\1ãos')
|
||||
inflect.plural(/^(alem|c|p)ão$/i, '\1ães')
|
||||
|
||||
# Sem acentos...
|
||||
inflect.plural(/ao$/i, 'oes')
|
||||
inflect.plural(/^(irm|m)ao$/i, '\1aos')
|
||||
inflect.plural(/^(alem|c|p)ao$/i, '\1aes')
|
||||
|
||||
inflect.singular(/([^ê])s$/i, '\1')
|
||||
inflect.singular(/^(á|gá|paí)s$/i, '\1s')
|
||||
inflect.singular(/(r|z)es$/i, '\1')
|
||||
inflect.singular(/([^p])ais$/i, '\1al')
|
||||
inflect.singular(/eis$/i, 'el')
|
||||
inflect.singular(/ois$/i, 'ol')
|
||||
inflect.singular(/uis$/i, 'ul')
|
||||
inflect.singular(/(r|t|f|v)is$/i, '\1il')
|
||||
inflect.singular(/ns$/i, 'm')
|
||||
inflect.singular(/sses$/i, 'sse')
|
||||
inflect.singular(/^(.*[^s]s)es$/i, '\1')
|
||||
inflect.singular(/ães$/i, 'ão')
|
||||
inflect.singular(/aes$/i, 'ao')
|
||||
inflect.singular(/ãos$/i, 'ão')
|
||||
inflect.singular(/aos$/i, 'ao')
|
||||
inflect.singular(/ões$/i, 'ão')
|
||||
inflect.singular(/oes$/i, 'ao')
|
||||
inflect.singular(/(japon|escoc|ingl|dinamarqu|fregu|portugu)eses$/i, '\1ês')
|
||||
inflect.singular(/^(g|)ases$/i, '\1ás')
|
||||
|
||||
# #irregulares
|
||||
# irregulares = {'país' => 'paises'}
|
||||
#
|
||||
#
|
||||
# irregulares.each do |key, value|
|
||||
# inflect.plural(/^#{key.to_s}$/, value)
|
||||
# inflect.singular(/^#{value}$/, key.to_s)
|
||||
# end
|
||||
|
||||
inflect.uncountable %w( tórax tênis ônibus lápis fênix )
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user