mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-03 22:20:52 -08:00
* lisp/pcomplete.el (pcomplete-completions-at-point):
Obey pcomplete-ignore-case. Don't call pcomplete-norm-func unless pcomplete-seen is non-nil. (pcomplete-comint-setup): Also recognize the new comint/shell completion functions. (pcomplete-do-complete): Don't call pcomplete-norm-func unless pcomplete-seen is non-nil.
This commit is contained in:
parent
4cf0fdcb15
commit
8fff8daa89
2 changed files with 37 additions and 23 deletions
|
|
@ -1,3 +1,13 @@
|
|||
2011-04-28 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* pcomplete.el (pcomplete-completions-at-point):
|
||||
Obey pcomplete-ignore-case. Don't call pcomplete-norm-func unless
|
||||
pcomplete-seen is non-nil.
|
||||
(pcomplete-comint-setup): Also recognize the new comint/shell
|
||||
completion functions.
|
||||
(pcomplete-do-complete): Don't call pcomplete-norm-func unless
|
||||
pcomplete-seen is non-nil.
|
||||
|
||||
2011-04-27 Niels Giesen <niels.giesen@gmail.com>
|
||||
|
||||
* calendar/icalendar.el (diary-lib): Add require statement.
|
||||
|
|
|
|||
|
|
@ -522,23 +522,24 @@ Same as `pcomplete' but using the standard completion UI."
|
|||
(directory-file-name f)))
|
||||
pcomplete-seen))
|
||||
(lambda (f)
|
||||
(not (member
|
||||
(funcall pcomplete-norm-func
|
||||
(directory-file-name f))
|
||||
pcomplete-seen))))))
|
||||
|
||||
(list
|
||||
beg (point)
|
||||
;; Add a space at the end of completion. Use a terminator-regexp
|
||||
;; that never matches since the terminator cannot appear
|
||||
;; within the completion field anyway.
|
||||
(if (zerop (length pcomplete-termination-string))
|
||||
table
|
||||
(apply-partially 'completion-table-with-terminator
|
||||
(cons pcomplete-termination-string
|
||||
"\\`a\\`")
|
||||
table))
|
||||
:predicate pred))))
|
||||
(not (when pcomplete-seen
|
||||
(member
|
||||
(funcall pcomplete-norm-func
|
||||
(directory-file-name f))
|
||||
pcomplete-seen)))))))
|
||||
(unless (zerop (length pcomplete-termination-string))
|
||||
;; Add a space at the end of completion. Use a terminator-regexp
|
||||
;; that never matches since the terminator cannot appear
|
||||
;; within the completion field anyway.
|
||||
(setq table
|
||||
(apply-partially #'completion-table-with-terminator
|
||||
(cons pcomplete-termination-string
|
||||
"\\`a\\`")
|
||||
table)))
|
||||
(when pcomplete-ignore-case
|
||||
(setq table
|
||||
(apply-partially #'completion-table-case-fold table)))
|
||||
(list beg (point) table :predicate pred))))
|
||||
|
||||
;; I don't think such commands are usable before first setting up buffer-local
|
||||
;; variables to parse args, so there's no point autoloading it.
|
||||
|
|
@ -781,7 +782,9 @@ this is `comint-dynamic-complete-functions'."
|
|||
(set (make-local-variable completef-sym)
|
||||
(copy-sequence (symbol-value completef-sym)))
|
||||
(let* ((funs (symbol-value completef-sym))
|
||||
(elem (or (memq 'shell-dynamic-complete-filename funs)
|
||||
(elem (or (memq 'comint-filename-completion funs)
|
||||
(memq 'shell-filename-completion funs)
|
||||
(memq 'shell-dynamic-complete-filename funs)
|
||||
(memq 'comint-dynamic-complete-filename funs))))
|
||||
(if elem
|
||||
(setcar elem 'pcomplete)
|
||||
|
|
@ -1248,11 +1251,12 @@ extra checking, and munging of the COMPLETIONS list."
|
|||
(setq completions
|
||||
(apply-partially 'completion-table-with-predicate
|
||||
completions
|
||||
(lambda (f)
|
||||
(not (member
|
||||
(funcall pcomplete-norm-func
|
||||
(directory-file-name f))
|
||||
pcomplete-seen)))
|
||||
(when pcomplete-seen
|
||||
(lambda (f)
|
||||
(not (member
|
||||
(funcall pcomplete-norm-func
|
||||
(directory-file-name f))
|
||||
pcomplete-seen))))
|
||||
'strict)))
|
||||
;; OK, we've got a list of completions.
|
||||
(if pcomplete-show-list
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue