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

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

[nongnu] elpa/subed b1cb470 134/389: Deduplicate code by adding subed-mo


From: ELPA Syncer
Subject: [nongnu] elpa/subed b1cb470 134/389: Deduplicate code by adding subed-move-subtitles function
Date: Fri, 3 Dec 2021 11:00:12 -0500 (EST)

branch: elpa/subed
commit b1cb470b6b0d677087fb3a6e7b35fe05cddf0cad
Author: Random User <rndusr@posteo.de>
Commit: Random User <rndusr@posteo.de>

    Deduplicate code by adding subed-move-subtitles function
---
 subed/subed.el | 34 ++++++++++++++++++----------------
 1 file changed, 18 insertions(+), 16 deletions(-)

diff --git a/subed/subed.el b/subed/subed.el
index bf3c521..efeda0b 100644
--- a/subed/subed.el
+++ b/subed/subed.el
@@ -175,6 +175,22 @@ Before BODY is run, point is placed on the subtitle's ID."
 
 ;;; Moving subtitles
 
+(defun subed-move-subtitles (msecs &optional beg end)
+  "Move subtitles between BEG and END MSECS milliseconds forward.
+Use a negative value for MSECS to move subtitles backward.
+If END is nil, move all subtitles from BEG to end of buffer.
+If BEG is nil, move only the current subtitle.
+After subtitles are moved is done, replay the first moved
+subtitle if replaying is enabled."
+  (subed--with-subtitle-replay-disabled
+    (subed--for-each-subtitle beg end
+      (subed--adjust-subtitle-start-relative msecs)
+      (subed--adjust-subtitle-stop-relative msecs)))
+  (when (subed-replay-adjusted-subtitle-p)
+    (save-excursion
+      (when beg (goto-char beg))
+      (subed-mpv-jump (subed--subtitle-msecs-start)))))
+
 (defun subed-move-subtitle-forward (&optional arg)
   "Move subtitle `subed-milliseconds-adjust' forward in time
 while preserving its duration, i.e. increase start and stop time
@@ -200,14 +216,7 @@ Example usage:
         (msecs (subed--get-milliseconds-adjust arg))
         (beg (when (use-region-p) (region-beginning)))
         (end (when (use-region-p) (region-end))))
-    (subed--with-subtitle-replay-disabled
-      (subed--for-each-subtitle beg end
-        (subed--adjust-subtitle-start-relative msecs)
-        (subed--adjust-subtitle-stop-relative msecs)))
-    (when (subed-replay-adjusted-subtitle-p)
-      (save-excursion
-        (when beg (goto-char beg))
-        (subed-mpv-jump (subed--subtitle-msecs-start))))))
+    (subed-move-subtitles msecs beg end)))
 
 (defun subed-move-subtitle-backward (&optional arg)
   "Move subtitle `subed-milliseconds-adjust' backward in time
@@ -220,14 +229,7 @@ See `subed-move-subtitle-forward'."
         (msecs (* -1 (subed--get-milliseconds-adjust arg)))
         (beg (when (use-region-p) (region-beginning)))
         (end (when (use-region-p) (region-end))))
-    (subed--with-subtitle-replay-disabled
-      (subed--for-each-subtitle beg end
-        (subed--adjust-subtitle-start-relative msecs)
-        (subed--adjust-subtitle-stop-relative msecs)))
-    (when (subed-replay-adjusted-subtitle-p)
-      (save-excursion
-        (when beg (goto-char beg))
-        (subed-mpv-jump (subed--subtitle-msecs-start))))))
+    (subed-move-subtitles msecs beg end)))
 
 
 ;;; Replay time-adjusted subtitle



reply via email to

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