[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

lujvo expander version 0.2



well, not that i'm really versioning it. it's extremely ugly now, 
but i fixed some things. it won't try to replace a lujvo in the 
middle of a word. and it displays the replaced word in the 
replacement phrase (useful for when it seems to recognize an english 
word). it worked very well for me in reading alice. if i make it 
more elegant i'll put it on the wiki. anybody want to do a perl 
version? i have a feeling it'd be easier in perl.

lujvo.bat:
python space.py < %1 > temp1.txt
vlatai -el < temp1.txt > temp2.txt
python sub.py < %1 > %2

space.py:
import re
while 1:
try:
s=raw_input()
a=re.split("[^a-zA-Z\',]+",s);
for x in a:
print x
except EOFError:
break


sub.py:
import re,string
qb=[]
qa=[]
f=open("temp2.txt")
s=f.readline()
while s!="":
if re.search(": lujvo :",s) is not None:
res=re.match("[a-z\',]+",s)
if qb.count(res.group(0)) == 0:
qb.append(res.group(0))
res=re.search("\[[a-z\',\+\?]+",s)
s2=res.group(0)
qa.append(string.replace(s2,"[",""))
s=f.readline()
s2="%"
while 1:
try:
s2+=raw_input()
s2+="\n"
except EOFError:
break
s2+="%"
for x in range(len(qa)):
while re.search("[^a-z\',]"+qb[x]+"[^a-z\',]",s2) is not None:
res=re.search("[^a-z\',]"+qb[x]+"[^a-z\',]",s2)
ts1=res.group(0)
s2=re.sub(ts1,ts1[0]+"_,"+qb[x]+",="+qa[x]+"_"+ts1[len(ts1)-1],s2,1)
print s2