Posts Tagged ‘翻訳’

ローカルの英辞郎検索やGoogle翻訳も使える翻訳ソフトウェア

簡単に言えばLingoesキングソフト辞書のようなソフトウェアで、文字列を選択した状態でショートカットか文字列をコピーすると翻訳を行えるNILScriptで書かれたソフトウェアです。

元々は英語が読めない人向け、英語技術書の読み方 | Web scratchで書いてたようにLingoesを使っていたましたが、自分向けにもっとあった感じのものがほしかったので作成しました。
機能はハイライト翻訳に絞ってるので、単語帳のようなものなどは特にないですが、シンプルで動作も軽いと思います。
翻訳には単語翻訳(辞書機能)と翻訳サービスを利用した長文の翻訳機能の二つがあります(単語数で自動的にどちらの方法をとるかを決めています)

動作のスクリーンショット

imageimageimageimage

NILtranslatorの導入

NILScriptで実行するソフトウェアなので、NILScriptが必要です。(Autohotkeyみたいな形式だと思ってもらえば)
Githubに置いてあるので、Secure source code hosting and collaborative development – GitHubからzipファイルでレポジトリごとダウンロードするのが単純です。
もちろんgithubなのでgit cloneしてダウンロードするのもありです。(なにかあったらプルリクエストしてもいいですし)

$ git clone git://github.com/azu/NILScript.git

ダウンロードして展開したフォルダにNILtranslatorがあり、NILtranslatorに関係するファイルは全部そこに入っています。(他のものは自分が書いたNILScriptがいろいろと入っています)

NILScriptの使い方と書き方 | Web scratchやNILScriptのreadmeを読んでNILtranslator.ngをNILScriptで実行すれば、ソフトウェアが起動できます。

 

使い方と設定

翻訳は翻訳したい文字列を選択した状態で、クリップボードへのコピーか任意のショートカットで行う事ができます。

NILtranslatorが起動するとタスクバーにアイコンが出るので、右クリックから設定を行う事ができます。

image

動作設定

image

動作設定では、選択した文字列を翻訳するのにどのショートカットキーを使うかや、翻訳するサービスなどを選択できます。

*テキストコピーで翻訳 はそのままの意味でクリップボードにコピーした場合に翻訳する化を決定できます。
*ショートカットキー はNILScriptのHotstrokesユニットで使えるショートカットを指定できます。

デフォルトはShift*2でShiftを二回連続で押すことで翻訳を行えます。

詳細はNILScriptの方に入ってる nil\doc\Hotstrokes.txtnil\sample\Hotstrokes.ngなどを見るのがいいと思います。

簡単にショートカットの例を挙げてみると

"Win" : Winキーを押した時(タップ) 
"Shift+A": Shiftを押しながらAを押す 
"Shift*2": Shiftを二回押す 
"Ctrl+[1] [2]": Ctrl+1 Ctrl+2と順番に押す 
"RButton+WheelDown": 右クリックを押しながらホイールダウン

 

このようにキーボードだけでなく、マウスも使ったいろいろなショートカットの指定が可能です。
(設定ファイルを書き換えて、mapに指定するオブジェクトを作ればもっと自由にもできたりする予定)

指定するキーの名前を知りたい場合はnil\sample\keyboard_hook.ngを実行して見るといいでしょう。

*がついてるものはソフトウェアを再起動後に反映されることに注意

辞書について

辞書はそれぞれ設定できますが、英辞郎はローカルに英辞郎のデータベースファイルを用意する必要があります。
辞書は以下から選択できます。

対応辞書サービス

  • KingSoft辞書
  • 英辞郎辞書ローカル検索(ご自分で英辞郎辞書を用意する必要があります)

英辞郎辞書は同梱していませんのでご自分で購入する必要があります。 http://www.eijiro.jp/

対応翻訳サービス

英辞郎辞書の導入

ローカルの英辞郎辞書を使うためには、英辞郎辞書をデータベース形式に変換する必要があります。
辞書の変換形式はEijiroXと全く同じものを使用しています。そのためEijiroXの利用方法をよく読み、databaseというファイル名のデータベースファイルを生成してください。

手順を簡単にEijiroXの利用方法からまとめると

  1. makedatabase.zip(Windows 用と書かれてるやつ)
  2. zipを展開してできたフォルダに英辞郎から取り出した英辞郎 (EIJI-***.TXT)、和英辞郎 (WAEI-***.TXT)、例辞郎 (REIJI-***.TXT)、略語郎 (RYAKU-***.TXT) の4つのtxtを入れる。
  3. makedatabase.exeを実行(一時間以上かかる)
  4. databaseとdatabase.sqlができる。
  5. database.sqlは削除しても問題ない。databaseをdatabase.dbなど拡張子がdbとなるようにリネームする

