多言語翻訳スクリプト

MyScripts向けに、様々な言語を日本語に翻訳するスクリプトを作成しました。Microsoft Translatorのサービスを使用しています。このサービスがサポートする言語であれば、すべて日本語に翻訳できます。機械翻訳なので、訳文の質は微妙ですが、多言語辞書としては使えます。スクリプトは以下のページの「日本語へ翻訳」からどうぞ。

MyScriptsスクリプト集

参考までに、スクリプトのソースも掲載しておきます。

// ユーティリティ関数
function httpGet(url) {
var xhr = new XMLHttpRequest();
xhr.open("GET",url, false);
xhr.send(null);
return xhr.responseText;
}

// https://ssl.bing.com/webmaster/developers/appids.aspx で取得したApp IDを設定します。
// MyScriptsスクリプト集に登録したスクリプトには設定済みです。
var APPID = "<App ID>";

// 原文の言語を判定します。
var srcLangXml = httpGet("http://api.microsofttranslator.com/V2/Http.svc/Detect?appId="+APPID+"&text="+ENCTEXT);

// 結果はXMLとして返却されるので、タグを削除して、"en" や "fr" といった文字列にします。
var srcLang = srcLangXml.replace(/<.+?>/g,"");

// 翻訳します。
// URL末尾の ja を en や fr に変更すれば、それぞれ英語とフランス語に翻訳できるようになります。
var resultXml = httpGet("http://api.microsofttranslator.com/V2/Http.svc/Translate?appId="+APPID+"&text="+ENCTEXT+"&from="+srcLang+"&to=ja");

// タグを削除して、エンティティを変換します。
var result = resultXml.replace(/<.+?>/g,"").replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&quot;/g,'"').replace(/&amp;/g,"&");

// MyScriptsに結果を渡します。
result;

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Current day month ye@r *