Function: rfn-eshadow-setup-minibuffer

rfn-eshadow-setup-minibuffer is a byte-compiled function defined in rfn-eshadow.el.gz.

Signature

(rfn-eshadow-setup-minibuffer)

Documentation

Set up a minibuffer for file-name-shadow-mode(var)/file-name-shadow-mode(fun).

The prompt and initial input should already have been inserted.

Source Code

;; Defined in /usr/src/emacs/lisp/rfn-eshadow.el.gz
;;; Hook functions

;; This function goes on minibuffer-setup-hook
(defun rfn-eshadow-setup-minibuffer ()
  "Set up a minibuffer for `file-name-shadow-mode'.
The prompt and initial input should already have been inserted."
  (when minibuffer-completing-file-name
    (setq rfn-eshadow-overlay
	  (make-overlay (minibuffer-prompt-end) (minibuffer-prompt-end)))
    ;; Give rfn-eshadow-overlay the user's props.
    (let ((props
	   (if window-system
	       file-name-shadow-properties
	     file-name-shadow-tty-properties)))
      (while props
	(overlay-put rfn-eshadow-overlay (pop props) (pop props))))
    ;; Turn on overlay evaporation so that we don't have to worry about
    ;; odd effects when the overlay sits empty at the beginning of the
    ;; minibuffer.
    (overlay-put rfn-eshadow-overlay 'evaporate t)
    ;; Add our post-command hook, and make sure can remove it later.
    (add-to-list 'rfn-eshadow-frobbed-minibufs (current-buffer))
    (add-hook 'post-command-hook #'rfn-eshadow-update-overlay nil t)
    ;; Run custom hook
    (run-hooks 'rfn-eshadow-setup-minibuffer-hook)))