Coder Social home page Coder Social logo

numbers_and_words's Introduction

numbers_and_words

<img src=“https://badge.fury.io/rb/numbers_and_words.svg?branch=master” alt=“Gem Version” /> <img src=“https://gemnasium.com/kslazarev/numbers_and_words.svg?branch=master” alt=“Dependency Status” /> <img src=“https://codeclimate.com/github/kslazarev/numbers_and_words.svg?branch=master” /> <img src=“https://secure.travis-ci.org/kslazarev/numbers_and_words.svg?branch=master” /> <img src=“https://coveralls.io/repos/kslazarev/numbers_and_words/badge.svg?branch=master” alt=“Coverage Status” />

Convert numbers to words using the I18n library.

Перевод чисел в слова при помощи библиотеки I18n.

Converti les nombres en lettres en utilisant la librairie I18n.

Számok betűvel írva az I18n könyvtár segítségével.

I18n kütüphanesi ile sayıları yazıya çevirir.

Supported Languages / Языки / Langues Supportées

  • English [en]

  • Spanish [es]

  • Русский [ru]

  • Français [fr]

  • Українська [ua]

  • Magyar [hu]

  • Lietuvių [lt]

  • Latviešu [lv]

  • Eesti [et]

  • ქართული (Georgian) [ka]

  • Türkçe [tr]

  • Deutsch** [de]

  • Italiano** [it]

  • Nederlands** [nl]

  • Swedish** [se]

  • English (British)** [en-GB]

** Experimental

  • {[en-AU], [en-CA], [en-IN], [en-US]}*** => [en]

  • {[es-419], [es-AR], [es-CL], [es-CO], [es-MX], [es-PE], [es-VE]}*** => [es]

  • {[fr-CA], [fr-CH]}*** => [fr]

  • {[de], [de-AT], [de-CH]}*** => [de]

  • {[it-CH]}*** => [it]

*** Aliases

Examples / Примеры / Exemples

I18n.with_locale(:en) { 42.to_words }
=> "forty-two"

I18n.with_locale(:es) { 42.to_words }
=> "cuarenta y dos"

I18n.with_locale(:ru) { 42.to_words }
=> "сорок два"

I18n.with_locale(:fr) { 42.to_words }
=> "quarante-deux"

I18n.with_locale(:hu) { 42.to_words }
=> "negyvenkettő"

I18n.with_locale(:lt) { 42.to_words }
=> "keturiasdešimt du"

I18n.with_locale(:lv) { 42.to_words }
=> "četrdesmit divi"

I18n.with_locale(:et) { 42.to_words }
=> "nelikümmend kaks"

I18n.with_locale(:ka) { 42.to_words }
=> "ორმოცდაორი"

21.to_words
=> "twenty-one"
=> "veintiuno"
=> "двадцать один"
=> "vingt et un"
=> "двадцять один"
=> "huszonegy"
=> "dvidešimt vienas"
=> "divdesmit viens"
=> "kakskümmend üks"
=> "yirmi bir"
=> "ოცდაერთი"
=> "einundzwanzig"
=> "ventiuno"
=> "éénentwintig"
=> "tjugo-en"

231.to_words
=> "two hundred thirty-one"
=> "doscientos treinta y uno"
=> "двести тридцать один"
=> "deux cent trente et un"
=> "двiстi тридцять один"
=> "kettőszázharmincegy"
=> "du šimtai trisdešimt vienas"
=> "divi simti trīsdesmit viens"
=> "kakssada kolmkümmend üks"
=> "ორას ოცდათერთმეტი"
=> "iki yüz otuz bir"
=> "zweihunderteinunddreißig"
=> "2 cento trentauno"
=> "tweehonderdéénendertig"
=> "två hundra trettio-en"

4030.to_words
=> "four thousand thirty"
=> "cuatro mil treinta"
=> "четыре тысячи тридцать"
=> "quatre mille trente"
=> "чотири тисячi тридцять"
=> "négyezer-harminc"
=> "keturi tūkstančiai trisdešimt"
=> "četri tūkstoši trīsdesmit"
=> "neli tuhat kolmkümmend"
=> "ოთხი ათას ოცდაათი"
=> "dört bin otuz"
=> "viertausenddreißig"
=> "quattro mille trenta"
=> "vierthousanddertig"
=> "fyra tusen trettio"

1000100.to_words
=> "one million one hundred"
=> "un millón cien"
=> "один миллион сто"
=> "un million cent"
=> "один мiльйон сто"
=> "egymillió-egyszáz"
=> "milijonas šimtas"
=> "viens miljons simts"
=> "üks miljon ükssada"
=> "ერთი მილიონ ასი"
=> "bir milyon yüz"
=> "eine Million einhundert"
=> "uno milione 1 cento"
=> "één miljoen honderd"
=> "en miljoner en hundra"

