Skip to content

Commit

Permalink
XML encode # character in SVGs
Browse files Browse the repository at this point in the history
  • Loading branch information
danielcompton committed Jan 25, 2018
1 parent 04ab87b commit 17b81ba
Showing 1 changed file with 11 additions and 3 deletions.
14 changes: 11 additions & 3 deletions src/day8/re_frame/trace/utils/macros.clj
@@ -1,10 +1,18 @@
(ns day8.re-frame.trace.utils.macros
(:require [clojure.java.io :as io]))
(:require [clojure.java.io :as io]
[clojure.string :as str]))

(defmacro slurp-macro
"Reads a file as a string. Slurp is wrapped in a macro so it can interact with local files before clojurescript compilation."
"Reads a file as a string. Slurp is wrapped in a macro so it can interact with local files before clojurescript compilation.
#'s are replaced with %23 for URL encoding."
;; For reasons unknown (to me), browsers don't like URL encoding the entire string.
;; I suspect XML encoding the attributes is the correct way to do this, but
;; #'s are the problem here, so we so we do surgery on the one problematic symbol.
[path]
(slurp (io/resource path)))
(str/replace
(slurp (io/resource path))
"#"
"%23"))

(defmacro with-cljs-devtools-prefs [prefs & body]
`(let [previous-config# (devtools.prefs/get-prefs)
Expand Down

0 comments on commit 17b81ba

Please sign in to comment.