Skip to main content

Sphinx extension to add CoffeeScript support

Project description

Author:

Stephen Sugden <glurgle@gmail.com>

About

This extension adds a CoffeeScript domain with autodoc support to Sphinx.

This relies on coffeedoc to extract source comments from .coffee files. To install coffeedoc globally:

npm install -g coffeedoc

Usage

First you must add the extension to your list of extensions in conf.py:

extensions = ['sphinx.ext.autodoc', 'sphinxcontrib.coffeedomain']

Because Python has no clue about where your sources are, you must tell it where to look in your conf.py like so:

coffee_src_dir = os.path.abspath('../')

Finally, if your project is primarily CoffeeScript, you might want to define the primary domain as well:

primary_domain = 'coffee'

Directives and Roles

This domain provides module, function, class and method directives, as well as meth, class, and func roles for cross-referencing. In order to reference another object, use it’s fully-qualified name: The module name, a double colon, and the dot separate path to the object within the module.

For example, to reference the swizzle function in the file lib/widgets.coffee, write :coffee:func:`lib/widgets::swizzle. You can drop the leading :coffee if your primary domain has been set to coffee, and you can drop the module name iff you are linking from within the lib/widgets module.

Autodoc

You can document entire modules easily with automodule:

.. automodule:: mymodule
  :members:

Notes/Todo

While basic functionality is usable at this point,

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sphinxcontrib-coffee-0.1.0.tar.gz (5.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page