Add Indian locale

This commit is contained in:
Pratik Vyas
2015-01-21 16:33:58 +05:30
parent a1802b59bc
commit 904c3c7e1b
3 changed files with 45 additions and 0 deletions

View File

@@ -44,6 +44,7 @@ Besides the numerical argument, there's two optional arguments.
* ``lt`` (Lithuanian) * ``lt`` (Lithuanian)
* ``lv`` (Latvian) * ``lv`` (Latvian)
* ``en_GB`` (British English) * ``en_GB`` (British English)
* ``en_IN`` (Indian English)
You can supply values like ``fr_FR``, the code will be You can supply values like ``fr_FR``, the code will be
correctly interpreted. If you supply an unsupported language, ``NotImplementedError`` is raised. correctly interpreted. If you supply an unsupported language, ``NotImplementedError`` is raised.

View File

@@ -18,6 +18,7 @@ from __future__ import unicode_literals
from . import lang_EN from . import lang_EN
from . import lang_EN_GB from . import lang_EN_GB
from . import lang_EN_IN
from . import lang_FR from . import lang_FR
from . import lang_DE from . import lang_DE
from . import lang_ES from . import lang_ES
@@ -27,6 +28,7 @@ from . import lang_LV
CONVERTER_CLASSES = { CONVERTER_CLASSES = {
'en': lang_EN.Num2Word_EN(), 'en': lang_EN.Num2Word_EN(),
'en_GB': lang_EN_GB.Num2Word_EN_GB(), 'en_GB': lang_EN_GB.Num2Word_EN_GB(),
'en_IN': lang_EN_IN.Num2Word_EN_IN(),
'fr': lang_FR.Num2Word_FR(), 'fr': lang_FR.Num2Word_FR(),
'de': lang_DE.Num2Word_DE(), 'de': lang_DE.Num2Word_DE(),
'es': lang_ES.Num2Word_ES(), 'es': lang_ES.Num2Word_ES(),

42
num2words/lang_EN_IN.py Normal file
View File

@@ -0,0 +1,42 @@
# Copyright (c) 2003, Taro Ogawa. All Rights Reserved.
# Copyright (c) 2013, Savoir-faire Linux inc. All Rights Reserved.
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301 USA
from __future__ import unicode_literals
from .lang_EN import Num2Word_EN
class Num2Word_EN_IN(Num2Word_EN):
def set_high_numwords(self, high):
self.cards[10**7] = "crore"
self.cards[10**5] = "lakh"
n2w = Num2Word_EN_IN()
to_card = n2w.to_cardinal
to_ord = n2w.to_ordinal
to_ordnum = n2w.to_ordinal_num
def main():
for val in (15000,
15*10**5,
15*10**6,
15*10**7,
15*10**8,
15*10**9,
15*10**10):
n2w.test(val)
if __name__ == "__main__":
main()