diff --git a/doerg/src/net/deertopia/doerg/render.clj b/doerg/src/net/deertopia/doerg/render.clj index 2820086..51c6610 100644 --- a/doerg/src/net/deertopia/doerg/render.clj +++ b/doerg/src/net/deertopia/doerg/render.clj @@ -62,6 +62,12 @@ [:article rendered]]])))) + +;;; Further dispatching on `org-element` + +(defmethod org-element "keyword" [e] + (org-keyword e)) + (defn- gather-footnotes [loc] @@ -69,18 +75,29 @@ +(defn- render-pprint [x] + [:details + {:summary (:type x)} + [:samp {:style {:overflow "scroll" + :display "block" + :white-space "pre"}} + ()]]) + + + (defn- renderer-error "Render a `Throwable` to display within the document." [e] [:details [:summary "Renderer error!"] - [:div - [:samp {:style {:overflow "scroll" - :display "block" - :white-space "pre"}} - (with-out-str - (clojure.stacktrace/print-stack-trace e))]]]) + [:samp {:style {:overflow "scroll" + :display "block" + :white-space "pre"}} + (with-out-str + (clojure.stacktrace/print-stack-trace e))]]) (defmethod org-element "org-data" [{:keys [children]}] children) + +(defmethod org-keyword "TITLE" [e])