   Puget, but which is not directly printed by the library. Note that this
   function still obeys the *colored-output* var."
   [element text]
-  (let [codes (seq (*color-scheme* element))]
-    (if (and *colored-output* codes)
+  (let [codes (-> *options* :color-scheme (get element) seq)]
+    (if (and (:print-color *options*) codes)
       (str (ansi/esc codes) text (ansi/escape :none))
       text)))
 


;; CONTROL VARS

(def ^:dynamic *strict-mode*
  "If true, throw an exception if there is no canonical EDN representation for
  a given value. This generally applies to any non-primitive value which does

  "Constructs a text doc, which may be colored if *colored-output* is true.
  Element must be a key from the color-scheme map."
  [element text]
  (let [codes (-> *options* :color-scheme (get element) seq)]
    (if (and (:print-color *options*) codes)
      [:span [:pass (ansi/esc codes)] text [:pass (ansi/escape :none)]]
      text)))