1000000000000000000000000000000000.to_words
=> "one decillion"
=> "mil quintillones"
=> "один дециллион"
=> "un quintilliard"
=> "один децильйон"
=> "egykvintilliárd"
=> "vienas decilijonas"
=> "viens deciljons"
=> "üks dekiljon"
=> "bir desilyon"
=> "eine Quintilliarde"
=> "uno decillion"
=> "één decillion"
=> "en decillion"

[1, 2, 3].to_words
=> ["one", "two", "three"]
=> ["uno", "dos", "tres"]
=> ["один", "два", "три"]
=> ["un", "deux", "trois"]
=> ["egy", "kettő", "három"]
=> ["vienas", "du", "trys"]
=> ["viens", "divi", "trīs"]
=> ["üks", "kaks", "kolm"]
=> ["ერთი", "ორი", "სამი"]

[11, 22, 133].to_words
=> ["eleven", "twenty-two", "one hundred thirty-three"]
=> ["once", "veintidós", "ciento treinta y tres"]
=> ["одиннадцать", "двадцать два", "сто тридцать три"]
=> ["onze", "vingt-deux", "cent trente-trois"]
=> ["одинадцять", "двадцять два", "сто тридцять три"]
=> ["tizenegy", "huszonkettő", "egyszázharminchárom"]
=> ["vienuolika", "dvidešimt du", "šimtas trisdešimt trys"]
=> ["vienpadsmit", "divdesmit divi", "simtu trīsdesmit trīs"]
=> ["üksteist", "kakskümmend kaks", "ükssada kolmkümmend kolm"]
=> ["თერთმეტი", "ოცდაორი", "ას ოცდაცამეტი"]
=> ["on bir", "yirmi iki", "yüz otuz üç"]
=> ["elf", "zweiundzwanzig", "einhundertdreiunddreißig"]
=> ["undici", "ventidue", "1 cento trentatre"]
=> ["elf", "tweeentwintig", "honderddrieendertig"]
=> ["elva", "tjugo-två", "en hundra trettio-tre"]

21.77.to_words
=> "twenty-one and seventy-seven hundredths"
=> "двадцать одна целая и семьдесят семь сотых"
=> "двадцять одна цiла i сiмдесят сiм сотих"
=> "huszonegy egész hetvenhét század"
=> "twenty-one point seven seven"

Language options / Языковые опции

  • English / British

    Ordinal form: (ordinal: [true || false])

    I18n.with_locale(:en) { 21.to_words ordinal: true }
    => "twenty-first"

    Remove hyphen between tens and ones: (remove_hyphen: [true || false])

    I18n.with_locale(:en) { 21.to_words remove_hyphen: true }
    => "twenty one"

    Add ‘and’ between hundreds and tens: (hundreds_with_union: [true || false])

    I18n.with_locale(:en) { 111.to_words hundreds_with_union: true }
    => "one hundred and eleven"

    Remove ‘zero’ from integral part of float: (remove_zero: [true || false])

    I18n.with_locale(:en) { 0.7.to_words remove_zero: true }
    => "seven tenths"
    
    I18n.with_locale(:en) { [0.1, 0.31, 0.12].to_words remove_zero: true }
    => ["one tenth", "thirty-one hundredths", "twelve hundredths"]
  • Russian

    Change gender form: (gender: [:female || :male || :neuter])

    I18n.with_locale(:ru) { 1001.to_words gender: :neuter }
    => "одна тысяча одно"
  • Ukranian

    Change gender form: (gender: [:female || :male || :neuter])

    I18n.with_locale(:ru) { 1001.to_words gender: :neuter }
    => "одна тисяча одне"
  • Hungarian

    Ordinal form: (ordinal: [true || false])

    I18n.with_locale(:hu) { 21.to_words ordinal: true }
    => "huszonegyedik"

Other options / Другие опции

  • precision

    You may pass argument :precision that added zeros to the end of float number:

    I18n.with_locale(:ru) { 0.1.to_words precision: 3 }
    => ноль целых и десять сотых

Requirements / Требования / Configuration Requise

  • 1.9.3 <= Ruby (compatible with/совместимость с/compatible avec Ruby 1.9, JRuby and/и/et Rubinius);

  • 1.8.7 <= Ruby <= 1.9.2 (-v 0.9.0)

  • 0.5.0 <= I18n (earlier versions not tested/ранние версии не тестировались/versions précédentes non testées);

Installation / Установка / Installation

gem install numbers_and_words

License / Лицензия / Licence

MIT License

Bugs and Language Support / Поправки и Новые Языки / Bugs et Support d’autres Langues

See CHANGELOG.md for last changes.

Fork the project. Make your feature addition or bug fix with tests.

Send a pull request. Bonus points for topic branches.

Contacts / Контакты / Contacts

numbers_and_words's People

Contributors

kslazarev avatar miks avatar dblock avatar jlduran avatar elod avatar highercomve avatar lpradovera avatar martinsspringis avatar sorich87 avatar jaambros avatar igosuki avatar alvesdan avatar neodelf avatar bklang avatar cbilgili avatar oleander avatar poilon avatar viliusluneckas avatar joseramonc avatar

Watchers

Robert avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.