X-Git-Url: https://git.hcoop.net/clinton/abcde.git/blobdiff_plain/52e095819c8953f7fe5a125191ff042c84a40e3d..f899a8ece514654f266818b3f1889108a3a6376b:/abcde diff --git a/abcde b/abcde index 56b0a64..f9ea19f 100755 --- a/abcde +++ b/abcde @@ -1,6 +1,8 @@ #!/bin/bash # Copyright (c) 1998-2001 Robert Woodcock # Copyright (c) 2003-2006 Jesus Climent +# Copyright (c) 2009-2012 Colin Tuckley +# Copyright (c) 2012 Steve McIntyre <93sam@@debian.org> # This code is hereby licensed for public consumption under either the # GNU GPL v2 or greater, or Larry Wall's Artistic license - your choice. # @@ -13,7 +15,7 @@ # # $Id$ -VERSION='2.5.3-UNRELEASED' +VERSION='2.5.5-UNRELEASED' usage () { @@ -826,9 +828,9 @@ do_tag () --comment=::"$COMMENTOUTPUT" -A "$DALBUM" \ -a "$TRACKARTIST" -t "$TRACKNAME" -Y "$CDYEAR" \ -G "$GENREID" -n "${TRACKNUM:-$1}" \ - "${TRACKNUM:+-N $TRACKS}" \ - "${ENCODING:+--set-encoding=$ENCODING}" \ - "${TPE2:+--set-user-text-frame=TPE2:$TPE2}" \ + ${TRACKNUM:+-N "$TRACKS"} \ + ${ENCODING:+--set-encoding="$ENCODING"} \ + ${TPE2:+--set-text-frame=TPE2:"$TPE2"} \ "$ABCDETEMPDIR/track$1.$OUTPUT" ;; # FIXME # Still not activated... @@ -2282,9 +2284,11 @@ do_cdtext () TRACKM1=$(($TRACK - 1)) TITLE="$(grep -E ^Track\ +$TRACK: "$ABCDETEMPDIR/cd-text" | tr -d \\r\\n | sed 's~^Track ..: .~~g;'"s~'$~~g")" echo "$TRACK: $TITLE" >> "$ABCDETEMPDIR/cddbchoices" - sed -i "s~^TTITLE${TRACKM1}=.*~TTITLE${TRACKM1}=${TITLE}~" "$ABCDETEMPDIR/cddbread.1" + sed "s~^TTITLE${TRACKM1}=.*~TTITLE${TRACKM1}=${TITLE}~" "$ABCDETEMPDIR/cddbread.1" > "$ABCDETEMPDIR/cddbread.new" + mv -f "$ABCDETEMPDIR/cddbread.new" "$ABCDETEMPDIR/cddbread.1" done - sed -i "s~^DTITLE=.*~DTITLE=${ATITLE}~" "$ABCDETEMPDIR/cddbread.1" + sed "s~^DTITLE=.*~DTITLE=${ATITLE}~" "$ABCDETEMPDIR/cddbread.1" > "$ABCDETEMPDIR/cddbread.new" + mv -f "$ABCDETEMPDIR/cddbread.new" "$ABCDETEMPDIR/cddbread.1" echo >> "$ABCDETEMPDIR/cddbchoices" echo "cdtext-readcomplete" >> "$ABCDETEMPDIR/status" } @@ -3322,10 +3326,7 @@ else fi # If CDDBAVAIL is set to n, no CDDB read is done -# If USEID3 is set to n, no ID3 tagging is done CDDBAVAIL=y -USEID3=y -USEID3V2=y # There we go.. # But before we get into business, let us chop off any GREP environmental @@ -3369,6 +3370,8 @@ fi if [ "$CDROM" = "" ] ; then if [ -e /dev/cdroms/cdrom0 ]; then CDROM=/dev/cdroms/cdrom0 + elif [ "$OSFLAVOUR" = "OSX" ] && [[ $(diskutil list) =~ CD_part.*(disk.)$'\n' ]]; then + CDROM=/dev/${BASH_REMATCH[1]} elif [ -e /dev/cdrom ]; then CDROM=/dev/cdrom elif [ -e /dev/sr0 ]; then @@ -3379,8 +3382,6 @@ if [ "$CDROM" = "" ] ; then CDROM=/dev/acd0c elif [ -e /dev/disk1 ]; then CDROM=/dev/disk1 - elif [ "$OSFLAVOUR" = "OSX" ] && [[ $(diskutil list) =~ CD_part.*(disk.)$'\n' ]]; then - CDROM=/dev/${BASH_REMATCH[1]} fi fi @@ -3872,8 +3873,10 @@ if [ "$ID3TAGV" = "1" ]; then TAGGER="$ID3" TAGGEROPTS="$ID3OPTS" else - TAGGER="$ID3V2" + TAGGER="$EYED3" TAGGEROPTS="$ID3V2OPTS" + ID3SYNTAX=eyed3 + TAGGEROPTS="--set-encoding=utf16-LE $ID3V2OPTS" fi # NOGAP is specific to lame. Other encoders fail ... @@ -4087,7 +4090,7 @@ if [ "$DOCDDB" = "y" ]; then esac fi CHOICE=$(checkstatus cddb-choice) - if [ $CHOICE = 0 ] ; then + if [ "$CHOICE" = 0 ] ; then # We don't have any information at all; try to fall back # to CD-Text for basic information vecho "No CDDB information found, trying cdtext from the CD"