"n" #'minibuffer-narrow-completions-to-current
"h" #'minibuffer-narrow-completions-to-history
"m" #'minibuffer-narrow-completions
+ "g" #'minibuffer-narrow-completions-by-regexp
"w" #'minibuffer-widen-completions)
(defvar-keymap minibuffer-local-ns-map
result))
(defvar minibuffer-narrow-completions-function
- #'minibuffer-narrow-completions-by-regexp
+ #'minibuffer-completions-regexp-predicate
"Function to use for restricting the list of completions candidates.
Minibuffer command `minibuffer-narrow-completions' calls this
(buffer-substring (point) (point-max)))))
(cons (+ prompt-end (car beg-end)) (+ (point) (cdr beg-end)))))
-(defun minibuffer-narrow-completions-by-regexp ()
+(defun minibuffer-completions-regexp-predicate ()
"Narrow completion candidates by matching a given regular expression.
This function is the default value of variable
`minibuffer-narrow-completions-function', which see."
minibuffer-narrow-completions-function))))
(minibuffer--add-completions-predicate (car filter-desc) (cdr filter-desc))))
+(defun minibuffer-narrow-completions-by-regexp ()
+ "Restrict completion candidates by matching a given regular expression."
+ (interactive "" minibuffer-mode)
+ (let* ((enable-recursive-minibuffers t)
+ (filter-desc (minibuffer-completions-regexp-predicate)))
+ (minibuffer--add-completions-predicate (car filter-desc) (cdr filter-desc))))
+
(defun minibuffer-narrow-completions-to-current (arg)
"Restrict completion candidates according to current minibuffer input.
ARG is the numeric prefix argument. When ARG is negative,