javaの最近のブログ記事
翻訳作業にOmegaTという翻訳メモリを使っている。
原文ファイルから訳文ファイルを生成するのは、GUIメニューから実行するのだけど、これを自動化したい(antのbuildに組み込めないか)と思って調べた。
こういうときオープンソースはいいよなーとソースを読んだら期待通りCLIが実装されてた。
※けど、よくよく見れば(英語版の)マニュアルにばっちり書いてあったのだった。
■antを実行するbat
■build.xml(部分)
ディレクトリ構成
./
build.xml
omegat/ ・・・OmegaTのプロジェクト
source/ ・・・原文ファイル置き場
target/ ・・・訳文ファイル出力先
環境:
Windows XP Pro SP3
JRE 6
OmegaT 2.0.3
Ant 1.7
- javaのpropertiesに対応している。
- (翻訳メモリ的には当たり前だろうけど)用語集を定義できる。
- 既翻訳文から類似した部分を提示してくれる。
- 無償で利用できる。
- UIがすっきりしていると思う。
原文ファイルから訳文ファイルを生成するのは、GUIメニューから実行するのだけど、これを自動化したい(antのbuildに組み込めないか)と思って調べた。
こういうときオープンソースはいいよなーとソースを読んだら期待通りCLIが実装されてた。
※けど、よくよく見れば(英語版の)マニュアルにばっちり書いてあったのだった。
■antを実行するbat
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_15
set OMEGAT_HOME=c:\Program Files\OmegaT
cmd /c c:\path\to\ant\bin\ant.bat
■build.xml(部分)
<property name="project" location="omegat"/>
<property environment="env"/>
<target name="gentext">
<java
fork="true"
jar="${env.OMEGAT_HOME}/OmegaT.jar"
failonerror="true">
<arg value="${project}"/>
<arg value="--mode=console-translate"/>
</java>
</target>
ディレクトリ構成
./
build.xml
omegat/ ・・・OmegaTのプロジェクト
source/ ・・・原文ファイル置き場
target/ ・・・訳文ファイル出力先
環境:
Windows XP Pro SP3
JRE 6
OmegaT 2.0.3
Ant 1.7
Jad
というイメージだったのだけど、
Java Decompilerてのがあるらしい。
時々逆コンパイルできなかった、みたいなメッセージが出てるのが気になるけど、ポストJadを探していたので非常に助かる。
というイメージだったのだけど、
Java Decompilerてのがあるらしい。
- JDK 1.5.0、1.6.0に対応している。Generic/アノテーション
- jarを一括して解析してくれる
- 解析結果を一括して保存できる
- jar、クラスごとにタブ表示され、クラス/インタフェース名をクリックすると当該jar/クラスにさくっと移動できる(これが結構いい)
時々逆コンパイルできなかった、みたいなメッセージが出てるのが気になるけど、ポストJadを探していたので非常に助かる。
2010/01/30追記:
今となってはjadよりもJava Decompilerをおすすめしたい。
便利なJadで、よく使っているオプション。
Jad - the fast JAva Decompiler
今となってはjadよりもJava Decompilerをおすすめしたい。
便利なJadで、よく使っているオプション。
Jad - the fast JAva Decompiler
jad.exe -8 -t -pi 100 -o -lnc -i -s .java *.class
- -8:文字列をUNICODEのエスケープ表現を使わないで通常の文字列で出力する。
- -t:インデントにタブを使う
- -pi <num>:import行を「*」を使ってまとめる閾値。100だと、ほぼ纏められずにClass単位でimport行が吐かれるので、参照しているclassを探しやすい。Fully qualified namesで出力する方法もあるが、これだと出力結果が「うるさく」なるので、このオプションを使っている。
- -o:プロンプトなしで上書き出力する
- -lnc:元のソースの行番号をコメントで挿入する。例外のスタックトレースに元のソースの行番号が出てくる場合があり、これを追いかけやすくなるから。
- -i:フィールドのデフォルト初期化も出力する。
- -s <ext>:逆コンパイル後出力ファイルの拡張子。デフォルトは「.jad」。
