* bug#7147: 24.0.50; M-: minibuffer completion chokes at `:'
@ 2010-10-02 12:53 Štěpán Němec
2010-10-09 15:46 ` Stefan Monnier
0 siblings, 1 reply; 4+ messages in thread
From: Štěpán Němec @ 2010-10-02 12:53 UTC (permalink / raw)
To: 7147; +Cc: rfrancoise
Steps to reproduce:
emacs -Q
(defun too:bad () nil)
M-: (too M-TAB
=> lists completions including `too:bad'
M-: (too: M-TAB
=> [Nothing to complete]
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#7147: 24.0.50; M-: minibuffer completion chokes at `:'
2010-10-02 12:53 bug#7147: 24.0.50; M-: minibuffer completion chokes at `:' Štěpán Němec
@ 2010-10-09 15:46 ` Stefan Monnier
2010-10-12 0:07 ` Juanma Barranquero
2010-10-17 13:06 ` Štěpán Němec
0 siblings, 2 replies; 4+ messages in thread
From: Stefan Monnier @ 2010-10-09 15:46 UTC (permalink / raw)
To: Štěpán Němec; +Cc: 7147, rfrancoise
> Steps to reproduce:
> emacs -Q
> (defun too:bad () nil)
> M-: (too M-TAB
> => lists completions including `too:bad'
> M-: (too: M-TAB
> => [Nothing to complete]
Thanks. A similar problem exists in Emacs-23, tho with slightly less
severe symptoms. I've checked the fix below in emacs-23 which will
propagate to trunk soonish.
Please confirm when it is fixed,
Stefan
=== modified file 'lisp/ChangeLog'
--- lisp/ChangeLog 2010-10-09 10:51:42 +0000
+++ lisp/ChangeLog 2010-10-09 15:41:56 +0000
@@ -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)
=== modified file 'lisp/emacs-lisp/lisp.el'
--- lisp/emacs-lisp/lisp.el 2010-04-20 07:54:28 +0000
+++ lisp/emacs-lisp/lisp.el 2010-10-09 15:37:41 +0000
@@ -632,13 +632,13 @@
(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?
+ (with-syntax-table emacs-lisp-mode-syntax-table
(let* ((end (point))
- (beg (with-syntax-table emacs-lisp-mode-syntax-table
- (save-excursion
+ (beg (save-excursion
(backward-sexp 1)
(while (= (char-syntax (following-char)) ?\')
(forward-char 1))
- (point))))
+ (point)))
(predicate
(or predicate
(save-excursion
@@ -653,7 +653,7 @@
(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.
+ ;; 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.
@@ -662,7 +662,7 @@
: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
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-10-17 13:06 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-02 12:53 bug#7147: 24.0.50; M-: minibuffer completion chokes at `:' Štěpán Němec
2010-10-09 15:46 ` Stefan Monnier
2010-10-12 0:07 ` Juanma Barranquero
2010-10-17 13:06 ` Štěpán Němec
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.