2013年11月24日

OmegaTを使ってます

今まで公開文書の翻訳にはGoogle Translator Toolkitを使ってきたのですが、改悪に改悪を重ねられ、あまりにも使えないツールとなってしまいました。
中でも、いつの間にか翻訳メモリのダウンロードができなくなっていたのには驚きました。以前は確かにできていたのに…。ユーザの利便性を犠牲にしてまでも囲い込みたいのか? まさに「Do the evil」の企業スローガンどおりですね。w

と言うわけで、その代わりにOmegaTという翻訳メモリソフトを使うことにしました。
OmegaTは、確か1.3くらいのときにちょっと使ったことがあったのですが、最新版(2.6.3 Update 6)ではだいぶ変わっていてちょっと戸惑ったのも事実です。
いろいろとググったりしたのですが意外と情報がなく、最終的には自力で解決したのですが、同じようなことで困っている方もいらっしゃるのではないかと思い、ここにまとめておくことにしました。
参考にしていただければ幸いです。

ちなみに、11月22日にリリースされた最新版では、エディタが異常に遅くなるという問題が解決されています。
最近OmegaTを使っていて、エディタが遅いという症状に悩まされていた方、ぜひ最新版を試してみてください。

(1) 改行で段落を区切りたい

私は翻訳対象のテキストファイルは1段落1行(つまり改行で段落を区切る)にしているのですが、OmegaTの初期値は「空行(=連続する改行2個)で段落を区切る」になっています。
これを変更するのは、以前は「分節化規則」のところでできたような記憶があるのですが、最新版ではここにはありませんでした。
取説を見ても「たとえば、テキストファイルの場合は、改行で分節化するか、空行で分節化するか、または、まったく分節化しないかのいずれかです。」とあるだけで、じゃあどうすればいいのかは書いてありません。(><)
実はこれ、「ファイルフィルター」で設定するんですね…。
「ファイルフィルター」ウィンドウを開き、「テキストファイル」を選択して「設定」ボタンを押すと、「原文を分節化する位置:『改行』『空行』『しない』」というラジオボタンが出てきて、初期値は『空行』が選択されているので、これを『改行』に変更し、「確定」ボタンを押し、もう一度「ファイルフィルター」ウィンドウの「確定」ボタンを押せばOKです。
ちなみに、ファイルフィルターや分節化規則の変更は、プルダウンメニューの「設定」からもできますが、これだとマシンごとの設定になってしまいますので、一度プロジェクトを設定してからプルダウンの「プロジェクト」→「プロジェクト設定」で出てくる画面から「ファイルフィルター」または「分節化規則」ボタンを押して、「分節化規則をプロジェクト専用にする」または「ファイルフィルター規則をプロジェクト専用にする」にチェックを入れてから設定するほうがよいと思います。
こうしておけば、ファイルサーバ上のプロジェクトを別のマシンで開いた場合にも、その設定が適用されますので。

(2) 変なところで文節が区切られる

次に困ったのが、「23 November 2013」とか「2.1 Assumptions」という日付や見出しの場合、最初のスペースで分節化されてしまうことでした。
これはデフォルトの分節化規則に余計なおせっかいが書いてあるからなのですが、そちらは一応尊重して、カスタム分節化規則を追加することで対応しました。
そう、OmegaTは分節化規則を自分で設定できるのです。ただし、正規表現の知識が必要ですが…。
例として、私の設定した分節化規則をお目にかけましょう。(クリックで拡大)
20131124.png
「分節または例外」の欄にチェックが入っている場合、「この規則に該当すれば、その位置で分節化する」を意味します。チェックが入っていない場合、「この規則に該当すれば、その位置では分節化しない」を意味します。わかりにくいですよね…。
「その位置」とは、「分節前の構成例」と「分節後の構成例」の間に挟まれた地点です。
例えば、下から5番目を見てみます(ちなみに、これより上はOmegaTデフォルトで設定されていた分節化規則、これを含めてこれより下は私の設定した規則です)。

「分節または例外」:チェックあり→分節化する
「分節前の構成例」:\S→これは「空白文字以外」を意味します。
「分節後の構成例」:\t→これは「タブ」を意味します。

