Building ASDictionary

Content

Building ASDictionary

Posted in:

The Mugginsoft OS X application automation archive uses ASDictionary to generate browsable HTML AppleScript documentation based on an application's own description of its scripting capabilities. ASDictionary is a standalone python application bundle generated using py2app.

To start with, in this example at least, we want to use Python 2.7. The build will likely fail if we don't correctly target the correct version of python at each stage.

ASDictionary has some dependencies that we can retrieve and install from PyPi using easy_install (which is bundled with setuptools).

sudo easy_install-2.7 -U pyobjc
sudo easy_install-2.7 -U py2app
sudo easy_install-2.7 -U HTMLTemplate
sudo easy_install-2.7 -U distribute

Installing pyobjc requires that the Xcode command line tools are installed. Note that this is a separate download when using Xcode 4.

The appscript py-osaterminology package is required. So we build and install it:

cd appscript/py-osaterminology/trunk
sudo python2.7 setup.py install

Note that py-osaterminology has an install dependency on py-appscript and will try and download and install it.

Likewise we build and install py-aemreceive:

cd appscript/py-aemreceive/trunk
sudo python2.7 setup.py install

If a we require a new build of the py-appscript package then:

cd appscript/py-appscript/trunk
sudo python2.7 setup.py install

Building py-appscript also requires that the Xcode command line tools are installed. If building py-appscript is not strictly necessary then it can be downloaded if necessary and installed from PyPi using easy_install:

sudo easy_install-2.7 -U py-appscript

We can now build ASDictionary:

cd appscript/ASDictionary/trunk/src
python2.7 setup.py py2app

ASDictionary.app should be present in appscript/ASDictionary/trunk/src/dist