Run Pandora as an inferior process in emacs by using pianobar
Emacs Lisp
Failed to load latest commit information. user name commands were not set correctly Apr 4, 2012
pianobar.el moved from emacs to own repository Apr 4, 2012


You will first have to download and install pianobar, which can be found here:

I had some trouble with the port version on my Mac so I had to download the source and compile it though it was a while ago so the issue may be fixed.

Once you set up pianobar you will have to download the elisp file and place it in your load directory with the following command:

(add-to-list 'load-path "/path/to/pianobar.el")
(autoload 'pianobar "pianobar" nil t)

The second line will lazy load the file when you run the command M-x pianobar

You can set the username, password, and station variables to login automatically when you run pianobar with the following:

(setq pianobar-username "MYEMAIL")
(setq pianobar-password "MYPASSWORD")
(setq pianobar-station "0")

Also if the executable “pianobar” is not on your path you will need to set the variable pianobar-program-command. You can set this with (setq 'pianobar-program-command "/path/to/pianobar")


Pianobar mode tries to be as unobtrusive as possible so as to not interrupt you while working. It functions much like itunes for emacs in that there is a prefix key (by default f7) that starts any pianobar command. These are globally set so you have them in any mode in any buffer. If you already have f7 bound to something else you can just change the value of the variable “pianobar-key”. When the song changes you should get a notification in the message area and if the function “growl” is defined it will notify via growl of the new song. The following are commonly used commands for running pianobar:

  • Pausing [f7] p (or [f7] SPC)
  • Next Song [f7] n
  • Love Song [f7] +
  • Hate Song [f7] -

This mode is still a work in progress so a lot of the commands will have to have some interaction with the “pianobar” process buffer.

You can switch to this buffer at any time by pressing C-x b and switching to the pianobar buffer.