On Jul 10, 2013, at 8:29 PM, Bogdan Popescu <bogdan...@gmail.com> wrote:
> I'm the developer behind Dash, a OS X documentation browser > (http://kapeli.com/dash) and I rely on those CHMs for generating the PHP > docset. > > Can you point me in the right direction to get more information on how the > CHMs get generated and what exactly is wrong with them? Hello Bogdan, I'm not an expert but will try. Some links: http://svn.php.net/viewvc/phpdoc/doc-base/trunk/build.chms.bat That script refers to: http://svn.php.net/viewvc/phpdoc/doc-base/trunk/scripts/build-chms-config.php http://svn.php.net/viewvc/phpdoc/doc-base/trunk/scripts/build-chms.php And there's also: http://svn.php.net/viewvc/phpdoc/doc-base/trunk/scripts/build-chms-history.php The fetching (copying to mirrors (well, rsync)) takes place here: http://svn.php.net/viewvc/phpdoc/doc-base/trunk/scripts/fetch-chms.php This shows the builds happen on the following server, which lists a bunch of files: http://php.tuxxedo.net/chm/ We used to build CHMs on a dedicated php.net Windows box but that donated box disappeared so Kalle added the builds last month I believe. Here's a recent post that lists ~all of the CHM bugs, including the current issue: http://markmail.org/message/4ocibtg5tcpd4mgx Hopefully this will help. The above refers to a "phd" that renders the XML to other formats like HTML, so install phd: https://wiki.php.net/doc/phd/install But you'll also need the documentation source (XML) files, so: https://wiki.php.net/doc/howto/gettingstarted So, basically, to build the HTML version of the PHP manual from source: $ pear install phpdocs/PhD phpdocs/PhD_Generic phpdocs/PhD_PHP $ svn checkout https://svn.php.net/repository/phpdoc/modules/doc-en phpdoc $ cd phpdoc $ php doc-base/configure.php $ phd --docbook doc-base/.manual.xml --package PHP --format xhtml Creating the CHM means modifying those a bit, like (I think): $ php doc-base/configure.php --enable-chm $ phd --docbook doc-base/.manual.xml --package PHP --format chm The scripts quoted earlier (e.g., build-chms.php) pass in those options but building the simpler HTML version at least shows your system is able to function. So while this does not answer your question, it's at least a start. :) Regards, Philip