Merge pull request #134 from fogus/master
Added support for prasing Lein project.clj files and files without ns decls
This commit is contained in:
commit
a21cd992c4
2 changed files with 11 additions and 6 deletions
|
@ -1,4 +1,4 @@
|
|||
(defproject marginalia "0.8.0"
|
||||
(defproject marginalia "0.8.1-SNAPSHOT"
|
||||
:description "lightweight literate programming for clojure -- inspired by [docco](http://jashkenas.github.com/docco/)"
|
||||
;; :main marginalia.main
|
||||
:dependencies
|
||||
|
|
|
@ -170,10 +170,12 @@
|
|||
:else (recur (merge-line (first lines) cur-group) groups (rest lines)))))
|
||||
|
||||
(defn path-to-doc [fn]
|
||||
(let [ns (-> (java.io.File. fn)
|
||||
(let [file (java.io.File. fn)
|
||||
ns (-> file
|
||||
(read-file-ns-decl)
|
||||
(second)
|
||||
(str))
|
||||
ns (if (or (nil? ns) (empty? ns)) (.getName file) ns)
|
||||
groups (parse-file fn)]
|
||||
{:ns ns
|
||||
:groups groups}))
|
||||
|
@ -247,7 +249,7 @@
|
|||
|
||||
If no source files are found, complain with a usage message."
|
||||
[args & [project]]
|
||||
(let [[{:keys [dir file name version desc deps css js multi]} files help]
|
||||
(let [[{:keys [dir file name version desc deps css js multi leiningen]} files help]
|
||||
(cli args
|
||||
["-d" "--dir" "Directory into which the documentation will be written" :default "./docs"]
|
||||
["-f" "--file" "File into which the documentation will be written" :default "uberdoc.html"]
|
||||
|
@ -260,8 +262,10 @@
|
|||
If not given will be taken from project.clj."]
|
||||
["-j" "--js" "Additional javascript resources <resource1>;<resource2>;...
|
||||
If not given will be taken from project.clj"]
|
||||
["-m" "--multi" "Generate each namespace documentation as a separate file" :flag true])
|
||||
sources (distinct (format-sources (seq files)))]
|
||||
["-m" "--multi" "Generate each namespace documentation as a separate file" :flag true]
|
||||
["-l" "--leiningen" "Generate the documentation for a Leiningen project file."])
|
||||
sources (distinct (format-sources (seq files)))
|
||||
sources (if leiningen (cons leiningen sources) sources)]
|
||||
(if-not sources
|
||||
(do
|
||||
(println "Wrong number of arguments passed to Marginalia.")
|
||||
|
@ -273,7 +277,8 @@
|
|||
choose #(or %1 %2)
|
||||
marg-opts (merge-with choose
|
||||
{:css (when css (.split css ";"))
|
||||
:javascript (when js (.split js ";"))}
|
||||
:javascript (when js (.split js ";"))
|
||||
:leiningen leiningen}
|
||||
(:marginalia project-clj))
|
||||
opts (merge-with choose
|
||||
{:name name
|
||||
|
|
Loading…
Reference in a new issue