From 5bfb76fadb286589136d5920516cf43925f63a0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=84min=20Baumeler?= Date: Fri, 25 Jul 2025 15:58:16 +0200 Subject: [PATCH] imrv: preview artist --- src/sh/preview.sh | 18 ++++++++++-------- src/sh/theme.sh | 8 ++++---- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/sh/preview.sh b/src/sh/preview.sh index fad5445..af6a354 100644 --- a/src/sh/preview.sh +++ b/src/sh/preview.sh @@ -1,11 +1,12 @@ +__shape() { + cat | tr -d '\r' | fold -s -w "$((FZF_PREVIEW_COLUMNS - 4))" | awk '{print " "$0" "}' +} + # Print preview of artist # @input $1: MusicBrainz Artist ID __preview_artist() { - desc=$(mb_artist_enwikipedia "$1" | $JQ -r '.extract') - if [ ! "$desc" ]; then - desc=$(mb_artist_discogs "$1" | $JQ -r '.profile' | sed 's/\[a=\([^]]*\)\]/\1/g') - fi - [ "$desc" ] && desc="$(printf "$FORMAT_DESCRIPTION" "$desc")" + desc=$(mb_artist_enwikipedia "$1" | $JQ -r '.extract' | __shape) + [ "$desc" ] || desc=$(mb_artist_discogs "$1" | $JQ -r '.profile' | sed 's/\[a=\([^]]*\)\]/\1/g' | __shape) if [ "$(mb_artist "$1" | $JQ -r '.type')" = "Person" ]; then # Show birth place and death place of person lsb=$(mb_artist "$1" | $JQ -r '."life-span".begin // ""' | head -c 4) @@ -30,8 +31,9 @@ __preview_artist() { else end="" fi - [ "$begin" ] && begin="$(printf "$FORMAT_LIFESPAN_BORN" "$begin")" - [ "$end" ] && end="$(printf "$FORMAT_LIFESPAN_DIED" "$end")" + [ "$begin" ] && lifespan="$(printf "$FORMAT_LIFESPAN_BORN" "$begin")" + [ "$end" ] && lifespan="$(printf "%s\n$FORMAT_LIFESPAN_DIED" "$lifespan" "$end")" fi - printf "\n\n%s\n\n%s\n%s" "$desc" "$begin" "$end" | tr -d '\r' | fold -s -w "$((FZF_PREVIEW_COLUMNS - 4))" | awk '{print " "$0" "}' | cat + #link=$(printf "More info:\033]8;;%s\033\\ %s\033]8;;\033\\" "https://musicbrainz.org/" "[MusicBrainz]") + printf "\n\n${COLOR_DESCRIPTION}%s${COLOR_RESET}\n\n${COLOR_LIFESPAN}%s$COLOR_RESET" "$desc" "${lifespan:-}" } diff --git a/src/sh/theme.sh b/src/sh/theme.sh index 0a1e6be..d48e950 100644 --- a/src/sh/theme.sh +++ b/src/sh/theme.sh @@ -1,6 +1,8 @@ FAINT="\033[2m" COLOR_ARTIST="\033[38;5;209m" COLOR_DISAMBIGUATION="$FAINT\033[38;5;172m" +COLOR_DESCRIPTION="${COLOR_DESCRIPTION:-"\033[38;5;254m"}" +COLOR_LIFESPAN="${COLOR_LIFESPAN:-"\033[38;5;251m"}" COLOR_RESET="\033[m" FORMAT_PERSON="${FORMAT_PERSON:-🧑‍🎤 $COLOR_ARTIST<>$COLOR_RESET}" FORMAT_GROUP="${FORMAT_GROUP:-🧑‍🤝‍🧑 $COLOR_ARTIST<>$COLOR_RESET}" @@ -41,10 +43,8 @@ ARTIST_PROMPT="${ARTIST_PROMPT:-"🎤 ${COLOR_ARTIST}%s$COLOR_RESET 〉"}" #TFMT="${TFMT:-"🎵 ${TRACK_COLOR}%s${OFF}"}" # Artist Preview -COLOR_DESCRIPTION="\033[38;5;189m" FORMAT_DATE="${FORMAT_DATE:-"%s"}" -FORMAT_PLACE="${FORMAT_PLACE:-"📍 %s"}" -FORMAT_DATEPLACE="${FORMAT_DATEPLACE:-"%s, 📍 %s"}" +FORMAT_PLACE="${FORMAT_PLACE:-"%s"}" +FORMAT_DATEPLACE="${FORMAT_DATEPLACE:-"%s, %s"}" FORMAT_LIFESPAN_BORN="${FORMAT_LIFESPAN_BORN:-"🍼 Born: %s"}" FORMAT_LIFESPAN_DIED="${FORMAT_LIFESPAN_DIED:-"🕯️ Died: %s"}" -FORMAT_DESCRIPTION="${FORMAT_DESCRIPTION:-"${COLOR_DESCRIPTION}%s$COLOR_RESET"}"