         (if (string= result "~/") "~/" result)
         (if (< level 0)
             (if empty "../" (concat "../" result))
-            (if empty "/" (concat "/" result))))))
+            (cond ((and (eq system-type 'windows-nt) empty)
+                   "c:/")
+                  ((and (not empty) (eq system-type 'windows-nt))
+                   result)
+                  (empty "/")
+                  (t
+                   (concat "/" result)))))))
 
 (defun anything-find-files-down-one-level (arg)
   "Go down one level like unix command `cd ..'.
 If prefix numeric arg is given go ARG level down."
   (interactive "p")
-  (when (equal (cdr (assoc 'name (anything-get-current-source))) "Find Files")
+  (when (or (equal (cdr (assoc 'name (anything-get-current-source))) "Find Files")
+            (equal (cdr (assoc 'name (anything-get-current-source))) "Copy Files")
+            (equal (cdr (assoc 'name (anything-get-current-source))) "Rename Files")
+            (equal (cdr (assoc 'name (anything-get-current-source))) "Symlink Files")
+            (equal (cdr (assoc 'name (anything-get-current-source))) "Hardlink Files"))
     (let ((new-pattern (anything-reduce-file-name anything-pattern arg :unix-close t :expand t)))
       (with-selected-window (minibuffer-window)
         (delete-minibuffer-contents)

              (or (if (and fap (file-exists-p fap)) (expand-file-name fap) fap)
                  (expand-file-name default-directory)) "Find Files or Url: " nil nil "*Anything Find Files*")))


;;; File Cache
(defvar anything-c-source-file-cache-initialized nil)

(defun anything-c-highlight-ffiles (files)
  "Candidate transformer for `anything-c-source-find-files'."
  (loop for i in files
     if (file-symlink-p i)
     collect (propertize i 'face '((:foreground "DarkOrange"))
                         'help-echo (file-truename i)) into a
     if (file-directory-p i)
     collect (propertize i 'face anything-c-files-face1) into a
     else
