|
|
YOUR FEEDBACK
SOA World Conference
Virtualization Conference $200 Savings Expire May 16, 2008... – Register Today! Did you read today's front page stories & breaking news?
SYS-CON.TV SYS-CON.TV WEBCASTS |
TOP COLDFUSION LINKS Journeyman CF
Adding New Help Topics to Studio
By: Charlie Arehart
Digg This!
Ever wished you had easy access to Help on non-CF topics such as JavaScript, SQL, and DHTML? Did you know you could easily add such new Help topics to Studio? In this month's Journeyman ColdFusion, I'll show you how easy it is. I'll also point out some existing references you can use to easily extend Studio this way. In just a few minutes, you'll be able to open the Studio Help tab and see JavaScript Help as shown in Figure 1. Figure 1 shows ColdFusion Studio 4.5, but this discussion also applies to both older and newer versions of CF Studio, as well as Allaire's HomeSite and JRun Studio tools.
The Studio Help Tab
By selecting that tab, Studio will show you several available manuals, including all the Macromedia ColdFusion manuals that come with ColdFusion Server (including the installation and administration manuals and the CFML reference), as well as several that come only in Studio and aren't available in print (several Studio customization books). If you don't have access to the paper versions of these manuals, it's a real lifesaver. If you never got the print version of Using ColdFusion Studio, you'll definitely want to read that book here. There's a lot to Studio (including this Help feature) that many never learn about. Things aren't always obvious. The Help tab even includes HTML and HDML/WML (wireless) references, an added bonus that many never realize. However, your excitement may dwindle when you lament that there's no other Help for other important things such as JavaScript, DHTML, and SQL. The good news is that you can easily add support for those kinds of Help documents, if you can find them in HTML format. I'll discuss how to extend Studio to support those additional Help files in a moment. First, let's walk through reading a Help document.
Reading a Help Topic
When you can finally select (double-click) a specific Help topic, Studio will open that "page" of the document by browsing it inside Studio's editing pane in browse mode. Since the Help documents are just HTML files, they open like any other file you might browse inside of Studio. (Fortunately, if you have trouble browsing CFML documents, there's no similar problem with Help documents.) Since the documents are HTML and Studio is using a real browser to view them, you can follow any hyperlinks offered in the docs. Indeed, most of the ColdFusion Help documents also offer a set of up, left, and right arrow icons at the top right of each page to help navigate through the document. Use the up arrow to go to the "parent" level of whatever page you're using (goes to a section, chapter, or document list, as appropriate). You can also select another document directly in the left resource pane. After reading a document you can return to the page you were editing (if any) by pressing the "edit" tab above the edit/browse window, or you can press F12 or select the menu command View>Toggle Edit/ Browse to achieve the same effect. (One nice new feature in Studio 5 is that there's now a separate pane to hold the Help document, so the browse pane remains dedicated to its true purpose.) One last trick you should know about: you don't have to go through this elaborate process of pointing and clicking to open the document list, select the appropriate one, find the section of interest, and open the help topic. If you're editing a CF page (or HTML, HDML, or WML, to name a few), you can simply press F1 while the cursor is on a given tag (of any of those sorts) and Studio will take you directly to the help topic for that tag in whatever reference it determines is appropriate (CF tags open the CFML reference, HTML tags open the HTML reference). This is very cool, and a lot of people don't realize it's available. As of CF Studio 4.01, it also works for CF functions. The Help feature is very useful, and once you learn a couple of things it will almost certainly become something you use all the time. (And again, this all applies to CF Studio as well as HomeSite and JRun Studio.) However, the premise of the article was how to add new Help items. Like so much else in Studio, it's easy - once you know the secret.
Adding New Help References to Studio
The exact directory name for that will vary by user and by any choices you made on installation, but it might be in something like C:\Program Files\Allaire\ColdFusion Studio\Help (or perhaps it will say ColdFusion Studio 4.5 or ColdFusion Studio 5. Just be aware of which to use to effect changes to the version of Studio you're interested in modifying). In any case, you'll notice that the Help directory has a series of directory names that look familiar but a little odd (see Figure 2). (By the way, you may notice that my Windows Explorer shows the complete path to the file I'm exploring, which can be very helpful when you need to cut and paste it. In Windows 2000, at least, you can turn that on from within Windows Explorer with Tools> Folder Options>View>Display the Full Path in the Address Bar and choose "Reset All Folders" to apply it to all folders.) Notice that the directory names are composed of the same name as that used in Studio, except that when shown in Studio, the underscore between words is automatically converted to a space (CFML_ Language_Reference becomes CFML Language Reference). Inside each directory is a set of files, mostly HTML files. The names of these files may not appear to be meaningful, but when Studio opens the files, it will display them within their given reference manual. (Studio uses the title declared within each file's HTML <title> tag to determine the words to show as the topic description.) We'll discuss this more later. One last point: any help files (even a single one) must be placed within a subdirectory under the Help directory. Files in the Help directory itself won't appear within Studio's Help tab. With this knowledge, we can now add new Help files to Studio. If you can locate any set of HTML files organized within a given directory, simply place that directory within Studio's Help directory. Rename the folder to use underscores to represent spaces. When you open Studio's Help References window, the new "manual" will appear. (You can right-click on any of the Help topics in the Studio references pane and click "refresh" to refresh the listing without restarting Studio.)
How to Find Existing HTML Help on Various Topics
I found those at www.devguru.com. There they offer these and other HTML references online. They're freely viewable on this Web site, but the cool thing about installing them inside Studio is that they offer a downloadable version for a nominal fee of $5 per "manual." They also offer references in HTML and CSS2; XHTML, XML DOM, and XSLT; WML and WMLScript; ASP, VBSCRIPT and ADO; and WHS (Windows Scripting Host). I've also added Help whenever I've found it elsewhere, if I thought I might need it inside Studio. For instance, the CD of the book SQL Programmer's Reference offered another (and less Access-centric) SQL reference (though it was truncated due to production problems in making the CD and the publisher is not planning to fix it). Again, with any of these, just copy the directory of Help files to the Studio/ Help directory, replace any spaces with underscores in the directory name, and refresh the Help references window. Some CF-aware software might also install Help automatically, as was the case with Database Blocks, a very inexpensive ColdFusion code-generating tool from Commerce-Blocks.com. Macromedia offers a way to add the CF5 Help documents to your Studio 4.5.2 Help reference (as well as tag editors) via a "tag update kit" at www.macromedia.com/software/coldfusion/productinfo/upgrade/. If you have any suggestions about where to find more, please share them via the feedback capability when viewing this article online at www.sys-con/coldfusion/, or send them to me at carehart@systemanage.com and I'll organize a list of them on my site.
Help File Organization
Also, if the Help file includes subdirectories, the Studio Help engine will automatically render them as "chapters" within the document, each expandable to show their respective documents. Another challenge is the order in which each "reference" will appear within the list of all reference manuals. You'll notice that the preinstalled Help references, such as the CFML Language Reference, all appear first in the list. Any that you add will by default appear at the bottom of the list. You can override this (and other presentation aspects) by modifying a file in the Help directory called xmltree.xml. See the last section in the first chapter of the Macromedia manual "Using ColdFusion Studio" for more information on this file (remember, the manual is accessible from within Studio). The file already has several settings in it for the existing Help documents, which may help you extend it. Remember: You don't need to edit this when adding Help files. Added references will appear in alphabetical order at the bottom of the list with other preinstalled manuals not defined in the booktree.-xml file. (If you're going to edit the book tree.xml file, it would be wise to save a copy of the file under a new name in case you want to revert back to the original.) I hope this review of how to add new Help topics in Studio is helpful. It's easy and extensible, and references are available that can increase your productivity as a day-to-day programmer - the goal of the Journeyman column. Till next time.
Sidebar:
Here's a trick worth sharing for this interface and indeed for nearly any Windows Explorer interface, such as File Open dialogs. You don't need to use mouse-clicks to expand and collapse levels. If you can place the cursor on the item to be expanded or collapsed, you can use keyboard shortcuts instead. If the cursor is on a level with a plus sign, use the keyboard right-arrow keystroke to expand it. If it's already expanded, use the left-arrow to collapse it. If it's already collapsed, a left arrow will jump to the parent, where another left arrow will now collapse the parent.
CFDJ LATEST STORIES . . .
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
|
SYS-CON FEATURED WHITEPAPERS MOST READ THIS WEEK |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||