34

昨年かそこらで、Clojureディスカッションリストやその他の場所で、Clojureコードを文書化するためのツールに関するさまざまな発表を見てきました。これらは、Marginaliaのような完全な文芸的プログラミングシステムや、本「Clojure in SmallPieces」(またはemacs org-mode)の作成に使用されるツールから、Autodocのような従来のJavadocスタイルのソリューションやJavadoc自体にまで及びます。伝えられるところによると、Clojureで使用できます。グーグル検索は他の様々なものを見つけます、おそらくもっと注目に値するいくつか、そして確かにいくつかはドキュメントを生成するための単なる個人的なユーティリティです。私の質問は、最高のドキュメンテーションツールは何ですか、そしてそれらを使用した経験に基づいたそれらの比較の長所と短所は何ですか?私はこれまでドキュメントツールを使用したことがなく、1つ以上のツールを試すことに興味があります。

4

4 に答える 4

21

文学的なプログラミングのアプローチのようなものを取りたいなら、私はMarginaliaが本当に好きです. Marginalia はソース コードをトラバースし、非常にクリアなテキストでコードの横にコメントが設定された html 形式のバージョンを生成します。コメントはマークダウン形式にすることができ、非常に読みやすい最終ドキュメントになります。少し前に書いたソース コードを確認すると、Marginalia が本当に役立つことがわかりました。以下は、Marginalia ソース自体から作成された例です

これは、ファイルを作成し、そこからソース コードを生成する元のリテラシー プログラミング ワークフローとは異なることに注意してください。Marginalia では、通常のソース コード ファイルを作成し、そこから引き出されたのがドキュメントです。出力は、文芸的なプログラミングから期待されるものと似ていますが、この方法では、特別な文芸的なプログラミングのサポートなしで、エディターで構文の強調表示を期待できます。

それは Leiningen と相互運用性があり、自分で試したことはありませんが、ケーキだと思います。

于 2011-03-17T04:09:44.170 に答える
12

Codoxは、Clojure用の最新のドキュメントジェネレーターです。

于 2012-08-10T20:44:26.610 に答える
11

Autodocは簡単に開始できる場所であり、Clojureコアと Clojure contribが生成するものです。

Mavenで簡単に使用できます。Leiningen または Cake 用のプラグインが存在するかどうかはわかりません。

于 2011-03-17T03:57:44.113 に答える
6

完全に読み書きができるようにしたい場合は、org-babel-clojureを見てください。org-bableは、emacsorg-modeの文芸的プログラミング拡張機能です。

nreplを使用したい場合は、以下を.emacsに追加する必要があります。

(defun org-babel-execute:clojure (body params)
  "Execute a block of Clojure code with Babel."
  (let ((result-plist (nrepl-send-string-sync (org-babel-expand-body:clojure body params) nrepl-buffer-ns))
        (result-type  (cdr (assoc :result-type params))))
    (org-babel-script-escape
     (cond ((eq result-type 'value)  (plist-get result-plist :value))
           ((eq result-type 'output) (plist-get result-plist :value))
            (t                        (message "Unknown :results type!"))))))
于 2011-03-17T06:19:49.253 に答える