/webapp/static/favicon.ico |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/webapp/static/favicon.ico | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Property changes: | |||||||||||||||||||||||||||||||||||||||||
Deleted: svn:mime-type | |||||||||||||||||||||||||||||||||||||||||
## -1 +0,0 ## | |||||||||||||||||||||||||||||||||||||||||
-application/octet-stream | |||||||||||||||||||||||||||||||||||||||||
\ No newline at end of property | |||||||||||||||||||||||||||||||||||||||||
Index: webapp/templates/translate.html | |||||||||||||||||||||||||||||||||||||||||
=================================================================== | |||||||||||||||||||||||||||||||||||||||||
--- webapp/templates/translate.html (revision 153) | |||||||||||||||||||||||||||||||||||||||||
+++ webapp/templates/translate.html (nonexistent) | |||||||||||||||||||||||||||||||||||||||||
@@ -1,68 +0,0 @@ | |||||||||||||||||||||||||||||||||||||||||
-{% extends "base.html" %} | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% block title %}Translator{% end %} | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% block body %} | |||||||||||||||||||||||||||||||||||||||||
-Na'vi sentence: | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% if out %} | |||||||||||||||||||||||||||||||||||||||||
-
| |||||||||||||||||||||||||||||||||||||||||
-{% end %} | |||||||||||||||||||||||||||||||||||||||||
- This program uses Eana Eltu for the list of words and infix positions (but nothing else), created by Tuiq and Taronyu. Thanks also go to the rest of the Learn Na'vi community! | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-document.getElementById("word").focus(); | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% if lang != "eng" %} | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-if("{{ lang }}" == "hu"){ | |||||||||||||||||||||||||||||||||||||||||
- document.getElementById("lang").selectedIndex = 1 | |||||||||||||||||||||||||||||||||||||||||
-} | |||||||||||||||||||||||||||||||||||||||||
-if("{{ lang }}" == "de"){ | |||||||||||||||||||||||||||||||||||||||||
- document.getElementById("lang").selectedIndex = 2 | |||||||||||||||||||||||||||||||||||||||||
-} | |||||||||||||||||||||||||||||||||||||||||
-if("{{ lang }}" == "est"){ | |||||||||||||||||||||||||||||||||||||||||
- document.getElementById("lang").selectedIndex = 3 | |||||||||||||||||||||||||||||||||||||||||
-} | |||||||||||||||||||||||||||||||||||||||||
-if("{{ lang }}" == "ptbr"){ | |||||||||||||||||||||||||||||||||||||||||
- document.getElementById("lang").selectedIndex = 4 | |||||||||||||||||||||||||||||||||||||||||
-} | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% end %} | |||||||||||||||||||||||||||||||||||||||||
-{% end %} | |||||||||||||||||||||||||||||||||||||||||
\ No newline at end of file | |||||||||||||||||||||||||||||||||||||||||
Index: webapp/templates/index.html | |||||||||||||||||||||||||||||||||||||||||
=================================================================== | |||||||||||||||||||||||||||||||||||||||||
--- webapp/templates/index.html (revision 153) | |||||||||||||||||||||||||||||||||||||||||
+++ webapp/templates/index.html (nonexistent) | |||||||||||||||||||||||||||||||||||||||||
@@ -1,8 +0,0 @@ | |||||||||||||||||||||||||||||||||||||||||
-{% extends "base.html" %} | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% block title %}Home{% end %} | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% block body %} | |||||||||||||||||||||||||||||||||||||||||
-Number translator - this webapp allows you to translate written-out Na'vi numbers into decimal and octal. | |||||||||||||||||||||||||||||||||||||||||
-Parser - this webapp can parse Na'vi sentences into the base words, prefixes, infixes and suffixes. It does not currently translate the words, but that will come. | |||||||||||||||||||||||||||||||||||||||||
-{% end %} | |||||||||||||||||||||||||||||||||||||||||
Index: webapp/templates/parse.html | |||||||||||||||||||||||||||||||||||||||||
=================================================================== | |||||||||||||||||||||||||||||||||||||||||
--- webapp/templates/parse.html (revision 153) | |||||||||||||||||||||||||||||||||||||||||
+++ webapp/templates/parse.html (nonexistent) | |||||||||||||||||||||||||||||||||||||||||
@@ -1,43 +0,0 @@ | |||||||||||||||||||||||||||||||||||||||||
-{% extends "base.html" %} | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% block title %}Sentence parser{% end %} | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% block body %} | |||||||||||||||||||||||||||||||||||||||||
-Na'vi sentence: | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% if out %} | |||||||||||||||||||||||||||||||||||||||||
-
| |||||||||||||||||||||||||||||||||||||||||
-{% end %} | |||||||||||||||||||||||||||||||||||||||||
- This program uses Eana Eltu for the list of words and infix positions (but nothing else), created by Tuiq and Taronyu. Thanks also go to the rest of the Learn Na'vi community! | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-document.getElementById("word").focus(); | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-{% end %} | |||||||||||||||||||||||||||||||||||||||||
Index: webapp/templates/base.html | |||||||||||||||||||||||||||||||||||||||||
=================================================================== | |||||||||||||||||||||||||||||||||||||||||
--- webapp/templates/base.html (revision 153) | |||||||||||||||||||||||||||||||||||||||||
+++ webapp/templates/base.html (revision 5) | |||||||||||||||||||||||||||||||||||||||||
@@ -1,7 +1,6 @@ | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
body { | |||||||||||||||||||||||||||||||||||||||||
background: #145179; | |||||||||||||||||||||||||||||||||||||||||
Index: webapp/templates/number.html | |||||||||||||||||||||||||||||||||||||||||
=================================================================== | |||||||||||||||||||||||||||||||||||||||||
--- webapp/templates/number.html (revision 153) | |||||||||||||||||||||||||||||||||||||||||
+++ webapp/templates/number.html (revision 5) | |||||||||||||||||||||||||||||||||||||||||
@@ -17,4 +17,4 @@ | |||||||||||||||||||||||||||||||||||||||||
document.getElementById("num").focus(); | |||||||||||||||||||||||||||||||||||||||||
-{% end %} | |||||||||||||||||||||||||||||||||||||||||
\ No newline at end of file | |||||||||||||||||||||||||||||||||||||||||
+{% end %} | |||||||||||||||||||||||||||||||||||||||||
Index: webapp/main.py | |||||||||||||||||||||||||||||||||||||||||
=================================================================== | |||||||||||||||||||||||||||||||||||||||||
--- webapp/main.py (revision 153) | |||||||||||||||||||||||||||||||||||||||||
+++ webapp/main.py (revision 5) | |||||||||||||||||||||||||||||||||||||||||
@@ -5,18 +5,15 @@ | |||||||||||||||||||||||||||||||||||||||||
import tornado.ioloop | |||||||||||||||||||||||||||||||||||||||||
import tornado.web | |||||||||||||||||||||||||||||||||||||||||
import tornado.autoreload | |||||||||||||||||||||||||||||||||||||||||
+import tornado.database | |||||||||||||||||||||||||||||||||||||||||
import os | |||||||||||||||||||||||||||||||||||||||||
-import re | |||||||||||||||||||||||||||||||||||||||||
-from tsimapiak import parsenum | |||||||||||||||||||||||||||||||||||||||||
-from tsimapiak import dbconnector | |||||||||||||||||||||||||||||||||||||||||
-from tsimapiak import parse | |||||||||||||||||||||||||||||||||||||||||
-from tsimapiak import translate | |||||||||||||||||||||||||||||||||||||||||
+from tsimapiak.parsenum import parse | |||||||||||||||||||||||||||||||||||||||||
class Index(tornado.web.RequestHandler): | |||||||||||||||||||||||||||||||||||||||||
def get(self): | |||||||||||||||||||||||||||||||||||||||||
- self.render("templates/index.html") | |||||||||||||||||||||||||||||||||||||||||
+ self.redirect("/number") | |||||||||||||||||||||||||||||||||||||||||
class Number(tornado.web.RequestHandler): | |||||||||||||||||||||||||||||||||||||||||
def get(self): | |||||||||||||||||||||||||||||||||||||||||
@@ -27,65 +24,32 @@ | |||||||||||||||||||||||||||||||||||||||||
num = self.get_argument("num").strip() | |||||||||||||||||||||||||||||||||||||||||
except: | |||||||||||||||||||||||||||||||||||||||||
self.redirect("/number") | |||||||||||||||||||||||||||||||||||||||||
- numout = parsenum.parse(num.replace(" ","")) | |||||||||||||||||||||||||||||||||||||||||
+ numout = parse(num.replace(" ","")) | |||||||||||||||||||||||||||||||||||||||||
if numout == None: | |||||||||||||||||||||||||||||||||||||||||
- numoutt = -1 | |||||||||||||||||||||||||||||||||||||||||
- else: | |||||||||||||||||||||||||||||||||||||||||
- numoutt = (numout["dec"], numout["oct"]) | |||||||||||||||||||||||||||||||||||||||||
- self.render("templates/number.html", last=num, numout=numoutt) | |||||||||||||||||||||||||||||||||||||||||
+ numout = -1 | |||||||||||||||||||||||||||||||||||||||||
+ self.render("templates/number.html", last=num, numout=numout) | |||||||||||||||||||||||||||||||||||||||||
class Restart(tornado.web.RequestHandler): | |||||||||||||||||||||||||||||||||||||||||
def get(self): | |||||||||||||||||||||||||||||||||||||||||
os.system("/usr/bin/restartnavi") | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
class TestDB(tornado.web.RequestHandler): | |||||||||||||||||||||||||||||||||||||||||
def get(self): | |||||||||||||||||||||||||||||||||||||||||
- lis = dbconnector.getnavilist() | |||||||||||||||||||||||||||||||||||||||||
- text = u"id | navi | infix | partofspeech " | |||||||||||||||||||||||||||||||||||||||||
- text += u" ".join(u" | ".join(unicode(y) for y in x) for x in lis) | |||||||||||||||||||||||||||||||||||||||||
+ text = "" | |||||||||||||||||||||||||||||||||||||||||
+ db = tornado.database.Connection("127.0.0.1", "navi", user="navi", password="navi") | |||||||||||||||||||||||||||||||||||||||||
+ for thing in db.query("SELECT * FROM test"): | |||||||||||||||||||||||||||||||||||||||||
+ text = " ".join((text, str(thing.id) + " - " + thing.asd)) | |||||||||||||||||||||||||||||||||||||||||
self.write(text) | |||||||||||||||||||||||||||||||||||||||||
-class Parse(tornado.web.RequestHandler): | |||||||||||||||||||||||||||||||||||||||||
- def get(self): | |||||||||||||||||||||||||||||||||||||||||
- self.render("templates/parse.html", last="", out=None) | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- def post(self): | |||||||||||||||||||||||||||||||||||||||||
- try: | |||||||||||||||||||||||||||||||||||||||||
- word = self.get_argument("word") | |||||||||||||||||||||||||||||||||||||||||
- except: | |||||||||||||||||||||||||||||||||||||||||
- self.redirect("/parse") | |||||||||||||||||||||||||||||||||||||||||
- out = parse.parsesent(word) | |||||||||||||||||||||||||||||||||||||||||
- self.render("templates/parse.html", last=word, out=out) | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-class Translate(tornado.web.RequestHandler): | |||||||||||||||||||||||||||||||||||||||||
- def get(self): | |||||||||||||||||||||||||||||||||||||||||
- self.render("templates/translate.html", last="", out=None, lang="eng") | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
- def post(self): | |||||||||||||||||||||||||||||||||||||||||
- try: | |||||||||||||||||||||||||||||||||||||||||
- word = self.get_argument("word") | |||||||||||||||||||||||||||||||||||||||||
- lang = self.get_argument("lang") | |||||||||||||||||||||||||||||||||||||||||
- except: | |||||||||||||||||||||||||||||||||||||||||
- self.redirect("/translate") | |||||||||||||||||||||||||||||||||||||||||
- out = translate.translatesent(word, lang) | |||||||||||||||||||||||||||||||||||||||||
- self.render("templates/translate.html", last=word, out=out, lang=lang) | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
-settings = { | |||||||||||||||||||||||||||||||||||||||||
- "static_path": os.path.join(os.path.dirname(__file__), "static") | |||||||||||||||||||||||||||||||||||||||||
-} | |||||||||||||||||||||||||||||||||||||||||
- | |||||||||||||||||||||||||||||||||||||||||
application = tornado.web.Application([ | |||||||||||||||||||||||||||||||||||||||||
("/", Index), | |||||||||||||||||||||||||||||||||||||||||
("/number", Number), | |||||||||||||||||||||||||||||||||||||||||
("/restart", Restart), | |||||||||||||||||||||||||||||||||||||||||
- ("/testdb", TestDB), | |||||||||||||||||||||||||||||||||||||||||
- ("/parse", Parse), | |||||||||||||||||||||||||||||||||||||||||
- ("/translate", Translate) | |||||||||||||||||||||||||||||||||||||||||
-], **settings) | |||||||||||||||||||||||||||||||||||||||||
+ ("/testdb", TestDB) | |||||||||||||||||||||||||||||||||||||||||
+]) | |||||||||||||||||||||||||||||||||||||||||
if __name__ == "__main__": | |||||||||||||||||||||||||||||||||||||||||
http_server = tornado.httpserver.HTTPServer(application) | |||||||||||||||||||||||||||||||||||||||||
http_server.listen(1337) | |||||||||||||||||||||||||||||||||||||||||
- #tornado.autoreload.start() | |||||||||||||||||||||||||||||||||||||||||
- tornado.ioloop.IOLoop.instance().start() | |||||||||||||||||||||||||||||||||||||||||
\ No newline at end of file | |||||||||||||||||||||||||||||||||||||||||
+ tornado.autoreload.start() | |||||||||||||||||||||||||||||||||||||||||
+ tornado.ioloop.IOLoop.instance().start() |
/tsimapiak/parse.py |
---|
File deleted |
/tsimapiak/translate.py |
---|
File deleted |
\ No newline at end of file |
/tsimapiak/dbconnector.py |
---|
File deleted |
\ No newline at end of file |
/tsimapiak/parsenum.py |
---|
1,129 → 1,81 |
#!/usr/bin/python |
# -*- coding: utf-8 -*- |
num = [u"kew", |
u"'aw", |
u"mune", |
u"pxey", |
u"tsìng", |
u"mrr", |
u"pukap", |
u"kinä"] |
numord = [u"kew", |
u"'aw", |
u"mu", |
u"pxey", |
u"tsì", |
u"mrr", |
u"pu", |
u"ki"] |
rem = [u"aw", |
u"mun", |
u"pey", |
u"sìng", |
u"mrr", |
u"fu", |
u"hin"] |
remord = [u"aw", |
u"mu", |
u"pey", |
u"sì", |
u"mrr", |
u"fu", |
u"hi"] |
base = [u"", |
u"me", |
u"pxe", |
u"tsì", |
u"mrr", |
u"pu", |
u"ki"] |
def parse(numin): |
if u"mm" in numin: |
return None |
if (numin[0] == u"a") and (numin[len(numin)-1] == u"a"): |
return None |
prefs = [] |
posts = [] |
outoct = 0 |
outdec = 0 |
ret = {"word": {"id": 0, "navi": u"", "infix": u"", "type": u""}, "pref": [prefs], "post": [posts], "inf": [u"", u"", u""], "len": False, "dec": outdec, "oct": outoct} |
if numin[0] == u"a": |
prefs.append(u"a") |
numin = numin[1:] |
if numin[len(numin)-1] == u"a": |
posts.append(u"a") |
numin = numin[:-1] |
if numin[-2:] == u"ve": |
posts.append(u"ve") |
numin = numin[:-2] |
#base numbers |
for n in range(len(num)): |
if u"ve" in posts: |
if numin == numord[n]: |
outoct = n |
outdec = n |
ret["word"]["navi"] = unicode(outdec) + u"." |
ret["dec"] = outdec |
ret["oct"] = outoct |
return ret |
else: |
if numin == num[n]: |
outoct = n |
outdec = n |
ret["word"]["navi"] = unicode(outdec) |
ret["dec"] = outdec |
ret["oct"] = outoct |
return ret |
#other numbers |
for n in range(len(base)): |
if numin.startswith(base[n] + u"zazam"): |
outoct += (n+1) * (10**4) |
outdec += (n+1) * (8**4) |
numin = numin[len(base[n]) + 5:] |
for n in range(len(base)): |
if numin.startswith(base[n] + u"vozam"): |
outoct += (n+1) * (10**3) |
outdec += (n+1) * (8**3) |
numin = numin[len(base[n]) + 5:] |
for n in range(len(base)): |
if numin.startswith(base[n] + u"zam"): |
outoct += (n+1) * (10**2) |
outdec += (n+1) * (8**2) |
numin = numin[len(base[n]) + 3:] |
for n in range(len(base)): |
if numin.startswith(base[n] + u"vol"): |
outoct += (n+1) * 10 |
outdec += (n+1) * 8 |
numin = numin[len(base[n]) + 3:] |
if numin.startswith(base[n] + u"vo"): |
outoct += (n+1) * 10 |
outdec += (n+1) * 8 |
numin = numin[len(base[n]) + 2:] |
for n in range(len(rem)): |
if u"ve" in posts: |
if numin == remord[n]: |
outoct += n + 1 |
outdec += n + 1 |
numin = u"" |
else: |
if numin == rem[n]: |
outoct += n + 1 |
outdec += n + 1 |
numin = u"" |
if numin == u"": |
ret["word"]["navi"] = unicode(outdec) if not u"ve" in posts else unicode(outdec) + u"." |
ret["dec"] = outdec |
ret["oct"] = outoct |
return ret |
else: |
return None |
if __name__ == "__main__": |
print parse(u"mevolawve") |
#!/usr/bin/python |
# -*- coding: utf-8 -*- |
import re |
num = [u"kew", |
u"'aw", |
u"mune", |
u"pxey", |
u"tsìng", |
u"mrr", |
u"pukap", |
u"kinä"] |
rem = [u"aw", |
u"mun", |
u"pey", |
u"sìng", |
u"mrr", |
u"fu", |
u"hin"] |
base = [u"", |
u"me", |
u"pxe", |
u"tsì", |
u"mrr", |
u"pu", |
u"ki"] |
numre = \ |
u"^(?:(" + "|".join(base) + u")zazam??)?" + \ |
u"(?:(" + "|".join(base) + u")vozam??)?" + \ |
u"(?:(" + "|".join(base) + u")zam??)?" + \ |
u"(?:(" + "|".join(base) + u")vo(?:l(?=a|))?)?" + \ |
u"((?:" + "|".join(rem) + u")|" + \ |
u"(?:" + "|".join(num) + u"))?$" |
numre = re.compile(numre) |
def parse(numin): |
if type(numin) != unicode: |
return None |
if numin == u"": |
return None |
numin = numin.replace(u"í",u"ì").replace(u"á",u"ä") |
try: |
mat = numre.match(numin).groups() |
except: |
return None |
numout = 0 |
numoct = 0 |
try: |
numout += rem.index(mat[4]) + 1 |
numoct += rem.index(mat[4]) + 1 |
except: |
try: |
numout += num.index(mat[4]) |
numoct += num.index(mat[4]) |
except: pass |
try: |
numout += (base.index(mat[3]) + 1) * 8 |
numoct += (base.index(mat[3]) + 1) * 10 |
except: pass |
try: |
numout += (base.index(mat[2]) + 1) * 8**2 |
numoct += (base.index(mat[2]) + 1) * 10**2 |
except: pass |
try: |
numout += (base.index(mat[1]) + 1) * 8**3 |
numoct += (base.index(mat[1]) + 1) * 10**3 |
except: pass |
try: |
numout += (base.index(mat[0]) + 1) * 8**4 |
numoct += (base.index(mat[0]) + 1) * 10**4 |
except: pass |
return numout, numoct |
if __name__ == "__main__": |
print parse(u"mrrvolaw") |