Issue: 11.5 (September/October 2013)
Author: Marc Zeedar
Article Description: No description available.
Article Length (in bytes): 6,430
Starting Page Number: 24
Article Number: 11504
Related Web Link(s):
Full text of article...
Are you sometimes frustrated trying to find information in Xojo's documentation? While the docs themselves have improved recently, the wiki-based system is not the easiest or the fastest for finding what you need.
Dash is a clever Mac app that lets you
instantlysearch through thousands of pages of APIs and documentation. It supports over 80 languages, but not Xojo. Yet.
Xojo-user Garry Pettet decided to solve this problem by creating a tool to convert the Xojo docs to a format that Dash can use (http://garrypettet.com/2013/07/xojo-docset-for-dash/). Note that since this is a copy of the original documentation, it may not be the very latest, but Garry can update the Dash docset at will and this should keep it current.
(Be sure to thank Garry for his hard work in porting the docs over to the Dash and let everyone know about this fabulous tool.)
Once you have Dash installed, just double-click this link—dash-feed://http%3A%2F%2Fgarrypettet.com%2Fdash-docsets%2FXojo.xml—to install the Xojo docset into Dash. (The Dash developer is working on adding Xojo support directly; it may even be added by the time you read this, in which case you can download the Xojo docs from within the app.)
What's neat about Dash is that it is a document repository for
allyour documentation needs. From right within its Preferences pane you can click "Download" buttons to immediately install the docs for all sorts of languages: Cocoa, Perl, Java, HTML, CSS, and tons more.
When you search, you
instantly(as you type) get a list of matching results. Each API has its own icon, so if you have multiple languages in your search list, you can quickly see which is which. The Xojo one even includes the new Xojo logo!
There are also separate icons for each
categoryof result, such as Classes, Modules, Errors, Methods, Events, Properties, etc. Each is color-coded and it's a helpful way to organize things. You can also browse these categories directly, which is handy for things like "Errors" where you may not remember the exact terminology of the error.
Now the actual documentation is the same Xojo documentation we're familiar with: everything works as before. The main difference is that Dash makes
findinginformation so much easier. For example, typing "list" in Xojo's Language Reference brings up over 500 vaguely related hits. My first ones are "AppleEvent", "AppleEventDescList", "GetAppleEventTarget", "WebSession.Header", "Array", etc. If what I really want is something about the
listbox(far more likely), this isn't helpful at all. Even if I actually type "listbox" as my search term, the results aren't that much better:
With Dash, just "list" shows
listBox.addRowas the fifth result, and I get the result instantly.
Note that Dash doesn't bother searching for actual words in the text on documentation pages. Instead, it concentrates on searching for API terms. This means it's really fast if you're just looking for how to use a command. But if you search for say, some text used in a Xojo example code, like the word "John", you get nothing. Xojo's search results bring up things like
XMLDocumentpage. Knowing that, there are times you might prefer the original documentation, but I think 98% of the time the Dash method is superior (and vastly faster).
willlet you search inside a single page's text: just type a space after your first search term and whatever comes after is searched for on the current page.)
The other handy feature of Dash, of course, is that because it houses the docs for so many languages, it becomes your central tool for documentation. I love that, because I hate having to constantly switch between proprietary help apps, web pages, PDFs, built-in docs, etc. With Dash, everything's in one place.
Dash has tons of other features I don't have space to write about: a History menu, a built-in snippet keeper (so you can copy code right from the docs and store it for reuse), menubar access, a global hotkey for quick access, integration with other apps, and more. It's really amazing. Really the only thing I want that's missing is the Monkeybread Plugin documentation included!
But since Dash is free, why not just install and try it for yourself? It has time-delayed nag screens if you don't pay via in-app purchasing, but all the functionality is there. See if Dash will help you code faster. I'm betting it will.
End of article.