summaryrefslogtreecommitdiff
path: root/src/clarktown/correctors/code_block.clj
diff options
context:
space:
mode:
Diffstat (limited to 'src/clarktown/correctors/code_block.clj')
-rw-r--r--src/clarktown/correctors/code_block.clj27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/clarktown/correctors/code_block.clj b/src/clarktown/correctors/code_block.clj
new file mode 100644
index 0000000..e767390
--- /dev/null
+++ b/src/clarktown/correctors/code_block.clj
@@ -0,0 +1,27 @@
+(ns clarktown.correctors.code-block
+ (:require
+ [clojure.string :as string]))
+
+
+(defn empty-line-above?
+ [lines line index]
+ (and (= (string/trim line) "```")
+ (> index 0)
+ (->> (take index lines)
+ (filter #(= (string/trim %) "```"))
+ count
+ odd?)
+ (not (= (-> (nth lines (- index 1))
+ string/trim) ""))))
+
+
+(defn empty-line-below?
+ [lines line index]
+ (and (= (string/trim line) "```")
+ (< index (- (count lines) 1))
+ (->> (take index lines)
+ (filter #(= (string/trim %) "```"))
+ count
+ even?)
+ (not (= (-> (nth lines (+ index 1))
+ string/trim) "")))) \ No newline at end of file