aboutsummaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorStefan Monnier2011-05-23 23:45:50 -0300
committerStefan Monnier2011-05-23 23:45:50 -0300
commita2a25d24350857dda87e28d6b2695cccc41bb32e (patch)
tree59bf876837e64b92932a52bf8ea8c526de285eb1 /etc
parent2df215b52612a739eedcc024e47b6a9fa720dfda (diff)
downloademacs-a2a25d24350857dda87e28d6b2695cccc41bb32e.tar.gz
emacs-a2a25d24350857dda87e28d6b2695cccc41bb32e.zip
Add an :exit-function for completion-at-point.
* lisp/minibuffer.el (completion--done): New fun. (completion--do-completion): Use it. New arg `expect-exact'. (minibuffer-complete, minibuffer-complete-word): Don't output message, since completion--do-completion does it for us now. (minibuffer-force-complete): Use completion--done and completion--replace. Handle sole-completion case with more care. (minibuffer-complete-and-exit): Use new `expect-exact' arg. (completion-extra-properties): New var. (completion-annotate-function): Make obsolete. (minibuffer-completion-help): Adjust accordingly. Use completion-list-insert-choice-function. (completion-at-point, completion-help-at-point): Bind completion-extra-properties. (completion-pcm-word-delimiters): Add | (for uniquify, for example). * lisp/simple.el (completion-list-insert-choice-function): New var. (completion-setup-function): Preserve it. (choose-completion): Pay attention to it, shuffle the code a bit. (choose-completion-string): New arg `insert-function'. * lisp/textmodes/bibtex.el: Convert to lexical binding. (bibtex-mode-map): Use completion-at-point. (bibtex-mode): Use define-derived-mode&completion-at-point-functions. (bibtex-completion-at-point-function): New fun, from bibtex-complete. (bibtex-complete): Define as obsolete alias. (bibtex-complete-internal): Remove. (bibtex-format-entry): Remove unused sub-group in regexp. * lisp/shell.el (shell--command-completion-data) (shell-environment-variable-completion): * lisp/pcomplete.el (pcomplete-completions-at-point): * lisp/comint.el (comint--complete-file-name-data): Use :exit-function instead of completion-table-with-terminator so it also works for choose-completion.
Diffstat (limited to 'etc')
-rw-r--r--etc/NEWS29
1 files changed, 22 insertions, 7 deletions
diff --git a/etc/NEWS b/etc/NEWS
index 98a66259db0..64313480efb 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -68,9 +68,6 @@ and also when HOME is set to C:\ by default.
68 68
69* Changes in Emacs 24.1 69* Changes in Emacs 24.1
70 70
71** Completion in a non-minibuffer now tries to detect the end of completion
72and pops down the *Completions* buffer accordingly.
73
74** emacsclient changes 71** emacsclient changes
75 72
76*** New emacsclient argument --parent-id ID can be used to open a 73*** New emacsclient argument --parent-id ID can be used to open a
@@ -83,9 +80,18 @@ client frame in parent X window ID, via XEmbed. This works like the
83*** If emacsclient shuts down as a result of Emacs signalling an 80*** If emacsclient shuts down as a result of Emacs signalling an
84error, its exit status is 1. 81error, its exit status is 1.
85 82
86** Completion can cycle, depending on completion-cycle-threshold. 83** Completion
84*** Many packages have been changed to use completion-at-point rather than
85their own completion code.
86
87*** Completion in a non-minibuffer now tries to detect the end of completion
88and pops down the *Completions* buffer accordingly.
89
90*** Completion can cycle, depending on completion-cycle-threshold.
87 91
88** `completing-read' can be customized using the new variable 92*** New completion style `substring'.
93
94*** `completing-read' can be customized using the new variable
89`completing-read-function'. 95`completing-read-function'.
90 96
91** auto-mode-case-fold is now enabled by default. 97** auto-mode-case-fold is now enabled by default.
@@ -833,6 +839,17 @@ sc.el, x-menu.el, rnews.el, rnewspost.el
833 839
834* Lisp changes in Emacs 24.1 840* Lisp changes in Emacs 24.1
835 841
842** Completion
843*** New variable completion-extra-properties used to specify extra properties
844of the current completion:
845- :annotate-function, same as the old completion-annotate-function.
846- :exit-function, function to call after completion took place.
847
848*** Functions on completion-at-point-functions can return any of the properties
849valid for completion-extra-properties.
850
851*** completion-annotate-function is obsolete.
852
836** `glyphless-char-display' can now distinguish between graphical and 853** `glyphless-char-display' can now distinguish between graphical and
837text terminal display, via a char-table entry that is a cons cell. 854text terminal display, via a char-table entry that is a cons cell.
838 855
@@ -909,8 +926,6 @@ argument is supplied (see Trash changes, above).
909 926
910** buffer-substring-filters is obsoleted by filter-buffer-substring-functions. 927** buffer-substring-filters is obsoleted by filter-buffer-substring-functions.
911 928
912** New completion style `substring'.
913
914** `facemenu-read-color' is now an alias for `read-color'. 929** `facemenu-read-color' is now an alias for `read-color'.
915The command `read-color' now requires a match for a color name or RGB 930The command `read-color' now requires a match for a color name or RGB
916triplet, instead of signalling an error if the user provides a invalid 931triplet, instead of signalling an error if the user provides a invalid