NOTE: I've since moved on to using i3wm, and this can be done nicely with i3 modes. You can see my i3 conf in my dotfiles.
pianobar
So, pianobar is a nice command line pandora player.
Not much set up, besides telling it your username and passwd, hopefully using password_comand.
#~/.config/pianobar/config
user = your_account
password_command = pass your/pianobar
I'm using pass as the way I store passwds locally; it's nice enough.
control-pianobar
I ran into control-pianobar while considering how I could make pianobar play nice with conky. There aren't many ways...
After looking at control-pianobar, I liked the idea of binding pinaobar to system wide keys.
Installing control-pianobar is pretty simple.
Their site recommends the tar file, but I just used the git repo and linked the contents to my ~/.config/pianobar/.
To start using it, you will have to add event_command with the full path to the script.
#~/.config/pianobar/config
user = your_account
password_command = pass your/pianobar
event_command = /home/your_account/.config/pianobar/pianobar-notify.sh
As an aside, since I keep my config in my dotfiles, I set my .gitignore to:
#~/.config/pianobar/config/.gitignore
*
!.gitignore
!config
Otherwise a lot of cache files will be annoying:
~ -> ls ~/.config/pianobar/
albumart             downloadname            pandora.jpg
artname              durationstation         pianobar-notify.sh
config               durationstationexplain  state
control-pianobar.sh  isplaying               stationlist
ctl                  log
downloaddir          nowplaying
spectrwm mapping
So, for my window manager, I use spectrwm.
I like it since it reminds me a lot of tmux
#~/.spectrwmrc
### control-pianobar Commands ### {{{
program[piano-play]             = ~/.config/pianobar/control-pianobar.sh play
program[piano-quit]             = ~/.config/pianobar/control-pianobar.sh quit
program[piano-hist]             = ~/.config/pianobar/control-pianobar.sh history
program[piano-next]             = ~/.config/pianobar/control-pianobar.sh next
program[piano-tired]            = ~/.config/pianobar/control-pianobar.sh tired
program[piano-ss]               = ~/.config/pianobar/control-pianobar.sh switchstaion
program[piano-ps]               = ~/.config/pianobar/control-pianobar.sh previousstation
program[piano-ns]               = ~/.config/pianobar/control-pianobar.sh nextstation
program[piano-love]             = ~/.config/pianobar/control-pianobar.sh love
program[piano-ban]              = ~/.config/pianobar/control-pianobar.sh ban
program[piano-expl]             = ~/.config/pianobar/control-pianobar.sh explain
program[piano-curr]             = ~/.config/pianobar/control-pianobar.sh current
### End control-pianobar Commandss ### }}}
### control-pianobar Keys ### {{{
bind[piano-play]                = MOD+F12
bind[piano-quit]                = MOD+F11
#bind[piano-hist]               = MOD+F
bind[piano-next]                = MOD+F1
bind[piano-tired]               = MOD+F2
bind[piano-ss]                  = MOD+F7
#bind[piano-ps]                 = MOD+F
#bind[piano-ns]                 = MOD+F
bind[piano-love]                = MOD+F3
bind[piano-ban]                 = MOD+F5
#bind[piano-expl]               = MOD+F
bind[piano-curr]                = MOD+F8
### End control-pianobar Keys ### }}}