This commit is contained in:
2026-02-26 10:40:06 -07:00
parent 47b201fd03
commit b765f71b55
2 changed files with 15 additions and 8 deletions

View File

@@ -137,15 +137,16 @@
(swap! promises #(conj % {:promise p :node node}))
(assoc node ::rendered p)))))
f (fn []
(println "run")
(prn (count @promises))
(Thread/sleep (* 1000 1))
(doseq [{:keys [promise node]} @promises]
(try (let [{:keys [value contents]} node]
(deliver promise (tex/render-temml (or contents value))))
(catch Throwable e
(try (let [{:keys [value contents]} node
temml (tex/render-temml (or contents value))]
(if (tex/erroneous-temml-output? temml)
(deliver promise "errors!! aghhh!!")
(deliver promise temml)))
(catch Exception e
(prn e)
(flush))))
(flush)
(throw e))))
#_
(doseq [[ix {:keys [promise node]}]
(map (fn [i x] [i x]) (range) @promises)]

View File

@@ -116,7 +116,13 @@
slurp
(str/replace-first "% {{contents}}" contents))))
(defn render-xelatex [output-dir & snippets]
(defn render-xelatex
"Render a collection of `snippets` to SVGs in `output-dir` using
XeLaTeX and dvisvgm. Returns a map whose keys are `snippets` and
whose values are maps containing dimensional info, a string of
errors output by XeLaTeX, and the path to the generated SVG
file. Math delimiters are *not* implicitly added to each snippet."
[output-dir & snippets]
(fs/with-temp-dir [dir {:prefix "doerg-xelatex"}]
(let [preview-tex (fs/file dir "preview.tex")
preview-xdv (fs/file dir "preview.xdv")