Skip to content

Commit

Permalink
Merge pull request #160 from hashobject/md-exts
Browse files Browse the repository at this point in the history
Simplify markdown extension specification
  • Loading branch information
podviaznikov committed Feb 13, 2017
2 parents 2586ee0 + 0c17048 commit 429578b
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 12 deletions.
14 changes: 7 additions & 7 deletions src/io/perun.clj
Expand Up @@ -369,12 +369,12 @@
[d out-dir OUTDIR str "the output directory"
_ filterer FILTER code "predicate to use for selecting entries (default: `identity`)"
m meta META edn "metadata to set on each entry; keys here will be overridden by metadata in each file"
o options OPTS edn "options to be passed to the markdown parser"]
e md-exts MDEXTS edn "parsing extensions to be used by the markdown parser"]
(let [pod (create-pod markdown-deps)
options* (merge +markdown-defaults+ *opts*)]
options (merge +markdown-defaults+ *opts*)]
(content-pre-wrap
{:render-form-fn (fn [data] `(io.perun.markdown/process-markdown ~data ~options))
:paths-fn #(content-paths % (assoc options*
{:render-form-fn (fn [data] `(io.perun.markdown/process-markdown ~data ~md-exts))
:paths-fn #(content-paths % (assoc options
:output-extension ".html"
:extensions [".md" ".markdown"]))
:passthru-fn content-passthru
Expand All @@ -394,10 +394,10 @@
[d out-dir OUTDIR str "the output directory"
_ filterer FILTER code "predicate to use for selecting entries (default: `identity`)"
m meta META edn "metadata to set on each entry; keys here will be overridden by metadata in each file"
o options OPTS edn "options to be passed to the markdown parser"]
(let [{:keys [out-dir filterer meta options]} (merge +markdown-defaults+ *opts*)]
e md-exts MDEXTS edn "parsing extensions to be used by the markdown parser"]
(let [{:keys [out-dir filterer meta md-exts]} (merge +markdown-defaults+ *opts*)]
(comp (yaml-metadata :filterer filterer :extensions [".md" ".markdown"])
(markdown* :out-dir out-dir :filterer filterer :meta meta :options options))))
(markdown* :out-dir out-dir :filterer filterer :meta meta :md-exts md-exts))))

(deftask global-metadata
"Read global metadata from `perun.base.edn` or configured file.
Expand Down
8 changes: 4 additions & 4 deletions src/io/perun/markdown.clj
Expand Up @@ -42,14 +42,14 @@
(apply bit-or 0)
int))

(defn markdown-to-html [file-content options]
(let [processor (PegDownProcessor. (extensions-map->int (:extensions options)))]
(defn markdown-to-html [file-content extensions]
(let [processor (PegDownProcessor. (extensions-map->int extensions))]
(->> file-content
char-array
(.markdownToHtml processor))))

(defn process-markdown [{:keys [entry]} options]
(defn process-markdown [{:keys [entry]} extensions]
(perun/report-debug "markdown" "processing markdown" (:filename entry))
(let [file-content (-> entry :full-path io/file slurp)
html (markdown-to-html file-content options)]
html (markdown-to-html file-content extensions)]
(assoc entry :rendered html)))
2 changes: 1 addition & 1 deletion test/io/perun_test.clj
Expand Up @@ -373,7 +373,7 @@ This --- be ___markdown___.")
(p/markdown :out-dir "hammock"
:filterer #(= (:path %) "test.md")
:meta {:markdown-set :metadata}
:options {:extensions {:smarts true}})
:md-exts {:smarts true})
(testing "markdown"
(content-check :path "hammock/test.html"
:content parsed-md-smarts
Expand Down

0 comments on commit 429578b

Please sign in to comment.