   "Given a FQN, return the doc or source code as string, based on options."
   [fqn doc-opt]
   (when-not (or (nil? fqn) (= fqn "") (nil? doc-opt))
-    (let [is-ns? (find-ns (symbol fqn))]
+    (let [is-ns? (find-ns (better-symbol fqn))]
       (case doc-opt
         ;; quick to write, if a little inefficient
         "All" (if is-ns?

;; var?

;; (in-ns 'clj-ns-browser.utils)


;; "clojure.core//" appears to be a special case not handled well by
;; the function symbol.
(defn better-symbol [fqn]
  (if (= fqn "clojure.core//")
    (symbol "clojure.core" "/")
    (symbol fqn)))


(defn eval-sym [sym]

          :else (fqname *ns* n)))
  ([ns n]
    (let [n-str (str n)
          n-sym (better-symbol n-str)]
      (if (some #(= % n-str) special-forms) n-str
        (if-let [n-ns (find-ns n-sym)]
          (str n-ns)
