Numbertext.org

Home of Soros Programming Language

Learn More Spell Out Numbers

1, 2, 3 → One, Two, Three


New chapter numberings in LibreOffice 6.1 (see also NatNum12 modifier and NUMBERTEXT() spreadsheet extension).

Write Out Numbers Using Words

We provide easy to configure, lightweight open source C++, Java, JavaScript, Python libraries and a LibreOffice Spreadsheet extension for writing out numbers (including cardinal and ordinal numbers, ordinal indicators and money amounts with currencies) in words in more than 50 languages and numeral systems.

Join the Numbertext/LibreOffice development: check the Soros language tutorial in the integrated language module development environment, fix bugs or missing parts of the language modules, or create new modules based on the existing ones.

Background

Origin of the “spell out” component of LibreOffice 6.1, NUMBERTEXT/MONEYTEXT functions and Soros programming language was developed in 2009 for generalization of BAHTTEXT spreadsheet function, a function of Microsoft Excel to write out numbers and Thai money amounts using Thai words, standardized by ECMA–376 and ISO/IEC 29 500:2008 Office Open XML format.

Soros programming language is based on regular expressions, just like its small interpreters (in Python: less, than 120 lines). Despite its simplicity, it can handle language variants, complex spelling functions and rules in a concise manner.

Download


LibreOffice

Extension with NUMBERTEXT and MONEYTEXT spreadsheet functions: numbertext-1.0.11.oxt (description)

C++

Source distribution (1.0.11): libnumbertext-1.0.11.tar.xz (installation)

Java

JAR package: numbertext.jar (1.0.11). Usage: java -jar numbertext.jar

Python & JavaScript

Interpreters: Soros.py and Soros.js. For usage, see source distribution (zip or tar.gz).

Sources

Repository on GitHub: Numbertext/libnumbertext

Add a new language

module or fix an old one in the integrated development environment.

Soros language

Specification and Tutorial.

Feedback

Please, use GitHub Issues to report problems in code and language data.

Developer

LÁSZLÓ NÉMETH

Language module developers

MIHAIL BALABANOV (Bulgarian) • ALEX BODNARU (Hebrew) • ASTERISKS (Latvian) • ADRIÁN CHAVES (Galician) • DARIO GALLUCCI (Italian) • FILIP HANES (Slovak) • ANKUR HERAMB JOSHI (Marathi) • MIKE KAGANSKI (Russian) • ALVAR LAIGNA (Estonian) • AMIR HOSSEIN MAHER (Persian (Farsi)) • EDUARDO MORENO (Portuguese) • OLEXANDR NESTERENKO • EKO PRASETIYO (Indonesian) • PHILLIP SAMUEL (Luganda) • GORAN RAKIĆ (Serbian) • RANDEM (Turkish) • OLIVIER RONEZ (Belgian and Swiss French) • MIHOVIL STANIĆ (Croatian) • SUOKUNLONG (Simplified Chinese) • DAEHYUN SUNG (Korean) • MICHEL WEIMERSKIRCH (Luxembourgish)

Contributors

4560041 • LIUDAS ALIŠAUSKAS • ANDRITIS • ARENA94 • ARMIK71 • MUSHTAQUE ASGHAR • ATTILAFDD • RUUD BAARS • ADOLFO JAYME BARRIENTOS • STEPHAN BERGMANN • ANTONIO BUENO • TOMÁŠ CHVÁTAL • CLAUDIO COLOMBO • ZDENĚK CRHONEK • DÁNIEL DARABOS • SUSANA SOTELO DOCÍO • RENE ENGELHARD • SPIROS EVANGELATOS • AURIMAS FIŠERAS • GABRYHA • SOPHIE GAUTIER • GEORGEPYH • LUCIAN ADRIAN GRIJINCU • TUOMAS HIETALA • STANISLAV HORÁČEK • HSONESSON1 • LI-WEN HSU • ILYA IDAMKIN • BEE ING • ALEXANDER IVANOV • JMZAMBON • JUANMA SANCHEZ • KENT KARLSSON • VLADISLAV KIPER • VIKTOR KOVÁCS • MANTAS KRIAUČIŪNAS • KTY0MKA • RIMAS KUDELIS • C-KUEHL • EVGENIY KUKHTINOV • MIKE8P • VOLODYMYR LISIVKA • MARCIN MIŁKOWSKI • MING-HUA • PETR MLADEK • JOAN MONTANÉ • JULIEN2412 • BERNARD MARCELLY • CAOLÁN MCNAMARA • JERZY MORUŚ • MRW • BALÁZS MESKÓ • VALTER MURA • JULIEN NABET • STEPHAN NILSSON • SHANTANU OAK • ZOLTÁN ÓVÁRI • NICOLAS PAGNI • PINTERT3 • GWENAËL QUENETTE • EIKE RATHKE • MODESTAS RIMKUS • ROGERCLC • JOHANNA SØRENSEN • MARTIN SREBOTNJAK • MARCIN STĘPNIAK • SUPAPONG • SYLVATICUS • KÁLMÁN SZALAI • TENGWAR • ANDRÁS TÍMÁR - official reviewer, as activist of FSF.hu Foundation, Hungary • TANTAI THANAKANOK • RENS TOONEN • TYINDEEPIT • XHYDROGENE • MIKLÓS VAJNA • LAIMONAS VĖBRA • WASOW • FRIEDEL WOLFF

Donors

FSF.hu Foundation, Hungary • NLNet Foundation, Netherlands

Spell out number     as