DashでJava SE 8 日本語ドキュメントに対応させてみた

f:id:mtgto:20140826013726p:plain:w300

Java SE 日本語ドキュメントの置き場所を読んでいて気付いたのですが、いつの間にかJava SE 8の日本語ドキュメントが公開されていたのですね(リンクはAPIドキュメント)。現時点ではまだすべてのクラスが日本語化されてるわけではないようですが、よく調べるところを日本語で読めるのはありがたいものです。

ということでMacユーザーならきっとみんな使ってるAPIビューアDashJava SE 8のドキュメントを見る方法の紹介です。なおJava APIドキュメントのライセンスで、インターネットでの再配布は許可されていないため、Docsetの再配布をする予定はありません。予めご了承ください(ライセンスにcan be redistributed internallyとあるので、作ったものを個人的にお渡しすることならできるようです)。

※この記事はJava SE 7編の続編です

必要なもの

  • Xcode (docset変換アプリのビルド用)

手順

  1. 改造版javadocsetを取得、ビルド
  2. zip書庫になってるドキュメントをダウンロード
  3. docsetを作成
  4. Dashに取り込む

1. 改造版javadocsetを取得、ビルド

DashでAPIドキュメントを利用するには、専用のdocsetという形式に変換する必要があります。 Dash作者のGitHubリポジトリjavadocsetというJavadocをdocsetに変換するアプリがあるのですが、このアプリでは日本語のAPIドキュメントには対応してないため、改造したものを使います。

a. 日本語版対応javadocsetをダウンロード

私が作ったjavadocsetの改造版があるのでそれをcheckoutしてください.

git clone https://github.com/mtgto/javadocset.git

終わったらjavadocset/javadocset.xcodeprjXcodeで開きます.

b. ビルドする

MacアプリのビルドするだけならAppleMac Developer Programへの登録は不要です.

XcodeProductメニューからArchiveを選択します.

f:id:mtgto:20140826013845p:plain

ビルドに成功するとOrganizerが開くので、Export...ボタンを押します.

f:id:mtgto:20140826013925j:plain:w300

Save Built Productsを選択し、適当なフォルダに保存します.

f:id:mtgto:20140826014001p:plain:w300

保存したフォルダのusr/local/bin/javadocsetというファイルをパスの通るところにコピーします.

2. zip書庫になってるドキュメントをダウンロードする

次に日本語版ドキュメントをダウンロードします.

http://www.oracle.com/technetwork/jp/java/java-sun-1440465-ja.html

執筆時点ではこのURLですが、将来変わっているかもしれません。そのときには冒頭の「Java SE 日本語ドキュメントの置き場所」を参考に探してください.

今回はJava SE 8用のドキュメントがほしいので8.zipをダウンロードします. 展開するとE54527_01というフォルダが生成されます.

f:id:mtgto:20140826090222p:plain:w300

3. docsetを生成する

1.で作ったjavadocsetを使ってDashが読めるdocset形式へ変換します.

コンソールで2.で書庫を展開したフォルダに移動してから、

$ javadocset 'Java SE 8' api

のように実行すると、3分ほどで完了し、Java SE 8.docsetというフォルダが作成されます. Java SE 8.docsetのファイルサイズは281.9MBとなりました.

4. Dashに取り込む

あとは適当なフォルダにJava SE 8.docsetをコピーしてダブルクリックすればDashに取り込まれます.

以上で終わりです!ここまで読んでいただきありがとうございました.