summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2014-01-28 16:51:21 +0000
committerhallgren <hallgren@chalmers.se>2014-01-28 16:51:21 +0000
commit0386334f49fde8c5e4a5f438ae5cf9ed285e4579 (patch)
tree2a2cbc6f62e4c0345a736da2c19ca823eca26cc9 /src
parent06bb2a1dad1ab82f79cabbdaafcf61a86af4494c (diff)
Wide coverage translation web demo improvements
+ Add lexing/unlexing + Add a button to swap input and output + Minor layout adjustments
Diffstat (limited to 'src')
-rw-r--r--src/www/gfse/cloud2.js4
-rw-r--r--src/www/translator/translator.js3
-rw-r--r--src/www/wc.html92
3 files changed, 96 insertions, 3 deletions
diff --git a/src/www/gfse/cloud2.js b/src/www/gfse/cloud2.js
index dbb322ed8..318e2739e 100644
--- a/src/www/gfse/cloud2.js
+++ b/src/www/gfse/cloud2.js
@@ -272,3 +272,7 @@ function check_exp(s,cont) {
}
gfshell("cc "+s,check);
}
+
+// Lexing/unlexing text
+function lextext(txt,cont) { gfshell('ps -lextext "'+txt+'"',cont) }
+function unlextext(txt,cont) { gfshell('ps -bind -unlextext "'+txt+'"',cont) }
diff --git a/src/www/translator/translator.js b/src/www/translator/translator.js
index e124e3523..1c8dbede6 100644
--- a/src/www/translator/translator.js
+++ b/src/www/translator/translator.js
@@ -1193,9 +1193,6 @@ function save_in_cloud(filename,document,cont) {
with_dir(save)
}
-function unlextext(txt,cont) { gfshell('ps -bind -unlextext "'+txt+'"',cont) }
-function lextext(txt,cont) { gfshell('ps -lextext "'+txt+'"',cont) }
-
// Like lextext, but separate punctuation from the end
function lexgfrobust(txt,cont) {
function rmpunct(txt) {
diff --git a/src/www/wc.html b/src/www/wc.html
new file mode 100644
index 000000000..08c7c62e0
--- /dev/null
+++ b/src/www/wc.html
@@ -0,0 +1,92 @@
+<!DOCTYPE html>
+<html> <head>
+<title>Demo: GF Wide Coverage Translation</title>
+<link rel="stylesheet" type="text/css" href="gfse/editor.css" title="Cloud">
+<meta name = "viewport" content = "width = device-width">
+<meta charset="UTF-8">
+<link rel=top href="../" title="GF">
+<style>
+div.center { text-align: center; }
+table.center { margin-left: auto; margin-right: auto; }
+textarea { margin: 0; }
+body:target h1, body:target div.modtime { display: none; }
+</style>
+</head>
+
+<body id=embed>
+<div class=center>
+<h1><a href="http://www.grammaticalframework.org/"><img class=nofloat src="P/gf-cloud.png" alt="GF"></a> Wide Coverage Translation</h1>
+</div>
+
+<table class="center">
+<tr><td>
+<form onsubmit="return wctranslate()">
+ <textarea name=input rows=3 style="width: 100%"></textarea>
+ <br>
+ <big>⤷</big>
+ <select name=from>
+ <option value=Bul>Bulgarian</option>
+ <option value=Chi>Chinese</option>
+ <option value=Eng selected>English</option>
+ <option value=Fin>Finnish</option>
+ <option value=Fre>French</option>
+ <option value=Ger>German</option>
+ <option value=Hin>Hindi</option>
+ <option value=Swe>Swedish</option>
+ </select> →
+ <button name=translate type=submit><strong><big>Translate</big></strong></button> →
+ <select name=to onchange="wctranslate()">
+ <option value=Bul>Bulgarian</option>
+ <option value=Chi>Chinese</option>
+ <option value=Eng>English</option>
+ <option value=Fin>Finnish</option>
+ <option value=Fre>French</option>
+ <option value=Ger>German</option>
+ <option value=Hin>Hindi</option>
+ <option value=Swe selected>Swedish</option>
+ </select>
+ <big style="position: relative; top: 1ex">⤵</big>
+   <button onclick="wcswap()">↑↓</button>
+ <br>
+ <textarea name=output rows=3 style="width: 100%" readonly></textarea>
+</form>
+
+</table>
+<p>
+<div class=modtime><small>
+<!-- hhmts start -->Last modified: Tue Jan 28 17:38:32 CET 2014 <!-- hhmts end -->
+</small></div>
+<script src="js/support.js"></script>
+<script src="js/gftranslate.js"></script>
+<script src="js/localstorage.js"></script>
+<script src="gfse/localstorage.js"></script>
+<script src="gfse/cloud2.js"></script>
+<script>
+function wctranslate() {
+ var f=document.forms[0]
+ f.translate.disabled=true
+ f.output.value=""
+
+ function showit(result) {
+ f.output.value=result
+ f.translate.disabled=false
+ }
+ function step3(text) { unlextext(text,showit) }
+ function step2(text) {
+ gftranslate.translate(text,f.from.value,f.to.value,step3)
+ }
+ lextext(f.input.value,step2)
+ return false;
+}
+
+function wcswap() {
+ var f=document.forms[0]
+ f.input.value=f.output.value;
+ var from=f.from.value
+ f.from.value=f.to.value
+ f.to.value=from
+ wctranslate()
+}
+</script>
+</body>
+</html>