changeset 110927:81696c97193b

* lisp/emacs-lisp/lisp.el (lisp-completion-at-point): Use emacs-lisp-mode-syntax-table for the whole function.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Sat, 09 Oct 2010 17:43:43 +0200
parents a98040347deb
children a28c57bb896c
files lisp/ChangeLog lisp/emacs-lisp/lisp.el
diffstat 2 files changed, 34 insertions(+), 29 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sat Oct 09 23:51:42 2010 +1300
+++ b/lisp/ChangeLog	Sat Oct 09 17:43:43 2010 +0200
@@ -1,3 +1,8 @@
+2010-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* emacs-lisp/lisp.el (lisp-completion-at-point):
+	Use emacs-lisp-mode-syntax-table for the whole function.
+
 2010-10-09  Richard Sharman  <richard_sharman@mitel.com>  (tiny change)
 
 	* progmodes/gdb-ui.el (gdb-mouse-toggle-breakpoint-margin)
@@ -7,8 +12,8 @@
 2010-10-05  David Koppelman  <koppel@ece.lsu.edu>
 
 	* hi-lock.el (hi-lock-font-lock-hook): Check font-lock-fontified
-	instead of font-lock-mode before adding keywords. Removed
-	hi-lock-mode off code. Removed inhibit hack.
+	instead of font-lock-mode before adding keywords.
+	Remove hi-lock-mode off code.  Remove inhibit hack.
 	(hi-lock-set-pattern): Only add keywords if font-lock-fontified
 	non-nil; removed hook inhibit hack.
 
--- a/lisp/emacs-lisp/lisp.el	Sat Oct 09 23:51:42 2010 +1300
+++ b/lisp/emacs-lisp/lisp.el	Sat Oct 09 17:43:43 2010 +0200
@@ -632,37 +632,37 @@
 (defun lisp-completion-at-point (&optional predicate)
   "Function used for `completion-at-point-functions' in `emacs-lisp-mode'."
   ;; FIXME: the `end' could be after point?
-  (let* ((end (point))
-         (beg (with-syntax-table emacs-lisp-mode-syntax-table
-                (save-excursion
+  (with-syntax-table emacs-lisp-mode-syntax-table
+    (let* ((end (point))
+           (beg (save-excursion
                   (backward-sexp 1)
                   (while (= (char-syntax (following-char)) ?\')
                     (forward-char 1))
-                  (point))))
-         (predicate
-          (or predicate
-              (save-excursion
-                (goto-char beg)
-                (if (not (eq (char-before) ?\())
-                    (lambda (sym)	;why not just nil ?   -sm
-                      (or (boundp sym) (fboundp sym)
-                          (symbol-plist sym)))
-                  ;; Looks like a funcall position.  Let's double check.
-                  (if (condition-case nil
-                          (progn (up-list -2) (forward-char 1)
-                                 (eq (char-after) ?\())
-                        (error nil))
-                      ;; If the first element of the parent list is an open
-                      ;; parenthesis we are probably not in a funcall position.
-                      ;; Maybe a `let' varlist or something.
-                      nil
-                    ;; Else, we assume that a function name is expected.
-                    'fboundp))))))
-    (list beg end obarray
-          :predicate predicate
-          :annotate-function
+                  (point)))
+           (predicate
+            (or predicate
+                (save-excursion
+                  (goto-char beg)
+                  (if (not (eq (char-before) ?\())
+                      (lambda (sym)          ;why not just nil ?   -sm
+                        (or (boundp sym) (fboundp sym)
+                            (symbol-plist sym)))
+                    ;; Looks like a funcall position.  Let's double check.
+                    (if (condition-case nil
+                            (progn (up-list -2) (forward-char 1)
+                                   (eq (char-after) ?\())
+                          (error nil))
+                        ;; If the first element of the parent list is an open
+                        ;; paren we are probably not in a funcall position.
+                        ;; Maybe a `let' varlist or something.
+                        nil
+                      ;; Else, we assume that a function name is expected.
+                      'fboundp))))))
+      (list beg end obarray
+            :predicate predicate
+            :annotate-function
             (unless (eq predicate 'fboundp)
-              (lambda (str) (if (fboundp (intern-soft str)) " <f>"))))))
+              (lambda (str) (if (fboundp (intern-soft str)) " <f>")))))))
 
 ;; arch-tag: aa7fa8a4-2e6f-4e9b-9cd9-fef06340e67e
 ;;; lisp.el ends here