(lisp-complete-symbol): Regenerate the completion list, even after a partial
completion has been inserted in the current buffer. If there are more than 1 completion, redisplay the *Completions* buffer; if the completion is unique, delete the *Completions* window.
This commit is contained in:
parent
eba9bb5f1a
commit
6d93e4aa38
2 changed files with 16 additions and 5 deletions
|
@ -569,10 +569,11 @@ considered."
|
|||
((null completion)
|
||||
(message "Can't find completion for \"%s\"" pattern)
|
||||
(ding))
|
||||
((not (string= pattern completion))
|
||||
(delete-region beg end)
|
||||
(insert completion))
|
||||
(t
|
||||
(unless (string= completion pattern)
|
||||
(delete-region beg end)
|
||||
(insert completion)
|
||||
(setq pattern completion))
|
||||
(message "Making completion list...")
|
||||
(let ((list (all-completions pattern obarray predicate)))
|
||||
(setq list (sort list 'string<))
|
||||
|
@ -585,8 +586,10 @@ considered."
|
|||
new))
|
||||
(setq list (cdr list)))
|
||||
(setq list (nreverse new))))
|
||||
(with-output-to-temp-buffer "*Completions*"
|
||||
(display-completion-list list pattern)))
|
||||
(if (> (length list) 1)
|
||||
(with-output-to-temp-buffer "*Completions*"
|
||||
(display-completion-list list pattern))
|
||||
(delete-windows-on "*Completions*")))
|
||||
(message "Making completion list...%s" "done")))))))
|
||||
|
||||
;;; arch-tag: aa7fa8a4-2e6f-4e9b-9cd9-fef06340e67e
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue