From a52bc97ed35fbd88fe8885ee4c328dac2685a91a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Madeleine=20Sydney=20=C5=9Alaga?= Date: Tue, 24 Feb 2026 15:05:22 -0700 Subject: [PATCH] --- doerg/src/net/deertopia/doerg/tex.clj | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/doerg/src/net/deertopia/doerg/tex.clj b/doerg/src/net/deertopia/doerg/tex.clj index 771bf01..b21f8f8 100644 --- a/doerg/src/net/deertopia/doerg/tex.clj +++ b/doerg/src/net/deertopia/doerg/tex.clj @@ -14,7 +14,7 @@ (def ^:private font-size 10) (def ^:private tightpage-regexp - #"^Preview: Tightpage (-?[0-9]+)\s*(-?[0-9]+)\s*(-?[0-9]+)\s*(-?[0-9]+)") + #"Preview: Tightpage (-?\d+) *(-?\d+) *(-?\d+) *(-?\d+)") (def ^:private preview-end-regexp #"(?:^Preview: Tightpage.*$)?\n! Preview: Snippet \d+ ended.\((\d+)\+(\d+)x(\d+)\)") @@ -22,12 +22,11 @@ (defn- invoke [extra-opts & args] (let [namespace (or (::ns extra-opts) (first args)) + out-bytes (ByteArrayOutputStream.) out-stream (common/tee-output-stream - (ByteArrayOutputStream.) + out-bytes (l/log-stream :info (str namespace "/out"))) - err-stream (common/tee-output-stream - (ByteArrayOutputStream.) - (l/log-stream :info (str namespace "/err"))) + err-stream (l/log-stream :info (str namespace "/err")) opts (merge extra-opts {:out out-stream :err err-stream :continue true :shutdown p/destroy-tree @@ -38,12 +37,10 @@ (l/infof "%s exited w/ status %d" (first cmd) exit))}) r (apply p/shell opts args) - out (.toString out-stream)] + out (.toString out-bytes)] (-> r (assoc ::out out)))) -;; dvisvgm --page=1- --optimize --clipjoin --relative --no-fonts -v3 --message='processing page {?pageno}: output written to {?svgpath}' --bbox=preview -o %B-%%9p.svg %f - (defn- invoke-xelatex [& {:keys [file output-dir]}] (let [{out ::out} (invoke {:dir output-dir} @@ -52,6 +49,7 @@ [tp1 tp2 tp3 tp4] (->> (re-find tightpage-regexp out) (drop 1) (map parse-long))] + (def the-out out) (->> (re-seq preview-end-regexp out) (map #(let [[d1 d2 d3] (map parse-long (drop 1 %)) depth (/ (- d2 tp2) @@ -66,6 +64,11 @@ scale-divisor font-size)}))))) +;; dvisvgm --page=1- --optimize --clipjoin --relative --no-fonts -v3 --message='processing page {?pageno}: output written to {?svgpath}' --bbox=preview -o %B-%%9p.svg %f + +#_ +(defn- invoke-dvisvgm [& {:keys []}]) + ;;; Temml