diff options
Diffstat (limited to 'payyans')
-rwxr-xr-x | payyans/payyans/payyan.py | 22 | ||||
-rwxr-xr-x | payyans/payyans/payyans | 1 | ||||
-rw-r--r-- | payyans/tests/test.py | 11 |
3 files changed, 26 insertions, 8 deletions
diff --git a/payyans/payyans/payyan.py b/payyans/payyans/payyan.py index a0459e2..9214165 100755 --- a/payyans/payyans/payyan.py +++ b/payyans/payyans/payyan.py @@ -42,12 +42,16 @@ class Payyan: self.input_filename ="" self.output_filename="" self.mapping_filename="" + self.rulesDict=None self.pdf=0 def word2ASCII(self, unicode_text): index = 0 prebase_letter = "" ascii_text="" + self.direction = "u2a" + if self.rulesDict == None: + self.rulesDict = self.LoadRules() while index < len(unicode_text): '''കൂട്ടക്ഷരങ്ങള്ക്കൊരു കുറുക്കുവഴി''' for charNo in [3,2,1]: @@ -67,15 +71,18 @@ class Payyan: index = index+charNo break else: + if(charNo==1): + index=index+1 + ascii_text = ascii_text + letter + break; '''നോക്കിയിട്ടു കിട്ടുന്നില്ല ബായി''' ascii_letter = letter - ascii_text = ascii_text + ascii_letter - index = index + 1 + #ascii_text = ascii_text + ascii_letter + #index = index+1 + return ascii_text def Uni2Ascii(self): - self.direction="u2a" - self.rulesDict = self.LoadRules() '''പണിതുടങ്ങട്ടെ''' if self.input_filename : uni_file = codecs.open(self.input_filename, encoding = 'utf-8', errors = 'ignore') @@ -90,7 +97,7 @@ class Payyan: break ascii_text = "" # ഹീന ജാതിയിലേയ്ക്ക് തരം താഴ്ത്ത്വാ ! - self.word2ASCII(text) + ascii_text = self.word2ASCII(text) if self.output_filename : output_file.write(ascii_text) @@ -103,6 +110,9 @@ class Payyan: index = 0 prebase_letter = "" unicode_text = "" + self.direction="a2u" + if self.rulesDict == None: + self.rulesDict = self.LoadRules() while index < len(ascii_text): letter = ascii_text[index] if letter in self.rulesDict: @@ -122,8 +132,6 @@ class Payyan: return unicode_text # മതം മാറ്റി തിരിച്ചു കൊടുക്ക്വാ ! def Ascii2Uni(self): - self.direction="a2u" - self.rulesDict = self.LoadRules() if self.pdf : command = "pdftotext '" + self.input_filename +"'" process = os.popen(command, 'r') diff --git a/payyans/payyans/payyans b/payyans/payyans/payyans index 5b7d00d..79c2854 100755 --- a/payyans/payyans/payyans +++ b/payyans/payyans/payyans @@ -62,7 +62,6 @@ class Payyan: print "\tInvalid direction" error_exit() p=Payyans(options.input_filename ,options.output_filename, options.mapping_filename) - p.ascii2unicode() if options.direction == 'a2u': p.ascii2unicode() else: diff --git a/payyans/tests/test.py b/payyans/tests/test.py new file mode 100644 index 0000000..3791df5 --- /dev/null +++ b/payyans/tests/test.py @@ -0,0 +1,11 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +from payyans import Payyan +p=Payyan() +p.mapping_filename="/usr/share/payyans/maps/karthika.map" +print p.word2Unicode(u"hmÀjnI").encode('utf-8') +print p.word2ASCII(u"വാര്ഷിക").encode('utf-8') +print p.word2ASCII(u"ആന വായിലമ്പാഴങ്ങ?").encode('utf-8') +print p.word2Unicode(u"B\ hmbne¼mg§?").encode('utf-8') +print p.word2ASCII(u"മോരു തരുമോ!").encode('utf-8') +print p.word2Unicode(u"tamcp Xcptam!").encode('utf-8') |