tclAppleHelp is a critcl wrapper for Apple Carbon Help API functions.
tclAppleHelp allows you to use Apple's built-in help system for display and searching of your HTML user documentation See http://developer.apple.com/documentation/Carbon/Reference/Apple_Help/index.html for the discussion of the Carbon Help API, and http://developer.apple.com/documentation/Carbon/Conceptual/ProvidingUserAssitAppleHelp/index.html for discussion of how to prepare and deploy user documentation in the Apple Help format.
tclAppleHelp defines two commands:
tclAppleHelp::RegisterHelpBook: registers an Apple Help book with OS X on application launch.
tclAppleHelp::GotoPage myBookName: launches your help book, using the name of the help book as an argument.
To build tclAppleHelp, use critcl2, which can be downloaded from http://www.digitalsmarties.com/pub/critcl-new.kit. If you want to build tclAppleHelp as a universal binary (PPC and Intel architectures), make sure you are building on Mac OS X 10.4, with Xcode 2.4.1 installed. Also make sure that you set the appropriate environmental variables in your shell:
export CFLAGS="-arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4"
If these variables are set correctly, then critcl will automatically build a universal binary.
Use these commands to build tclAppleHelp:
critcl -pkg tclAppleHelp.tcl
After building, you will see a new folder in your working directory, lib; inside that folder is the tclAppleHelp package.
At the time of this release (Feburary 2007), if you build tclAppleHelp yourself, you will have to edit lib/tclAppleHelp/critcl.tcl to get the package to load correctly. At the very end of the file, comment out this line:
set ::critcl::mapping {ix86-macosx {universal-macosx 10.4} powerpc-macosx {universal-macosx 10.4} }
and replace it with this line:
proc ::critcl::platform {} {return universal-macosx}
This is because of a bug in critcl2, which is still in beta at this writing. The build of tclAppleHelp that ships with this README already has this fix applied.
See tclAppleHelp.tcl for licensing and copyright information. Thanks to Daniel Steffen for assistance with specific points of the code.
| Copyright (C) 2006 Kevin Walzer. All rights reserved. All trademarks and copyrights are the properties of their respective holders. |