summaryrefslogtreecommitdiff
path: root/src/clarktown/parsers/code_block.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/code_block.clj
parent059bfa7bd9bfdde0c75646bf1dfc20d23da8a02c (diff)
parentdc921cbe1c786995a8670efd9f5556ee9df064f9 (diff)
Merge pull request #17 from askonomm/16-improve-architecture
Improve architecture
Diffstat (limited to 'src/clarktown/parsers/code_block.clj')
-rw-r--r--src/clarktown/parsers/code_block.clj30
1 files changed, 0 insertions, 30 deletions
diff --git a/src/clarktown/parsers/code_block.clj b/src/clarktown/parsers/code_block.clj
deleted file mode 100644
index c6ecfea..0000000
--- a/src/clarktown/parsers/code_block.clj
+++ /dev/null
@@ -1,30 +0,0 @@
-(ns clarktown.parsers.code-block
- (:require
- [clojure.string :as string]))
-
-
-(defn is?
- "Determines whether we're dealing with a code block."
- [block]
- (and (string/starts-with? block "```")
- (string/ends-with? block "```")))
-
-
-(defn render
- "Renders the code block."
- [block _]
- (let [language (->> block
- (re-find #"\`\`\`(\w+)")
- second)
- lines (string/split-lines block)
- block* (->> (next lines)
- (take (- (count lines) 2))
- (string/join \newline))
- code (-> block*
- (string/replace #"&" "&amp;")
- (string/replace #"<" "&lt;")
- (string/replace #">" "&gt;")
- string/trim)]
- (if language
- (str "<pre><code class=\"language-" language "\">" code "</code></pre>")
- (str "<pre><code>" code "</code></pre>"))))