$NetBSD: patch-ac,v 1.5 2002/03/06 09:55:23 martin Exp $

--- abcde.orig	Wed Aug 15 23:39:29 2001
+++ abcde	Wed Mar  6 10:47:22 2002
@@ -199,6 +199,11 @@
 			TRACKARTIST="$(echo $DTITLEARTIST | cut -f1 -d~)"
 			TRACKNAME="$(echo $DTITLEARTIST | cut -f2 -d~)"
 			;;
+		trailing-paren)
+			DTITLEARTIST="$(echo $TRACKNAME | sed 's,^\(.*\) (\(.*\)),\1~\2,')"
+			TRACKARTIST="$(echo $DTITLEARTIST | cut -f2 -d~)"
+			TRACKNAME="$(echo $DTITLEARTIST | cut -f1 -d~)"
+			;;
 		esac
 	else
 		TRACKARTIST=$DARTIST
@@ -268,7 +273,7 @@
 			mp3enc) run_command encodetrack-$1 nice $ENCNICE $ENCODER -if "$IN" -of "$OUT" $ENCODEROPTS ;;
 			esac
 		else
-			run_command encodetrack-$1 $DISTMP3 $DISTMP3OPTS $2 "$IN" "$OUT" >/dev/null 2>&1
+			run_command encodetrack-$1 $DISTMP3 $DISTMP3OPTS "$2" "$IN" "$OUT" >/dev/null 2>&1
 		fi
 		;;
 	ogg)
@@ -552,7 +557,7 @@
 			fi
 			# List out disc title/author and contents
 			echo ---- $(cut '-d ' -f4- "$ABCDETEMPDIR/cddbquery") ---- >> "$ABCDETEMPDIR/cddbchoices"
-			for TRACK in $(seq 1 $TRACKS)
+			for TRACK in $(jot $TRACKS)
 			do
 				echo $TRACK: $(grep ^TTITLE$(expr $TRACK - 1)= "$ABCDETEMPDIR/cddbread.1" | cut -f2- -d= | tr -d \\r\\n) >> "$ABCDETEMPDIR/cddbchoices"
 			done
@@ -568,7 +573,7 @@
 			$CDDBTOOL template $(cat "$ABCDETEMPDIR/discid") > "$ABCDETEMPDIR/cddbread.1"
 			# List out disc title/author and contents of template
 			echo ---- Unknown Artist / Unknown Album ---- >> "$ABCDETEMPDIR/cddbchoices"
-			for TRACK in $(seq 1 $TRACKS)
+			for TRACK in $(jot $TRACKS)
 			do
 				echo $TRACK: $(grep ^TTITLE$(expr $TRACK - 1)= "$ABCDETEMPDIR/cddbread.1" | cut -f2- -d= | tr -d \\r\\n) >> "$ABCDETEMPDIR/cddbchoices"
 			done
@@ -598,7 +603,7 @@
 				fi
 				# List out disc title/author and contents
 				echo \#$X: ---- "$DISCINFO" ---- >> "$ABCDETEMPDIR/cddbchoices"
-				for TRACK in $(seq 1 $TRACKS)
+				for TRACK in $(jot $TRACKS)
 				do
 					echo $TRACK: $(grep ^TTITLE$(expr $TRACK - 1)= $ABCDETEMPDIR/cddbread.$X | cut -f2- -d= | tr -d \\r\\n) >> "$ABCDETEMPDIR/cddbchoices"
 				done
@@ -742,6 +747,9 @@
 		elif [ "$(grep -c "^TTITLE.*\-" "$CDDBDATA")" -gt "$(expr $NUMTRACKS / 2 )" ]; then
 			# More than 1/2 contain a "-", so guess forward-dash
 			DEFAULTSTYLE=2
+		elif [ "$(grep -c "^TTITLE.*(.*)" "$CDDBDATA")" -gt "$(expr $NUMTRACKS / 2 )" ]; then
+			# More than 1/2 contain something in parens, so guess trailing-paren
+			DEFAULTSTYLE=6
 		fi
 
 		echo "1) Artist / Title" >&2
@@ -749,23 +757,24 @@
 		echo "3) Title / Artist" >&2
 		echo "4) Title - Artist" >&2
 		echo "5) Artist: Title" >&2