つまり、「空白文字以外の後にタブが続いたら、その間で分節化する」という意味になります(私は表のある文書を翻訳することが多く、表の要素はタブで区切るので、こうしておくと好都合なのです)。

では次。
「分節または例外」:チェックなし→分節化しない
「分節前の構成例」:U\.S\.→これは「U.S.」を意味します(正規表現では「.」は特別な意味を持つため、「\」でエスケープしています)。
「分節後の構成例」:\s→これは「空白文字」を意味します。
つまり、「U.S.」の後に空白文字が続いても、分節を区切らないでね、ということです(例えば「The U.S. Government is ...」みたいな文章が途中で文節に区切られてしまうことが防げます)。

だいたいわかってきたでしょうか。では次に行きましょう。
「分節または例外」:チェックなし→分節化しない
「分節前の構成例」:\s[a-z]\.→これは空白文字の後に英小文字、さらにその後にピリオドを意味します。
「分節後の構成例」:\s[a-z]→これは、そう、空白文字の後に英小文字を意味します。
これは例えば、「Which do you like: a. apples b. pears c. dates?」みたいな文章が、途中のピリオドで分節化されることを防ぐために追加した規則です。

次はちょっと難しいです。
「分節または例外」:チェックなし→分節化しない
「分節前の構成例」:^\d(\.?\d)+\s→ちょっと順を追って説明しますね。
まず\dは「数字」を意味します。以前出てきたように、\.はピリオド、\sは空白文字です。
それでは^は何かと言うと、文頭を意味します。+は、その前の文字またはグループ(括弧でくくられている)が1回以上繰り返されるという意味。?は、その前の文字またはグループが0回か1回あるという意味。
つまり、これらをまとめると、「文頭に数字があって、その後に(ピリオドを挟んでも挟まなくてもいいけど)数字が1回以上繰り返されて、その後に空白文字がある」という意味になります。
「分節後の構成例」:[A-Z]→これは、英大文字を意味します。
これが実は最初に例に挙げた、「23 November 2013」とか「2.1 Assumptions」の最初の空白では分節化するな、という意味になるんですね〜。
わからなかった方は、もう一度よーく考えてみてください。

最後は、簡単ですね。
「分節または例外」:チェックあり→分節化する
「分節前の構成例」:\.”\s+→これは、ピリオドの後に閉じ二重引用符、次に空白文字の1回以上の繰り返しを意味します。
「分節後の構成例」:[A-Z]→これは、英大文字を意味します。
つまり、「He said, “This is a pen.”」みたいな文章の後で分節を分けてくれるようにするために追加した規則です。

いかがでしょうか?
分節化規則のカスタマイズができるようになると、OmegaTの使いこなしの幅がぐんと広がると思います。
参考になれば幸いです。OmegaT、いいですよ!
posted by ぽそこし at 23:56| Comment(2) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2013年11月07日

【コントラクトブリッジ】高松宮妃杯報告(その2)〜唯一のスラム〜

高松宮妃杯ではスラミッシュなハンドはあまり来なかったのですが、トラベリングスコアを見ると私がのほほんと3NTをプレイしているハンドで6Cとかに行ってメイクしているペアが結構いました。
まあ、そこが実力の違いなのでしょうけど、私がプレイした唯一のスラムは以下のハンドでした。
私がEです。

2nd Session, Board #6
EW Vul, Dealer E
K 8 6 5
K 8 7 6 3 2
Q 5 2
A J 8 6 4 N

 W     -      E 

S
K Q 9 7 3
3 A Q 9 7
A Q 10 9 5
K 7 A 9 6 3
10 5 2
J 10 4 2
J 4
J 10 8 4

ビッドは以下の通り。

NESW
1S P 3NT*1
P 6S*2 //
*1:13-15HCP、スペード4枚以上、(約束では)ボイドやシングルトンなし
*2:コントロールを聞いてもしょうがないので…。
O.L. J

