An open API service indexing awesome lists of open source software.

https://github.com/Marak/translate.js

translate text from one language to another on node.js and the browser. 30+ languages supported, simple as cake.
https://github.com/Marak/translate.js

Last synced: 11 months ago
JSON representation

translate text from one language to another on node.js and the browser. 30+ languages supported, simple as cake.

Awesome Lists containing this project

README

          

# translate.js - translates text to different languages, simple as cake

## v0.6.0

# USAGE

### node.js -

var sys = require('sys');
var colors = require('colors'); // colors are fun!
var translate = require('./lib/translate');

// note: the translator is English=>Spanish by default
translate.text('I want tacos please.', function(err, text){

sys.puts('I want tacos please.'.red + ' => '.cyan + text.yellow);
var input = 'Spanish', output = "Japanese";
translate.text({input:input,output:output}, text, function(err, text2){

var input = 'Japanese', output = "English";
sys.puts(text.yellow + ' => '.cyan + text2.blue);
translate.text({input:input,output:output}, text, function(err, text3){

sys.puts(text2.blue + ' => '.cyan + text3.red);
sys.puts('English'.red+'=>'+'Spanish'.yellow+'=>'+'Japanese'.blue+'=>'+'English'.red +'\ntaco request has been normalized. ^_^'.green);
});
});
});

### browser -





var languages;

$(document).ready(function(){

languages = getLangs();

// populate the select box
for(var lang in languages){
$('#langInput').append('<option value = "'+lang+'">' + lang + '</option>');
}

for(var lang in languages){
$('#langOutput').append('<option value = "'+lang+'">' + lang + '</option>');
}

/***** NAMED EVENTS *****/

$(document).bind('##TRANSLATE_TEXT##', function(e){

$('#run').attr('disabled','disabled');
$('#run').val('translating...');
var input = $('#langInput').val(), output = $('#langOutput').val();

translate.text({input:input,output:output}, $('#theCode').val(), function(result){
$('#run').attr('disabled','');
$('#run').val('<== translate ==>');
$('#output').val( result );
});
});

/**** END NAMED EVENTS ****/

/**** BIND UI EVENTS ****/

// select box change
$('#langSelector').change(function(){
$(document).trigger('##CHANGE_LANGUAGE##', {"fontName":$(this).val()})
});

$('#run').click(function(e){
$(document).trigger('##TRANSLATE_TEXT##');
});

/**** END UI BIND EVENTS ****/

// little bit of a onReady hack. i'll fix the API a bit so this can be done better
$(document).trigger('##CHANGE_LANGUAGE##', {"fontName":'Doh'});
$('#langInput').val('English');
$('#langOutput').val('Spanish');

});

## languages

Afrikaans
Albanian
Arabic
Armenian
Azerbaijani
Basque
Belarusian
Bulgarian
Catalan
ChineseCroatian
Czech
Danish
Dutch
English
Estonian
Filipino
Finnish
French
GalicianGeorgian
German
Greek
Haitian Creole
Hebrew
Hindi
Hungarian
Icelandic
Indonesian
IrishItalian
Japanese
Korean
Latvian
Lithuanian
Macedonian
Malay
Maltese
Norwegian
PersianPolish
Portuguese
Romanian
Russian
Serbian
Slovak
Slovenian
Spanish
Swahili
SwedishThai
Turkish
Ukrainian
Urdu
Vietnamese
Welsh
Yiddish

### fun facts

translate.js uses the google api and requires an internet connection

if you want to actually hear the translated text as audio you could use say.js

## Authors
#### Andrew Lunny (alunny), Marak Squires, Google