Fix minibuffer-next-completion in completing-read-multiple
* lisp/emacs-lisp/crm.el (completing-read-multiple): Adapt to the previous removal of completion-base-affixes (bug#48356, bug#48356).
This commit is contained in:
parent
737f249aa2
commit
88bc748f52
1 changed files with 10 additions and 16 deletions
|
@ -251,22 +251,16 @@ with empty strings removed."
|
|||
(setq-local minibuffer-completion-table #'crm--collection-fn)
|
||||
(setq-local minibuffer-completion-predicate predicate)
|
||||
(setq-local completion-list-insert-choice-function
|
||||
(lambda (start end choice)
|
||||
(if (and (stringp start) (stringp end))
|
||||
(let* ((beg (save-excursion
|
||||
(goto-char (minibuffer-prompt-end))
|
||||
(or (search-forward start nil t)
|
||||
(search-forward-regexp crm-separator nil t)
|
||||
(minibuffer-prompt-end))))
|
||||
(end (save-excursion
|
||||
(goto-char (point-max))
|
||||
(or (search-backward end nil t)
|
||||
(progn
|
||||
(goto-char beg)
|
||||
(search-forward-regexp crm-separator nil t))
|
||||
(point-max)))))
|
||||
(completion--replace beg end choice))
|
||||
(completion--replace start end choice))))
|
||||
(lambda (_start _end choice)
|
||||
(let* ((beg (save-excursion
|
||||
(if (search-backward-regexp crm-separator nil t)
|
||||
(1+ (point))
|
||||
(minibuffer-prompt-end))))
|
||||
(end (save-excursion
|
||||
(if (search-forward-regexp crm-separator nil t)
|
||||
(1- (point))
|
||||
(point-max)))))
|
||||
(completion--replace beg end choice))))
|
||||
;; see completing_read in src/minibuf.c
|
||||
(setq-local minibuffer-completion-confirm
|
||||
(unless (eq require-match t) require-match))
|
||||
|
|
Loading…
Add table
Reference in a new issue