データベースファイルはできれば database → database.db(eijiro.dbなど)の拡張子を.dbにリネームした方がよいです(内部処理的に)

設定画面からdatabase.dbを設定し、辞書サービスとして英辞郎を選択すれば利用できるようになります。

image

ポップアップの消滅時間はミリ秒で指定し、翻訳パネルの非表示になるまでの時間を決定できます。

パネルの設定

image

翻訳パネルの配置やサイズなどは、アイコンの右メニュー→パネルの設定から行えます。
数値でも指定できますが、パネルの設定自体がパネルサイズになるようにしています。(動画を参照)

パネルの透明度はアルファ値で指定できます。

一時的に無効にする

image

アイコンの右クリックから→無効を選択すると一時的にショートカットやクリップボードへのコピーで翻訳パネルを出さないようにします。

翻訳パネルの表示を変更

パネルはIEエンジン(triden)で動いていて、divにサイトごとのIDが入るのでCSSで調整することができます。
CSSファイルとSassファイルも同梱されているので、CSSを変更すれば、背景色や文字サイズなども変更できます。

パネルの内部HTMLは以下のようになっています。

<html>
    <head>
        <style type="text/css">
        %style%
        </style>
    </head>
    <body>
        <div id="%siteID%" calss="main">
        %text% この部分に翻訳内容が入る
        </div>
    </body>
</html>
%siteID%はそれぞれ、実行時にサービスにあったものに置換されるため、以下のようにCSSでサービス別に記述する子が可能です。
/* kingsoft */
#kingsoft {

}
/* 英辞郎 */
#eijiro{

}
/* Excite */
#Excite{

}
/* Google翻訳*/
#googleTranslator{

}

これで説明は終わりです。

おわりに

このソフトウェアはNILScriptで書かれていますが、UI部分でコードが少し増えましたが1000行程度でこのぐらいのものが作れてしまいます。

内部から外部APIを読んで翻訳を行ったりしていますが、調子がいいときはローカルで動いてるのと区別がつかないぐらい早く結果が返ってきます。

このようにNILScriptやTitanium DesktopやWebOSやWindows 8などWeb技術(HTML+CSS+JavaScriptなど)といったものでデスクトップアプリケーションが作れるようになるのはとてもおもしろいです。またWebとデスクトップの距離は短くなっていると思います。

謝辞

JavaScriptベースのすばらしいスクリプト実行環境であるNILScriptがないと動きません。

ローカル英辞郎の検索部分はEijiroX を元に作成しました。
@edvakfさんに感謝を

ブラウザの最新情報を知るために、Web開発者が読んでおくべきブログ

JavaScriptやWeb開発に興味を持っている人はブラウザ周りの新しい情報も知っておくと良い場合も多いです。
なのでブラウザ周りに絞ってブラウザ別のブログなどを紹介。

Internet Explorer(IE)

Mozilla(Firefox)

  • Bit Stampede
    MDCの更新情報を書かれています。
    Firefoxの最新情報が把握しやすいので是非購読しておくといいです。
  • A Better Project@はてなダイアリー
    MDCのローカライズ情報を書かれています。
    MDC-ja 通信など最近の起きたことが分かりやすいです。
  • Mozilla Hacks – the Web developer blog
    Mozillaについてだけではなく最新の技術などについても扱っているのでとても重要です。
  • Mozilla Flux
    Firefox/Mozillaについてについて、幅広い情報から書かれているブログ。
    情報をしっかり取り込んでから書かれていると思われるため、内容も深いものとなっていてとてもいい。
    筆者id:Rockridge のはてなブックマークもおすすめです。
  • Mozilla Developer Street (modest)
    “Mozilla 関連の開発者や利用者が集まり 知識・アイディア の共有とコミュニケーションの場”
    アドオン開発者向けの情報やMozilla Add-ons Blogの翻訳記事などが掲載されています。
  • Mozilla Japan ブログ
    名前の通りです。
  • MozillaZine.jp
    Mozilla関係のリリース情報を扱っています。
  • Scene Side B
    Firefoxのリリース情報やbug fixの情報を書かれています。
    どのような変更が行われたかがまとめて見られます。
  • Firefox Hacks 翻訳日記/ウェブリブログ
    Mozilla WikiなどからのFirefoxについて情報を書かれています。
  • もずはっく日記 – WebStudio
    “Mozilla Japanのプロダクトへの貢献を中心に書いています”
    最近はIME周りのお話が多いです
  • alice0775のファイル置き場 – Yahoo!ジオシティーズ
    Friends of the Treeに掲載されるほど多くの貢献をされている方です。
    bugzillaの情報をメインに載せています。またuserChrome.jsスクリプトを多数書かれていることでも知られています。
  • @dynamitter
    Mozilla Japanの浅井さんのアカウントです。
    Firefoxだけではなく、W3Cなどの仕様に関しての情報も多いので参考になると思います。

