;; -*- lexical-binding: t; -*- (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)) (use-package emms :bind (("C-z C-s" . 'emms-quickstart) ("C-z C-p" . 'emms-play-playlist)) :config (emms-all) (add-to-list 'emms-info-functions 'emms-info-functions 'emms-info-mpd) (add-to-list 'emms-player-list 'emms-player-mpd) (keymap-global-set "C-z C-m" (lambda () (interactive) (if (get-buffer emms-playlist-buffer-name) (display-buffer emms-playlist-buffer-name) (message "The Ainur cannot hear you...")))) :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 (expand-file-name "~/Personal/mpd/music/")) (emms-source-file-default-directory (expand-file-name "~/Personal/mpd/playlists/")) (emms-volume-change-function 'emms-volume-mpd-change) ;; misc (emms-mode-line-format "%s ") (emms-playlist-buffer-name "*Playlist*") (require 'all-the-icons) (emms-mode-line-icon-before-format (format "%s" (all-the-icons-fileicon "owl"))) (emms-mode-line-icon-enabled-p t)) (add-to-list 'display-buffer-alist `(,emms-playlist-buffer-name (display-buffer-in-side-window) (side . left) (window-width . 45) (body-function . select-window))) (provide 'bd--emms)