在线上有很多工具可以接收JSON文本,并向您展示格式化后的格式以及相同格式的缩进格式。
有些甚至更进一步,形成了一个很好的树状结构:http://jsonviewer.stack.hu/
我们对Clojure代码有类似的东西吗?
或至少可以自动缩进的内容。
如果我的文字是这样的:
(defn prime? [n known](loop [cnt (dec (count known)) acc []](if (< cnt 0) (not (any? acc))
(recur (dec cnt) (concat acc [(zero? (mod n (nth known cnt)))])))))
它应该自动缩进如下内容:
(defn prime? [n known]
(loop [cnt (dec (count known)) acc []]
(if (< cnt 0) (not (any? acc))
(recur (dec cnt) (concat acc [(zero? (mod n (nth known cnt)))])))))
最佳答案
看看https://github.com/xsc/rewrite-clj
它是全新的,并且完全满足您的要求。
编辑我仍然对此表示赞同。我相信我找到了一个更好的解决方案:您可以使用clojure.pprint
轻松使用code-dispatch
进行此操作,而无需使用外部库。
(clojure.pprint/write '(defn prime? [n known](loop [cnt (dec (count known)) acc []](if (< cnt 0) (not (any? acc)) (recur (dec cnt) (concat acc [(zero? (mod n (nth known cnt)))])))))
:dispatch clojure.pprint/code-dispatch)
=>
(defn prime? [n known]
(loop [cnt (dec (count known)) acc []]
(if (< cnt 0)
(not (any? acc))
(recur
(dec cnt)
(concat acc [(zero? (mod n (nth known cnt)))])))))
关于clojure - 是否有一个在线工具可以自动缩进和格式化Clojure代码,就像有很多JSON一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17829584/