Spotify Shell
Features
-
Supports following commands (same as
spclient):play/pause/next;- any other string will start a search and play the first result for a given search query;
- feh - shows the current artwork with
feh;
-
Stores history and allows navigate through it;
-
Highly customizable
Controls
Keyboard navigation (copied from awful.prompt API documentation page):
| Name | Usage |
|---|---|
| CTRL+A | beginning-of-line |
| CTRL+B | backward-char |
| CTRL+C | cancel |
| CTRL+D | delete-char |
| CTRL+E | end-of-line |
| CTRL+J | accept-line |
| CTRL+M | accept-line |
| CTRL+F | move-cursor-right |
| CTRL+H | backward-delete-char |
| CTRL+K | kill-line |
| CTRL+U | unix-line-discard |
| CTRL+W | unix-word-rubout |
| CTRL+BACKSPAC | unix-word-rubout |
| SHIFT+INSERT | paste |
| HOME | beginning-of-line |
| END | end-of-line |
| CTRL+R | reverse history search, matches any history entry containing search term. |
| CTRL+S | forward history search, matches any history entry containing search term. |
| CTRL+UP | ZSH up line or search, matches any history entry starting with search term. |
| CTRL+DOWN | ZSH down line or search, matches any history entry starting with search term. |
| CTRL+DELETE | delete the currently visible history entry from history file. This does not delete new commands or history entries under user editing. |
Installation
-
Install sp - CLI client for Spotify for Linux:
$ sudo git clone https://gist.github.com/fa6258f3ff7b17747ee3.git ~/dev/ $ sudo ln -s ~/dev/sp /usr/local/bin/Check if it works by running
sp help. -
Get an 'id' and 'secret' from developer.spotify.com and paste it in the header of the
sp(SP_IDandSP_SECRET) - this enables search feature. -
Clone this repo under ~/.config/awesome/
-
Require spotify-shell at the beginning of rc.lua:
local spotify_shell = require("awesome-wm-widgets.spotify-shell.spotify-shell") -
Add a shortcut which will show Spotify Shell widget:
awful.key({ modkey, }, "d", function () spotify_shell.launch() end, {description = "spotify shell", group = "music"}), -
It uses icon from Papirus Icon Theme. So you should either install this icon theme, or download an icon you want to use and provide path to it in spotify-shell.lua.
