/webapp/main.py |
---|
12,6 → 12,7 |
from tsimapiak import parsenum |
from tsimapiak import dbconnector |
from tsimapiak import parse |
from tsimapiak import translate |
class Index(tornado.web.RequestHandler): |
def get(self): |
57,6 → 58,18 |
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) |
def post(self): |
try: |
word = self.get_argument("word") |
except: |
self.redirect("/translate") |
out = translate.translatesent(word) |
self.render("templates/translate.html", last=word, out=out) |
settings = { |
"static_path": os.path.join(os.path.dirname(__file__), "static") |
} |
66,7 → 79,8 |
("/number", Number), |
("/restart", Restart), |
("/testdb", TestDB), |
("/parse", Parse) |
("/parse", Parse), |
("/translate", Translate) |
], **settings) |
if __name__ == "__main__": |
/webapp/templates/translate.html |
---|
0,0 → 1,45 |
{% extends "base.html" %} |
{% block title %}Translator{% end %} |
{% block body %} |
<b>Na'vi sentence:</b><br /> |
<form action="/parse" method="post"> |
<input id="word" name="word" type="text" value="{{last}}" style="width: 100%;" /> |
<input name="btn" type="submit" value="Parse!" /> |
</form> |
{% if out %} |
<table border="1"> |
<tr> |
<th>Words</th> |
<th>English</th> |
<th>Parts</th> |
<th>Data</th> |
</tr> |
{% for wor in out %} |
<tr> |
<td rowspan="4">{{ wor["word"]["navi"] }}</td> |
<td rowspan="4">{{ wor["translated"] }}</td> |
<td>Infixes:</td> |
<td>{{ u", ".join(wor["inf"]) }}</td> |
</tr> |
<tr> |
<td>Prefixes:</td> |
<td>{{ u"; ".join(u", ".join(x) for x in wor["pref"]) }}</td> |
</tr> |
<tr> |
<td>Postfixes:</td> |
<td>{{ u"; ".join(u", ".join(x) for x in wor["post"]) }}</td> |
</tr> |
<tr> |
<td>Lenited:</td> |
<td>{{ str(wor["len"]) }}</td> |
</tr> |
{% end %} |
</table> |
{% end %} |
<p>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!</p> |
<script type="text/javascript"> |
document.getElementById("word").focus(); |
</script> |
{% end %} |
/webapp/templates/parse.html |
---|
12,7 → 12,6 |
<table border="1"> |
<tr> |
<th>Words</th> |
<th>English</th> |
<th>Parts</th> |
<th>Data</th> |
</tr> |
19,7 → 18,6 |
{% for wor in out %} |
<tr> |
<td rowspan="4">{{ wor["word"]["navi"] }}</td> |
<td rowspan="4">{{ wor["translated"] }}</td> |
<td>Infixes:</td> |
<td>{{ u", ".join(wor["inf"]) }}</td> |
</tr> |