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 ### }}}

pianobar
pass
control-pianobar
dotfiles
spectrwm
tmux

- demure