emacs/etc
Spencer Baugh e46471ed07 Make RET choose the selected completion
Previously, one could select a completion via M-<up>/M-<down>,
but then RET would not actually select the chosen completion.
With the addition of completion-auto-deselect, this is not
actually necessary: we can reasonably assume that when a
completion is selected, the user wants to use that, since their
last action must have been to select it.  So, just choose the
selected completion on RET.  This lets us default
minibuffer-completion-auto-choose to nil.

For minibuffers with require-match completion, this can be done
by changing the existing command bound to RET.  For minibuffers
with nil require-match completion, RET was previously bound to
exit-minibuffer, and changing exit-minibuffer to have this logic
is risky.  We handle that case by adding a new
minibuffer-completion-exit which wraps exit-minibuffer and bind
RET to it.

* lisp/minibuffer.el (minibuffer-insert-completion-if-selected)
(minibuffer-completion-exit, completion--selected-candidate):
Add.
(minibuffer-complete-and-exit): Call
minibuffer-choose-completion. (bug#77253)
(minibuffer-local-completion-map): Bind RET to
minibuffer-completion-exit, overriding exit-minibuffer.
(completion-in-region-mode-map): Bind RET to
minibuffer-choose-completion when there's a selected candidate.
(minibuffer-completion-auto-choose): Default to nil.
(minibuffer-visible-completions--filter)
(minibuffer-visible-completions-map): Delete RET binding, no
longer necessary.
* lisp/simple.el (completion-setup-function): Update completion
help text to show more correct bindings.
* test/lisp/minibuffer-tests.el (completions-header-format-test)
(minibuffer-next-completion): Set
minibuffer-completion-auto-choose=t explicitly.
(with-minibuffer-setup, minibuffer-completion-RET-prefix)
(completion-in-region-next-completion): Add new tests.
* etc/NEWS: Announce.
2025-08-27 21:23:03 +03:00
..
charsets Update copyright year to 2025 2025-01-02 18:39:42 +01:00
e Add auto-margin enable/disable to term 2025-03-02 16:01:13 -05:00
forms Update copyright year to 2025 2025-01-02 18:39:42 +01:00
gnus
images tab-line: Add close button for modified tabs (bug#79046) 2025-07-31 21:35:50 +03:00
nxml
org Update copyright year to 2025 2025-01-02 18:39:42 +01:00
refcards ; Fix copyright years of the Spanish translations 2025-03-04 03:08:31 +01:00
schema Update copyright year to 2025 2025-01-02 18:39:42 +01:00
srecode Update copyright year to 2025 2025-01-02 18:39:42 +01:00
themes Merge from origin/emacs-30 2025-07-19 06:56:58 -04:00
tutorials Fix copyright years by hand 2025-01-02 18:44:48 +01:00
AUTHORS Update files for Emacs 30.2 2025-08-14 04:05:28 -04:00
CALC-NEWS Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ChangeLog.1 ; Delete troff markers from ChangeLog files 2025-02-20 02:46:43 +01:00
compilation.txt Support Rust compiler messages in compile mode (bug#70794). 2025-05-22 11:53:34 +02:00
COPYING Merge from Gnulib 2017-10-01 18:31:10 -07:00
copyright-assign.txt Add assignment form as etc/copyright-assign.txt 2024-06-23 00:24:31 +02:00
DEBUG ; Fix last change 2025-08-07 16:38:02 +03:00
DEVEL.HUMOR ; Fix punctuation in etc/* 2024-07-27 01:51:47 +02:00
DISTRIB Update copyright year to 2025 2025-01-02 18:39:42 +01:00
edt-user.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
EGLOT-NEWS Eglot: improve diagnostic-reporting performance 2025-04-29 12:23:06 +01:00
emacs-buffer.gdb Update copyright year to 2025 2025-01-02 18:39:42 +01:00
emacs-mail.desktop Hide emacs-mail.desktop, emacsclient-mail.desktop from menus 2021-07-02 13:09:18 +02:00
emacs.desktop Drop redundant keywords in .desktop files. 2021-08-11 14:05:25 +02:00
emacs.icon
emacs.metainfo.xml Provide Open Age Ratings Service metadata 2025-04-19 16:43:23 +03:00
emacs.service * etc/emacs.service: 2020-12-14 17:59:58 +01:00
emacs_lldb.py Update copyright year to 2025 2025-01-02 18:39:42 +01:00
emacsclient-mail.desktop Add 'server-eval-args-left' to server.el 2023-10-29 14:10:23 +02:00
emacsclient.desktop Make emacsclient handle org-protocol:// links 2023-09-18 12:54:22 +02:00
enriched.txt Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ERC-NEWS Remove scrolltobottom dependency from erc-fill module 2025-08-25 21:17:48 -07:00
ETAGS.EBNF Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ETAGS.README Update copyright year to 2025 2025-01-02 18:39:42 +01:00
future-bug ; Fix typos 2025-01-23 03:14:37 +01:00
gnus-tut.txt Update copyright year to 2025 2025-01-02 18:39:42 +01:00
grep.txt Update copyright year to 2025 2025-01-02 18:39:42 +01:00
HELLO Update copyright year to 2025 2025-01-02 18:39:42 +01:00
HISTORY Update files for Emacs 30.2 2025-08-14 04:05:28 -04:00
JOKES
MACHINES Delete duplicate note on ancient platforms 2025-01-05 05:32:01 +01:00
MH-E-NEWS Update copyright year to 2025 2025-01-02 18:39:42 +01:00
NEWS Make RET choose the selected completion 2025-08-27 21:23:03 +03:00
NEWS.1-17 Update copyright year to 2025 2025-01-02 18:39:42 +01:00
NEWS.18 Update copyright year to 2025 2025-01-02 18:39:42 +01:00
NEWS.19 ; Move time-stamp release info from symbol-releases.eld to NEWS 2025-03-23 10:39:52 -07:00
NEWS.20 ; Move time-stamp release info from symbol-releases.eld to NEWS 2025-03-23 10:39:52 -07:00
NEWS.21 ; Fix capitalization of VC-Dir. 2025-08-10 12:20:42 +01:00
NEWS.22 Update copyright year to 2025 2025-01-02 18:39:42 +01:00
NEWS.23 Update copyright year to 2025 2025-01-02 18:39:42 +01:00
NEWS.24 Update copyright year to 2025 2025-01-02 18:39:42 +01:00
NEWS.25 Fix capitalization ELisp -> Elisp 2025-03-12 09:38:33 +08:00
NEWS.26 Fix capitalization ELisp -> Elisp 2025-03-12 09:38:33 +08:00
NEWS.27 Update copyright year to 2025 2025-01-02 18:39:42 +01:00
NEWS.28 Fix capitalization ELisp -> Elisp 2025-03-12 09:38:33 +08:00
NEWS.29 ; Grammar fixes for "native-compiled" 2025-02-28 20:20:55 +01:00
NEWS.30 Merge from origin/emacs-30 2025-08-16 13:35:00 +02:00
NEXTSTEP Update copyright year to 2025 2025-01-02 18:39:42 +01:00
NXML-NEWS Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ORG-NEWS ; Fix typos 2025-02-22 14:48:29 +01:00
org.gnu.emacs.defaults.gschema.xml Update copyright year to 2025 2025-01-02 18:39:42 +01:00
package-keyring.gpg * etc/package-keyring.gpg: Update expiration and add new key 2024-10-22 12:35:18 -04:00
PROBLEMS Merge from origin/emacs-30 2025-07-26 06:58:12 -04:00
ps-prin0.ps Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ps-prin1.ps Update copyright year to 2025 2025-01-02 18:39:42 +01:00
publicsuffix.txt ; * etc/publicsuffix.txt: Update from upstream. 2024-12-22 13:50:41 +02:00
README Update copyright year to 2025 2025-01-02 18:39:42 +01:00
rgb.txt Revert "Update etc/rgb.txt from X.Org upstream" 2023-10-16 08:56:53 +08:00
ses-example.ses Update copyright year to 2025 2025-01-02 18:39:42 +01:00
spook.lines Add more spook.lines 2019-07-13 05:09:45 +02:00
symbol-releases.eld ; * etc/symbol-releases.eld (dired-click-to-select-mode): Add. 2025-08-23 16:34:43 +03:00
TERMS Update copyright year to 2025 2025-01-02 18:39:42 +01:00
TODO ; Replace "Elisp" with "Lisp" or "Emacs Lisp" in some places 2025-03-12 10:24:22 +08:00
w32-feature.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
yow.lines

This directory contains the architecture-independent files used by or
with Emacs.  This includes some text files of documentation for GNU
Emacs or of interest to Emacs users, and the file of dumped docstrings
for Emacs functions and variables.

COPYRIGHT AND LICENSE INFORMATION FOR IMAGE FILES

File: emacs.icon
  Author: Sun Microsystems, Inc
  Copyright (C) 1999, 2001-2025 Free Software Foundation, Inc.
  License: GNU General Public License version 3 or later (see COPYING)