« get me outta code hell

http-music - Command-line music player + utils (not a server!)
about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)Author
2018-01-27Various improvements to crawl-httpFlorrie
Names are now trimmed. You shouldn't see " Vim!" anymore - just "Vim!". .MOD files are considered to be music. The crawler will try to avoid going out of whatever directory was passed to it.
2018-01-24Revert "Add paused indicator for mpv player"Florrie
This reverts commit a22688a0f04920c73a06a7c1be09037c4de8f0ce. I still have to think through this feature a fair bit more - currently if you skip to the next track while paused, or pause before MPV actually starts playing, the paused indicator shows while MPV isn't actually paused.
2018-01-24Add paused indicator for mpv playerFlorrie
2018-01-24Let ?abc match tracks as well as groupsFlorrie
If you want a *track* whose name is abc but also have a *group* that is named abc, just specify the name of the group containing abc: --keep ?theGroupName/abc instead of --keep ?abc.
2018-01-24Add --playlist-string alias, update man pageFlorrie
2018-01-24MAKE DEFAULT KEYBINDINGS WORK WITH CAPS LOCKFlorrie
2018-01-05WIP(?) metadata processing toolFlorrie
2018-01-05Support mpga in crawl-httpFlorrie
2017-11-27Publish smart-playlist command properlyFlorrie
2017-11-24Gracefully exit if the active playlist has no itemsFlorrie
2017-11-12Add --show-keybindings and make a string dynamicFlorrie
"(Press I for track info!)" now displays the appropriate keybinding, rather than always showing "I". Also made the keybinder handler function async; it now waits for its given commands to finish. This doesn't particularly change anything but it Makes Sense.
2017-11-09Merge branch 'master' of https://github.com/towerofnix/http-musicFlorrie
2017-11-09Let keybindings run shell commands, if --trust option is givenFlorrie
Keybinding action format: [[..combo..], 'runShellCommand', ..command name.., [..arguments..]] (--trust is an alias for --trust-shell-commands. When --trust appears in an "options" property of a playlist (or anywhere besides the `http-music play` invocation on the command line, shell command permisisons are *revoked* - they cannot be enabled, even by directly passing --trust to the command line.) Also adds a note to todo.txt.
2017-11-08Merge branch 'master' of https://github.com/towerofnix/http-musicFlorrie
2017-11-08Only run 'top' keybinding for a specific comboFlorrie
This lets custom keybinding files partially overwrite pre- existing ketbindings.
2017-11-05Re-export getItemPath (fixes download-playlist)Florrie
2017-10-30Actually clear status line properlyFlorrie
2017-10-30Never show two identical track indexesFlorrie
2017-10-30Add missing percent symbol to mpv status lineFlorrie
2017-10-30Clear old status line when printing a new oneFlorrie
2017-10-29Add track number to status line and make status line more consistentFlorrie
This does two big things - there's a few changes in pickers.js to support track numbers (and a new supporting function in playlist-utils.js), and some changes in loop-play.js to make the status line formatting consistent regardless of the active player.
2017-10-27Add simple setup wizard (http-music setup)Florrie
..and create/update related man pages. Try it!
2017-10-25Add way to search whole playlist for a particular nameFlorrie
Try play -c -k '?My Album Name' to make http-music only play the group with the name 'My Album Name', no matter where it is in the playlist!
2017-10-25Make -k and -x fail when the passed group path is not perfectly foundFlorrie
2017-10-24Add --open-playlist-string optionFlorrie
Lets playlists be passed to `play` by an actual string argument; e.g. --playlist-string '{"tracks": [...]}'. Could work well with http-music's own crawler utilities (e.g. --playlist-string '{"source": ["crawl-local", "."]}' or with external ones (e.g. --playlist-string "$(cool-crawler-utilith.sh)". At the moment the only workaround is to use a temporary file to store the playlist in, or to pipe the output of the crawler command (which might be `echo`!) to http-music and use /dev/stdin as the --playlist-file value.. which obviously isn't cross-platform or practical! I'd like to have some aliases in the future since --open-playlist-string isn't really easy to type.
2017-10-12Add --start-at option and 'track version' conceptFlorrie
2017-09-28Add --filterFlorrie
2017-09-26Add --collapse-groups optionFlorrie
2017-09-23Fix a bug where you couldn't --exclude groups added by a smart playlistFlorrie
2017-09-20Show path to track's parent in track info - not including the track, which ↵Florrie
is redundant
2017-09-19Fix critical bug; http-music now halts if 5 tracks fail to download in a rowFlorrie
2017-09-18Track-specific converter optionsFlorrie
See todo.txt, changes in the man page, and this example: https://gist.github.com/towerofnix/9b1853ee74d30357e1b59d22c59aba2f
2017-09-13Make indexer code actually index the playlist (via updatePlaylistFormat)Florrie
2017-09-13Make getItemPathString work the way it's meant toFlorrie
2017-09-11Ignore filename case in crawl-localFlorrie
The array ['banana', 'Rainbows!!', 'Abstract', 'kangaroo'].. ..would previously be sorted as ['Abstract', 'Rainbows!!', 'banana', 'kangaroo'].. ..but that was clearly wrong; it's now sorted as ['Abstract', 'banana', 'kangaroo', 'Rainbows!!'].
2017-09-07Rename pickers2.js to pickers.jsFlorrie
2017-09-06Remove extra debug timerFlorrie
2017-09-06Hyperspeed pickers2 (~10x indexing speed increase)Florrie
2017-09-06Add console logs for indexing/done-indexingFlorrie
Particularly handy for slow machines, where indexing may take a while (e.g. a Raspberry Pi).
2017-09-05Cache flattened playlistFlorrie
2017-09-05Fix the shuffle groups playerFlorrie
2017-09-05Shuffle seedsFlorrie
2017-09-03Let users import keybindings from filesFlorrie
Example: https://gist.github.com/towerofnix/381c813f4b231ded5ae416f040134261
2017-09-03Remove a finished todoFlorrie
2017-09-03Use hasOwnProperty() instead of keys().includes()Florrie
2017-09-03Move keybinder code into its own fileFlorrie
2017-09-03Begin commandable keybindingsFlorrie
2017-09-02Skip back/forwardsFlorrie
2017-09-02Because adding an explanation totally makes it alrightFlorrie
2017-09-02Do something that works(?) when a track download failsFlorrie