(defn print-help [desc cmdmap]
(println desc)
(println "Options")
(println
(apply align [:l :l :l]
(for [spec (:cmdspec cmdmap) :when (vector? spec)]
(let [[argnames [text default]] (split-with symbol? spec)
[_ opt q] (re-find #"^(.*[^?])(\??)$"
(str (first argnames)))
argnames (map (comp rmv-q str) argnames)
argnames
(join ", "
(for [arg argnames]
(if (= 1 (count arg))
(str "-" arg)
(str "--" arg))))]
[(str " " argnames (when (= "" q) " ") " ")
text
(if-not default
""
(str " [default " default "]"))])))))
Used in 0 other vars
Comments top
No comments for print-help. Log in to add a comment.