💀 Shell YouTube-browser.
Ĉi tiu deponejo arĥiviĝis je 2024-01-29. Vi povas vidi kaj elŝuti dosierojn, sed ne povas puŝi nek raporti problemojn nek tirpeti.
Iri al dosiero
Jaidyn Ann 507a11e206 Fixed README 2017-06-18 02:15:15 -05:00
lib Start re-write-- mainly lib/stic progress 2017-06-18 02:14:10 -05:00
LICENSE Added license 2017-03-26 14:51:19 -05:00
Makefile Basic config support 2016-12-23 23:15:53 -06:00
README Fixed README 2017-06-18 02:15:15 -05:00

OK, I'm re-writing shelltube.
It worked, but it was inflexible and total shit.
Yes, the dream is still POSIX. :)
Here is a general plan:

./shelltube	Wrapper script for everything else. Slim and simple
./lib/yts	Searches YT, outputs a comp-friendly list of results
./lib/ytc	Lists videos on a YT channel/user-page
./lib/ytd	Downloads/streams a YT video
./lib/stc	Helps configure shelltube
./lib/stic	Helps with cli arguments
./lib/sti	Helps with trapped user input

Planned inputs & details:
./shelltube
	shelltube [command(s) to run after startup]
./lib/yts
	$ yts query [-o $outfile]
	* Prints the results in the following format:
		artist \t name \t length (?) \t ID
./lib/ytc
	$ ytc query [-o $outfile]
	* Prints the results in the following format:
		name \t length (?) \t ID
./lib/ytd
	$ ytd URL||ID [-o $outfile||-s]
./lib/stc
	$ stc [-h||--home $homedir]
	* Just creates/edits $HOME/.config/shelltube
./lib/stic
	$ stic "$@" "[[syntax]] shortargf longargf argf
	* Outputs commandline args to the specified files
	  for easier parsing
	* dargf contains args like -c, -o, --config, etc.
	* argf contains everything else, like 'filename' etc.
	* [[syntax]] consists of something like this:
	  "[[(1|1|c|config)(1|0|v|verbose)(0|1|infile)(0|2|outfile)]]"
	* Does it look terrible painful? Let me show you the anatomy of
	  one of those listed potential arugments:
	* In a dashed arg (--config or -c), the syntax is this:
	  (1|0=no subsequent arg 1=subs. arg|short form|long form)
	  The "subsequent arg" means like 'file' in "--config file"
	* In a non-dashed arg (infile or outfile), the syntax is this:
	  (0|position in input|name)
	  "Position in input" refers to the position it has in relation
	  to other non-dashed args.
	  The "name"
	

I'm working on stic riggt now. I think it'll really make shelltube (and
probably any other shell script I'll ever write!) a lot better and more
usable.