« Pocket Launch 不調? (復旧済み) | トップページ | kobo を使い始めた »

2013年3月 7日 (木曜日)

Pythonの日本語版HTMLヘルプ再構築

仕事で使うツールはやっぱり何かと Python で書くのがよさげなので、ようやく勉強を始めようとしたら、日本語ドキュメントが見れずに困っていた件。
Pythonドキュメント日本語翻訳プロジェクトさんのpython-doc-2.7ja1-b.chmというファイルを開こうとしたら、 copybutton.js というスクリプトでエラーしたよというダイアログが表示されます。最初に一度だけならまだしも、サンプルコードを含むページで必ず表示されるらしく読む気になれません。既知の問題のようですが、まだ対策されてないみたい。

こちらの方のようにドキュメントソースから再構築するのがスジだと思いますが、色々揃えるのが面倒だったので小手先で対策してみたメモ。(結果、結構面倒だったような?笑)

やった手順は:

  1. 件のchmをデコンパイル
  2. 問題のcopybutton.jsを無効に
  3. インデックスファイル(*.hhk)ファイルのリンクを修正
  4. chmの再コンパイル

chmファイルのデコンパイルは、Windowsに最初から(?)入っているhh.exeを使うかHTML Help Workshopを使って。hh.exeのコマンドラインは下記。HTML Help Workshop (hhw.exe)はメニューから。

hh.exe -decompile output-folder chm-file

copybutton.jsの無効化は、全てのhtmlを修正するのは骨が折れるので、copybutton.jsを空のファイルにしただけ。

インデックスファイルの修正は、ざっと眺めてテキトーに、Emacsで以下のような正規表現による置換をしてみた。置換後、問題のない英語版のchmのインデックスファイルと比べてパッと見、大丈夫ぽい(笑)。

="\(\[[0-9]+\] \)*('[^']*', [^']*'\(.+\)')"="\1\2"

後は、上記プロジェクトのページにあるhtmlhelp.pyのソースを参考に、HTML Help Workshopのプロジェクトファイル(*.hhp)とFull text search stop list file(*.stp)を作成して、chmファイルを再コンパイル。使用したhhpファイルの例は下記。フォントはお好みで。stpファイルの中身は、htmlhelp.pyに定義されているstopwordsの中身の単語をソートして1行毎に並べたモノ。

[OPTIONS]
Binary Index=No
Compatibility=1.1 or later
Compiled file=python-doc-2.7ja1-b.chm
Contents file=python-doc-2.7ja1-b.hhc
Default Font=VL Pゴシック,10,128
Default Window=python-doc-2.7ja1-b
Default topic=index.html
Display compile progress=No
Full text search stop list file=python-doc-2.7ja1-b.stp
Full-text search=Yes
Index file=python-doc-2.7ja1-b.hhk
Language=0x411 Japanese (Japan)
Title=Python 2.7ja1 documentation

[WINDOWS]
python-doc-2.7ja1-b="Python 2.7ja1 documentation","python-doc-2.7ja1-b.hhc","python-doc-2.7ja1-b.hhk","index.html","index.html",,,,,0x63520,220,0x10384e,[0,0,1024,768],,,,,,,0


[FILES]
index.html

[INFOTYPES]

できたchmを開くとこちらのページにあるような文字化けに悩まされて暫くハマったけど、自分の場合はIEのエンコーディング(Encoding)の設定を自動選択(Auto-Select)にしたら直りました。

これでいいのかな?(笑)。取り敢えず、今のところは問題なく使えてそう :-)

2013/03/08 追記: インデックスファイル置換の正規表現を一部修正。(まだ開けないリンクがあったので)

|

« Pocket Launch 不調? (復旧済み) | トップページ | kobo を使い始めた »

スクリプティング」カテゴリの記事

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/144752/56896686

この記事へのトラックバック一覧です: Pythonの日本語版HTMLヘルプ再構築:

« Pocket Launch 不調? (復旧済み) | トップページ | kobo を使い始めた »