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

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

[nongnu] elpa/subed c4e3fec 352/389: Add error handling for subed-split-


From: ELPA Syncer
Subject: [nongnu] elpa/subed c4e3fec 352/389: Add error handling for subed-split-subtitle
Date: Fri, 3 Dec 2021 11:00:56 -0500 (EST)

branch: elpa/subed
commit c4e3fecdcc1cad0ca4e68059518ed4f2d8c40049
Author: Sacha Chua <sacha@sachachua.com>
Commit: Random User <rndusr@posteo.de>

    Add error handling for subed-split-subtitle
    
    * subed/subed-common.el (subed-split-subtitle): Detect if we're in a
    text segment. Regenerate IDs after insertion.
---
 subed/subed-common.el | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/subed/subed-common.el b/subed/subed-common.el
index 2a8942c..e99beea 100644
--- a/subed/subed-common.el
+++ b/subed/subed-common.el
@@ -636,15 +636,20 @@ Update the end timestamp accordingly."
   (interactive)
   (let* ((end-timestamp (subed-subtitle-msecs-stop))
          (orig (point))
+         (text-beg (save-excursion (subed-jump-to-subtitle-text)))
+         (text-end (save-excursion (subed-jump-to-subtitle-end)))
          (text (buffer-substring orig (save-excursion 
(subed-jump-to-subtitle-end) (point)))))
     (unless subed-mpv-playback-position
       (error "Not playing back in MPV"))
+    (unless (and text-beg text-end (> orig text-beg) (< orig text-end))
+      (error "Not in the middle of subtitle text"))
     (when (or (> subed-mpv-playback-position end-timestamp)
               (< subed-mpv-playback-position (subed-subtitle-msecs-start)))
       (error "Not in the currently playing subtitle segment"))
     (subed-set-subtitle-time-stop subed-mpv-playback-position)
     (delete-region (point) (subed-jump-to-subtitle-end))
-    (subed-append-subtitle nil subed-mpv-playback-position end-timestamp 
(string-trim text))))
+    (subed-append-subtitle nil subed-mpv-playback-position end-timestamp 
(string-trim text))
+    (subed-regenerate-ids-soon)))
 
 ;;; Replay time-adjusted subtitle
 



reply via email to

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