rg caching, improved display
This commit is contained in:
@@ -17,12 +17,12 @@ BEGIN { OFS="\t" }
|
|||||||
case "EP": line_type=format_ep; break
|
case "EP": line_type=format_ep; break
|
||||||
case "Broadcast": line_type=format_broadcast; break
|
case "Broadcast": line_type=format_broadcast; break
|
||||||
case "Other": line_type=format_other; break
|
case "Other": line_type=format_other; break
|
||||||
default: line_type="unknown type"
|
default: line_type=""
|
||||||
}
|
}
|
||||||
split(sectype, a, ";")
|
split(sectype, a, ";")
|
||||||
for (i in a) {
|
for (i in a) {
|
||||||
t=""
|
t=""
|
||||||
switch (sectype) {
|
switch (a[i]) {
|
||||||
case "Compilation": t=format_compilation; break
|
case "Compilation": t=format_compilation; break
|
||||||
case "Soundtrack": t=format_soundtrack; break
|
case "Soundtrack": t=format_soundtrack; break
|
||||||
case "Spokenword": t=format_spokenword; break
|
case "Spokenword": t=format_spokenword; break
|
||||||
@@ -37,11 +37,15 @@ BEGIN { OFS="\t" }
|
|||||||
case "Field recording": t=fieldrec; break
|
case "Field recording": t=fieldrec; break
|
||||||
}
|
}
|
||||||
if (t)
|
if (t)
|
||||||
line_sectype=line_sectype ? line_sectype " / " t : t
|
line_sectype=line_sectype ? line_sectype ", " t : t
|
||||||
|
}
|
||||||
|
if (sectype) {
|
||||||
|
line_type = sprintf(format_has_secondary, line_type)
|
||||||
|
line_sectype = sprintf(format_secondary, line_sectype)
|
||||||
}
|
}
|
||||||
sub("<<title>>", title, line_release)
|
sub("<<title>>", title, line_release)
|
||||||
line_year = year ? format_year : ""
|
line_year = year ? format_year : ""
|
||||||
sub("<<year>>", year, line_year)
|
sub("<<year>>", year, line_year)
|
||||||
sort = year ? year : 0
|
sort = year ? year : 0
|
||||||
print line_type, line_sectype, line_release, line_year, sort, id
|
print line_type, line_release, line_year, line_sectype, sort, id
|
||||||
}
|
}
|
||||||
|
11
src/main.sh
11
src/main.sh
@@ -84,7 +84,7 @@ if [ "${1:-}" = "--internal-list-releases-fresh" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${1:-}" = "--internal-list-releases" ]; then
|
if [ "${1:-}" = "--internal-list-releases" ]; then
|
||||||
__api_mb_browse_release_groups "$2" |
|
mb_artist_releasegroups "$2" |
|
||||||
$JQ -r '."release-groups"[] | [
|
$JQ -r '."release-groups"[] | [
|
||||||
.id,
|
.id,
|
||||||
."primary-type",
|
."primary-type",
|
||||||
@@ -101,6 +101,8 @@ if [ "${1:-}" = "--internal-list-releases" ]; then
|
|||||||
-v format_ep="$FORMAT_TYPE_EP" \
|
-v format_ep="$FORMAT_TYPE_EP" \
|
||||||
-v format_broadcast="$FORMAT_TYPE_BROADCAST" \
|
-v format_broadcast="$FORMAT_TYPE_BROADCAST" \
|
||||||
-v format_other="$FORMAT_TYPE_OTHER" \
|
-v format_other="$FORMAT_TYPE_OTHER" \
|
||||||
|
-v format_has_secondary="$FORMAT_TYPE_HAS_SECONDARY" \
|
||||||
|
-v format_secondary="$FORMAT_TYPE_SECONDARY" \
|
||||||
-v format_compilation="$FORMAT_TYPE_SECONDARY_COMPILATION" \
|
-v format_compilation="$FORMAT_TYPE_SECONDARY_COMPILATION" \
|
||||||
-v format_soundtrack="$FORMAT_TYPE_SECONDARY_SOUNDTRACK" \
|
-v format_soundtrack="$FORMAT_TYPE_SECONDARY_SOUNDTRACK" \
|
||||||
-v format_spokenword="$FORMAT_TYPE_SECONDARY_SPOKENWORD" \
|
-v format_spokenword="$FORMAT_TYPE_SECONDARY_SPOKENWORD" \
|
||||||
@@ -115,7 +117,7 @@ if [ "${1:-}" = "--internal-list-releases" ]; then
|
|||||||
-v format_fieldrec="$FORMAT_TYPE_SECONDARY_FIELDREC" \
|
-v format_fieldrec="$FORMAT_TYPE_SECONDARY_FIELDREC" \
|
||||||
"$AWK_RELEASEGROUPS" |
|
"$AWK_RELEASEGROUPS" |
|
||||||
sort |
|
sort |
|
||||||
sort -t "$(printf '\t')" -k 5 -n -r |
|
sort -t "$(printf '\t')" -k 4 -n -r |
|
||||||
column -t -s "$(printf '\t')" |
|
column -t -s "$(printf '\t')" |
|
||||||
sed 's| \+[0-9]\+ \+\([0-9a-f-]\+\)$|\t\1|'
|
sed 's| \+[0-9]\+ \+\([0-9a-f-]\+\)$|\t\1|'
|
||||||
exit 0
|
exit 0
|
||||||
@@ -152,16 +154,20 @@ while true; do
|
|||||||
case "${1:-}" in
|
case "${1:-}" in
|
||||||
"--show-artist")
|
"--show-artist")
|
||||||
name=$(mb_artist "$2" | $JQ -r '.name')
|
name=$(mb_artist "$2" | $JQ -r '.name')
|
||||||
|
secsymb=$(printf "$FORMAT_TYPE_HAS_SECONDARY" "")
|
||||||
sel=$(
|
sel=$(
|
||||||
$0 --internal-list-releases "$2" |
|
$0 --internal-list-releases "$2" |
|
||||||
$FZF \
|
$FZF \
|
||||||
--ansi \
|
--ansi \
|
||||||
--reverse \
|
--reverse \
|
||||||
--cycle \
|
--cycle \
|
||||||
|
--query="!$secsymb " \
|
||||||
--delimiter="\t" \
|
--delimiter="\t" \
|
||||||
--prompt="$(printf "$ARTIST_PROMPT" "$name")" \
|
--prompt="$(printf "$ARTIST_PROMPT" "$name")" \
|
||||||
--accept-nth="{2}" \
|
--accept-nth="{2}" \
|
||||||
--with-nth="{1}" \
|
--with-nth="{1}" \
|
||||||
|
--bind="alt-1:change-query(!$secsymb ),alt-2:change-query($secsymb )" \
|
||||||
|
--bind="ctrl-d:half-page-down,ctrl-u:half-page-up" \
|
||||||
--bind="ctrl-r:reload:$0 --internal-list-releases-fresh \"$2\""
|
--bind="ctrl-r:reload:$0 --internal-list-releases-fresh \"$2\""
|
||||||
)
|
)
|
||||||
[ "$sel" ] && set -- "--show-release" "$sel"
|
[ "$sel" ] && set -- "--show-release" "$sel"
|
||||||
@@ -183,6 +189,7 @@ while true; do
|
|||||||
--with-nth="{2}" \
|
--with-nth="{2}" \
|
||||||
--preview-window="wrap" \
|
--preview-window="wrap" \
|
||||||
--preview="$0 --internal-preview-artist {1}" \
|
--preview="$0 --internal-preview-artist {1}" \
|
||||||
|
--bind="ctrl-d:half-page-down,ctrl-u:half-page-up" \
|
||||||
--bind="change:execute-silent($0 --internal-search \$FZF_QUERY &)+reload($0 --internal-reload)"
|
--bind="change:execute-silent($0 --internal-search \$FZF_QUERY &)+reload($0 --internal-reload)"
|
||||||
)
|
)
|
||||||
[ "$sel" ] && set -- "--show-artist" "$sel"
|
[ "$sel" ] && set -- "--show-artist" "$sel"
|
||||||
|
@@ -1,3 +1,6 @@
|
|||||||
|
MB_BROWSE_STEPS=100
|
||||||
|
export MB_BROWSE_STEPS
|
||||||
|
|
||||||
# Argument: MB Artist ID
|
# Argument: MB Artist ID
|
||||||
__api_mb_browse_releases() {
|
__api_mb_browse_releases() {
|
||||||
$CURL \
|
$CURL \
|
||||||
@@ -14,7 +17,7 @@ __api_mb_browse_release_groups() {
|
|||||||
$CURL \
|
$CURL \
|
||||||
--get \
|
--get \
|
||||||
--data fmt=json \
|
--data fmt=json \
|
||||||
--data limit=100 \
|
--data limit="$MB_BROWSE_STEPS" \
|
||||||
--data offset="${2:-0}" \
|
--data offset="${2:-0}" \
|
||||||
--data-urlencode artist="$1" \
|
--data-urlencode artist="$1" \
|
||||||
-A "$APP_NAME/$APP_VERSION ($APP_WEBSITE)" \
|
-A "$APP_NAME/$APP_VERSION ($APP_WEBSITE)" \
|
||||||
|
@@ -2,6 +2,7 @@ CACHEDIR="$HOME/.cache/$APP_NAME"
|
|||||||
[ -d "$CACHEDIR" ] || mkdir "$CACHEDIR"
|
[ -d "$CACHEDIR" ] || mkdir "$CACHEDIR"
|
||||||
|
|
||||||
artist_mb_filename="musicbrainz.json"
|
artist_mb_filename="musicbrainz.json"
|
||||||
|
artist_mb_releasegroups_filename="releasegroups.json"
|
||||||
artist_discogs_filename="discogs.json"
|
artist_discogs_filename="discogs.json"
|
||||||
artist_wikidata_filename="wikidata.json"
|
artist_wikidata_filename="wikidata.json"
|
||||||
artist_enwikipedia_filename="enwikipedia.json"
|
artist_enwikipedia_filename="enwikipedia.json"
|
||||||
@@ -40,6 +41,12 @@ cache_get_artist_mb() {
|
|||||||
__get_artist_json "$1" "$artist_mb_filename"
|
__get_artist_json "$1" "$artist_mb_filename"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Returns the cached MusicBrainz release-group data for the artist given by the
|
||||||
|
# MusicBrainz Artist ID in $1
|
||||||
|
cache_get_artist_mb_releasegroups() {
|
||||||
|
__get_artist_json "$1" "$artist_mb_releasegroups_filename"
|
||||||
|
}
|
||||||
|
|
||||||
# Returns the cached Discogs data for the artist given by the MusicBrainz
|
# Returns the cached Discogs data for the artist given by the MusicBrainz
|
||||||
# Artist ID in $1
|
# Artist ID in $1
|
||||||
cache_get_artist_discogs() {
|
cache_get_artist_discogs() {
|
||||||
@@ -62,6 +69,23 @@ cache_put_artist_mb() {
|
|||||||
cat | __put_artist_json "$1" "$artist_mb_filename"
|
cat | __put_artist_json "$1" "$artist_mb_filename"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Read from stdin the MusicBrainz release-group data for the artist given by
|
||||||
|
# the MusicBrainz Artist ID in $1, and cache it.
|
||||||
|
cache_put_artist_mb_releasegroups() {
|
||||||
|
cat | __put_artist_json "$1" "$artist_mb_releasegroups_filename"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Read from stdin the MusicBrainz release-group data for the artist given by
|
||||||
|
# the MusicBrainz Artist ID in $1, and append it to the current cache.
|
||||||
|
cache_append_artist_mb_releasegroups() {
|
||||||
|
tmpf=$(mktemp)
|
||||||
|
cat >"$tmpf"
|
||||||
|
updated=$(mktemp)
|
||||||
|
f="$CACHEDIR/$1/$artist_mb_releasegroups_filename"
|
||||||
|
$JQ -r --slurpfile n "$tmpf" '."release-groups" += ($n[0]|."release-groups")' "$f" >"$updated" && mv "$updated" "$f"
|
||||||
|
rm -f "$tmpf"
|
||||||
|
}
|
||||||
|
|
||||||
# Read from stdin the Discogs data for the artist given by the MusicBrainz
|
# Read from stdin the Discogs data for the artist given by the MusicBrainz
|
||||||
# Artist ID in $1, and cache it.
|
# Artist ID in $1, and cache it.
|
||||||
cache_put_artist_discogs() {
|
cache_put_artist_discogs() {
|
||||||
|
51
src/sh/mb.sh
51
src/sh/mb.sh
@@ -1,12 +1,28 @@
|
|||||||
# The only IDs uses here are MusicBrainz IDs
|
# The only IDs uses here are MusicBrainz IDs
|
||||||
|
|
||||||
|
# Helper methods to retrieve from cache, if it exists, and otherwise populate
|
||||||
|
# cache and retrieve
|
||||||
__mb_artist_cache_or_fetch() {
|
__mb_artist_cache_or_fetch() {
|
||||||
mbartist="$(cache_get_artist_mb "$1" || true)"
|
if ! cache_get_artist_mb "$1"; then
|
||||||
if [ ! "$mbartist" ]; then
|
|
||||||
__api_mb_get_artist "$1" | cache_put_artist_mb "$1"
|
__api_mb_get_artist "$1" | cache_put_artist_mb "$1"
|
||||||
mbartist="$(cache_get_artist_mb "$1")"
|
cache_get_artist_mb "$1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
__mb_artist_cache_or_fetch_releasegroups() {
|
||||||
|
if ! cache_get_artist_mb_releasegroups "$1"; then
|
||||||
|
__api_mb_browse_release_groups "$1" | cache_put_artist_mb_releasegroups "$1"
|
||||||
|
rg="$(cache_get_artist_mb_releasegroups "$1")"
|
||||||
|
total=$(printf "%s" "$rg" | $JQ -r '."release-group-count"')
|
||||||
|
seen=$MB_BROWSE_STEPS
|
||||||
|
while [ "$total" -gt "$seen" ]; do
|
||||||
|
# Fetch remaning release groups, and append to cache
|
||||||
|
sleep 1 # Make sure we don't get blocked (we prefer not to handle failed requests...)
|
||||||
|
__api_mb_browse_release_groups "$1" "$seen" | cache_append_artist_mb_releasegroups "$1"
|
||||||
|
seen=$((seen + MB_BROWSE_STEPS))
|
||||||
|
done
|
||||||
|
cache_get_artist_mb_releasegroups "$1"
|
||||||
fi
|
fi
|
||||||
printf "%s" "$mbartist"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Get MusicBrainz json for artist
|
# Get MusicBrainz json for artist
|
||||||
@@ -18,8 +34,7 @@ mb_artist() {
|
|||||||
# Get Wikidata json for artist
|
# Get Wikidata json for artist
|
||||||
# @argument $1: MusicBrainz Artist ID
|
# @argument $1: MusicBrainz Artist ID
|
||||||
mb_artist_wikidata() {
|
mb_artist_wikidata() {
|
||||||
wikidata=$(cache_get_artist_wikidata "$1" || true)
|
if ! cache_get_artist_wikidata "$1"; then
|
||||||
if [ ! "$wikidata" ] || [ "$wikidata" = "null" ]; then
|
|
||||||
wikidataid=$(mb_artist "$1" |
|
wikidataid=$(mb_artist "$1" |
|
||||||
$JQ -r '.relations |
|
$JQ -r '.relations |
|
||||||
map(select(.type=="wikidata")) |
|
map(select(.type=="wikidata")) |
|
||||||
@@ -27,17 +42,14 @@ mb_artist_wikidata() {
|
|||||||
awk -F "/" '{print $NF}')
|
awk -F "/" '{print $NF}')
|
||||||
[ ! "$wikidataid" ] || [ "$wikidataid" != "null" ] || return
|
[ ! "$wikidataid" ] || [ "$wikidataid" != "null" ] || return
|
||||||
__api_wikidata_get_sitelinks "$wikidataid" | cache_put_artist_wikidata "$1"
|
__api_wikidata_get_sitelinks "$wikidataid" | cache_put_artist_wikidata "$1"
|
||||||
wikidata=$(cache_get_artist_wikidata "$1")
|
cache_get_artist_wikidata "$1"
|
||||||
fi
|
fi
|
||||||
[ ! "$wikidata" ] || [ "$wikidata" != "null" ] || return
|
|
||||||
printf "%s" "$wikidata"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Get Wikipedia (English) summary json for artist
|
# Get Wikipedia (English) summary json for artist
|
||||||
# @argument $1: MusicBrainz Artist ID
|
# @argument $1: MusicBrainz Artist ID
|
||||||
mb_artist_enwikipedia() {
|
mb_artist_enwikipedia() {
|
||||||
enwiki="$(cache_get_artist_enwikipedia "$1" || true)"
|
if ! cache_get_artist_enwikipedia "$1"; then
|
||||||
if [ ! "$enwiki" ] || [ "$enwiki" = "null" ]; then
|
|
||||||
# To fetch the wikipedia data, we need the wikipedia URL
|
# To fetch the wikipedia data, we need the wikipedia URL
|
||||||
# There are two possibly ways to get the wikipedia URL
|
# There are two possibly ways to get the wikipedia URL
|
||||||
# 1. From the website relations in MB (MB artists donw have wiki rels)
|
# 1. From the website relations in MB (MB artists donw have wiki rels)
|
||||||
@@ -51,17 +63,14 @@ mb_artist_enwikipedia() {
|
|||||||
awk -F "/" '{print $NF}')
|
awk -F "/" '{print $NF}')
|
||||||
[ ! "$wikiid" ] && return || [ "$wikiid" = "null" ] && return
|
[ ! "$wikiid" ] && return || [ "$wikiid" = "null" ] && return
|
||||||
__api_wikipedia_en_get_summary "$wikiid" | cache_put_artist_enwikipedia "$1"
|
__api_wikipedia_en_get_summary "$wikiid" | cache_put_artist_enwikipedia "$1"
|
||||||
enwiki="$(cache_get_artist_enwikipedia "$1")"
|
cache_get_artist_enwikipedia "$1"
|
||||||
fi
|
fi
|
||||||
[ ! "$enwiki" ] && return || [ "$enwiki" = "null" ] && return
|
|
||||||
printf "%s" "$enwiki"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Get Discogs json for artist
|
# Get Discogs json for artist
|
||||||
# @argument $1: MusicBrainz Artist ID
|
# @argument $1: MusicBrainz Artist ID
|
||||||
mb_artist_discogs() {
|
mb_artist_discogs() {
|
||||||
discogs="$(cache_get_artist_discogs "$1" || true)"
|
if ! cache_get_artist_discogs "$1"; then
|
||||||
if [ ! "$discogs" ] || [ "$discogs" = "null" ]; then
|
|
||||||
discogsid=$(mb_artist "$1" |
|
discogsid=$(mb_artist "$1" |
|
||||||
$JQ -r '.relations |
|
$JQ -r '.relations |
|
||||||
map(select(.type=="discogs")) |
|
map(select(.type=="discogs")) |
|
||||||
@@ -69,8 +78,12 @@ mb_artist_discogs() {
|
|||||||
awk -F "/" '{print $NF}')
|
awk -F "/" '{print $NF}')
|
||||||
[ ! "$discogsid" ] && return || [ "$discogsid" = "null" ] && return
|
[ ! "$discogsid" ] && return || [ "$discogsid" = "null" ] && return
|
||||||
__api_discogs_get_artist "$discogsid" | cache_put_artist_discogs "$1"
|
__api_discogs_get_artist "$discogsid" | cache_put_artist_discogs "$1"
|
||||||
discogs="$(cache_get_artist_discogs "$1" || true)"
|
cache_get_artist_discogs "$1"
|
||||||
fi
|
fi
|
||||||
[ ! "$discogs" ] && return || [ "$discogs" = "null" ] && return
|
}
|
||||||
printf "%s" "$discogs"
|
|
||||||
|
# Get release-groups json for artist
|
||||||
|
# @argument $1: MusicBrainz Artist ID
|
||||||
|
mb_artist_releasegroups() {
|
||||||
|
__mb_artist_cache_or_fetch_releasegroups "$1"
|
||||||
}
|
}
|
||||||
|
@@ -4,40 +4,34 @@ COLOR_RESET="\033[m"
|
|||||||
FORMAT_PERSON="${FORMAT_PERSON:-👤 $COLOR_ARTIST<<name>>$COLOR_RESET}"
|
FORMAT_PERSON="${FORMAT_PERSON:-👤 $COLOR_ARTIST<<name>>$COLOR_RESET}"
|
||||||
FORMAT_GROUP="${FORMAT_GROUP:-👥 $COLOR_ARTIST<<name>>$COLOR_RESET}"
|
FORMAT_GROUP="${FORMAT_GROUP:-👥 $COLOR_ARTIST<<name>>$COLOR_RESET}"
|
||||||
FORMAT_DISAMBIGUATION="${FORMAT_DISAMBIGUATION:-$COLOR_DISAMBIGUATION(<<disambiguation>>)$COLOR_RESET}"
|
FORMAT_DISAMBIGUATION="${FORMAT_DISAMBIGUATION:-$COLOR_DISAMBIGUATION(<<disambiguation>>)$COLOR_RESET}"
|
||||||
COLOR_TYPE="\033[38;5;208m"
|
COLOR_TYPE="\033[38;5;177m"
|
||||||
COLOR_TYPE_SECONDARY="\033[38;5;210m"
|
COLOR_TYPE_SECONDARY="\033[38;5;242m"
|
||||||
COLOR_RELEASE_TITLE="\033[38;5;229m"
|
COLOR_RELEASE_TITLE="\033[38;5;229m"
|
||||||
COLOR_RELEASE_YEAR="\033[38;5;179m"
|
COLOR_RELEASE_YEAR="\033[38;5;179m"
|
||||||
FORMAT_RELEASE="${FORMAT_RELEASE:-"${COLOR_RELEASE_TITLE}<<title>>$COLOR_RESET"}"
|
FORMAT_RELEASE="${FORMAT_RELEASE:-"${COLOR_RELEASE_TITLE}<<title>>$COLOR_RESET"}"
|
||||||
FORMAT_YEAR="${FORMAT_YEAR:-"${COLOR_RELEASE_YEAR}(<<year>>)${COLOR_RESET}"}"
|
FORMAT_YEAR="${FORMAT_YEAR:-"${COLOR_RELEASE_YEAR}(<<year>>)${COLOR_RESET}"}"
|
||||||
FORMAT_TYPE_ALBUM="${FORMAT_TYPE_ALBUM:-"💽 ${COLOR_TYPE}LP$COLOR_RESET"}"
|
FORMAT_TYPE_ALBUM="${FORMAT_TYPE_ALBUM:-"LP 💽"}"
|
||||||
FORMAT_TYPE_EP="${FORMAT_TYPE_EP:-"📀 ${COLOR_TYPE}EP$COLOR_RESET"}"
|
FORMAT_TYPE_EP="${FORMAT_TYPE_EP:-"EP 📀"}"
|
||||||
FORMAT_TYPE_SINGLE="${FORMAT_TYPE_SINGLE:-"🎶 ${COLOR_TYPE}single$COLOR_RESET"}"
|
FORMAT_TYPE_SINGLE="${FORMAT_TYPE_SINGLE:-"SI 🎶"}"
|
||||||
FORMAT_TYPE_BROADCAST="${FORMAT_TYPE_BROADCAST:-"📻 ${COLOR_TYPE}broadcast$COLOR_RESET"}"
|
FORMAT_TYPE_BROADCAST="${FORMAT_TYPE_BROADCAST:-"BR 📻"}"
|
||||||
FORMAT_TYPE_OTHER="${FORMAT_TYPE_OTHER:-"❔ ${COLOR_TYPE}other$COLOR_RESET"}"
|
FORMAT_TYPE_OTHER="${FORMAT_TYPE_OTHER:-"OT ❔"}"
|
||||||
FORMAT_TYPE_SECONDARY_COMPILATION="${FORMAT_TYPE_SECONDARY_COMPILATION:-"🧩 ${COLOR_TYPE_SECONDARY}compilation$COLOR_RESET"}"
|
FORMAT_TYPE_HAS_SECONDARY="${FORMAT_TYPE_HAS_SECONDARY:-"%s☼"}"
|
||||||
FORMAT_TYPE_SECONDARY_SOUNDTRACK="${FORMAT_TYPE_SECONDARY_SOUNDTRACK:-"🎬 ${COLOR_TYPE_SECONDARY}soundtrack$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY="${FORMAT_TYPE_SECONDARY:-"${COLOR_TYPE_SECONDARY}[☼: %s]$COLOR_RESET"}"
|
||||||
FORMAT_TYPE_SECONDARY_SPOKENWORD="${FORMAT_TYPE_SECONDARY_SPOKENWORD:-"📖 ${COLOR_TYPE_SECONDARY}spokenword$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_COMPILATION="${FORMAT_TYPE_SECONDARY_COMPILATION:-"🧩 compilation"}"
|
||||||
FORMAT_TYPE_SECONDARY_INTERVIEW="${FORMAT_TYPE_SECONDARY_INTERVIEW:-"💬 ${COLOR_TYPE_SECONDARY}interview$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_SOUNDTRACK="${FORMAT_TYPE_SECONDARY_SOUNDTRACK:-"🎬 soundtrack"}"
|
||||||
FORMAT_TYPE_SECONDARY_AUDIOBOOK="${FORMAT_TYPE_SECONDARY_AUDIOBOOK:-"🎧 ${COLOR_TYPE_SECONDARY}audiobook$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_SPOKENWORD="${FORMAT_TYPE_SECONDARY_SPOKENWORD:-"📖 spokenword"}"
|
||||||
FORMAT_TYPE_SECONDARY_AUDIODRAMA="${FORMAT_TYPE_SECONDARY_AUDIODRAMA:-"🎭 ${COLOR_TYPE_SECONDARY}audio drama$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_INTERVIEW="${FORMAT_TYPE_SECONDARY_INTERVIEW:-"💬 interview"}"
|
||||||
FORMAT_TYPE_SECONDARY_LIVE="${FORMAT_TYPE_SECONDARY_LIVE:-"🎤 ${COLOR_TYPE_SECONDARY}live$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_AUDIOBOOK="${FORMAT_TYPE_SECONDARY_AUDIOBOOK:-"🎧 audiobook"}"
|
||||||
FORMAT_TYPE_SECONDARY_REMIX="${FORMAT_TYPE_SECONDARY_REMIX:-"🔁 ${COLOR_TYPE_SECONDARY}remix$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_AUDIODRAMA="${FORMAT_TYPE_SECONDARY_AUDIODRAMA:-"🎭 audio drama"}"
|
||||||
FORMAT_TYPE_SECONDARY_DJMIX="${FORMAT_TYPE_SECONDARY_DJMIX:-"🪩 ${COLOR_TYPE_SECONDARY}DJ-mix$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_LIVE="${FORMAT_TYPE_SECONDARY_LIVE:-"🎤 live"}"
|
||||||
FORMAT_TYPE_SECONDARY_MIXTAPE="${FORMAT_TYPE_SECONDARY_MIXTAPE:-"📼 ${COLOR_TYPE_SECONDARY}mixtape$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_REMIX="${FORMAT_TYPE_SECONDARY_REMIX:-"🔁 remix"}"
|
||||||
FORMAT_TYPE_SECONDARY_DEMO="${FORMAT_TYPE_SECONDARY_DEMO:-"🧪 ${COLOR_TYPE_SECONDARY}demo$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_DJMIX="${FORMAT_TYPE_SECONDARY_DJMIX:-"🪩 DJ-mix"}"
|
||||||
FORMAT_TYPE_SECONDARY_FIELDREC="${FORMAT_TYPE_SECONDARY_FIELDREC:-"🌿 ${COLOR_TYPE_SECONDARY}field recording$COLOR_RESET"}"
|
FORMAT_TYPE_SECONDARY_MIXTAPE="${FORMAT_TYPE_SECONDARY_MIXTAPE:-"📼 mixtape"}"
|
||||||
export FORMAT_PERSON FORMAT_GROUP FORMAT_DISAMBIGUATION \
|
FORMAT_TYPE_SECONDARY_DEMO="${FORMAT_TYPE_SECONDARY_DEMO:-"🧪 demo"}"
|
||||||
FORMAT_RELEASE FORMAT_YEAR \
|
FORMAT_TYPE_SECONDARY_FIELDREC="${FORMAT_TYPE_SECONDARY_FIELDREC:-"🌿 field recording"}"
|
||||||
FORMAT_TYPE_ALBUM FORMAT_TYPE_SINGLE FORMAT_TYPE_EP FORMAT_TYPE_BROADCAST FORMAT_TYPE_OTHER \
|
|
||||||
FORMAT_TYPE_SECONDARY_COMPILATION FORMAT_TYPE_SECONDARY_SOUNDTRACK FORMAT_TYPE_SECONDARY_SPOKENWORD \
|
|
||||||
FORMAT_TYPE_SECONDARY_INTERVIEW FORMAT_TYPE_SECONDARY_AUDIOBOOK FORMAT_TYPE_SECONDARY_AUDIODRAMA \
|
|
||||||
FORMAT_TYPE_SECONDARY_LIVE FORMAT_TYPE_SECONDARY_REMIX FORMAT_TYPE_SECONDARY_DJMIX FORMAT_TYPE_SECONDARY_MIXTAPE \
|
|
||||||
FORMAT_TYPE_SECONDARY_DEMO FORMAT_TYPE_SECONDARY_FIELDREC
|
|
||||||
|
|
||||||
SEARCH_PROMPT=${SEARCH_PROMPT:-"🔎 〉"}
|
SEARCH_PROMPT=${SEARCH_PROMPT:-"🔎 〉"}
|
||||||
ARTIST_PROMPT="${ARTIST_PROMPT:-"🎤 ${COLOR_ARTIST}%s$COLOR_RESET 〉"}"
|
ARTIST_PROMPT="${ARTIST_PROMPT:-"🎤 ${COLOR_ARTIST}%s$COLOR_RESET 〉"}"
|
||||||
export SEARCH_PROMPT ARTIST_PROMPT
|
|
||||||
#BROWSE_PROMPT_ROOT="${BROWSE_PROMPT_ROOT:-"$SEARCH_PROMPT"}"
|
#BROWSE_PROMPT_ROOT="${BROWSE_PROMPT_ROOT:-"$SEARCH_PROMPT"}"
|
||||||
#BROWSE_PROMPT_ARTIST="${BROWSE_PROMPT_ARTIST:-"$AFMT 〉"}"
|
#BROWSE_PROMPT_ARTIST="${BROWSE_PROMPT_ARTIST:-"$AFMT 〉"}"
|
||||||
#BROWSE_PROMPT_RELEASE="${BROWSE_PROMPT_RELEASE:-"$AFMT 》 $RFMT 〉"}"
|
#BROWSE_PROMPT_RELEASE="${BROWSE_PROMPT_RELEASE:-"$AFMT 》 $RFMT 〉"}"
|
||||||
|
Reference in New Issue
Block a user