# add some more units if defined? RubyUnits RubyUnits::Unit.redefine!('liter') do |unit| unit.aliases += %w[ltr] end RubyUnits::Unit.redefine!('kilogram') do |unit| unit.aliases += %w[KG] end RubyUnits::Unit.redefine!('gram') do |unit| unit.aliases += %w[gr] end RubyUnits::Unit.define('piece') do |unit| unit.definition = RubyUnits::Unit.new('1 each') unit.aliases = %w[pc pcs piece pieces] # locale: en unit.aliases += %w[st stuk stuks] # locale: nl unit.kind = :counting end RubyUnits::Unit.define('bag') do |unit| unit.definition = RubyUnits::Unit.new('1 each') unit.aliases = %w[bag bags blt sachet sachets] # locale: en unit.aliases += %w[zak zakken zakje zakjes] # locale: nl unit.kind = :counting end # we use pc for piece, not parsec RubyUnits::Unit.redefine!('parsec') do |unit| unit.aliases = unit.aliases.reject { |u| u == 'pc' } unit.display_name = 'parsec' end # workaround for ruby-units' require mathn warning: "zero and implicit precision is deprecated." # default precision of 8 which same as all database definitions in db/migrate/20131213002332_*.rb class Rational alias orig_to_d to_d def to_d(precision = 8) orig_to_d(precision) end end end