rg support
This commit is contained in:
68
src/main.sh
68
src/main.sh
@@ -76,11 +76,6 @@ if [ "${1:-}" = "--internal-search" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "${1:-}" = "--internal-list-releases" ]; then
|
||||
print "NOT IMPLEMENTED"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "${1:-}" = "--internal-list-releasegroups-fresh" ]; then
|
||||
artistid="$2"
|
||||
cache_delete_artist "$artistid"
|
||||
@@ -133,6 +128,47 @@ if [ "${1:-}" = "--internal-list-releasegroups" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "${1:-}" = "--internal-list-releases" ]; then
|
||||
title="$(mb_releasegroup "$2" |
|
||||
$JQ -r '.title')"
|
||||
artist="$(mb_releasegroup "$2" |
|
||||
$JQ -r '."artist-credit" | map(([.name, .joinphrase]|join(""))) | join("")')"
|
||||
mb_releasegroup_releases "$2" |
|
||||
$JQ -r '."releases"[] | [
|
||||
.id,
|
||||
.status,
|
||||
.date,
|
||||
."cover-art-archive".count,
|
||||
(."label-info" | map(.label.name) | unique | join(", ")),
|
||||
(.media | map(."track-count") | add),
|
||||
(.media | map(.format) | unique | join(", ")),
|
||||
.country,
|
||||
.title,
|
||||
(."artist-credit" | map(([.name, .joinphrase]|join(""))) | join(""))
|
||||
] | join("\t")' |
|
||||
awk \
|
||||
-F "\t" \
|
||||
-v release_official="$RELEASE_OFFICIAL" \
|
||||
-v release_promotion="$RELEASE_PROMOTION" \
|
||||
-v release_bootleg="$RELEASE_BOOTLEG" \
|
||||
-v release_pseudo="$RELEASE_PSEUDO" \
|
||||
-v release_withdrawn="$RELEASE_WITHDRAWN" \
|
||||
-v release_expunged="$RELEASE_EXPUNGED" \
|
||||
-v release_cancelled="$RELEASE_CANCELLED" \
|
||||
-v release_format="$RELEASE_FORMAT" \
|
||||
-v release_format_title_artist="$RELEASE_TITLE_ARTIST" \
|
||||
-v release_format_title="$RELEASE_TITLE" \
|
||||
-v release_format_artist="$RELEASE_ARTIST" \
|
||||
-v rg_artist="$artist" \
|
||||
-v rg_title="$title" \
|
||||
"$AWK_RELEASES" |
|
||||
sort -n -r |
|
||||
cut -d "$(printf '\t')" -f 2- |
|
||||
column -t -s "$(printf '\t')" |
|
||||
sed 's| \+\([0-9a-f-]\+\)$|\t\1|'
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "${1:-}" = "--help" ]; then
|
||||
cat <<EOF
|
||||
Usage: $0 [ --help | --show-artist <mbid> ]
|
||||
@@ -180,17 +216,29 @@ while true; do
|
||||
--bind="ctrl-d:half-page-down,ctrl-u:half-page-up" \
|
||||
--bind="ctrl-r:reload:$0 --internal-list-releasegroups-fresh \"$2\""
|
||||
)
|
||||
[ "$sel" ] && set -- "--show-release" "$sel"
|
||||
[ "$sel" ] && set -- "--show-releasegroup" "$sel"
|
||||
;;
|
||||
"--show-release-group")
|
||||
"--show-releasegroup")
|
||||
title="$(mb_releasegroup "$2" |
|
||||
$JQ -r '.title')"
|
||||
artist="$(mb_releasegroup "$2" |
|
||||
$JQ -r '."artist-credit" | map(([.name, .joinphrase]|join(""))) | join("")')"
|
||||
echo "$title"
|
||||
echo "$artist"
|
||||
sel=$(
|
||||
$0 --internal-list-releases "$2" |
|
||||
$FZF \
|
||||
--ansi \
|
||||
--reverse \
|
||||
--cycle \
|
||||
--no-sort \
|
||||
--query="$RELEASE_OFFICIAL " \
|
||||
--delimiter="\t" \
|
||||
--prompt="$(printf "$FULL_PROMPT" "$artist" "$title")" \
|
||||
--accept-nth="{2}" \
|
||||
--with-nth="{1}" \
|
||||
--bind="ctrl-d:half-page-down,ctrl-u:half-page-up"
|
||||
)
|
||||
exit 0
|
||||
set -- ""
|
||||
[ "$sel" ] && set -- "--show-release" "$sel"
|
||||
;;
|
||||
*)
|
||||
sel=$(
|
||||
|
Reference in New Issue
Block a user