Fun With ASDoc and DITA
Using ASDoc with a codebase library can be a real pain. Use Tweener in your classes? Papervision? Anything from the fl.* packages? You don't want to include all of that in your documentation. ASDoc provides a flag exclude-dependencies. That's fantastic but it doesn't play nice with the doc-sources command which accepts a path/package as a parameter for what you want to document. This means that you have to use the doc-classes param – and list every single class you want to document. Well, I have about 130 classes in my library, so that's a bit of a pain. Enter the AIR app DITA. Dita gives you a GUI for selecting ASDoc paths and then spits out a asdoc.sh (shell script) that lists all your classes in the target path. Here's my final bash script for generating my documentation (note that I've removed the big class list and some other options for brevity):
#!/usr/bin/env bash
asdoc
-source-path ./src
-doc-classes typeoneerror.utils.StageManager
-external-library-path ./lib
-package typeoneerror.buttons "Contains abstract button implementations"
-exclude-dependencies=true
-main-title "Typeoneerror Documentation"
-window-title "Typeoneerror Documentation"
-footer "Copyright Typeoneerror Studios"
-output docs
-warnings=false
-strict=false
-show-binding-warnings=false
-show-actionscript-warnings=false