[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#12898: 24.2.50.1; Completion is not passed further on in emacs-lisp,
From: |
Vitalie Spinu |
Subject: |
bug#12898: 24.2.50.1; Completion is not passed further on in emacs-lisp, org-mode etc. |
Date: |
Tue, 20 Nov 2012 13:27:45 +0100 |
User-agent: |
Gnus/5.130004 (Ma Gnus v0.4) Emacs/24.2.50 (gnu/linux) |
>> Stefan Monnier <monnier@iro.umontreal.ca>
>> on Thu, 15 Nov 2012 13:40:37 -0500 wrote:
>> In elisp mode completion-at-point-functions is set to
>> (lisp-completion-at-point t). If I set it to (t), filename completion
>> works as expected. So, it's the lisp-completion-at-point that is not
>> handing the completion over.
SM> Indeed, lisp-completion-at-point should return nil when it determines
SM> that it cannot provide completion information for the text around point.
SM> Problem is: how should it determine that?
There is an inbuilt facility (:exclusive 'no). Why is that not the default?
This solves the problem:
diff --git a/lisp/emacs-lisp/lisp.el b/lisp/emacs-lisp/lisp.el
index bcb7fab..680673d 100644
--- a/lisp/emacs-lisp/lisp.el
+++ b/lisp/emacs-lisp/lisp.el
@@ -699,6 +699,7 @@ considered."
:predicate predicate
:annotation-function
(unless (eq predicate 'fboundp)
- (lambda (str) (if (fboundp (intern-soft str)) " <f>"))))))))
+ (lambda (str) (if (fboundp (intern-soft str)) " <f>")))
+ :exclusive 'no)))))
;;; lisp.el ends here
diff --git a/lisp/progmodes/octave-mod.el b/lisp/progmodes/octave-mod.el
index ab5a19f..04bad8e 100644
--- a/lisp/progmodes/octave-mod.el
+++ b/lisp/progmodes/octave-mod.el
@@ -975,7 +975,8 @@ otherwise."
;; Extend region past point, if applicable.
(save-excursion (skip-syntax-forward "w_")
(setq end (point))))
- (list beg end octave-completion-alist)))
+ (list beg end octave-completion-alist
+ :exclusive 'no)))
(define-obsolete-function-alias 'octave-complete-symbol
'completion-at-point "24.1")
Vitalie