summaryrefslogtreecommitdiff
path: root/src/www/js/gftranslate.js
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2014-04-16 15:37:09 +0000
committerhallgren <hallgren@chalmers.se>2014-04-16 15:37:09 +0000
commit5cb5cdd31eb2168ed823088c40585d48686df112 (patch)
tree6126aa095496311d387ce30880d452017c6ee8bf /src/www/js/gftranslate.js
parentdd96c8a2c67588eaf5f621d20961d4b5a7ffa3e9 (diff)
Wide Coverage Demo App: show a word-for-word translation if all else fails
Diffstat (limited to 'src/www/js/gftranslate.js')
-rw-r--r--src/www/js/gftranslate.js14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/www/js/gftranslate.js b/src/www/js/gftranslate.js
index c5acaa988..5bf1aaa6f 100644
--- a/src/www/js/gftranslate.js
+++ b/src/www/js/gftranslate.js
@@ -27,6 +27,20 @@ gftranslate.translate=function(source,from,to,start,limit,cont) {
else cont([{error:"sentence too long"}])
}
+// Translate a sentence word for word (if all else fails...)
+gftranslate.wordforword=function(source,from,to,cont) {
+ var g=gftranslate.grammar
+ var lexer="&lexer=text"
+ if(from=="Chi") lexer="",source=source.split("").join(" ")
+ var encsrc=encodeURIComponent(source)
+ function extract(result) { cont(result[0].translations) }
+ if(encsrc.length<500)
+ gftranslate.call("?command=c-wordforword&input="+encsrc
+ +lexer+"&unlexer=text&from="+g+from+"&to="+g+to
+ ,extract)
+ else cont([{error:"sentence too long"}])
+}
+
// Get list of supported languages
gftranslate.get_languages=function(cont) {
function init2(grammar_info) {