Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs into emacs-29
This commit is contained in:
commit
458e175270
8 changed files with 41 additions and 21 deletions
|
@ -70,7 +70,7 @@ commit 958b768a6534ae6e77a8547a56fc31b46b63710b
|
|||
cd ~/emacs/emacs-28
|
||||
git cherry-pick -xe 958b768a6534ae6e77a8547a56fc31b46b63710b
|
||||
|
||||
and add "Backport:" to the commit string. Then
|
||||
and optionally add "Backport:" to the commit string. Then
|
||||
|
||||
git push
|
||||
|
||||
|
|
|
@ -1990,13 +1990,17 @@ to assign meanings to key bindings that use these modifiers. The
|
|||
modifier bits are labeled as @samp{s-}, @samp{H-} and @samp{A-}
|
||||
respectively.
|
||||
|
||||
@cindex modifier keys unsupported by keyboard
|
||||
Even if your keyboard lacks these additional modifier keys, you can
|
||||
enter it using @kbd{C-x @@}: @kbd{C-x @@ h} adds the Hyper flag to
|
||||
enter them using @kbd{C-x @@}: @kbd{C-x @@ h} adds the Hyper flag to
|
||||
the next character, @kbd{C-x @@ s} adds the Super flag, and
|
||||
@kbd{C-x @@ a} adds the Alt flag. For instance, @kbd{C-x @@ h
|
||||
C-a} is a way to enter @kbd{Hyper-Control-a}. (Unfortunately, there
|
||||
is no way to add two modifiers by using @kbd{C-x @@} twice for the
|
||||
same character, because the first one goes to work on the @kbd{C-x}.)
|
||||
You can similarly enter the Shift, Control, and Meta modifiers by
|
||||
using @kbd{C-x @ S}, @kbd{C-x @ c}, and @kbd{C-x @ m}, respectively,
|
||||
although this is rarely needed.
|
||||
|
||||
@node Function Keys
|
||||
@subsection Rebinding Function Keys
|
||||
|
|
10
etc/NEWS
10
etc/NEWS
|
@ -265,6 +265,16 @@ controlled by the internal Emacs machinery led to low-contrast faces
|
|||
in common default setups. Emacs now uses the same 'region' face on
|
||||
Gtk and non-Gtk setups.
|
||||
|
||||
---
|
||||
** 'C-h f' and 'C-h x' may now require confirmation when you press RET.
|
||||
If the text in the minibuffer cannot be completed to a single function
|
||||
or command, typing RET will not automatically complete to the shortest
|
||||
candidate, but will instead ask for confirmation. Typing TAB will
|
||||
complete as much as possible, and another TAB will show all the
|
||||
possible completions. This allows you to insist on the functions name
|
||||
even if Help doesn't appear to know about it, by confirming with a
|
||||
second RET.
|
||||
|
||||
** Dired
|
||||
|
||||
---
|
||||
|
|
|
@ -10053,6 +10053,8 @@ PREFIX is the string that represents this modifier in an event type symbol."
|
|||
event-type
|
||||
(cons event-type (cdr event)))))))
|
||||
|
||||
;; This is what makes "C-x @" followed by [hsmaSc] work even though
|
||||
;; you won't find any (define-key ctl-x-map "@" ...) binding.
|
||||
(define-key function-key-map [?\C-x ?@ ?h] 'event-apply-hyper-modifier)
|
||||
(define-key function-key-map [?\C-x ?@ ?s] 'event-apply-super-modifier)
|
||||
(define-key function-key-map [?\C-x ?@ ?m] 'event-apply-meta-modifier)
|
||||
|
|
22
lisp/subr.el
22
lisp/subr.el
|
@ -1576,16 +1576,18 @@ in the current Emacs session, then this function may return nil."
|
|||
;; Use `window-point' for the case when the current buffer
|
||||
;; is temporarily switched to some other buffer (bug#50256)
|
||||
(let* ((pos (window-point))
|
||||
(posn (posn-at-point pos)))
|
||||
(if (null posn) ;; `pos' is "out of sight".
|
||||
(list (selected-window) pos '(0 . 0) 0)
|
||||
;; If `pos' is inside a chunk of text hidden by an `invisible'
|
||||
;; or `display' property, `posn-at-point' returns the position
|
||||
;; that *is* visible, whereas `event--posn-at-point' is used
|
||||
;; when we have a keyboard event, whose position is `point' even
|
||||
;; if that position is invisible.
|
||||
(setf (nth 5 posn) pos)
|
||||
posn)))
|
||||
(posn (posn-at-point pos (if (minibufferp (current-buffer))
|
||||
(minibuffer-window)))))
|
||||
(cond ((null posn) ;; `pos' is "out of sight".
|
||||
(setq posn (list (selected-window) pos '(0 . 0) 0)))
|
||||
;; If `pos' is inside a chunk of text hidden by an `invisible'
|
||||
;; or `display' property, `posn-at-point' returns the position
|
||||
;; that *is* visible, whereas `event--posn-at-point' is used
|
||||
;; when we have a keyboard event, whose position is `point' even
|
||||
;; if that position is invisible.
|
||||
((> (length posn) 5)
|
||||
(setf (nth 5 posn) pos)))
|
||||
posn))
|
||||
|
||||
(defun event-start (event)
|
||||
"Return the starting position of EVENT.
|
||||
|
|
|
@ -2096,8 +2096,8 @@ may require a restart of Emacs in order to become effective."
|
|||
|
||||
(defcustom reftex-allow-detached-macro-args nil
|
||||
"Non-nil means, allow arguments of macros to be detached by whitespace.
|
||||
When this is t, `aaa' will be considered as argument of \\bb in the following
|
||||
construct: \\bbb [xxx] {aaa}."
|
||||
When this is t, `aaa' will be considered as argument of \\bbb in
|
||||
the following construct: \\bbb [xxx] {aaa}."
|
||||
:group 'reftex-miscellaneous-configurations
|
||||
:type 'boolean)
|
||||
|
||||
|
|
|
@ -1041,12 +1041,13 @@ It is based on `log-edit-mode', and has Git-specific extensions."
|
|||
(string-replace file-diff "" vc-git-patch-string))
|
||||
(user-error "Index not empty"))
|
||||
(setq pos (point))))))
|
||||
(let ((patch-file (make-nearby-temp-file "git-patch")))
|
||||
(with-temp-file patch-file
|
||||
(insert vc-git-patch-string))
|
||||
(unwind-protect
|
||||
(vc-git-command nil 0 patch-file "apply" "--cached")
|
||||
(delete-file patch-file))))
|
||||
(unless (string-empty-p vc-git-patch-string)
|
||||
(let ((patch-file (make-nearby-temp-file "git-patch")))
|
||||
(with-temp-file patch-file
|
||||
(insert vc-git-patch-string))
|
||||
(unwind-protect
|
||||
(vc-git-command nil 0 patch-file "apply" "--cached")
|
||||
(delete-file patch-file)))))
|
||||
(cl-flet ((boolean-arg-fn
|
||||
(argument)
|
||||
(lambda (value) (when (equal value "yes") (list argument)))))
|
||||
|
|
|
@ -1649,7 +1649,8 @@ check_window_containing (struct window *w, void *user_data)
|
|||
set *PART to the id of that element.
|
||||
|
||||
If there is no window under X, Y return nil and leave *PART
|
||||
unmodified. TOOL_BAR_P means detect tool-bar windows.
|
||||
unmodified. TOOL_BAR_P means detect tool-bar windows, and
|
||||
TAB_BAR_P means detect tab-bar windows.
|
||||
|
||||
This function was previously implemented with a loop cycling over
|
||||
windows with Fnext_window, and starting with the frame's selected
|
||||
|
|
Loading…
Add table
Reference in a new issue