;; emms (add-to-list 'load-path "~/.emacs.d/site-lisp/emms/lisp") (require 'emms-setup) (require 'emms-info-libtag) (require 'emms-player-mpg321-remote) (emms-devel) (emms-default-players) (push 'emms-player-mpg321-remote emms-player-list) (push 'emms-player-mplayer emms-player-list) (push 'emms-player-mplayer-playlist emms-player-list) (setq emms-info-asynchronously t later-do-interval 0.0001 emms-info-functions '(emms-info-libtag) emms-source-file-default-directory "~/.emacs.d/emms/" emms-mode-line-format " %s ") ;; emms-show-format "NP: %s") (global-set-key (kbd "") 'emms-google-for-lyrics) (global-set-key (kbd "") 'emms-smart-browse) (global-set-key (kbd "") 'emms-playlist-mode-go) (global-set-key (kbd "") 'emms-stream-popup) (define-key emms-playlist-mode-map (kbd "/") 'de-search) (define-key emms-browser-mode-map (kbd "W W") 'emms-browser-lookup-multi) (add-hook 'emms-playlist-selection-changed-hook 'de-focus-on-track) (remove-hook 'emms-player-started-hook 'emms-show) ;;(add-hook 'emms-player-started-hook 'emms-show) ;; let compilation tracks be displayed together (setq emms-browser-get-track-field-function 'emms-browser-get-track-field-use-directory-name) ;; recenter based on the current track (defun de-focus-on-track () (let ((w (get-buffer-window emms-playlist-buffer t))) (when w (with-selected-window w (emms-playlist-mode-center-current) (recenter '(4)))))) (defun de-toggle-playing () (interactive) (if emms-player-playing-p (emms-pause) (emms-start))) (defun de-add-dir () (interactive) (call-interactively 'emms-add-directory-tree) (emms-playlist-mode-go)) (defun de-search () (interactive) (goto-char (point-min)) (call-interactively 'isearch-forward)) (defun emms-browser-lookup-multi () (interactive) (emms-browser-lookup-wikipedia 'info-artist) (emms-browser-lookup-wikipedia 'info-album) (emms-browser-lookup-pitchfork 'info-artist)) (defun emms-google-for-lyrics () (interactive) (browse-url (concat "http://www.google.com/search?q=" (replace-regexp-in-string " +" "+" (concat "lyrics " (delete ?- (emms-track-description (emms-playlist-current-selected-track))))))))