3NTはちょっと変なビッドですが、いずれにせよフォーシングレイズを聞いたEは少なくとも6Sまではビッドするでしょう。
ダミーが開くと、普通のプレイではウィナーが足りなさそうなことがわかるので、サイドスーツのウィナーをキャッシュしてからクロスラフに行きます。
ところがAを取って2枚目をハンドでラフすると、SからJが落ちてきます。これをどう判断するかですが、私は
  1. SのはJ xではなくK J xかもしれない
  2. SのがJ xだったとしても、10は持っていないかもしれない
  3. たとえ両方外れていてSにオーバーラフされてトランプを返されたとしても、まだ6Sはメイクする可能性が十分にある
という理由から、7メイクする可能性を最大にするために3順目の9でラフしました。
あにはからんや、SのはやっぱりJ xで、しかも10も持っていたためオーバーラフされてしまい、当然トランプが返ってきます。
しかしこれをダミーのAで勝ち、クロスラフを継続するとあとは全部とれて無事6メイク。
でも、結構7メイクしているペアがいたので、ボードトップ18点のところ8.5点しか取れませんでした…。
7メイクしたペアは、リードが来たんでしょうね、きっと。
まあ、私もをハイラフしてをフィネスすれば7メイクしたわけですが、普通そういうプレイはしないでしょう…。
posted by ぽそこし at 22:15| Comment(0) | TrackBack(0) | コントラクトブリッジ | このブログの読者になる | 更新情報をチェックする

2013年11月06日

【コントラクトブリッジ】高松宮妃杯報告(その1)〜キリング・ディフェンス〜

11月3日(奇しくも私の誕生日!)に高松宮妃杯というミクスト(男女)ペアのナショナルの試合があり、僭越ながら私も東北代表として参加してきました。
残念ながら、あまり成績のほうは良くなかった(アベレージより下だった)のですが、いくつかハンドの紹介を取り混ぜて報告したいと思います。
以下のハンドで、Eの私が3Cをプレイしました。

2nd Session, Board #4
Both Vul, Dealer W
10 9 6 5 2
10 8 2
J 8
K 10 8
Q 8 3 N

 W     +      E 

S
J 7
Q 9 7 A K
10 9 7 K Q 6 5
J 9 5 2 A Q 7 4 3
A K 4
J 6 5 4 3
A 4 3 2
6

ビッドは、記憶によれば以下の通り。

NESW
P
P 1C X P
1S 2D 2S 3C
//
O.L. K

パッと見、3Cは十分でき目がありそうですが、ダミーにエントリーがありません。
SはKを取ってから2にシフトしましたが、これがキリング・ディフェンスでした。
Eの私はQで取って、トランプのAを取り、Qで負けに行きます。
Nはうーんと悩んでKで上がり、を返しました。
SがAで勝ってを返すとNがラフ。
Aをキャッシュされて、1ダウン確定です。
オポーネント(敵)ながら、すばらしいディフェンスでした。

実は試合の後、飲みに行ったらこの時の対戦相手も一緒だったのでこのボードの話になり、「ダイヤモンドAのアンダーリードが絶妙でしたね」と言ったところ、同席していた別のペアの女性が「あら、パートナーのダイヤモンドが2枚とわかったので、私も同じディフェンスしてワンダウンさせたわよ」とのこと。

あと、次のようなこともありました。今回も私はEです。

2nd Session, Board #18
NS Vul, Dealer E
A 5 4
Q 9 8 4 3
2
Q J 10 2
7 3 2 N

 W     |      E 

S
Q J 6
K 7 6 A J 10
A K Q J 8 6 7 5 4 3
9 K 5 4
K 10 9 8
5 2
10 9
A 8 7 6 3

ビッドは、記憶によれば以下の通り。

NESW
P P 1D
1H 2NT //
O.L. 10

オープニングリードをAで取ったNは、間髪をいれずQをリターン。
クラブを打ち抜かれて2ダウンです。
スペードを続けていれば2NTは(たぶん)3メイクします。
「クラブシフトがお上手でしたね」とNの女性プレイヤーに言うと、「いえ、まあ、当然でしょう」との答え。

いやあ、フライトBとはいえ、さすがにナショナルの決勝に出てくるようなプレイヤーはレベルが高いですね。恐れ入りました。
posted by ぽそこし at 23:55| Comment(0) | TrackBack(0) | コントラクトブリッジ | このブログの読者になる | 更新情報をチェックする