From d73d180236d33ad0034a48dde0555364fb42c2d0 Mon Sep 17 00:00:00 2001 From: Diogo Lemos Date: Sun, 23 Jun 2019 21:19:39 +0100 Subject: [PATCH 1/2] Add support for BSD sed --- split2flac | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/split2flac b/split2flac index 2cbb71a..7c4163d 100755 --- a/split2flac +++ b/split2flac @@ -231,6 +231,11 @@ if [ ${SAVE} -eq 1 ]; then $msg "${cP}Configuration saved$cZ\n" fi +case "$OSTYPE" in + darwin*|bsd*) esed='sed -E' ;; + *) esed='sed' ;; +esac + # use flake if possible command -v flake >/dev/null && FLAC_ENCODER="flake" || FLAC_ENCODER="flac" @@ -453,7 +458,7 @@ split_file () { return 1 fi - TAG_GENRE=$(grep 'REM[ \t]\+GENRE[ \t]\+' "${CUE}" | head -1 | sed 's/REM[ \t]\+GENRE[ \t]\+//;s/^"\(.*\)"$/\1/') + TAG_GENRE=$(grep 'REM[ \t]\+GENRE[ \t]\+' "${CUE}" | head -1 | $esed 's/REM[[:space:]]+GENRE[[:space:]]+//') YEAR=$(awk '{ if (/REM[ \t]+DATE/) { printf "%i", $3; exit } }' < "${CUE}") YEAR=$(echo ${YEAR} | tr -d -c '[:digit:]') From b2989a3a8ef75cf8a43a9ad25935586fbcb0855b Mon Sep 17 00:00:00 2001 From: Diogo Lemos Date: Sun, 23 Jun 2019 21:20:14 +0100 Subject: [PATCH 2/2] Improve temporary cuefile --- split2flac | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/split2flac b/split2flac index 7c4163d..02f5942 100755 --- a/split2flac +++ b/split2flac @@ -291,9 +291,11 @@ update_pattern () { # splits a file split_file () { - TMPCUE="${HOME}/.split2flac_XXXXX.cue" + TMPCUE="$(mktemp).cue" FILE="$1" + trap 'rm -f $TMPCUE &>/dev/null' EXIT + if [ ! -r "${FILE}" ]; then emsg "Can not read the file\n" return 1 @@ -326,10 +328,8 @@ split_file () { if [ -n "${CUESHEET}" ]; then $msg "${cP}Found internal cue sheet$cZ\n" - TMPCUE=$(mktemp "${TMPCUE}") CUE="${TMPCUE}" echo "${CUESHEET}" > "${CUE}" - TMPCUE="${HOME}/.split2flac_XXXXX.cue" if [ $? -ne 0 ]; then emsg "Unable to save internal cue sheet\n" @@ -348,6 +348,8 @@ split_file () { return 1 fi + $msg "${cG}Cue sheet :$cZ ${CUE}\n" + # cue sheet charset [ -z "${CHARSET}" ] && CHARSET="utf-8" || $msg "${cG}Cue charset : $cP${CHARSET} -> utf-8$cZ\n" @@ -382,7 +384,6 @@ split_file () { fi # save converted cue sheet - TMPCUE=$(mktemp "${TMPCUE}") CUE="${TMPCUE}" echo "${CUESHEET}" > "${CUE}" @@ -416,7 +417,6 @@ split_file () { fi fi - $msg "${cG}Cue sheet :$cZ ${CUE}\n" $msg "${cG}Cover image :$cZ ${PIC:-not set}\n" # file removal warning @@ -694,7 +694,6 @@ split_file () { fi rm -f "${TMPPIC}" - rm -f "${TMPCUE}" if [ ${DRY} -ne 1 -a ${REMOVE} -eq 1 ]; then YEP="n"