diff options
Diffstat (limited to '.config/emacs/bd-emms.el')
-rw-r--r-- | .config/emacs/bd-emms.el | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/.config/emacs/bd-emms.el b/.config/emacs/bd-emms.el new file mode 100644 index 0000000..cf39f94 --- /dev/null +++ b/.config/emacs/bd-emms.el @@ -0,0 +1,46 @@ +;; -*- lexical-binding: t; -*- + +(defun emms-open-playlist-buffer () + "Opens the current playlist in the +side window." + (interactive) + ;; if playlist open, open playlist view. Else, if browser open, open browser view. Else, print failure + (cond ((match-buffer-name "*Playlist*") + (display-buffer-in-side-window (get-buffer "*Playlist*") '((side . right))) + (select-window (get-buffer-window "*Playlist*"))) + ((match-buffer-name "Browsing by: artist") + (display-buffer-in-side-window (get-buffer "Browsing by: artist") '((side . right))) + (select-window (get-buffer-window "Browsing by: artist"))) + (t (message "No EMMS buffers open!")))) + +(defun emms-quickstart () + "Queues a shuffled playlist and starts +playback." + (interactive) + (emms-stop) + (when (bufferp emms-playlist-buffer-name) + (kill-buffer emms-playlist-buffer-name)) + (emms-play-directory-tree (expand-file-name "~/Personal/mpd/music/")) + (emms-shuffle) + (emms-next)) + +(use-package emms + ;; need to load immediately for mode line + :bind (("C-z C-m" . 'emms-open-playlist-buffer)) + :config + (emms-all) + (add-to-list 'emms-info-functions 'emms-info-functions 'emms-info-mpd) + (add-to-list 'emms-player-list 'emms-player-mpd) + ;; refresh database + (emms-player-mpd-update-all-reset-cache) + :custom + ;; make sure mpd is configured similarly + (emms-player-mpd-server-name "localhost") + (emms-player-mod-server-port "6600") + ;; set dir and volume keys + (emms-player-mpd-music-directory "/home/bdunahu/Personal/mpd/music/") + (emms-source-file-default-directory "/home/bdunahu/Personal/mpd/playlists/") + (emms-volume-change-function 'emms-volume-mpd-change) + ;; misc + (emms-mode-line-format "%s ") + (emms-playlist-buffer-name "*Playlist*")) |