diff options
| author | Glenn Morris | 2020-03-13 07:50:33 -0700 |
|---|---|---|
| committer | Glenn Morris | 2020-03-13 07:50:33 -0700 |
| commit | 6bdb561a3bafa0623da30e33b4a1dc291370218b (patch) | |
| tree | f3fe23d6771aab9bd9f7df6822af4ea1f4dd39af | |
| parent | 099520ec95baad177f58a687d70818bc8f602703 (diff) | |
| parent | a2b07f9f11474dbcedd7cce39d2fa795bb23f692 (diff) | |
| download | emacs-6bdb561a3bafa0623da30e33b4a1dc291370218b.tar.gz emacs-6bdb561a3bafa0623da30e33b4a1dc291370218b.zip | |
Merge from origin/emacs-27
a2b07f9f11 (origin/emacs-27) ; * etc/NEWS: Explain how to get back ol...
b468b3d1ff Fix a recent documentation change
1ab766fd58 Fix last change
ecfe633993 * lisp/tab-bar.el: Last-minute changes.
c1ce9fa7f2 * lisp/subr.el (cancel-change-group): Fix bug#39680
ef5744a988 Improve docs for horizontal scrolling with mouse and touch...
1bc3fa0bd0 * lisp/emacs-lisp/package.el (package-install): Fix typo i...
4537976afd Port .gdbinit to clang with -gdwarf-4
0883c800a0 Simplify rx example in manual
a695189248 ; * etc/NEWS: Fix typo.
# Conflicts:
# etc/NEWS
| -rw-r--r-- | doc/emacs/frames.texi | 13 | ||||
| -rw-r--r-- | doc/lispref/searching.texi | 4 | ||||
| -rw-r--r-- | etc/NEWS.27 | 10 | ||||
| -rw-r--r-- | lisp/emacs-lisp/package.el | 2 | ||||
| -rw-r--r-- | lisp/mwheel.el | 10 | ||||
| -rw-r--r-- | lisp/subr.el | 9 | ||||
| -rw-r--r-- | lisp/tab-bar.el | 26 | ||||
| -rw-r--r-- | src/.gdbinit | 2 |
8 files changed, 57 insertions, 19 deletions
diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi index 002297c2599..7a583b96bbd 100644 --- a/doc/emacs/frames.texi +++ b/doc/emacs/frames.texi | |||
| @@ -217,10 +217,15 @@ default bound to scrolling with the @key{Ctrl} modifier. | |||
| 217 | @vindex mouse-wheel-tilt-scroll | 217 | @vindex mouse-wheel-tilt-scroll |
| 218 | @vindex mouse-wheel-flip-direction | 218 | @vindex mouse-wheel-flip-direction |
| 219 | Emacs can also support horizontal scrolling if your mouse's wheel can | 219 | Emacs can also support horizontal scrolling if your mouse's wheel can |
| 220 | be tilted. This feature is off by default; the variable | 220 | be tilted, or if your touchpad supports it. This feature is off by |
| 221 | @code{mouse-wheel-tilt-scroll} turns it on. If you'd like to reverse | 221 | default; the variable @code{mouse-wheel-tilt-scroll} turns it on, if |
| 222 | the direction of horizontal scrolling, customize the variable | 222 | you customize it to a non-@code{nil} value. By default, tilting the |
| 223 | @code{mouse-wheel-flip-direction} to a non-@code{nil} value. | 223 | mouse wheel scrolls the window's view horizontally in the direction of |
| 224 | the tilt: e.g., tilting to the right scrolls the window to the right, | ||
| 225 | so that the text displayed in the window moves horizontally to the | ||
| 226 | left. If you'd like to reverse the direction of horizontal scrolling, | ||
| 227 | customize the variable @code{mouse-wheel-flip-direction} to a | ||
| 228 | non-@code{nil} value. | ||
| 224 | 229 | ||
| 225 | When the mouse pointer is over an image, scrolling the mouse wheel | 230 | When the mouse pointer is over an image, scrolling the mouse wheel |
| 226 | with the @key{Ctrl} modifier scales the image under the mouse pointer. | 231 | with the @key{Ctrl} modifier scales the image under the mouse pointer. |
diff --git a/doc/lispref/searching.texi b/doc/lispref/searching.texi index 1a090ebe101..83c154938cd 100644 --- a/doc/lispref/searching.texi +++ b/doc/lispref/searching.texi | |||
| @@ -1021,8 +1021,8 @@ or, using shorter synonyms and written more compactly, | |||
| 1021 | @example | 1021 | @example |
| 1022 | @group | 1022 | @group |
| 1023 | (rx "/*" | 1023 | (rx "/*" |
| 1024 | (* (| (not (any "*")) | 1024 | (* (| (not "*") |
| 1025 | (: "*" (not (any "/"))))) | 1025 | (: "*" (not "/")))) |
| 1026 | (+ "*") "/") | 1026 | (+ "*") "/") |
| 1027 | @end group | 1027 | @end group |
| 1028 | @end example | 1028 | @end example |
diff --git a/etc/NEWS.27 b/etc/NEWS.27 index 1eff9261147..63003191699 100644 --- a/etc/NEWS.27 +++ b/etc/NEWS.27 | |||
| @@ -360,6 +360,14 @@ its '--eval' command-line option), as well as in | |||
| 360 | 'lisp-interaction-mode' and 'ielm-mode', used in the "*scratch*" and | 360 | 'lisp-interaction-mode' and 'ielm-mode', used in the "*scratch*" and |
| 361 | "*ielm*" buffers. | 361 | "*ielm*" buffers. |
| 362 | 362 | ||
| 363 | We envision that most Lisp code is already either written with | ||
| 364 | lexical-binding in mind, or will work unchanged under | ||
| 365 | lexical-binding. If, for some reason, your code used in 'M-:' or | ||
| 366 | '--eval' doesn't work as result of this change, either modify the code | ||
| 367 | to work with lexical binding, or wrap it in an extra level of 'eval'. | ||
| 368 | For example, --eval FORM becomes --eval "(eval 'FORM)" (note the extra | ||
| 369 | quote in 'FORM). | ||
| 370 | |||
| 363 | --- | 371 | --- |
| 364 | ** The new user option 'tooltip-resize-echo-area' avoids truncating | 372 | ** The new user option 'tooltip-resize-echo-area' avoids truncating |
| 365 | tooltip text on GUI frames when tooltips are displayed in the echo | 373 | tooltip text on GUI frames when tooltips are displayed in the echo |
| @@ -779,7 +787,7 @@ an offset to absolute line numbers. | |||
| 779 | ** table | 787 | ** table |
| 780 | 788 | ||
| 781 | +++ | 789 | +++ |
| 782 | *** 'table-generate-source' now supports wiki and mediawiki | 790 | *** 'table-generate-source' now supports wiki and mediawiki. |
| 783 | This command can now output wiki and mediawiki format tables. | 791 | This command can now output wiki and mediawiki format tables. |
| 784 | 792 | ||
| 785 | ** telnet-mode | 793 | ** telnet-mode |
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index 6d6b31f1f38..bce17a04ba7 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el | |||
| @@ -2045,7 +2045,7 @@ Mark the installed package as selected by adding it to | |||
| 2045 | 2045 | ||
| 2046 | When called from Lisp and optional argument DONT-SELECT is | 2046 | When called from Lisp and optional argument DONT-SELECT is |
| 2047 | non-nil, install the package but do not add it to | 2047 | non-nil, install the package but do not add it to |
| 2048 | `package-select-packages'. | 2048 | `package-selected-packages'. |
| 2049 | 2049 | ||
| 2050 | If PKG is a `package-desc' and it is already installed, don't try | 2050 | If PKG is a `package-desc' and it is already installed, don't try |
| 2051 | to install it but still mark it as selected." | 2051 | to install it but still mark it as selected." |
diff --git a/lisp/mwheel.el b/lisp/mwheel.el index 56150c803f7..317f2cd8edd 100644 --- a/lisp/mwheel.el +++ b/lisp/mwheel.el | |||
| @@ -145,13 +145,19 @@ face height." | |||
| 145 | ;;; For tilt-scroll | 145 | ;;; For tilt-scroll |
| 146 | ;;; | 146 | ;;; |
| 147 | (defcustom mouse-wheel-tilt-scroll nil | 147 | (defcustom mouse-wheel-tilt-scroll nil |
| 148 | "Enable scroll using tilting mouse wheel." | 148 | "Enable horizontal scrolling by tilting mouse wheel or via touchpad. |
| 149 | Also see `mouse-wheel-flip-direction'." | ||
| 149 | :group 'mouse | 150 | :group 'mouse |
| 150 | :type 'boolean | 151 | :type 'boolean |
| 151 | :version "26.1") | 152 | :version "26.1") |
| 152 | 153 | ||
| 153 | (defcustom mouse-wheel-flip-direction nil | 154 | (defcustom mouse-wheel-flip-direction nil |
| 154 | "Swap direction of `wheel-right' and `wheel-left'." | 155 | "Swap direction of `wheel-right' and `wheel-left'. |
| 156 | By default, `wheel-right' scrolls the text to the right, | ||
| 157 | and `wheel-left' scrolls in the other direction. | ||
| 158 | If this variable is non-nil, it inverts the direction of | ||
| 159 | horizontal scrolling by tilting the mouse wheel. | ||
| 160 | Also see `mouse-wheel-tilt-scroll'." | ||
| 155 | :group 'mouse | 161 | :group 'mouse |
| 156 | :type 'boolean | 162 | :type 'boolean |
| 157 | :version "26.1") | 163 | :version "26.1") |
diff --git a/lisp/subr.el b/lisp/subr.el index 9c80c06a127..123557e736b 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -2987,13 +2987,18 @@ This finishes the change group by reverting all of its changes." | |||
| 2987 | ;; the body of `atomic-change-group' all changes can be undone. | 2987 | ;; the body of `atomic-change-group' all changes can be undone. |
| 2988 | (widen) | 2988 | (widen) |
| 2989 | (let ((old-car (car-safe elt)) | 2989 | (let ((old-car (car-safe elt)) |
| 2990 | (old-cdr (cdr-safe elt))) | 2990 | (old-cdr (cdr-safe elt)) |
| 2991 | ;; Use `pending-undo-list' temporarily since `undo-more' needs | ||
| 2992 | ;; it, but restore it afterwards so as not to mess with an | ||
| 2993 | ;; ongoing sequence of `undo's. | ||
| 2994 | (pending-undo-list | ||
| 2995 | ;; Use `buffer-undo-list' unconditionally (bug#39680). | ||
| 2996 | buffer-undo-list)) | ||
| 2991 | (unwind-protect | 2997 | (unwind-protect |
| 2992 | (progn | 2998 | (progn |
| 2993 | ;; Temporarily truncate the undo log at ELT. | 2999 | ;; Temporarily truncate the undo log at ELT. |
| 2994 | (when (consp elt) | 3000 | (when (consp elt) |
| 2995 | (setcar elt nil) (setcdr elt nil)) | 3001 | (setcar elt nil) (setcdr elt nil)) |
| 2996 | (unless (eq last-command 'undo) (undo-start)) | ||
| 2997 | ;; Make sure there's no confusion. | 3002 | ;; Make sure there's no confusion. |
| 2998 | (when (and (consp elt) (not (eq elt (last pending-undo-list)))) | 3003 | (when (and (consp elt) (not (eq elt (last pending-undo-list)))) |
| 2999 | (error "Undoing to some unrelated state")) | 3004 | (error "Undoing to some unrelated state")) |
diff --git a/lisp/tab-bar.el b/lisp/tab-bar.el index 873f54a27db..30ed1a4cf68 100644 --- a/lisp/tab-bar.el +++ b/lisp/tab-bar.el | |||
| @@ -123,7 +123,8 @@ Possible modifiers are `control', `meta', `shift', `hyper', `super' and | |||
| 123 | (assq-delete-all 'tab-bar-lines | 123 | (assq-delete-all 'tab-bar-lines |
| 124 | default-frame-alist))))) | 124 | default-frame-alist))))) |
| 125 | 125 | ||
| 126 | (when (and tab-bar-mode (not (get-text-property 0 'display tab-bar-new-button))) | 126 | (when (and tab-bar-mode tab-bar-new-button |
| 127 | (not (get-text-property 0 'display tab-bar-new-button))) | ||
| 127 | ;; This file is pre-loaded so only here we can use the right data-directory: | 128 | ;; This file is pre-loaded so only here we can use the right data-directory: |
| 128 | (add-text-properties 0 (length tab-bar-new-button) | 129 | (add-text-properties 0 (length tab-bar-new-button) |
| 129 | `(display (image :type xpm | 130 | `(display (image :type xpm |
| @@ -132,7 +133,8 @@ Possible modifiers are `control', `meta', `shift', `hyper', `super' and | |||
| 132 | :ascent center)) | 133 | :ascent center)) |
| 133 | tab-bar-new-button)) | 134 | tab-bar-new-button)) |
| 134 | 135 | ||
| 135 | (when (and tab-bar-mode (not (get-text-property 0 'display tab-bar-close-button))) | 136 | (when (and tab-bar-mode tab-bar-close-button |
| 137 | (not (get-text-property 0 'display tab-bar-close-button))) | ||
| 136 | ;; This file is pre-loaded so only here we can use the right data-directory: | 138 | ;; This file is pre-loaded so only here we can use the right data-directory: |
| 137 | (add-text-properties 0 (length tab-bar-close-button) | 139 | (add-text-properties 0 (length tab-bar-close-button) |
| 138 | `(display (image :type xpm | 140 | `(display (image :type xpm |
| @@ -263,6 +265,17 @@ before calling the command that adds a new tab." | |||
| 263 | :group 'tab-bar | 265 | :group 'tab-bar |
| 264 | :version "27.1") | 266 | :version "27.1") |
| 265 | 267 | ||
| 268 | (defcustom tab-bar-new-button-show t | ||
| 269 | "If non-nil, show the \"New tab\" button in the tab bar. | ||
| 270 | When this is nil, you can create new tabs with \\[tab-new]." | ||
| 271 | :type 'boolean | ||
| 272 | :initialize 'custom-initialize-default | ||
| 273 | :set (lambda (sym val) | ||
| 274 | (set-default sym val) | ||
| 275 | (force-mode-line-update)) | ||
| 276 | :group 'tab-bar | ||
| 277 | :version "27.1") | ||
| 278 | |||
| 266 | (defvar tab-bar-new-button " + " | 279 | (defvar tab-bar-new-button " + " |
| 267 | "Button for creating a new tab.") | 280 | "Button for creating a new tab.") |
| 268 | 281 | ||
| @@ -306,7 +319,8 @@ This helps to select the tab by its number using `tab-bar-select-tab'." | |||
| 306 | :group 'tab-bar | 319 | :group 'tab-bar |
| 307 | :version "27.1") | 320 | :version "27.1") |
| 308 | 321 | ||
| 309 | (defvar tab-bar-separator nil) | 322 | (defvar tab-bar-separator nil |
| 323 | "String that delimits tabs.") | ||
| 310 | 324 | ||
| 311 | 325 | ||
| 312 | (defcustom tab-bar-tab-name-function #'tab-bar-tab-name-current | 326 | (defcustom tab-bar-tab-name-function #'tab-bar-tab-name-current |
| @@ -464,9 +478,9 @@ Return its existing value or a new value." | |||
| 464 | (interactive) | 478 | (interactive) |
| 465 | (tab-bar-close-tab ,i))))))) | 479 | (tab-bar-close-tab ,i))))))) |
| 466 | tabs) | 480 | tabs) |
| 467 | (when tab-bar-new-button | 481 | `((sep-add-tab menu-item ,separator ignore)) |
| 468 | `((sep-add-tab menu-item ,separator ignore) | 482 | (when (and tab-bar-new-button-show tab-bar-new-button) |
| 469 | (add-tab menu-item ,tab-bar-new-button tab-bar-new-tab | 483 | `((add-tab menu-item ,tab-bar-new-button tab-bar-new-tab |
| 470 | :help "New tab")))))) | 484 | :help "New tab")))))) |
| 471 | 485 | ||
| 472 | 486 | ||
diff --git a/src/.gdbinit b/src/.gdbinit index 5dd01337153..30c7b055ce0 100644 --- a/src/.gdbinit +++ b/src/.gdbinit | |||
| @@ -72,7 +72,7 @@ end | |||
| 72 | 72 | ||
| 73 | define xgetsym | 73 | define xgetsym |
| 74 | xgetptr $arg0 | 74 | xgetptr $arg0 |
| 75 | set $ptr = ((struct Lisp_Symbol *) ((char *)lispsym + $ptr)) | 75 | set $ptr = ((struct Lisp_Symbol *) ((char *) &lispsym + $ptr)) |
| 76 | end | 76 | end |
| 77 | 77 | ||
| 78 | # Access the name of a symbol | 78 | # Access the name of a symbol |