31
32

More than 5 years have passed since last update.

Python 2.7 日本語ドキュメントを Dash.app に追加する

Last updated at Posted at 2014-03-16

基本的なやりかたはこちらを参考にしました。
Dash.appにSphinxベースのドキュメントを追加する方法(日本語ドキュメントでもOKだよ) - プログラマ行進曲第二章

で、このサイトでもふれられているように単純に変換しただけでは Classes とか Modules をうまくインデックスできませんでした。

以下、Mac OS X 10.9.2 での手順です。

手順1 doc2dash をインストール

pip が入ってないので easy_install でインストールしました。command line tools のインストールが必要です。依存パッケージ lxml のビルド中にエラーで止まる場合は、

sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future easy_install doc2dash

とフラグを設定して実行すれば大丈夫でした。pip でもたぶん同じでしょう。
参考:Error installing python module lxml on osx mavericks - Stack Overflow

手順2 日本語ドキュメントを変換

python-doc-ja - Pythonドキュメント日本語翻訳プロジェクト - Google Project Hosting から html 一式ダウンロードして doc2dash で変換。

doc2dash -n Python2.7ja -i _static/py.png -I index.html -d pathto/output pathto/python-doc-2.7ja1-html

試しにこれを Dash に食わせてみるとやっぱりインデックスができていない。

手順3 英語ドキュメントを変換してインデックスを抜き出す

そこで同じバージョンの英語ドキュメントを変換して違いを見てみようということに。

Download — Python v2.7.6 documentation から html 一式ダウンロードして doc2dash で変換。日本語ドキュメントのときより時間がかかり、正常にインデックスができていました。docset の中を見てみると docSet.dsidx のサイズが明らかに違っていたのでこれを日本語 docset にコピー。すると Classes や Modules のリストが出てくるようになり、リンクも正常に機能しました。すべてのインデックスを検証してはいないので、どこかで整合性が取れていないかもしれません。

スクリーンショット

Dash 純正の docset から取り出す方法でも可能かもしれませんが、doc2dash とは違う方法で変換しているようでインデックスファイルの種類が異なっています。

Python 3 系でも同じようにできると思いますが、日本語ドキュメントを一括ダウンロードできる場所がなさそうなので試していません。

Dash - Documentation Browser, Snippet Manager - Kapeli
doc2dash 1.2.0 : Python Package Index

追記 2017-05-17: Python 3.6.1

英語版 docset の html を直接置き換えるという無理矢理な方法で 3.6.1 版を作りました。英語版の充実したインデックスをそのまま利用できます。html にアンカーを埋め込む必要があるのでちょっと複雑なスクリプトになっています。
https://gist.github.com/hetima/26f21023c417e68be1d4db2d1e388816

31
32
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
31
32