# eyeD3 --comment syntax is also different in < and >= 0.7.0
run_command tagtrack-$OUTPUT-$1 nice $ENCNICE $TAGGER $TAGGEROPTS \
--comment="$COMMENTOUTPUT" -A "$DALBUM" \
- -a "$TRACKARTIST" -t "$TRACKNAME" -Y "$CDYEAR" \
+ -a "$TRACKARTIST" -t "$TRACKNAME" ${CDYEAR:+-Y "$CDYEAR"} \
-G "$GENREID" -n "${TRACKNUM:-$1}" \
${TRACKNUM:+-N "$TRACKS"} \
${ENCODING:+--encoding="$ENCODING"} \
exit 1
fi
CDDBDATA="$ABCDETEMPDIR/cddbread.$(checkstatus cddb-choice)"
- echo -n "Edit selected CDDB data? [y/n] (" >&2
+ echo -n "Edit selected CDDB data? " >&2
if [ "$INTERACTIVE" = "y" ]; then
if [ "$UNKNOWNDISK" = "y" ]; then
- echo -n "y): " >&2
+ echo -n "[Y/n] (y): " >&2
read EDITCDDB
[ "$EDITCDDB" != "n" ] && EDITCDDB=y
else
- echo -n "n): " >&2
+ echo -n "[y/N] (n): " >&2
read EDITCDDB
fi
else
- echo "n): n" >&2
+ echo "[y/N] (n): n" >&2
EDITCDDB=n
fi
if [ "$EDITCDDB" = "y" ]; then
esac
# Parse command line options
-#while getopts 1a:bc:C:d:Dehj:klLmMnNo:pPq:r:Rs:S:t:T:vVxw:W: opt ; do
-while getopts 1a:bBc:C:d:Defghj:klLmMnNo:pPr:s:S:t:T:UvVxX:w:W:z opt ; do
+while getopts 1a:bc:C:d:Defghj:klLmMnNo:pPr:s:S:t:T:UvVxX:w:W:z opt ; do
case "$opt" in
1) ONETRACK=y ;;
a) ACTIONS="$OPTARG" ;;
A) EXPACTIONS="$OPTARG" ;;
b) BATCHNORM=y ;;
- B) NOBATCHREPLAYGAIN=y ;;
c) if [ -e "$OPTARG" ] ; then . "$OPTARG" ; else log error "config file \"$OPTARG\" cannot be found." ; exit 1 ; fi ;;
C) DISCID="$( echo ${OPTARG#abcde.} | tr -d /)" ;;
d) CDROM="$OPTARG" ;;
X) CUE2DISCID="$OPTARG" ;;
w) COMMENT="$OPTARG" ;;
W) if echo $OPTARG | grep "[[:digit:]]" > /dev/null 2>&1 ; then
- STARTTRACKNUMBER="${OPTARG}01"
+ STARTTRACKNUMBER="${OPTARG}$(printf %02d ${STARTTRACKNUMBER:-01})"
STARTTRACKNUMBERTAG="y"
COMMENT="CD${OPTARG}"
DISCNUMBER="${OPTARG}"
esac
# Allow -o OUTPUT(1):OPTIONS(1),...,OUTPUT(N):OPTIONS(N) mode of operation
-if echo "$OUTPUTTYPE" | grep ":" > /dev/null 2>&1 ; then
- for OUTPUT in "$(echo "$OUTPUTTYPE" | tr \ \|| tr , \ | tr \| \ )"; do
+case "$OUTPUTTYPE" in *:*)
+ for OUTPUT in $(echo "$OUTPUTTYPE" | tr \ \|| tr , \ ); do
+ OUTPUT="$(echo "$OUTPUT" | tr \| \ )"
case "$OUTPUT" in
vorbis:*|ogg:*) OGGENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
opus:*) OPUSENCODEROPTSCLI="$( echo $OUTPUT | cut -d: -f2- )" ;;
TEMPOUTPUTTYPE="${TEMPOUTPUTTYPE:+$TEMPOUTPUTTYPE,}$TEMPOUTPUT"
done
OUTPUTTYPE="$TEMPOUTPUTTYPE"
-fi
+ ;;
+esac
# If nothing has been specified, use oggenc for oggs and lame for mp3s and flac
# for flacs and speexenc for speex and mpcenc for mpcs and faac for m4as