summaryrefslogtreecommitdiff
path: root/src/clarktown/parsers/link_and_image.clj
diff options
context:
space:
mode:
authorAsko Nõmm <84135165+askonomm@users.noreply.github.com>2022-04-23 02:43:49 +0300
committerGitHub <noreply@github.com>2022-04-23 02:43:49 +0300
commit70d88384ea788f7b2ad5ebb725762f7d27300504 (patch)
treeb371f12617949daf2b40538ba9a2e4457b657d0f /src/clarktown/parsers/link_and_image.clj
parent059bfa7bd9bfdde0c75646bf1dfc20d23da8a02c (diff)
parentdc921cbe1c786995a8670efd9f5556ee9df064f9 (diff)
Merge pull request #17 from askonomm/16-improve-architecture
Improve architecture
Diffstat (limited to 'src/clarktown/parsers/link_and_image.clj')
-rw-r--r--src/clarktown/parsers/link_and_image.clj27
1 files changed, 0 insertions, 27 deletions
diff --git a/src/clarktown/parsers/link_and_image.clj b/src/clarktown/parsers/link_and_image.clj
deleted file mode 100644
index 3be2efe..0000000
--- a/src/clarktown/parsers/link_and_image.clj
+++ /dev/null
@@ -1,27 +0,0 @@
-(ns clarktown.parsers.link-and-image
- (:require
- [clojure.string :as string]))
-
-
-(defn encode-href
- [href]
- (-> href
- (string/replace "_" "&#95;")))
-
-
-(defn render
- "Renders all occurring links and images."
- [block _]
- (loop [block block
- matches (-> (re-seq #"\!?\[([a-zA-Z0-9\-\.\,]+( [a-zA-Z0-9\-\.\,]+)*)\]\((.*?)\)" block)
- distinct)]
- (if (empty? matches)
- block
- (let [[whole-match label _ href] (first matches)
- image? (string/starts-with? whole-match "!")
- image (str "<img src=\"" (encode-href href) "\" alt=\"" label "\">")
- link (str "<a href=\"" (encode-href href) "\">" label "</a>")]
- (recur (if image?
- (string/replace block whole-match image)
- (string/replace block whole-match link))
- (drop 1 matches)))))) \ No newline at end of file