他にもMozilla本家にはセキュリティとかいろいろブログがあったと思います。
(なのでちょっと本家の方は省き気味です)

Webkit系(Chrome,Safari)

OperaはきっとOperaを愛する人がやってくれるはずです…
追記: Opera版 Operaの最新情報を知るために、Web開発者が読んでおくべきブログ – あまたの何かしら。

その他

いろいろなサイト(主にブログ)を乗せましたが、一個づつRSS購読するのは面倒だという人は、LDRならこのページのリンクをまとめて購読する機能があるのでそれを利用するといいですよ。

まとめて購読機能は、リンク集から一括登録できて便利 – livedoor Reader 開発日誌

おまけ

Planetシリーズ
原点はよくわかりませんが、様々なFeedを集めてまとめたアグリゲートブログのようです。
(ちょっと強欲すぎるので、Planet Chromiumのような公式系でまとまったもの以外は破綻する感じがします)

etc..

おわり

他にこのブログ忘れちゃだめだなどのご指摘があったらお願いします。

英語が読めない人向け、英語技術書の読み方

英語が大して読めないけど、最新の技術とか読みたい内容が英語だったするジレンマがある人向けの記事。
自分も大して英語が読めませんが、550ページほどのJavaScript Cookbookというオライリー本を原著で読んだので、どのようにして読んでいたのかを書いてみます。

電子書籍

まずは読む本ですが、pdfやepubなどの電子書籍で読むのが良いと思います。
分からない単語が出てきたりしたときに毎回辞書なんか引いてたらつらいので、その場で翻訳できる電子書籍だと圧倒的に時間短縮できます。
オライリー本ならJavaScript Cookbookの記録 – prog*sigでも書いていましたが、iPhoneアプリやpdf、safari onlineなど電子書籍として読む方法はいろいろあるので手を出しやすいと思います。
また、最近の海外の書籍だとSecrets of the JavaScript Ninjaサイ本の6版などは執筆中のものを読むことができます。(プレオーダーで値段も安くなったりするのでおすすめ)
最近でた海外のJavaScript関係の書籍は下のサイトによくまとまっています。

海外の技術書についてまとめると、紙の書籍よりも電子書籍の方が入手が楽で、安く、早い段階で入手できるのでおすすめです。日本のオライリーの電子書籍のように変な制限は少ないと思います。(とりあえずテキストのコピーぐらいどうにかして欲しい)
→やっと制限がゆるくなった

販売されるEbookは、印刷、テキストのコピー、ページの抽出、内容の変更を行うことができません。決済時に入力いただいたご購入者のメールアドレスが挿入されます

O’Reilly Japan Ebook Store : 購入規約

海外のオライリー本の入手はO’Reillyの電子書籍流通への取り組みが色々参考になる件:平凡でもフルーツでもなく、、、:ITmedia オルタナティブ・ブログが参考になります。
Mobi, PDF, ePubなどの形式などで購入できますが、素だと少し高いのでセール時やiPhoneアプリなら600円程度だったりするので、買い方によってかなりお買い得になります。

英語の読み方

やっと本題になりますが、英語ができる人曰く英単語が分かれば大体は分かるようになると、また技術書は物語と違って複雑な文法表現などは少ないので、基本的に単語とある程度の文法などの表現が分かれば読み解くことができます。加えて、技術書なのでコードで表現する部分(コードは共通言語)もあるので、ずっと文章を読むよりは挑戦しやすいと思います。

