diff --git a/init.el b/init.el index dbb68e1..4c6119c 100644 --- a/init.el +++ b/init.el @@ -1591,11 +1591,52 @@ are assumed to be of the form *.crt." ;; * Media +(use-package emms-setup + :defer t + :bind (:map emms-playlist-mode-map + ("S s" . emms-shuffle)) + :init (setq emms-source-file-default-directory "~/Documents/media/audio/" + emms-player-list '(emms-player-mplayer emms-player-mplayer-playlist) + emms-show-format "NP: %s" + emms-track-description-function 'db/emms-track-description + emms-stream-default-action "play") + :config (progn + (emms-all) + (emms-default-players) + + (advice-add 'emms-tag-editor-submit + :after (lambda (&rest r) + (ignore r) + (delete-window))) + + (add-hook 'emms-player-started-hook 'emms-show) + + (when (require 'emms-info-mediainfo nil 'no-error) + (setq emms-info-functions '(emms-info-mediainfo))) + + (emms-mode-line -1) + (emms-playing-time-enable-display) + + (run-with-timer 0 3600 #'emms-cache-save) + + (unless (eq system-type 'windows-nt) + (setq emms-source-file-directory-tree-function + #'db/emms-source-file-directory-tree-find)) + + (add-hook 'emms-playlist-mode-hook + (lambda () + (setq emms-playlist-insert-track-function + #'db/emms-playlist-mode-insert-track))))) + (use-package emms-source-file - :config (require 'db-emms)) + :defer t + :config (require 'emms-setup)) (use-package db-emms :commands (db/play-playlist + db/emms-source-file-directory-tree-find + db/emms-track-description + db/emms-playlist-mode-insert-track emms-control/body)) (use-package helm-emms @@ -1605,7 +1646,7 @@ are assumed to be of the form *.crt." helm-source-emms-dired helm-source-emms-files)) :config (progn - (require 'db-emms) + (require 'emms-setup) (require 'helm-adaptive))) diff --git a/site-lisp/db-emms.el b/site-lisp/db-emms.el index c3d7f92..7093c99 100644 --- a/site-lisp/db-emms.el +++ b/site-lisp/db-emms.el @@ -31,40 +31,6 @@ (declare-function string-remove-prefix "subr-x") (declare-function emms-with-inhibit-read-only-t "emms") - -;; Setup - -(message "Loading db-emms") - -(require 'emms-setup) -(emms-all) -(emms-default-players) - - -;; Basic configuration - -(setq emms-source-file-default-directory "~/Documents/media/audio/") - -(advice-add 'emms-tag-editor-submit - :after (lambda (&rest r) - (ignore r) - (delete-window))) - -(bind-key "S s" #'emms-shuffle emms-playlist-mode-map) - -(add-hook 'emms-player-started-hook 'emms-show) -(setq emms-show-format "NP: %s") - -(emms-mode-line -1) -(emms-playing-time-enable-display) -(setq emms-player-list - '(emms-player-mplayer emms-player-mplayer-playlist)) - -(when (require 'emms-info-mediainfo nil 'no-error) - (setq emms-info-functions '(emms-info-mediainfo))) - -(run-with-timer 0 3600 #'emms-cache-save) - ;; Custom playlist @@ -110,10 +76,6 @@ that we also follow symbolic links." (point-max)) "\n")))) -(unless (eq system-type 'windows-nt) - (setq emms-source-file-directory-tree-function - #'db/emms-source-file-directory-tree-find)) - ;; Track description @@ -148,9 +110,6 @@ This function can be used as a value for `emms-track-description-function’." (string-remove-prefix (expand-file-name emms-source-file-default-directory) (emms-track-simple-description track))))) -(setq emms-track-description-function - 'db/emms-track-description) - ;; don't set face in playlist to emms-playlist-track-face (defun db/emms-playlist-mode-insert-track (track &optional no-newline) "Insert the description of TRACK at point. @@ -166,16 +125,6 @@ When NO-NEWLINE is non-nil, do not insert a newline after the track." (unless no-newline (insert "\n")))) -(add-hook 'emms-playlist-mode-hook - (lambda () - (setq emms-playlist-insert-track-function - #'db/emms-playlist-mode-insert-track))) - - -;; Streams - -(setq emms-stream-default-action "play") - ;; Hydra @@ -207,4 +156,5 @@ _RET_: ?RET? _M_: ?M? ;; End (provide 'db-emms) + ;;; db-emms ends here