summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2009-12-07 21:15:19 +0000
committerStefan Monnier <monnier@iro.umontreal.ca>2009-12-07 21:15:19 +0000
commitfb10ee4af92130504c60b61e7ff1238ac18a7857 (patch)
tree98e05a131502bb1c5f08c3a12b0de9ff753c44cd
parent944a300c0f0fdc2db445d34e78f27c92ab10c9dc (diff)
downloademacs-fb10ee4af92130504c60b61e7ff1238ac18a7857.tar.gz
(latex-complete, latex-indent-or-complete): Remove.
(latex-mode): Set completion-at-point-functions instead.
-rw-r--r--lisp/ChangeLog12
-rw-r--r--lisp/textmodes/tex-mode.el23
2 files changed, 11 insertions, 24 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 1eec4f80e5f..4045f553629 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,8 +1,13 @@
2009-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
+ * textmodes/tex-mode.el (latex-complete)
+ (latex-indent-or-complete): Remove.
+ (latex-mode): Set completion-at-point-functions instead.
+
+ Provide a standard completion command and hook it into TAB.
* minibuffer.el (completion-at-point-functions): New var.
(completion-at-point): New command.
- * indent.el (indent-for-tab-command): Handle the new `complete' behavior.
+ * indent.el (indent-for-tab-command): Handle the `complete' behavior.
* progmodes/python.el (python-mode-map): Use completion-at-point.
(python-completion-at-point): Rename from python-partial-symbol and
adjust for use in completion-at-point-functions.
@@ -12,9 +17,10 @@
(lisp-complete-symbol): Use it.
* emacs-lisp/lisp-mode.el (emacs-lisp-mode): Use define-derived-mode,
setup completion-at-point for Elisp completion.
- (emacs-lisp-mode-map, lisp-interaction-mode-map): Use completion-at-point.
+ (emacs-lisp-mode-map, lisp-interaction-mode-map):
+ Use completion-at-point.
* ielm.el (ielm-map): Use completion-at-point.
- (inferior-emacs-lisp-mode): Setup completion-at-point for Elisp completion.
+ (inferior-emacs-lisp-mode): Setup completion-at-point-functions.
* progmodes/sym-comp.el: Move to...
* obsolete/sym-comp.el: Move from progmodes.
diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el
index 3cbd6e19e73..7443db7d03d 100644
--- a/lisp/textmodes/tex-mode.el
+++ b/lisp/textmodes/tex-mode.el
@@ -1076,6 +1076,8 @@ subshell is initiated, `tex-shell-hook' is run."
(add-hook 'fill-nobreak-predicate 'latex-fill-nobreak-predicate nil t)
(set (make-local-variable 'indent-line-function) 'latex-indent)
(set (make-local-variable 'fill-indent-according-to-mode) t)
+ (add-hook 'completion-at-point-functions
+ 'latex-complete-data nil 'local)
(set (make-local-variable 'outline-regexp) latex-outline-regexp)
(set (make-local-variable 'outline-level) 'latex-outline-level)
(set (make-local-variable 'forward-sexp-function) 'latex-forward-sexp)
@@ -1509,27 +1511,6 @@ Puts point on a blank line between them."
nil
(list comp-beg comp-end table))))))))
-(defun latex-complete ()
- "Perform completion at point for LaTeX mode.
-Return non-nil if we found what to complete."
- (interactive)
- (let ((data (latex-complete-data)))
- (when data
- (apply 'completion-in-region data)
- t)))
-
-(defun latex-indent-or-complete ()
- "Perform completion at point or indentation, according to DWIM.
-The heuristic is to try indentation, if that fails try completion,
-if that fails insert a tab."
- (interactive)
- (let ((undo buffer-undo-list)
- (pos (point)))
- (indent-according-to-mode)
- (or (not (and (eq pos (point)) (eq undo buffer-undo-list)))
- (latex-complete)
- (insert-tab))))
-
;;;;
;;;; LaTeX syntax navigation
;;;;