読むのに使用していたソフトウェア

    LingoesLingoesというポップアップ辞書が尋常じゃない – plaisir.genxx.comの時は英辞郎とか無断配布してたみたいですが、多分今はされてないと思うので使うのに問題はないと思います(まあ元から入れなければいい話)
    Lingoesでメインに使っていたのはGoogle翻訳の機能だったのであんまり関係ないかもしれない。
    このソフトは選択範囲を翻訳してポップアップ表示する事ができるので、意味が分からない所を自動翻訳すれば何となく意味がとれてくると思うので、英辞郎 on the WEBなどの詳しく引ける辞書と併用して意味を理解してました。
    途中から英辞郎とExcite翻訳(個人的にはGoogle翻訳より日本語っぽい結果になる)が付ける翻訳ツールを作ってましたがまだ未完成。。
    →ある程度完成した ローカルの英辞郎検索やGoogle翻訳も使える翻訳ソフトウェア
    また、本文のコピペができる電子書籍なので、気になったものはGoogle検索などしてよりわかりやすい解説を見つけたりしながら読み進めていました。たとえ書かれていることが全く分からなくても、そこで何について説明しているかはタイトルなどから読み取れると思うので、それについて言及してる記事などを探して一緒に読めば理解が深まります。

    まとめると、翻訳ソフトを使って斜め読みして、意味がつかめないときは辞書を引く、文章全体がよく分からないときはWebから関係ありそうな記事を探して読む と全く読めないという事はほとんど無くなると思います。

    本の理解

    ここからはあんまり英語と関係なく紙の書籍でもできる内容ですが、自分なりどのように本を読んでいるかという話。
    まずは読むペースについて
    自分は○時間ほど読むというよりはこの章まで読むという感じのノルマ式の読み方をとっています。
    まあ、この方法で読んでいる人は多いと思いますが、章ごとに内容はまとまっているので、時間で区切るよりは章で区切った方が理解が深まるのは必然だと思います。

    もう一つは、本を読みながらブログなどにメモを取ること
    prog*sigはまさにそれのためのブログで、本を読みながら1章1記事で、中では節ぐらいに分けてメモをとりながら読んでいます。
    上で言っていたように翻訳しながら読んでいる感じなので、翻訳することに集中してしまいその章が読み終わったときに内容を覚えてないとか残念な結果になったりする可能性があります。
    そのため、節ぐらいに分けながら内容について自分で分かるように手抜きしながらメモをとると、後で見返したときにどんな内容だったかが分かります。
    また、オライリー本はプログラムコードの一部を引用することが許されていたすることがあるため、コードをメモってコメントをつけたりして理解するという方法もとれます。 (コードの意味が理解できない時は写経しましょう)
    インプットしながらアウトプット(メモをとるぐらいなのでアウトプットとは言い切れないけど)すると理解が浅くなりがちな感じはしますが、日本語の文章だって難しいと一度では理解できないので何度も読み返す必要がある。その時にメモはとても役に立つと思います。
    またメモは本の内容だけではなくWebから関係ありそうな記事を探して読んだときに、それらもメモすることができるので本の内容以外についても書き記すことができます。
    メモをとることについて書きましたが、既に知っている内容が出てくることもあります。そういう時はすべてメモしようとしないとしないで、手を抜くのも本を読むのに疲れないためには必要だと思います。

    まとめると時間単位より章単位で読む、読みながらメモをとる。

    おわりに

    自分なりに英語の技術書の読み方を書いたけど、これをやって良かったと思うことは以前に比べて英語を読む事への抵抗が減ったこと。
    以前は目に入れるのが面倒だったぐらいだけど、今は意味は大して分かってないけどさらっと(タイトルとか最初の部分を)目を通すようになったと思う。
    また、英語以外にJavaScriptの話題に関しては韓国とか中国とかの記事とかも少し見るようになった。
    ハングルとか中国語とか全く読めないけど、Google翻訳だよりでさらっと見る感じ(韓国語はGoogle翻訳だと意外と読みやすい日本語になったりする事多い気がする)
    ここまでいろいろ書いたけど、とりあえず日本語以外の本も読む対象に入れてみてはどうでしょうか。


    Detect language » Japanese

    WordPressのパーマネントリンクを記事タイトルを英単語に翻訳したものにするプラグイン

    ややこしいタイトルですが、Wordpressのパーマネントリンクには記事タイトルを元にした投稿スラッグを入れることができるので、日本語の記事タイトルだと日本語がそのままURLになるためあまり見栄えが良くありません。
    そこで、記事タイトルを自動翻訳して英単語に直してからそれを投稿スラッグにするというプラグインを作ってみました。

    これをダウンロードしてpluginフォルダにいれて有効にすると投稿スラッグが自動的に翻訳された単語を-でつなげたものになります。
    具体例)
    WordPressインストール後にまずやること
    という記事タイトルだった場合は
    first-things-to-do-after-installing-wordpress という感じへ変換されます。(Google翻訳)

    wordpressで投稿の際のslugを英語だけに自動でする方法 – sugarbabe335
    http://d.hatena.ne.jp/sugarbabe335/20081218/1229609082

    Google AJAX Language APIを試してみる[翻訳]

    Google AJAX Language APIは、誰でも簡単に言語の翻訳を行えるようにするJavaScript APIで、JavaScript勉強中ということで試してみる。
    JavaScriptはほとんど書けないのでかなり地味。

    Read the rest of this entry »

    プロフィール: azu(アズ)
    Firefoxの事やソフトウェアの紹介や使い道、Greasemonkeyの作成
    • OS:Windows Vista, 7
    • ブラウザ:Firefox
    • Twitterのアカウントはこちら
    • azu_re
    • メールアドレス(Twitterの方が確実)
    • info@ドメイン名
    リンク