(completion-pcm--pattern->regex): Undo last change.
(completion-pcm--all-completions): Move the case-fold-search binding to it also applies to completion-regexp-list (used in all-completions). (completion-pcm--hilit-commonality): Add missing case-fold-search.
This commit is contained in:
parent
d746203c12
commit
15c72e1d4a
2 changed files with 17 additions and 14 deletions
|
|
@ -1,3 +1,10 @@
|
|||
2008-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* minibuffer.el (completion-pcm--pattern->regex): Undo last change.
|
||||
(completion-pcm--all-completions): Move the case-fold-search binding to
|
||||
it also applies to completion-regexp-list (used in all-completions).
|
||||
(completion-pcm--hilit-commonality): Add missing case-fold-search.
|
||||
|
||||
2008-09-03 Martin Rudalics <rudalics@gmx.at>
|
||||
|
||||
* window.el (pop-up-frame-function): Move ...
|
||||
|
|
|
|||
|
|
@ -1381,17 +1381,12 @@ or a symbol chosen among `any', `star', `point'."
|
|||
(mapconcat
|
||||
(lambda (x)
|
||||
(case x
|
||||
((star any point)
|
||||
(if (if (consp group) (memq x group) group)
|
||||
"\\(.*?\\)"
|
||||
".*?"))
|
||||
(t
|
||||
(if (and completion-ignore-case
|
||||
(string-match "[[:alpha:]]" x))
|
||||
(format "[%s%s]" (downcase x) (upcase x))
|
||||
(regexp-quote x)))))
|
||||
pattern
|
||||
""))))
|
||||
((star any point)
|
||||
(if (if (consp group) (memq x group) group)
|
||||
"\\(.*?\\)" ".*?"))
|
||||
(t (regexp-quote x))))
|
||||
pattern
|
||||
""))))
|
||||
;; Avoid pathological backtracking.
|
||||
(while (string-match "\\.\\*\\?\\(?:\\\\[()]\\)*\\(\\.\\*\\?\\)" re)
|
||||
(setq re (replace-match "" t t re 1)))
|
||||
|
|
@ -1413,7 +1408,8 @@ PATTERN is as returned by `completion-pcm--string->pattern'."
|
|||
;; since all-completions is written in C!
|
||||
(let* (;; Convert search pattern to a standard regular expression.
|
||||
(regex (completion-pcm--pattern->regex pattern))
|
||||
(completion-regexp-list (cons regex completion-regexp-list))
|
||||
(case-fold-search completion-ignore-case)
|
||||
(completion-regexp-list (cons regex completion-regexp-list))
|
||||
(compl (all-completions
|
||||
(concat prefix (if (stringp (car pattern)) (car pattern) ""))
|
||||
table pred))
|
||||
|
|
@ -1426,8 +1422,7 @@ PATTERN is as returned by `completion-pcm--string->pattern'."
|
|||
(if (not (functionp table))
|
||||
;; The internal functions already obeyed completion-regexp-list.
|
||||
compl
|
||||
(let ((case-fold-search completion-ignore-case)
|
||||
(poss ()))
|
||||
(let ((poss ()))
|
||||
(dolist (c compl)
|
||||
(when (string-match regex c) (push c poss)))
|
||||
poss)))))
|
||||
|
|
@ -1435,6 +1430,7 @@ PATTERN is as returned by `completion-pcm--string->pattern'."
|
|||
(defun completion-pcm--hilit-commonality (pattern completions)
|
||||
(when completions
|
||||
(let* ((re (completion-pcm--pattern->regex pattern '(point)))
|
||||
(case-fold-search completion-ignore-case)
|
||||
(last (last completions))
|
||||
(base-size (cdr last)))
|
||||
;; Remove base-size during mapcar, and add it back later.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue