Christophe Weblog Wiki Code Publications Music
start working on changing playlists
authorChristophe Rhodes <csr21@cantab.net>
Sat, 5 Apr 2014 12:53:03 +0000 (13:53 +0100)
committerChristophe Rhodes <csr21@cantab.net>
Sat, 5 Apr 2014 12:53:03 +0000 (13:53 +0100)
for now, just simple numeric favourites, through a bit of a sucky
interface.  Baby steps...

squeeze.el

index 2b0e4b8e080cc649a8bff77e1ae6c6103cc2c7db..c3430946074110addd69f88c5c01a3bb90406a36 100644 (file)
@@ -24,6 +24,7 @@
 (defvar squeeze-control-mode-map
   (let ((map (make-sparse-keymap)))
     (define-key map (kbd "SPC") 'squeeze-control-toggle-power)
 (defvar squeeze-control-mode-map
   (let ((map (make-sparse-keymap)))
     (define-key map (kbd "SPC") 'squeeze-control-toggle-power)
+    (define-key map (kbd "f") 'squeeze-control-play-favorite)
     (define-key map (kbd "g") 'squeeze-control-refresh)
     (define-key map (kbd "+") 'squeeze-control-volume-up)
     (define-key map (kbd "-") 'squeeze-control-volume-down)
     (define-key map (kbd "g") 'squeeze-control-refresh)
     (define-key map (kbd "+") 'squeeze-control-volume-up)
     (define-key map (kbd "-") 'squeeze-control-volume-down)
     (setq id (get-text-property (point) 'squeeze-playerid)))
   (comint-send-string (get-buffer-process "*squeeze*") (format "%s power\n" id)))
 
     (setq id (get-text-property (point) 'squeeze-playerid)))
   (comint-send-string (get-buffer-process "*squeeze*") (format "%s power\n" id)))
 
+(defun squeeze-control-play-favorite (&optional favorite id)
+  (interactive "nFavourite: ")
+  (unless id
+    (setq id (get-text-property (point) 'squeeze-playerid)))
+  (comint-send-string (get-buffer-process "*squeeze*")
+                      (format "%s favorites playlist play item_id:%d\n" id favorite)))
+
 (defun squeeze-control-query-power (&optional id)
   (interactive)
   (unless id
 (defun squeeze-control-query-power (&optional id)
   (interactive)
   (unless id