 (defmethod core/handle "editor.clj.doc" [{:keys [ns sym loc session path result-type] :as msg}]
   (let [ns (eval/normalize-ns ns path)
         _ (eval/require|create-ns (symbol ns))
-        res (get-doc ns sym)
-        res (when res (assoc res :loc loc :result-type result-type))]
+        res (some-> (get-doc ns sym)
+                    (assoc :loc loc :result-type result-type)
+                    (update-in [:file] resolve-file))]
     (core/respond msg "editor.clj.doc" res))
   @session)
 

                                 res (if (:macro clj)
                                       clj
                                       (get-cljs-doc ns sym))
                                 res (when res (assoc res :loc loc :result-type result-type))]
                             (core/respond msg "editor.cljs.doc" res))))
  @session)


  (:require [lighttable.nrepl.core :as core]
            [lighttable.nrepl.eval :as eval]
            [lighttable.nrepl.cljs :as cljs]
            [clojure.java.io :as io]
            [clojure.string :as string]
            [cljs.env :as env]
            [cljs.compiler :as comp]
            [cljs.analyzer :as ana])
  (:import java.net.URL java.io.File))

(defn clean-meta [m]
  (when m
