Function: pr-interactive-dir

pr-interactive-dir is a byte-compiled function defined in printing.el.gz.

Signature

(pr-interactive-dir MESS)

Source Code

;; Defined in /usr/src/emacs/lisp/printing.el.gz
(defun pr-interactive-dir (mess)
  (let* ((dir-name   (file-name-directory (or (buffer-file-name)
					      default-directory)))
	 (fmt-prompt (concat "%s[" mess "] Directory to print: "))
	 (dir        (read-directory-name (format fmt-prompt "")
					  "" dir-name nil dir-name))
	 prompt)
    (while (cond ((not (file-directory-p dir))
		  (ding)
		  (setq prompt "It's not a directory! "))
		 ((not (file-readable-p dir))
		  (ding)
		  (setq prompt "Directory is unreadable! "))
		 (t nil))
      (setq dir-name (file-name-directory dir)
	    dir      (read-directory-name (format fmt-prompt prompt)
					  "" dir-name nil dir-name)))
    (file-name-as-directory dir)))