A Coda Plugin Skeleton for writing Cocoa plugins in Python, ripped from the bowels of Ian Beck's TEA for Coda.
Python Objective-C
Pull request Compare This branch is 22 commits ahead of onecrayon:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src
.gitignore
CodaPlugin.py
README.markdown
setup.py

README.markdown

Coda Plugin Skeleton

Coda Plugin Skeleton is a poorly named framework for writing Cocoa plugins for Coda using Python.

The skeleton is essentially the gutted remains of Ian Beck's excellent TEA for Coda plugin. It provides a PyObjC bridge to the Cocoa plugin API, along with several convenience functions for dealing with text manipulation, menu generation, etc.

Building from source

In order to get anything useful out of Coda Plugin Skeleton, you will need to download and build the source:

git clone git://github.com/bobthecow/coda-plugin.git
cd coda-plugin
python setup.py py2app

If you wish to create a development version, you can run this instead:

python setup.py py2app -A

This will create a normal version of your Coda plugin, but symlink all the internal files so that you don't have to rebuild the plugin to try out changes (you'll still need to relaunch Coda between changes, though).

Now go build something cool

  1. Edit setup.py, enter your sweet new plugin name and details.

  2. Open CodaPlugin.py and rename the class inside. Because Coda doesn't run plugins in a sandbox, this class name can't be the same as any other plugin. Be sure to change the plugin_name member variable while you're in there.

  3. Edit src/Contents/Resources/English.lproj/PluginActions.plist to add your actions.

  4. Add corresponding action scripts to src/Support/Scripts. If your plugin needs additional libraries, drop them in src/Library and they'll be automatically included.