This commit is contained in:
2026-03-10 13:27:18 -06:00
parent b0a3895a18
commit cbfa42bc73

View File

@@ -12,7 +12,8 @@
[com.rpl.specter :as sp] [com.rpl.specter :as sp]
[clojure.tools.logging.readable :as lr] [clojure.tools.logging.readable :as lr]
[clojure.zip :as z] [clojure.zip :as z]
[com.rpl.specter.zipper :as sz]) [com.rpl.specter.zipper :as sz]
[clojure.core.match :refer [match]])
(:import (java.util UUID)) (:import (java.util UUID))
(:refer-clojure :exclude [read-string])) (:refer-clojure :exclude [read-string]))
@@ -251,17 +252,16 @@
[postorder-walker [postorder-walker
(sp/must :children)] (sp/must :children)]
(fn [children] (fn [children]
(-> children z/vector-zip (loop [acc []
(=>> (fn [para-loc] cs (vec children)]
(let [tex-loc (some-> para-loc z/right) (match cs
next-para (some-> tex-loc z/right)] [(para :guard #(of-type? % "paragraph"))
(when (and (of-type? (z/node para-loc) "paragraph") (tex :guard #(of-type? % "latex-environment"))
(some-> tex-loc z/node & rest]
(of-type? "latex-environment"))) (recur (conj acc (swallow para tex)) rest)
(when (separated-by-explicit-paragraph-break? [] acc
(z/node para-loc) (z/node tex-loc)) [c & rest]
(swap! r #(conj % (z/node para-loc)))))) (recur (conj acc c) rest))))
(z/node para-loc)))))
doc)] doc)]
@r)) @r))