diff options
| author | Asko Nõmm <asko@bien.ee> | 2021-12-02 01:31:29 -0300 |
|---|---|---|
| committer | Asko Nõmm <asko@bien.ee> | 2021-12-02 01:31:29 -0300 |
| commit | d44ebd2bd81641201056d532817f70e67cabc165 (patch) | |
| tree | 6685adedab59d73e22dad27e81ce3b59b0feb1fc /src/clarktown/parsers/heading_block.clj | |
| parent | e072e68ed490889110efa4e1bc73b80000a65636 (diff) | |
Implement heading block
Diffstat (limited to 'src/clarktown/parsers/heading_block.clj')
| -rw-r--r-- | src/clarktown/parsers/heading_block.clj | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/clarktown/parsers/heading_block.clj b/src/clarktown/parsers/heading_block.clj index 588d196..84483a0 100644 --- a/src/clarktown/parsers/heading_block.clj +++ b/src/clarktown/parsers/heading_block.clj @@ -2,12 +2,26 @@ (:require [clojure.string :as string])) + (defn is? + "Determines whether the given block is a heading block or not." [block] - (= true (-> (clojure.string/trim block) + (= true (-> (string/replace block #"\n" "") + string/trim (string/starts-with? "#")))) (defn render + "Renders the heading block." [block] - "headingblock") + (let [single-line-block (-> (string/replace block #"\n" "") + string/trim) + size-indicators (-> (string/split single-line-block #" ") + first + string/trim) + size (count size-indicators) + value (->> (string/split single-line-block #" ") + next + (string/join " ") + string/trim)] + (str "<h" size ">" value "</h" size ">"))) |
