Provide additional default values (file name at point or at the
authorJuri Linkov <juri@jurta.org>
Wed, 25 Nov 2009 17:11:29 +0000 (17:11 +0000)
committerJuri Linkov <juri@jurta.org>
Wed, 25 Nov 2009 17:11:29 +0000 (17:11 +0000)
commit7d371eac644665cdc4afcac57e7a09560e010a31
tree668947c7530c04603a2a5372cc13156c4f96ad0e
parent04ae543a28153fda0c084a5d56f59e2f7b12510d
Provide additional default values (file name at point or at the
current Dired line) via M-n for file reading minibuffers.  (Bug#5010)

* minibuffer.el (read-file-name-defaults): New function.
(read-file-name): Reset `minibuffer-default' to nil when
it duplicates initial input `insdef'.
Bind `minibuffer-default-add-function' to lambda that
calls `read-file-name-defaults' in `minibuffer-selected-window'.
(minibuffer-insert-file-name-at-point): New command.

* files.el (file-name-at-point-functions): New defcustom.
(find-file-default): Remove defvar.
(find-file-read-args): Don't use `find-file-default'.
Move `minibuffer-with-setup-hook' that sets `minibuffer-default'
to `read-file-name'.
(find-file-literally): Use `read-file-name' with
`confirm-nonexistent-file-or-buffer'.

* ffap.el (ffap-guess-file-name-at-point): New autoloaded function.

* dired.el (dired-read-dir-and-switches):
Move `minibuffer-with-setup-hook' that sets `minibuffer-default'
to `read-file-name'.
(dired-file-name-at-point): New function.
(dired-mode): Add hook `dired-file-name-at-point' to
`file-name-at-point-functions'.
etc/NEWS
lisp/ChangeLog
lisp/dired.el
lisp/ffap.el
lisp/files.el
lisp/minibuffer.el