Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Emacs Lisp
Cannot retrieve the latest commit at this time.
| Failed to load latest commit information. | |||
|
|
LICENSE | ||
|
|
README | ||
|
|
pianobar.el | ||
README
This is a thin emacs interface for Pianobar, a Pandora Radio <http://pandora.com/> command-line client. Pianobar was written by Lars-Dominik Braun, among others, and can be found at <http://6xq.net/html/00/17.html>. `pianobar.el` itself can be found at <http://github.com/agrif/pianobar.el/>. It is licensed under the GNU GPL v3. See `LICENSE` for details. There are brief installation instructions at the top of `pianobar.el`. After installing `pianobar.el`, see below for information about usage. Please note that this is a *very* early development version, written mostly for myself to use. Suggestions, improvements, and bug reports are welcome. Usage ===== Pianobar is started with `M-x pianobar`, or you can bind a key to the `pianobar` function manually. `pianobar.el` will put the current playing song in the modeline. Once Pianobar is running, you can type commands manually in the `*pianobar*` buffer (like using shell-mode), or you can use the following, key-bindable commands: M-x pianobar-love-current-song -- tell Pandora you love this song M-x pianobar-ban-current-song -- tell Pandora to ban this song from this station M-x pianobar-next-song -- skip to the next song (but don't ban/love) M-x pianobar-play-or-pause -- toggle play/pause state M-x pianobar-change-station -- bring up the `*pianobar*` buffer with a station-change menu Customization ============= `pianobar.el` requires Pianobar to be installed somewhere in your path. If it's not, you can set the variable `pianobar-command` to be the path to the Pianobar executable. (As of right now, `pianobar.el` expects Pianobar to use the default key bindings. It works even if you change them, but the control commands won't work. You'll just have to switch to the `*pianobar*` buffer and control it manually.) You can set `pianobar-username`, `pianobar-password`, and `pianobar-station` to automatically login and connect to a station. Note that `pianobar-station` must be a *string* containing the number used to select the station you want through Pianobar. If you leave any of these unset, you will be prompted for the info instead. If you set `pianobar-run-in-background` to `t`, `M-x pianobar` will *not* show the `*pianobar*` buffer after running. This is useful if you set the above auto-login variables. `pianobar-global-modeline` will eventually be used to decide whether to change the modeline on all buffers, or just the `*pianobar*` buffer. Right now, it does nothing; it always changes the global modeline. There are many other, lesser-used variables available to customize Pianobar. Use `C-h v` and take a look at all the variables prefixed with `pianobar-`. If you want to write your own Pianobar commands (especially for those not yet bound to an interactive function), you can use `pianobar-send-command`, which accepts a character to send to the current Pianobar process. It also takes a second, optional argument: whether to make the Pianobar buffer active. For example, `M-x pianobar-next-song` runs `(pianobar-send-command ?n)`, while `M-x pianobar-change-station` runs `(pianobar-send-command ?s t)`.