           options (assoc options :print-value
                          (->fn print-value print))
           options (if (:color options)
-                    (merge options nrepl.cmdline/colored-output)
+                    (merge options (clojure.set/rename-keys
+                                     nrepl.cmdline/colored-output
+                                     {:value :print-value
+                                      :out :print-out
+                                      :err :print-err}))
                     options)
           completion-eval-fn (partial completion-eval client completion-session)
           options (assoc options

            (when (System/getenv "DEBUG") (clojure.repl/pst t))
            :failure))]
    (when (= :success continue)
      (recur connection))))

(defn main
  [options]

        (pr-str `(binding [*ns* (symbol ~(deref current-ns))] ~form))))
    (read-string @results)))

(defn poll-for-responses [{:keys [print-out print-err] :as options} connection]
  (let [continue
        (try
          (when-let [{:keys [out err] :as resp}
                     (nrepl.transport/recv connection 100)]
            (when err ((or print-err print) err))
            (when out ((or print-out print) out))
            (when-not (or err out)
              (.offer ^LinkedBlockingQueue (@response-queues (:session resp))
                      resp))
