This commit is contained in:
@@ -35,23 +35,22 @@
|
|||||||
(str/replace #"stroke=['\"]#000['\"]" "stroke=\"currentColor\"")))
|
(str/replace #"stroke=['\"]#000['\"]" "stroke=\"currentColor\"")))
|
||||||
|
|
||||||
(defn render-snippets [snippet-promises]
|
(defn render-snippets [snippet-promises]
|
||||||
(fs/with-temp-dir [svg-dir {:prefix "doerg-svg-"}]
|
(let [rendered-snippets
|
||||||
(let [rendered-snippets
|
(delay (->> snippet-promises
|
||||||
(delay (->> snippet-promises
|
(map first)
|
||||||
(map first)
|
(apply native/render svg-dir)))]
|
||||||
(apply native/render svg-dir)))]
|
(doseq [[snippet p] snippet-promises]
|
||||||
(doseq [[snippet p] snippet-promises]
|
(try (let [temml (temml/render snippet)]
|
||||||
(try (let [temml (temml/render snippet)]
|
(->> (if (temml/erroneous-output? temml)
|
||||||
(->> (if (temml/erroneous-output? temml)
|
(let [tex (get @rendered-snippets snippet)]
|
||||||
(let [tex (get @rendered-snippets snippet)]
|
(if (:errors tex)
|
||||||
(if (:errors tex)
|
temml
|
||||||
temml
|
(read-and-patch-generated-svg tex)))
|
||||||
(read-and-patch-generated-svg tex)))
|
temml)
|
||||||
temml)
|
hiccup/raw (deliver p)))
|
||||||
hiccup/raw (deliver p)))
|
(catch Exception e
|
||||||
(catch Exception e
|
(l/error e "Error in TeX thread")
|
||||||
(l/error e "Error in TeX thread")
|
(throw e))))))
|
||||||
(throw e)))))))
|
|
||||||
|
|
||||||
(comment
|
(comment
|
||||||
(let [snippets (for [x ["\\(\\ifxetex blah \\fi\\)"
|
(let [snippets (for [x ["\\(\\ifxetex blah \\fi\\)"
|
||||||
|
|||||||
Reference in New Issue
Block a user