-		echo "6) This is a single-artist CD" >&2
-		echo -n "Which style of multiple artist entries is it? [1-6] ($DEFAULTSTYLE): " >&2
+		echo "6) Title (Artist)" >&2
+		echo "7) This is a single-artist CD" >&2
+		echo -n "Which style of multiple artist entries is it? [1-7] ($DEFAULTSTYLE): " >&2
 		if [ "$INTERACTIVE" = "y" ]; then
 			read VARIOUSARTISTSTYLE
 		else
 			echo $DEFAULTSTYLE >&2
 			VARIOUSARTISTSTYLE=$DEFAULTSTYLE
 		fi
-		VARIOUSARTISTSTYLE=$(echo $VARIOUSARTISTSTYLE | xargs printf %d)
+		VARIOUSARTISTSTYLE=$(echo 0$VARIOUSARTISTSTYLE | xargs printf %d)
 		# If they press Enter, then the default style (0) was chosen
-		while [ $VARIOUSARTISTSTYLE -lt 0 ] || [ $VARIOUSARTISTSTYLE -gt 6 ]; do
-			echo "Invalid selection. Please choose a number between 1 and 6."
-			echo -n "Selection [1-6]: "
+		while [ $VARIOUSARTISTSTYLE -lt 0 ] || [ $VARIOUSARTISTSTYLE -gt 7 ]; do
+			echo "Invalid selection. Please choose a number between 1 and 7."
+			echo -n "Selection [1-7]: "
 
 
 			read VARIOUSARTISTSTYLE
-			VARIOUSARTISTSTYLE=$(echo $VARIOUSARTISTSTYLE | xargs printf %d)
+			VARIOUSARTISTSTYLE=$(echo 0$VARIOUSARTISTSTYLE | xargs printf %d)
 		done
 		if [ "$VARIOUSARTISTSTYLE" = "0" ]; then
 			VARIOUSARTISTSTYLE=$DEFAULTSTYLE
@@ -787,7 +796,10 @@
 		5) # Artist: Title
 			VARIOUSARTISTSTYLE=colon
 			;;
-		6) # Single Artist
+		6) # Title (Artist)
+			VARIOUSARTISTSTYLE=trailing-paren
+			;;
+		7) # Single Artist
 			VARIOUSARTISTS=n
 			;;
 		esac
@@ -856,7 +868,7 @@
 PLAYLISTFORMAT='${ARTISTFILE}_-_${ALBUMFILE}.m3u'
 PLAYLISTDATAPREFIX=''
 COMMENT=''
-ID3TAGV=2
+ID3TAGV=1
 ENCNICE=10
 READNICE=10
 VARIOUSARTISTS=n
@@ -910,7 +922,7 @@
 # Custom filename munging:
 mungefilename ()
 {
-	echo "$@" | sed s,:,\ -,g | tr \ / __ | tr -d \'\? | tr -d \[:cntrl:\]
+	echo "$@" | sed s,:,\ -,g | tr / _ | tr -d \`\'\"\? | tr -d \[:cntrl:\]
 }
 
 # If CDDBAVAIL is set to n, no CDDB read is done
@@ -926,17 +938,12 @@
 	WAVOUTPUTDIR="$OUTPUTDIR"
 fi
 
-# If this is a devfs system, default to /dev/cdroms/cdrom0
-# instead of /dev/cdrom
-if [ -f /dev/cdroms/cdrom0 ]; then
-	CDROM=/dev/cdroms/cdrom0
-else
-	CDROM=/dev/cdrom
-fi
+RAWPART=`sysctl -n kern.rawpartition | awk '{printf "%c",97+$0}'`
+CDROM=/dev/rcd0$RAWPART
 
 # Load system defaults
-if [ -r /etc/abcde.conf ]; then
-	. /etc/abcde.conf
+if [ -r /usr/pkg/etc/abcde.conf ]; then
+	. /usr/pkg/etc/abcde.conf
 fi
 # Load user preference defaults
 if [ -r $HOME/.abcde.conf ]; then
@@ -972,7 +979,7 @@
 	if [ "$RSTART" = "$REND" ]; then 
 		NEWTRACKS="$RSTART"
 	else
-		NEWTRACKS=$(seq -s ' ' $RSTART $REND)
+ 		NEWTRACKS=$(jot -s ' ' $(($REND - $RSTART + 1)) $RSTART $REND)
 	fi
 	TRACKQUEUE=$(echo "$TRACKQUEUE" "$NEWTRACKS")
 
@@ -1145,7 +1152,7 @@
 do
 	ENCODELOCATIONS="$ENCODELOCATIONS $REMOTEHOST"
 done
-for NUM in $(seq 1 "$MAXPROCS")
+for NUM in $(jot "$MAXPROCS")
 do
 	ENCODELOCATIONS="$ENCODELOCATIONS %local%"
 done
