From d4fd8d01eb9b57f1ee7b770ca24fc5e121b49edc Mon Sep 17 00:00:00 2001 From: Asko Nomm Date: Sun, 10 Apr 2022 05:16:34 +0200 Subject: Fix #9: Underscores in links get rendered into --- src/clarktown/parsers/link_and_image.clj | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/clarktown/parsers/link_and_image.clj') diff --git a/src/clarktown/parsers/link_and_image.clj b/src/clarktown/parsers/link_and_image.clj index 3dbbac7..fb8ad31 100644 --- a/src/clarktown/parsers/link_and_image.clj +++ b/src/clarktown/parsers/link_and_image.clj @@ -3,18 +3,24 @@ [clojure.string :as string])) +(defn encode-href + [href] + (-> href + (string/replace "_" "_"))) + + (defn render "Renders all occurring links and images." [block _] (loop [block block - matches (-> (re-seq #"\!?\[(\w+( \w+|\.|\,)*)\]\((.*?)\)" block) + matches (-> (re-seq #"\!?\[(\w+( \w+)*)\]\((.*?)\)" block) distinct)] (if (empty? matches) block (let [[whole-match label _ href] (first matches) image? (string/starts-with? whole-match "!") - image (str "\""") - link (str "" label "")] + image (str "\""") + link (str "" label "")] (recur (if image? (string/replace block whole-match image) (string/replace block whole-match link)) -- cgit v1.2.3