#!/bin/bash
#script de démarrage de calfjackhost avec une configuration perso
#	Daniel Génon 20 12 2015  Revin
#
# version 1.0
#	Pour utiliser ce script :
#			- créer un fichier texte avec gedit (par ex) avec le suffixe .clg (ou autre suffixe à votre choix)
#			- le remplir comme suit :
#				ligne 1 : <plugin1>:<preset>
#				ligne 2 : <plugin2>:<preset>
#                               etc...
#				où
#					plugin sera un des termes autorisé par calf :
#						filter, filterclavier, flanger, reverb, monosynth,
#						vintagedelay, organ, rotaryspeaker, phaser,
#						multichorus, compressor
#					preset le nom de preset que vous aurez donné lors des réglages
#					
#			- exemple :
#				filter:monfiltreperso
#				reverb:monreglageamoi
#
#	Placez le script où vous voulez dans le répertoire perso
#
#	Utilisation du script :
#		ouvrir un terminal et lancez la commande
#		demcalf	"<chemin+nomdefichier>"  -> les "..." devant et derriere le paramètres si des espaces existent
#	
#	Après le démarrage, le shell doit rester démarré.
#	
#
# version 2.0 : 03-01-2016  ajout des " de chaque coté de $nomconfig pour accepter les espaces dans les noms de fichiers
#
#echo "Ce script permet de démarrer calfjackhost avec une configuration personnelle"
##########################################################
# paramètres
##########################################################
listeargument=
nomconfig=
if [ -n "$1" ];
	then
		nomconfig=$1
fi
#####################################
#
#	Démarrage du shell
#
#####################################
#test qsynth en cours de process
ps -C calfjackhost >fictest
{
	read nomtest
	read nomtest
}<fictest

if [ -n "$nomtest" ];
	then
		echo "Calf est déjà lancé"
		echo "appuyez une touche pour sortir : "
		read dehors
		exit 1
fi
rm -f fictest

#tester l'existence du fichier config perso
if [ -n "$nomconfig" ];
	then
		if [ -e "$nomconfig" ];
			then
#charger les arguments objets
				{	# lecture du fichier config
					# construction de la liste des plugin!preset
					read valtmp
					while [ "$valtmp" != "" ];
						do
							if [ -n "$listeargument" ]
								then
									listeargument=$listeargument' ! '$valtmp
								else
									listeargument=' '$valtmp
							fi
						read valtmp
						done
				}<"$nomconfig"
			else
				echo "La configuration personnelle n'est pas trouvée"
		fi
fi

echo "$listeargument"

# démarrage de calf
/usr/bin/calfjackhost $listeargument
# 2 ligne pour tester le shell
#echo "entrez pour sortir : "
#read dehors

exit 0

