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 /lisp | |
| 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
Diffstat (limited to 'lisp')
| -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 |
4 files changed, 36 insertions, 11 deletions
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 | ||