          (Files/move (.. in fileRef toPath) (.toPath fp) opts)
          ;;since file has moved, update stuff
          (.setDeleteFlag in false)
-         (.reset in nil))))))
+         (.reset in nil)))
+     (l/info "FFFFFFFFF = %s" fp)
+     fp)))
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+(defn save-file
+  "Save a file to a directory"
+
+  ([dir fname stuff]
+   (save-file dir fname stuff false))
+
+  ([dir fname stuff del?]
+   (spit-file (io/file dir fname) stuff del?)))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 (defn change-content

            [clojure.string :as cs]
            [clojure.edn :as edn]
            [czlab.basal.util :as u]
            [czlab.basal.core :as c]
            [czlab.basal.indent :as in])


  (let [fp (io/file dir fname)]
    (if (file-read? fp) (XData. fp false))))


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defn spit-file
  "Save a file to a directory"

  ([file stuff]
   (spit-file file stuff false))

  ([file stuff del?]
   (let [fp (io/file file)
         ^XData
         in (if (c/is? XData stuff)
              stuff (XData. stuff false))]
