Microsoft Compiled HTML Help

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索

Microsoft Compiled HTML Help は、マイクロソフト1997年Microsoft WinHelp 形式の後継として開発・リリースした独自のオンラインヘルプファイル形式である。Windows 98 のリリースで最初に導入され、Windows XP や Vista でもサポートされ続けている。ファイル拡張子CHM(".chm")。

HTML Help のファイルは、ヘルプ作成ツールで作成される。マイクロソフトは Windows のバージョンアップに合わせて HTML Help Workshop もリリースし、フリーにダウンロード可能としている。他にもサードパーティから様々なヘルプ作成ツールがリリースされている。

電子書籍ビューワ Microsoft Reader の .LIT ファイル形式は、基本的に HTML Help の CHM 形式から派生したものである。

2002年、マイクロソフトは .CHM 形式に関連したセキュリティ問題を公表し、パッチを公開した[1]。その後、マイクロソフトは .CHM 形式を止めて新たなヘルプ形式である Microsoft Assistance Markup Language英語版 に移行する方針とし、Windows Vista でそれを採用している。

歴史[編集]

  • 1996年2月 - マイクロソフトが、WinHelp の開発停止と新たな HTML Help 標準の開発を発表
  • 1997年8月 - HTML Help 1.0 (HH 1.0) が Internet Explorer 4 の一部としてリリースされた
  • 1998年2月 - HTML Help 1.1a が Windows 98 の一部としてリリースされた
  • 2000年1月 - HTML Help 1.3 が Windows 2000 の一部としてリリースされた
  • 2000年7月 - HTML Help 1.32 が Internet Explorer 5.5 と Windows ME の一部としてリリースされた
  • 2001年10月 - HTML Help 1.33 が Internet Explorer 6 と Windows XP の一部としてリリースされた
  • 2001年3月 - WritersUA において、マイクロソフトが新たなプラットフォームとして Help 2 (HTMLベース)を発表
  • 2003年1月 - マイクロソフトが Help 2 を汎用ヘルププラットフォームとしてはリリースしないことを決定

ファイル形式[編集]

HTMLのサブセットで書かれたページ群とハイパーリンク化された目次で構成される。CHM形式は読むことに最適化されており、検索性能が強化されている。複数のファイルをまとめて LZX で圧縮する。多くの CHM ブラウザは、ヘルプファイル本体を表示すると同時に目次を表示できるようになっている。

ファイルの先頭には "ITSF" という文字列がASCIIで入っている("Info-Tech Storage Format" の略)。ファイル形式はリバースエンジニアリングによって一部が明らかになっており、containerinternal files といった仕様が公開されている。

Windows 上では、このヘルプファイルを hhc.exeコンパイルできる。これは、HTML Help Workshop の一部として無料で入手可能。

オープンソースでCHMファイルを読めるツールもあるが(例えば xCHM, KchmViewer, GnoCHM, Chmox for OS X, Chamonix for OS X)、Windows 自身の持つ機能を完備したものはなく、特にCHMファイルを作成する機能を持つものはない。

利点[編集]

  • 通常のHTMLよりもファイルサイズが小さい
  • HTMLのもつフォーマットオプションにより、テキスト表現が豊かである
  • 全文検索が可能
  • 複数の CHM ファイルを共通の目次や索引を持つ1つのファイルに統合可能
  • 多言語文字を含む目次やトピックフォルダを生成できる

応用[編集]

当初、ヘルプファイル向けに作られた形式だったが、その後他の用途にも使われている。HTMLの複数のページをコンパクトにまとめ、アーカイブ状態でブラウズ可能であることから、電子書籍に応用された。人によっては、個人的なメモをこの形式で残す場合もある。というのも、階層構造化された文書で検索も高速という利点があるためである。Firefox の拡張で CHM ファイルを見ることができるものもある[2]

HTML の抽出[編集]

Windows では、CHMファイルから HTML 部分を以下のコマンドで抜き出すことができる。

hh.exe -decompile extracted filename.chm

これにより、filename.chm に含まれている HTML ファイル群が extracted というディレクトリ配下に展開される。

apt をパッケージングツールとしている Linux の場合、CHM から HTML を抜き出すには、以下のようにすればよい(1つ目のコマンドは Debian 向け)。

 $ sudo apt-get install libchm-bin
 $ extract_chmLib tero.chm tero/

Windows 以外で使える同様のツールとして、CHM Tools Package がある。

外部リンク[編集]