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

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

[nongnu] elpa/subed e71a64b 339/389: Refactor common code into subed-mpv


From: ELPA Syncer
Subject: [nongnu] elpa/subed e71a64b 339/389: Refactor common code into subed-mpv-play-video
Date: Fri, 3 Dec 2021 11:00:53 -0500 (EST)

branch: elpa/subed
commit e71a64b76642f67766f7cec609ab54ad633a8d6f
Author: Sacha Chua <sacha@sachachua.com>
Commit: Sacha Chua <sacha@sachachua.com>

    Refactor common code into subed-mpv-play-video
    
    * subed/subed-mpv.el (subed-mpv--play): New function.
    (subed-mpv-play-video-from-url): Call subed-mpv--play.
    (subed-mpv-find-video):  Call subed-mpv--play.
---
 subed/subed-mpv.el | 32 +++++++++++++-------------------
 1 file changed, 13 insertions(+), 19 deletions(-)

diff --git a/subed/subed-mpv.el b/subed/subed-mpv.el
index cf3a92f..bd706bc 100644
--- a/subed/subed-mpv.el
+++ b/subed/subed-mpv.el
@@ -335,15 +335,14 @@ See \"List of events\" in mpv(1)."
          (or (file-directory-p filepath)
              (member (file-name-extension filename) subed-video-extensions)))))
 
-(defun subed-mpv-play-video-from-url (url)
-  "Open video file from URL in mpv."
-  (interactive "MURL: ")
+(defun subed-mpv--play (video)
+  "Open VIDEO and play it in MPV."
   (when (subed-mpv--server-started-p)
     (subed-mpv-kill))
   (when (apply #'subed-mpv--server-start subed-mpv-arguments)
-      (subed-debug "Opening video from URL: %s" url)
+      (subed-debug "Opening video: %s" video)
       (subed-mpv--client-connect subed-mpv--retry-delays)
-      (subed-mpv--client-send `(loadfile ,url replace))
+      (subed-mpv--client-send `(loadfile ,video replace))
       ;; mpv won't add the subtitles if the file doesn't exist yet, so we add 
it
       ;; via after-save-hook.
       (if (file-exists-p (buffer-file-name))
@@ -352,26 +351,21 @@ See \"List of events\" in mpv(1)."
       (subed-mpv--client-send `(observe_property 1 time-pos))
       (subed-mpv-playback-speed subed-playback-speed-while-not-typing)))
 
+(defun subed-mpv-play-video-from-url (url)
+  "Open video file from URL in mpv.
+See the MPV manual for a list of supported URL types. If you have
+youtube-dl installed, MPV can open videos from a variety of
+hosting providers."
+  (interactive "MURL: ")
+  (subed-mpv--play url))
+
 (defun subed-mpv-find-video (file)
   "Open video file FILE in mpv.
 
 Video files are expected to have any of the extensions listed in
 `subed-video-extensions'."
   (interactive (list (read-file-name "Find video: " nil nil t nil 
#'subed-mpv--is-video-file-p)))
-  (let ((filepath (expand-file-name file)))
-    (when (subed-mpv--server-started-p)
-      (subed-mpv-kill))
-    (when (apply #'subed-mpv--server-start subed-mpv-arguments)
-      (subed-debug "Opening video file: %s" filepath)
-      (subed-mpv--client-connect subed-mpv--retry-delays)
-      (subed-mpv--client-send `(loadfile ,filepath replace))
-      ;; mpv won't add the subtitles if the file doesn't exist yet, so we add 
it
-      ;; via after-save-hook.
-      (if (file-exists-p (buffer-file-name))
-          (subed-mpv-add-subtitles (buffer-file-name))
-        (add-hook 'after-save-hook #'subed-mpv--add-subtitle-after-first-save 
:append :local))
-      (subed-mpv--client-send `(observe_property 1 time-pos))
-      (subed-mpv-playback-speed subed-playback-speed-while-not-typing))))
+  (subed-mpv--play (expand-file-name file)))
 
 (defun subed-mpv--add-subtitle-after-first-save ()
   "Tell mpv to load subtitles from function `buffer-file-name'.



reply via email to

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