Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
fd53ccaa
Commit
fd53ccaa
authored
Aug 29, 2014
by
Leo Liu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* files.el (minibuffer-with-setup-hook): Allow (:append FUN) to
append to minibuffer-setup-hook. Fixes: debbugs:18341
parent
562d55be
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
10 deletions
+21
-10
lisp/ChangeLog
lisp/ChangeLog
+5
-0
lisp/files.el
lisp/files.el
+16
-10
No files found.
lisp/ChangeLog
View file @
fd53ccaa
2014-08-29 Leo Liu <sdl.web@gmail.com>
* files.el (minibuffer-with-setup-hook): Allow (:append FUN) to
append to minibuffer-setup-hook. (Bug#18341)
2014-08-28 Stefan Monnier <monnier@iro.umontreal.ca>
* progmodes/cc-defs.el: Expose c-lanf-defconst's expressions to the
...
...
lisp/files.el
View file @
fd53ccaa
...
...
@@ -1375,6 +1375,9 @@ return value, which may be passed as the REQUIRE-MATCH arg to
(defmacro minibuffer-with-setup-hook (fun &rest body)
"
Temporarily
add
FUN
to
`
minibuffer-setup-hook
'
while
executing
BODY.
FUN
can
also
be
(
:append
FUN1
)
,
in
which
case
FUN1
is
appended
to
`
minibuffer-setup-hook
'.
BODY
should
use
the
minibuffer
at
most
once.
Recursive
uses
of
the
minibuffer
are
unaffected
(
FUN
is
not
called
additional
times
)
.
...
...
@@ -1383,20 +1386,23 @@ This macro actually adds an auxiliary function that calls FUN,
rather
than
FUN
itself,
to
`
minibuffer-setup-hook
'.
"
(declare (indent 1) (debug t))
(let ((hook (make-symbol "
setup-hook
"))
(funsym (make-symbol "
fun
")))
(funsym (make-symbol "
fun
"))
(append nil))
(when (eq (car-safe fun) :append)
(setq append '(t) fun (cadr fun)))
`(let ((,funsym ,fun)
,hook)
(setq ,hook
(lambda ()
;; Clear out this hook so it does not interfere
;; with any recursive minibuffer usage.
(remove-hook 'minibuffer-setup-hook ,hook)
(funcall ,funsym)))
(lambda ()
;; Clear out this hook so it does not interfere
;; with any recursive minibuffer usage.
(remove-hook 'minibuffer-setup-hook ,hook)
(funcall ,funsym)))
(unwind-protect
(progn
(add-hook 'minibuffer-setup-hook ,hook)
,@body)
(remove-hook 'minibuffer-setup-hook ,hook)))))
(progn
(add-hook 'minibuffer-setup-hook ,hook
,@append
)
,@body)
(remove-hook 'minibuffer-setup-hook ,hook)))))
(defun find-file-read-args (prompt mustmatch)
(list (read-file-name prompt nil default-directory mustmatch)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment