# HG changeset patch # User Stefan Monnier # Date 1291669562 18000 # Node ID ed4be998eae9a17c038c025960b8a04653214bf5 # Parent c92a6fe1fa5901024f4f73e12049ba9a18b7c72f * lisp/bindings.el (complete-symbol): Move back from minibuffer.el. * lisp/minibuffer.el (completion-at-point): Remove the `arg'. diff -r c92a6fe1fa59 -r ed4be998eae9 etc/NEWS --- a/etc/NEWS Mon Dec 06 13:21:42 2010 -0500 +++ b/etc/NEWS Mon Dec 06 16:06:02 2010 -0500 @@ -228,7 +228,7 @@ +++ ** There is a new command `count-words-region', which does what you expect. -** completion-at-point is now an alias for complete-symbol. +** completion-at-point now handles tags and semantic completion. ** The default value of `backup-by-copying-when-mismatch' is now t. diff -r c92a6fe1fa59 -r ed4be998eae9 lisp/bindings.el --- a/lisp/bindings.el Mon Dec 06 13:21:42 2010 -0500 +++ b/lisp/bindings.el Mon Dec 06 16:06:02 2010 -0500 @@ -655,6 +655,16 @@ (define-key esc-map "\t" 'complete-symbol) +(defun complete-symbol (arg) + "Perform completion on the text around point. +The completion method is determined by `completion-at-point-functions'. + +With a prefix argument, this command does completion within +the collection of symbols listed in the index of the manual for the +language you are using." + (interactive "P") + (if arg (info-complete-symbol) (completion-at-point))) + ;; Reduce total amount of space we must allocate during this function ;; that we will not need to keep permanently. (garbage-collect) diff -r c92a6fe1fa59 -r ed4be998eae9 lisp/minibuffer.el --- a/lisp/minibuffer.el Mon Dec 06 13:21:42 2010 -0500 +++ b/lisp/minibuffer.el Mon Dec 06 16:06:02 2010 -0500 @@ -1251,31 +1251,23 @@ `:predicate' a predicate that completion candidates need to satisfy. `:annotation-function' the value to use for `completion-annotate-function'.") -(defun completion-at-point (&optional arg) +(defun completion-at-point () "Perform completion on the text around point. -The completion method is determined by `completion-at-point-functions'. - -With a prefix argument, this command does completion within -the collection of symbols listed in the index of the manual for the -language you are using." - (interactive "P") - (if arg - (info-complete-symbol) - (let ((res (run-hook-with-args-until-success - 'completion-at-point-functions))) - (cond - ((functionp res) (funcall res)) - (res - (let* ((plist (nthcdr 3 res)) - (start (nth 0 res)) - (end (nth 1 res)) - (completion-annotate-function - (or (plist-get plist :annotation-function) - completion-annotate-function))) - (completion-in-region start end (nth 2 res) - (plist-get plist :predicate)))))))) - -(define-obsolete-function-alias 'complete-symbol 'completion-at-point "24.1") +The completion method is determined by `completion-at-point-functions'." + (interactive) + (let ((res (run-hook-with-args-until-success + 'completion-at-point-functions))) + (cond + ((functionp res) (funcall res)) + (res + (let* ((plist (nthcdr 3 res)) + (start (nth 0 res)) + (end (nth 1 res)) + (completion-annotate-function + (or (plist-get plist :annotation-function) + completion-annotate-function))) + (completion-in-region start end (nth 2 res) + (plist-get plist :predicate))))))) ;;; Key bindings.