Tente este truque. Parece funcionar no emacs 24.5:
(defun win-file-name-completion-advice (res)
(if (stringp res) (replace-regexp-in-string "/" "\\" res) res))
(advice-add 'comint-completion-file-name-table
:filter-return #'win-file-name-completion-advice)
(defun win-command-completion-advice ()
(let ((filename (comint-match-partial-filename)))
(and filename (not (string-match "\\" filename)))))
(advice-add 'shell-command-completion
:before-while #'win-command-completion-advice)