This repository has been archived by the owner on Mar 1, 2023. It is now read-only.
/
tamilphonetic.py
executable file
·70 lines (55 loc) · 1.75 KB
/
tamilphonetic.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!python
# -*- coding: utf-8 -*-
# (C) 2013 Muthiah Annamalai
import imp
import sys
try:
reload # Python 2.7
except NameError:
try:
from importlib import reload # Python 3.4+
except ImportError:
from imp import reload # Python 3.0 - 3.3
# imp.reload(sys)
# sys.setdefaultencoding('utf-8')
from sys import argv, exit, stdin
from cmd import Cmd
import codecs, sys
# sys.stdin = codecs.getreader('utf-8')(sys.stdin)
# sys.stdout = codecs.getwriter('utf-8')(sys.stdout)
from transliterate import *
def usage():
return "tamilphonetic.py [[-stdin] [<filename-1>] [<filename-2>] ...] "
class CmdTransliterate(Cmd):
def __init__(self):
Cmd.__init__(self)
self.prompt = "azhagi>> "
self.phonetic_table = azhagi.Transliteration.table
def do_EOF(self, line):
print("\n")
return True
def default(self, line):
if line == "exit":
exit(0)
print((iterative_transliterate(self.phonetic_table, line)))
return
if __name__ == "__main__":
if not argv[1:]:
CmdTransliterate().cmdloop()
for fname in argv[1:]:
try:
if fname == "-stdin":
CmdTransliterate().cmdloop()
exit(0)
with open(fname) as fileHandle:
phonetic_table = azhagi.Transliteration.table
output = iterative_transliterate(phonetic_table, fileHandle.read())
print(output)
except Exception as fileOrConvException:
print(
(
"tamilphonetic.py error - file %s could not be processed due to - %s"
% (fname, str(fileOrConvException))
)
)
raise fileOrConvException