Домен Sphinx для Clojure

Я привык работать с Sphinx для проектов C ++ и Python. Я только что начал проект в Clojure и хотел бы повторно использовать свои навыки работы с Sphinx / reStructuredText для документирования моего кода Clojure. Поскольку для Clojure нет встроенного домена , я начал его писать.

По иронии судьбы, документация Sphinx совершенно не помогает при написании расширений. Итак, начиная со встроенных режимов Python и Javascript, у меня работают некоторые базовые элементы. Я могу написать документ для функций, используя следующие директивы:

.. clj:ns:: clojure.core

.. clj:fn:: (filter f coll)

   :param f: predicate
   :param coll: collection

   Built-in!

Однако вывод HTML производит подписи в стиле C / Python. Предыдущий пример генерирует что-то вроде этого:

filter(f, coll)

    Parameters: * f - predicate
                * coll - collection

    Built-in!

Я бы предпочел получить подпись в форме lisp как:

(filter f coll)

    Parameters: * f - predicate
                * coll - collection

    Built-in!

Код, который генерирует подписи, кажется, идет вплоть до documenttils.addnodes модуль. Как я могу заставить Sphinx генерировать HTML с помощью синтаксиса Sphinx? Можно ли это сделать с помощью шаблона, или мне нужно пройти через всю систему построителя, чтобы сделать это?

6
задан Chris Morgan 18 July 2011 в 17:02
поделиться