X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=emus.git;a=blobdiff_plain;f=emus.el;fp=emus.el;h=23a1da113b5f5ce0d18bdd5b34912a623d5955e0;hp=84a9b9c6f8dcb776d25ba09adc73c60ec02464ed;hb=91912da763a84f486701b222b0c53da598833d09;hpb=d4eebf1137e4a66c79c107bdf763f44297d27be7 diff --git a/emus.el b/emus.el index 84a9b9c..23a1da1 100644 --- a/emus.el +++ b/emus.el @@ -115,7 +115,6 @@ Used to prevent commands from interfering with library construction.") emus-process (let ((proc (make-process :name "emus-process" - ;; :buffer (get-buffer-create "*emus-process*") :command `(,emus-mpg123-program "-R")))) (set-process-query-on-exit-flag proc nil) (process-send-string proc "silence\n") @@ -141,7 +140,10 @@ be used by `emus--load-library'." (defun emus-get-audio-files () "Get all mp3 files in main emus directory." - (directory-files-recursively emus-directory ".*\\.mp3")) + (mapcar + (lambda (f) + (expand-file-name f)) + (directory-files-recursively emus-directory ".*\\.mp3"))) (defun emus-make-track (artist album title filename &optional pos) "Create an object representing an emus track. @@ -238,7 +240,7 @@ by the filesystem." (defmacro emus--with-library (&rest body) "Evaluate BODY with the library initialized." `(if emus-tracks - (progn ,@body) + (unless emus--proc-in-use ,@body) (emus--load-library (lambda () ,@body))))