read


read
or learn more

Announcing Marginalia v0.7.0

Mar 6, 2012

Marginalia v0.7.0 Release Notes

this was a big one

Marginalia is an ultra-lightweight literate programming tool for Clojure inspired by docco*.

To get a quick look at what the output looks like, visit the official Marginalia website.

Usage notes and examples are found on the Marginalia Github page.

Places

Changes from v6.0.1

lein-marginalia

Version 0.7.0 is an attempt to move toward Marginalia as library only. Therefore, the Leiningen support has been pulled out and placed into its own plugin named lein-marginalia. To use Marginalia to generate documentation for your own projects you should no longer reference Marginalia in your project.clj. Instead, use lein-marginalia in your :dev-dependencies section like so:

:dev-dependencies [[lein-marginalia "0.7.0"]]

Leiningen will pull in the proper Marginalia version. We will attempt to keep the version numbers in sync.

ClojureScript support

Marginalia will now discover and parse ClojureScript files.

def docstrings

Clojure 1.3 allows docstrings in def forms that look like:

(def a-var "The docstring" value)

Marginalia will recognize this pattern and generate the associate documentation.

Wildcard arguments

Marginalia will accept wildcard arguments in place of absolute source paths. For example, to generate docs for all source files with an ‘r’ in the name, you could type:

lein marg src/**/*r*.clj

You can pass any number of arguments to the marg task.

Bug fixes

Plans

The following capabilities are under design, development, or consideration for future versions of Marginalia:

  • protocol docstring support
  • Stand-alone application
  • Explore the possibility of leveraging the ClojureScript analyzer.
  • More documentation and examples

More planning is needed around capabilities not listed nor thought of.

:F

2 Comments, Comment or Ping

  1. Thanks for this great library. I will try out the new version soon. It produces very a very nice layout of documented code.

  2. Or, to install for all user’s projects, just install as plugin:

    lein plugin install lein-marginalia 0.7.0

Reply to “Announcing Marginalia v0.7.0”