Documentation - Extended CHM Format
Introduction
PHP usage increases from one month to the other, and this includes the expansion of PHP on Windows. Since many users would like to have an easily accessible and fast help resource to assist their daily work, we decided to create an extended CHM version of the manual, which includes many additional features, compared to the regular CHMs.
The development of this edition is still in progress, thus currently only an English version is available. Sometime we hope we can make all the languages available with the feature set provided in this extended CHM. The php-doc-chm dedicated mailing list exists for discussion related to this edition of the manual. You can find subscription options as well as the archives on our mailing lists page.
Features
Features provided by HTML Help
- Full tree like TOC menu of pages, with even the smallest parts included
- Alphabetical index of all pages [with quick access to functions]
- Full text search (see the chapter about FTS in the CHM)
- Personal favourites listing
- Window position and size remembered
Features in PHP Manual CHM Edition (current build)
- Two clean and clear designs
- Extension mechanism to apply your own CSS or your own graphical design
- Manual notes included as separate file (see the chapter about full text search in the CHM)
- External windows application to manage preferences
- Online functions, bug reporting on manual pages
- Support for right click menu overrides, custom right click menus
- Color coded examples, with all function names as links, example copy to clipboard
- 'Path to this page' displayed for all the pages
- External links open in new window, and marked with '»'
- General gray table look and feel for misc. tables
- Integration with popular IDEs
Planned features for the next builds
- Online skin repository with ready made skins for the CHM Edition
- Special marking of see also links
- Support for all manual languages (currently only English is available)
Known bugs and limitations
Though there are CHM viewers for non-Windows platforms, we use JScript objects in the CHM, so this edition will probably not work for those trying to view the contents in alternate viewers.
IDE integration
As the CHM versions of the PHP manual are used on more and more development machines, IDE authors also began to add support for the CHMs in their IDEs. Here are some IDEs that support the integration of this CHM at different levels. If you know of any more IDEs that should be listed here, please write to the mailing list mentioned above. If you are an IDE author, and would like to get more technical info on HTML Help, read the integration section in the CHM.
-
ConTEXT: Open the "Options" menu and select "Environment Options". Open the "Miscellaneous" tab, select the desired language in the list and click the "Edit" button. Browse to the help file you want to associate with that language. When you're done, click "OK".
To use context sensitive help within ConTEXT, go to Options -> Environment Options, and select the Execute Keys tab. Click Add, and type "php, php3, phtml" in the box that pops up. Now, select F9 in the list and put "HH" under Execute, the directory of the help file in Start In, and "mk:@MSITStore:php_manual_en.chm::/_function.html#%w" for Parameters. Window should be Normal, Hint "PHP Function Reference", and Save "Nothing". Keep both Use short DOS names and Capture console output unchecked. To use it, simply hit F9 with the cursor over the function you want help on.
- CrimsonEditor: The author of the editor describes how to integrate HLP and CHM files with keyword indexes into the IDE. This method works quite well, with our CHMs.
- Dev-PHP 2: Go to "Options" » "General options", and select the "Extra" tab in the dialog displayed. Enter the full path of the help file (or locate it with the locate button), then choose the correct language in the corresponding combo-box. Finish with the "Ok" button. Now you can use F1 to get help on a PHP function in the editor.
- Dreamweaver MX: Users of this product can download an extension on this Spanish page. If one would like to know what the text reads in English, Babel Fish is there to help.
- EditPlus: You can add the CHM as a custom tool in the "Tools" » "Configure User Tools..." » "Add Tool" menu. There you can assign a shortcut key combination to this tool, and so you can access the help anytime with that.
- HomeSite: Since .chm help files are basically executables in HomeSite, you integrate Compiled HTML Help sets by adding them as a custom toolbar button. Install the help set wherever you like, then created a toolbar button set to "Launch an external application" with the filename pointing to the main .chm file.
-
jEdit:
Users of this editor can grab and adjust this BeanShell macro. Save it
as
[jEdit Settings Folder]/macros/PHP/Open_in_PHP_Manual.bsh. You can also assign a hotkey and/or a context menu option to it.CHM_location = "C:\\PHP\\php_manual_en.chm"; if (textArea.getSelection().length > 0) { CHM_location += "::/_function.html#" + textArea.getSelectedText(); } exec("HH " + CHM_location); - Mr. Ed: Choose the menuitem "Dateiklassenabh�gige Einstellungen" (Filetype Specific Options) in the menu "Optionen" (Options) and choose the PHP language. This is chosen by default, if you edit a PHP file. Next click "Bearbeiten" (Edit) and in the upcoming dialog box choose the tabulator "Externe Hilfe" (External Help). There you can define external help files (.HLP, .CHM)
- Multi-Edit: Provide the path and file name of the CHM in the "Help file location" setting in the Extension setup for any desired PHP extension.
- PHPEdit: The Help Integration module of PHPEdit enables users to integrate many formats of help into the IDE, and browse them in a common tree. You can find more information about this in the current documentation.
- Programmers' File Editor (PFE): Open the "Options" menu and select "Preferences". Select "User Help Files" in the "Category" box. Click the "New" button, type in a label for the new help file into the "Help menu text:" box and the path to the file in the second box, "Associated help file:". There is a small browse button on the right, you can use it to find the file you want to use. When you're done, click "OK".
-
SciTE:
Place this in Scite config file:
command.help.$(file.patterns.php)=$(CurrentWord)!$(SciteDefaultHome)\help\php\php_manual_en.chm command.help.subsystem.$(file.patterns.php)=4
In this case the CHM Edition of the PHP Manual is placed in C:\Program Files\SciTE\help\php. - TextPad: You can install the CHM via Configure » Preferences » Tool » Add » Online Help File.
-
UltraEdit: You can add any custom help file (like the PHP CHM) with the "Help" » "Add Help Files" menu item. You can also add the Help Preferences application via the "Tools" » "Advanced" » "Tools Configuration" menu item.
To add the CHM as a context sensitive help provider, go to "Tools" » "Advanced" » "Tools Configuration". In the Command Line box, add "HH mk:@MSITStore:php_manual_en.chm::/_function.html#%sel%", set the Working Directory to the CHM's directory and provide any name for it. Check the Windows Program checkbox, uncheck Save Active File, and click Insert. To use it, mark any function in UltraEdit and press CTRL+SHIFT+O.
- Arisesoft Winsyntax: Simple step-by-step instructions are included in the editor. Choose Help » Install PHP Help in the menu.
-
Zeus for Windows Programmers Editor: In the "Options" » "Document Types" menu select "PHP Document Type" and hit the "Edit" button. Choose the "Quick Help" section, locate the php_manual_en.chm file and add it to the document type. Finally apply the changes.
To test the integration open a PHP file, place the cursor on a PHP keyword (ie php_stream_eof etc) and use the Help » Quick Help menu to display the quick help.