emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master c049c8d: * lisp/tab-bar.el: Add repeat-map keymaps.


From: Juri Linkov
Subject: master c049c8d: * lisp/tab-bar.el: Add repeat-map keymaps.
Date: Mon, 5 Apr 2021 17:19:12 -0400 (EDT)

branch: master
commit c049c8da58106e422494914447e06fd7c9deb301
Author: Juri Linkov <juri@linkov.net>
Commit: Juri Linkov <juri@linkov.net>

    * lisp/tab-bar.el: Add repeat-map keymaps.
    
    * lisp/tab-bar.el (tab-bar-switch-repeat-map): New keymap used for
    'tab-next' and 'tab-previous'.
    (tab-bar-move-repeat-map): New keymap used for 'tab-move'.
    https://lists.gnu.org/archive/html/emacs-devel/2021-03/msg01103.html
---
 lisp/tab-bar.el | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/lisp/tab-bar.el b/lisp/tab-bar.el
index 2e27b29..f3c2fb7 100644
--- a/lisp/tab-bar.el
+++ b/lisp/tab-bar.el
@@ -2075,6 +2075,28 @@ When `switch-to-buffer-obey-display-actions' is non-nil,
 (define-key tab-prefix-map "\C-r" 'find-file-read-only-other-tab)
 (define-key tab-prefix-map "t" 'other-tab-prefix)
 
+(defvar tab-bar-switch-repeat-map
+  (let ((map (make-sparse-keymap)))
+    (define-key map "o" 'tab-next)
+    (define-key map "O" 'tab-previous)
+    map)
+  "Keymap to repeat tab switch key sequences `C-x t o o O'.
+Used in `repeat-mode'.")
+(put 'tab-next 'repeat-map 'tab-bar-switch-repeat-map)
+(put 'tab-previous 'repeat-map 'tab-bar-switch-repeat-map)
+
+(defvar tab-bar-move-repeat-map
+  (let ((map (make-sparse-keymap)))
+    (define-key map "m" 'tab-move)
+    (define-key map "M" (lambda ()
+                          (interactive)
+                          (setq repeat-map 'tab-bar-move-repeat-map)
+                          (tab-move -1)))
+    map)
+  "Keymap to repeat tab move key sequences `C-x t m m M'.
+Used in `repeat-mode'.")
+(put 'tab-move 'repeat-map 'tab-bar-move-repeat-map)
+
 
 (provide 'tab-bar)
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]