Getting Help from CHM
If you're a developer on a Windows machine (which my stats would seem to say is likely!) then you may be interested to know that most languages offer compiled help files that you can download to your machine.
Almost every application for Windows comes with a help file. Do a search on your drive for *.CHM and you'll uncover a whole collection of these help files on your system.
I prefer the CHM files over their web-based alternatives because they are fast, searchable, and available offline. They offer content in a handy tree-based table of contents or as an alphabetical index (really nice if you know the name of that function but need to know the parameter order). Also, they tend to be cross-referenced allowing you to burrow into related topics.
So, here's a quick list of the ones I use:
- PHP, also apparently available in an extended format that I have not used personally.
- MySQL; look for the CHM column in the table of documentation.
- CakePHP; this one is auto-generated and tends to be pretty good but some of the formatting can make it difficult to follow along. Grab both the API and Manual.
- Windows Script; it does Microsoft Genuine validation (so annoying) and having both VBScript and JScript combined in one file is frustrating. The version before this had VBScript and JScript in separate files, making it less confusing to look up a method or object description but is no longer available.
- If you do MS SQL Server development and have the client tools installed, do a search on your hard drive for tsqlref.chm and mdacxml.chm. The Transact SQL one is the same (I think) as the one that you'd get if you hit F1 from the Query Analyzer. The MDAC one has a bunch of stuff but best of all includes MSXML and ADO API information.
Microsoft Office applications also have developer CHM's that you can install, if you ever find yourself doing VBA development.
Got any good documentation tips?
Conversation
Do you use a reader to view the files or just crack open Windows help?
The files should already be associated with Windows Help and open up when you double-click on them.
Of course you can read .chm files on Mac OS X thanks to Chmox
MS Help 2 (screenshot, which is used for the MSDN/Visual Studio reference library) has a more developer-friendly GUI and is better organized than CHM's. You can create custom references for it but I'm not sure how easy it is.
Thanks for the collection of CHM's. I never thought about using one for PHP because I'm so used to just going to php.net whenever I need help on a method (plus the comments are very useful).
Must say that I've always been using the online versions of the documentation (php.net/functionname/ or starting at Google and using the inurl: param).
However, offline versions are available, yet mostly in .pdf. Maybe I ought to switch to the CHM version because of their advance search capabilities ... thanks for the links!
I like my online versions too (mainly for the benefit of discussion and recency), but I always keep HTML or PDF manuals on each machine I use.
CheatSheets are my favourite form though - the music video of documentation! 80% of the time they cover what I need.
The original versions of PHP Developer could actually load the PHP .cmh file if you gave it to the program, so it would display the relevant page simply by ones selecting a function! I've yet to see integration like this anywhere else.
Luke: at the bottom of the extended CHM I've linked to above, they have instructions on how to integrate the help with a number of editors to do just what you describe. Very cool!
For Javascript 1.50 as CHM check out this project:
http://javascript.charinnawaritloha.net/
Kjell: Oooh, good link! Added to my collection. :)
I use chm for php and mysql all the time. One thing about the php chm is that, of course, all the comments aren't there, and they are sometimes more helpful than just a function definition, and the copy for experimental functions like everything xml-related is often less than a sentence.
I know this is old by now, but i have another cool link for you :)
I snatched myself some spartime and created this:
Prototype 1.5.0 Api Docs.
Enjoy!
Upps I did it again...
is it possible to read a .chm file using php - i.e. so i can have an online version?