emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[nongnu] elpa/subed 828764f 375/389: Change keybindings and use a transi


From: ELPA Syncer
Subject: [nongnu] elpa/subed 828764f 375/389: Change keybindings and use a transient keymap
Date: Fri, 3 Dec 2021 11:01:01 -0500 (EST)

branch: elpa/subed
commit 828764f866d645fc9ed9b03bc6d9d416a64e8920
Author: Marcin Borkowski <mbork@mbork.pl>
Commit: Random User <rndusr@posteo.de>

    Change keybindings and use a transient keymap
---
 subed/subed-mpv.el | 14 ++++++++++----
 subed/subed.el     | 10 ++++++++--
 2 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/subed/subed-mpv.el b/subed/subed-mpv.el
index 71933ca..bd36a7f 100644
--- a/subed/subed-mpv.el
+++ b/subed/subed-mpv.el
@@ -321,14 +321,20 @@ See \"List of events\" in mpv(1)."
       (subed-mpv-jump cur-sub-start))))
 
 (defun subed-mpv-frame-step ()
-  "Step one frame forward."
+  "Step one frame forward.
+Set up keybindings so that repeatedly pressing `,' and `.' moves
+by frames until any other key is pressed."
   (interactive)
-  (subed-mpv--client-send `(frame-step)))
+  (subed-mpv--client-send `(frame-step))
+  (set-transient-map subed-mpv-frame-step-map))
 
 (defun subed-mpv-frame-back-step ()
-  "Step one frame backward."
+  "Step one frame backward.
+Set up keybindings so that repeatedly pressing `,' and `.' moves
+by frames until any other key is pressed."
   (interactive)
-  (subed-mpv--client-send `(frame-back-step)))
+  (subed-mpv--client-send `(frame-back-step))
+  (set-transient-map subed-mpv-frame-step-map))
 
 (defun subed-mpv-add-subtitles (file)
   "Load FILE as subtitles in mpv."
diff --git a/subed/subed.el b/subed/subed.el
index 96a7b0a..ee4edbc 100644
--- a/subed/subed.el
+++ b/subed/subed.el
@@ -39,6 +39,13 @@
 (require 'subed-vtt)
 (require 'subed-mpv)
 
+(defconst subed-mpv-frame-step-map
+  (let ((map (make-sparse-keymap)))
+    (define-key map "." #'subed-mpv-frame-step)
+    (define-key map "," #'subed-mpv-frame-back-step)
+    map)
+  "A keymap for stepping the video by frames.")
+
 (setq subed-mode-map
   (let ((subed-mode-map (make-keymap)))
     (define-key subed-mode-map (kbd "M-n") #'subed-forward-subtitle-text)
@@ -64,8 +71,7 @@
     (define-key subed-mode-map (kbd "C-c C-d") #'subed-toggle-debugging)
     (define-key subed-mode-map (kbd "C-c C-v") #'subed-mpv-find-video)
     (define-key subed-mode-map (kbd "C-c C-u") #'subed-mpv-play-video-from-url)
-    (define-key subed-mode-map (kbd "C-c <right>") #'subed-mpv-frame-step)
-    (define-key subed-mode-map (kbd "C-c <left>") #'subed-mpv-frame-back-step)
+    (define-key subed-mode-map (kbd "C-c C-f") subed-mpv-frame-step-map)
     (define-key subed-mode-map (kbd "C-c C-p") 
#'subed-toggle-pause-while-typing)
     (define-key subed-mode-map (kbd "C-c C-l") 
#'subed-toggle-loop-over-current-subtitle)
     (define-key subed-mode-map (kbd "C-c C-r") 
#'subed-toggle-replay-adjusted-subtitle)



reply via email to

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