Clojure の複数行のドキュメント文字列は、ほとんどの場合、手動でフォーマットされているように見えることに気付きました。これには、clojure.core のものも含まれます。https://github.com/clojure/clojure/blob/master/src/clj/clojure/core.cljの例:
(defn flatten
"Takes any nested combination of sequential things (lists, vectors,
etc.) and returns their contents as a single, flat sequence.
(flatten nil) returns an empty sequence."
{:added "1.2"
:static true}
[x]
(filter (complement sequential?)
(rest (tree-seq sequential? seq x))))
これは奇妙に思えます。異なる docstring は、手動で維持する必要がある異なる行折り返しの長さなどを持つことを意味するからです。
複数行のdocstringをフォーマットするより良い方法はありますか?