正直,こんな勝手にプラグインを追加しても良いのかちょっと迷う
一応,subversionリポジトリにつっこんでありますが,IKeJIに文句言われたら,消します.そのときは,どっか他のところで野良として公開しますが.
translation::yahooプラグイン
Mechanizeが必要.gem install mechanizeしてください.
Yahoo翻訳を使って,入力のStringを翻訳します.
- module: const_list config: - それPraggerでできるよ - Praggerでどうやるかは聞いてねえよ - module: translations::yahoo config: translation: ja=>en - module: stdout
実行例.
exec plugin const_list exec plugin translations::yahoo exec plugin stdout I can do it in it Pragger I hear how you live on Pragger, and it is an older sister
「Praggerでどうやるかは聞いてねえよ」の訳がとんでもないことになってますが,とりあえず翻訳できてるみたいです.
英日,日韓,韓日,日中,中日翻訳は,それぞれen=>ja,ja=>kr,kr=>ja,ja=>cn,cn=>jaを translationオプションに設定します.
apply_text_htmlプラグイン
Hpricotが必要.gem install hpricotしてください.
入力のHTMLに含まれるテキストに対して,config以下を実行します.
- module: const_list config: - http://pragger.ikejisoft.com - module: get_html - module: apply_text_html config: - module: translations::yahoo config: translation: ja=>en - module: stdout
実行例.
exec plugin const_list exec plugin get_html exec plugin apply_text_html exec plugin translations::yahoo exec plugin stdout <!DOCTYPE htmlここに翻訳した文章が表示されます。 PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"ここに翻訳した文章が表示されます。"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">ここに翻訳した文章が表示されます。<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"> <head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>PRagger - Trac</title><link rel="start" href="/wiki" /><link rel="search" href="/search" /><link rel="help" href="/wiki/TracGuide" /><link rel="stylesheet" href="/trac/css/trac.css" type="text/css" /><link rel="stylesheet" href="/trac/css/wiki.css" type="text/css" /><link rel="icon" href="/chrome/common/trac.ico" type="image/x-icon" /><link rel="shortcut icon" href="/chrome/common/trac.ico" type="image/x-icon" /><link rel="alternate" href="/wiki/WikiStart?format=txt" title="Plain Text" type="text/plain" /><style type="text/css"> </style> <script type="text/javascript" src="/trac/js/trac.js"></script> </head> <body>ここに翻訳した文章が表示されます。 <div id="banner"> <div id="header"><a id="logo" href="http://trac.edgewall.com/"><img src="/chrome/common/trac_banner.png" width="236" height="73" alt="Trac" /></a><hr /></div> <form id="search" action="/search" method="get"> <div>ここに翻訳した文章が表示されます。<label for="proj-search">A search文字列:</label> <input type="text" id="proj-search" name="q" size="10" accesskey="f" value="" /> <input type="submit" value="検索実行" /> <input type="hidden" name="wiki" value="on" /> <input type="hidden" name="changeset" value="on" /> <input type="hidden" name="ticket" value="on" /> </div> </form>ここに翻訳した文章が表示されます。<div id="metanav" class="nav"><ul><li class="first"><a href="/login">Login</a></li><li><a href="/settings">User setting</a></li><li><a href="/wiki/TracGuide" accesskey="6">Help /Guide</a></li><li class="last"><a href="/about">About Trac</a></li></ul></div> </div> <div id="mainnav" class="nav"><ul><li class="active first"><a href="/wiki" accesskey="1">Wiki</a></li><li><a href="/timeline" accesskey="2">A timeline</a></li><li><a href="/roadmap" accesskey="3">A road map</a></li><li><a href="/browser">A repository browser</a></li><li><a href="/report">I watch a ticket</a></li><li><a href="/newticket" accesskey="7">Ticket registration</a></li><li class="last"><a href="/search" accesskey="4">検索</a></li></ul></div> <div id="main">ここに翻訳した文章が表示されます。<div id="ctxtnav" class="nav"> <h2>Wiki navigation</h2> <ul> <li><a href="/wiki">A start page</a></li> <li><a href="/wiki/TitleIndex">A page list</a></li> <li><a href="/wiki/RecentChanges">The page that was updated recently</a></li> ここに翻訳した文章が表示されます。<li class="last"><a href="/wiki/WikiStart?action=history">A page history</a></li>ここに翻訳した文章が表示されます。</ul> <hr /> </div> <div id="content" class="wiki">ここに翻訳した文章が表示されます。<div class="wikipage"> <div id="searchable"><h1 id="PRaggerへようこそ">Welcome to PRagger.</h1> <p>Pragger was written in Ruby<a class="ext-link" href="http://plagger.org/trac"><span class="icon">Plagger</span></a>もどきです.</p> <p>I utilize object oriented of Ruby to the maximum, and it is made.</p> <ul><li>How to use Pragger<a class="wiki" href="/wiki/UsingPragger">UsingPragger</a> </li><li>An acquisition method of Pragger<a class="wiki" href="/wiki/GetPragger">GetPragger</a> </li><li>A collection of samples of a preference<a class="wiki" href="/wiki/SampleConfig">SampleConfig</a> </li><li>A list of plug in<a class="wiki" href="/wiki/PluginList">PluginList</a> </li></ul><ul><li><a class="wiki" href="/wiki/FeedBacks">Reaction of various fields</a> </li><li><a class="wiki" href="/wiki/LicenseOfPragger">A license</a> </li></ul><ul><li><a class="ext-link" href="http://www.lingr.com/room/pragger"><span class="icon">Chat room(Lingr)</span></a> </li></ul></div> </div>ここに翻訳した文章が表示されます。<script type="text/javascript">addHeadingLinks(document.getElementById("searchable"));</script>ここに翻訳した文章が表示されます。</div> <script type="text/javascript">searchHighlight()</script> <div id="altlinks"><h3>I download it with a different format:</h3><ul><li class="first last"><a href="/wiki/WikiStart?format=txt">Plain Text</a></li></ul></div> </div> <div id="footer"> <hr /> <a id="tracpowered" href="http://trac.edgewall.com/"><img src="/trac/trac_logo_mini.png" height="30" width="107" alt="Trac Powered"/></a> <p class="left">Powered by<a href="/about"><strong>Trac 0.9.6</strong></a><br />By<a href="http://www.edgewall.com/">Edgewall Software</a>.<br />Translated by<a href="http://www.i-act.co.jp/">インタアクト Co., Ltd.</a> </p> <p class="right">Visit the Trac open source project at<br /><a href="http://trac.edgewall.com/">http://trac.edgewall.com/</a> </p> </div>ここに翻訳した文章が表示されます。</body> </html>
ところどころ「ここに翻訳した文章が表示されます」になっちゃうのが悲しいですけど,とりあえず動いているもよう.