ref: 5e321b195bbb70e9239c4e3b6eca15cc7e1adc7f
parent: 364af1505869ca0c2a0180f7544b4c1294605103
author: Halfwit <michaelmisch1985@gmail.com>
date: Fri Feb 16 16:03:27 PST 2018
Fix multiple arguments Signed-off-by: Halfwit <michaelmisch1985@gmail.com>
--- a/ytcli
+++ b/ytcli
@@ -6,11 +6,10 @@
usage() {
cat <<USAGE
-Will return a list of [thumbs], URLs, and Descriptions for a given search.
-'chanid' will return the ID of a named channel
+Return a list of URLs, and Descriptions, and optionally thumbs for a given search. channel-id will return the ID of a named channel
Usage:
- ytctl [-t] [search|playlist|user|channel] KEYWORD
- ytctl [channel-id] KEYWORD
+ ytcli [search|playlist|user|channel] [-t] KEYWORD
+ ytcli [channel-id] KEYWORD
USAGE
}
@@ -23,6 +22,10 @@
sed -n 's/max_results=//p' "$CFG"
}
+clean() {
+ printf '%s\n' "$@" | tr '\n' '+' | sed 's/+$/\n/'
+}
+
parse () {
jshon -CQ -e items -a -e snippet -e title -uppe id -e "$1"Id -u
}
@@ -85,6 +88,12 @@
## Main ##
+# Early exit of only one argument
+if test $# -lt 2; then
+ usage
+ exit 1
+fi
+
# Scrub out our flag
if test $2 = "-t"; then
THUMB="$1"
@@ -92,11 +101,12 @@
set -- "$THUMB" "$@"
fi
+# Handle our args
case $1 in
- search) shift && search "$@" ;;
- playlist) shift && playlist "$@" ;;
- user) shift && user "$@" ;;
- channel) shift && channel "$@" ;;
- channel-id) shift && chanid "$@" ;;
+ search) shift && search "$(clean "$@")\n" ;;
+ playlist) shift && playlist "$(clean "$@")\n" ;;
+ user) shift && user "$(clean "$@")\n" ;;
+ channel) shift && channel "$(clean "$@")\n" ;;
+ channel-id) shift && chanid "$(clean "$@")\n" ;;
*) usage ;;
esac