chm PHP documentation. Not working and confusion

Steve
2013-07-12
2013-09-08
  • Steve
    Steve
    2013-07-12

    Hi Pierre,

    Just a few comments about help files.
    1. I tried setting up the latest help file off the PHP website, but it doesn't work with the F1 key. I suspect this is an issue with the file rather than PHP. Unfortunately the current file that works is 2009, and there have been a number of new commands since then. I fiddled for a while, but failed to get the new version to work. Current set up is C:\Program Files\Dev-PHP2\docs\php_manual_en.chm I tried to use php_extended_en.chm. Is there something I need to do to get it to work?
    2. There are three places under Options where the PHP manual path is set up: Project -> Path of PHP Manual, General -> Extra -> Documentation Table and finally General - > Externals. It is unclear which controls the F1 key, but recently the F1 key didn't work, and I found it was an error in General - > Externals.

    Just mentioning it as I found the whole thing a bit confusing.

     
    Last edit: Pierre Fauconnier 2013-07-12
    • a) According to php.net: "The CHM builds are offline but will be fixed in the future."
      Well, I can't reproduce the bug

      b) I'm using a 2011 file - which works fine
      But, at first, we have to "unlock" the .chm (microsoft security)
      Via ms-explorer select the file, then right-click and select "Property" option menu - then a dialog box should appear and contain a "Unlock" button at its right bottom

      c) Three places to set the path of php.chm
      You're right.
      c1) And there are many more formats for this (these) manual(s). That's why there is the "Extra", in order
      - to set the right format and
      - to download the right manual.
      c2) But, as the latest known format is not depending any longer on the user's language (en, es, ...) we are able to set the manual while setting the PHP engine, hence the "Project"
      c3) "Externals"
      I don't understand. This feature is only used to run external programs.

      Actually, c1) and c2) update the same setting. I mean you can set the pathname of the PHP manual via "Extra" or via "Project".

       
  • Steve
    Steve
    2013-07-18

    Just downloaded the latest copy of php_manual_en.chm. Has exactly the same name, but is 12mb instead of 7mb. Unlocked and copied into current file location, and renamed the "old" chm out of the way. Made no changes to DevPHP.

    New chm file doesn't work. DevPHP opens the file, but function name I hit F1 on appears in the index search, and no help page appears.

    Renamed the old chm back to original name, and renamed the new file out of the way. F1 help instantly works. Again no changes in DevPHP. Therefore it is an issue with the latest file - presumably to hand the page which was searched for it need to be compiled with some index which helps the page be displayed. Sadly the PHP website does not host older (but newer than mine) versions that I could try.

    What command line does devPHP use to open the chm? Maybe I could raise it as a bug with the PHP chm compiler team.

     
    • As of 2013-sep-08 "The CHM builds are offline but will be fixed in the future."

      By searching the directories of my computer, I found a file named "php_enhanced_en.chm"
      Its revision is: 2012-01-26
      It seems to work fine.

      http://devphp2.free.fr/files/2012.php_enhanced_en.chm [28.2 MB]

      Hope this helps.

       
  • Just visited the http://php.net/download-docs.php
    No .chm (compiled html) are downloadable, just standard html file(s)

    I don't think filing a bug report to PHP doc is a good idea ;)

    The command line used to access the .chm is via an API:
    Application.HelpKeyword( SearchString )

    The filename of the .chm file to used is set in each project configuration file "project.prd", at section "[Engine]", key "CHM="
    Here, we may find some pseudo-variables %DEVPHP% (relative to devphp.exe program), %LOCALPATH% (relative to the root of the project itself) or %USBDRIVE% (relative to the logical unit of a memory stick or something like that)
    For example:

    [Engine]
    CHM=%DEVPHP%\docs\2011.php_manual_fr.chm