Tuesday, February 14, 2012

テキストエディタとスペルチェック(EmEditor試用)

翻訳の際に、用語を一括置換すると、和英入り混じりの妙な文章ができる。で、長めの案件だと、Wordのスペルチェックが音を上げる。このところ、翻訳の準備作業として、Wordfastで原文訳文ペアを作るようにしているので、長さが倍になる。そのためかどうかわからないが、短めのファイルでも、スペルチェックが外れるようになった気がする。もっとも、最後のチェック工程で必ずスペルチェックをかけているので、あまり困ったことにはならないが…。

テキストエディタで作業する場合には、昔からの習慣というか…、スペルチェック機能はないという前提で、あまり気にもしなかった。普段使っている秀丸やWzエディタも、工夫すればスペルチェックできるように拡張可能かもしれないが、試してみたことはない。

それが、EmEditorの最新版では、標準でスペルチェックができると聞き、実際に使ってみることにした。かなり長いファイルで大量に用語置換しても、ふつうに赤線表示される。スペルチェック辞書も、Wordとあまり違わない感じ(よく調べてません…)。

コメントや用語集の編集など、これまでスペルチェックを気にせずに、テキストエディタを使っていたけど、やはりスペルチェックがあった方がよい。

前回書いたように、「Wordfast+ぱらぱら」という使い方が安定してきたのだけど、Wordをインストールしていないノートパソコンなど、Wordfastを使わないで作業することもあるので、そんなときにはEmEditorがよいかもしれない。

特殊文字や上付き下付きの処理など、最終的にWordで変換処理する必要があるので、そのあたりの連携を考えておく必要はあるだろう。今やっている仕事は、そういった問題がないので、あまり考えずに打ち込んでいる。

EmEditorは、他にもスニペット機能など、いろいろ充実していて面白そう。試用期間後は、おそらく送金することになるだろう。

マクロ機能には、WSHのエンジンを使っているということで、VBScriptとJavaScript (JScript) が使える。WSHの学習にもなるので、これから秀丸マクロに習熟するより、こちらに乗り換えようと思う。Wordマクロに慣れた人なら、VBScriptでやればいいんだろうけど、自分には、JavaScriptの方がわかりやすい感じなので、JavaScriptでやってみることにした。

まず、上書翻訳で必要な「行末まで削除」機能を自動記録してみた。
EmEditorのデフォルトもJavaScript になっていたので、自動記録のコードも JavaScript。実際に使ってみると、表示された1行単位で動くようになっている。自分の使い方としては、改行コード直前まで消した方が便利なので、リファレンスを見ながら、論理行で扱うように変更した。
document.selection.EndOfLine(true,eeLineLogical);
document.selection.Delete(1);
"eeLineLogical"で論理行を指定している。
このマクロを、「Ctrl + ;」に割り当てた。

あと、最低限、Webの検索をやろうと思い、
「Ctrl + :」   Google Scholar フレーズ検索
「Ctrl + Shift + :」Weblilo ,英辞郎 辞書検索
としてみた。

自分の場合、Google Scholar で表現をチェックするときと、辞書引きのときとで、タイミングが別になるので、辞書検索だけを串刺しにして、Scholarとは別にした。

くまさんの記事を参考に、Chrome のウィンドウを個別に開くように設定。専用のフォルダは、(Cドライブが窮屈なので)Dドライブに割り当てたが、問題なく動いた。いい加減なコードですが、こんな感じに…。

(Google Scholar フレーズ検索)
str = document.selection.Text;
WshShell = new ActiveXObject( "WScript.Shell" );
strch = str.replace(/ /g, "+");
WshShell.Run( "chrome.exe --user-data-dir=d:\chromedata01 http://scholar.google.com/scholar?hl=en&q=%22"+ strch +"%22" );
(Weblilo ,英辞郎検索)
str = document.selection.Text;
WshShell = new ActiveXObject( "WScript.Shell" );
strch = str.replace(/ /g, "+");
WshShell.Run( "chrome.exe --user-data-dir=d:\chromedata02 http://ejje.weblio.jp/content/"+ strch);
WshShell.Run( "chrome.exe --user-data-dir=d:\chromedata03 http://eow.alc.co.jp/"+strch+"/UTF-8/");
どちらも、3行目で、選択範囲のスペースを「+」に置換しているのだけど、この処理がやりっぱなしなので、選択範囲の最後にスペースがあれば、それも置換してしまう(笑)。工夫しようかと思ったけど、そのまま検索できたので、特に変えなかった。

それと、「範囲選択しない場合、カーソル位置の語を検索」、とかにすると親切だけど、自分ではそんな使い方はしないので、このまま使っている。

他にもいろいろやりたいことがあるけれど、仕事もしないといけないし、英語の勉強もあるので(笑)、今日はこのあたりに…。

No comments:

Post a Comment