diff --git a/tojam b/tojam index b3791dd..cd01de8 100755 --- a/tojam +++ b/tojam @@ -254,16 +254,23 @@ configure_ninjam() { [[ ${menuCode} -ne 0 ]] && continue fi fi - # Update or add TTS settings - if grep -q "^tts=" "${config}/config"; then - sed -i "s/^tts=.*/tts=\"${tts}\"/" "${config}/config" + # Update or remove TTS settings + if [[ "${tts}" == "true" ]]; then + # Add or update TTS settings + if grep -q "^tts=" "${config}/config"; then + sed -i "s/^tts=.*/tts=\"${tts}\"/" "${config}/config" + else + echo "tts=\"${tts}\"" >> "${config}/config" + fi + if grep -q "^ttsRate=" "${config}/config"; then + sed -i "s/^ttsRate=.*/ttsRate=\"${ttsRate}\"/" "${config}/config" + else + echo "ttsRate=\"${ttsRate}\"" >> "${config}/config" + fi else - echo "tts=\"${tts}\"" >> "${config}/config" - fi - if grep -q "^ttsRate=" "${config}/config"; then - sed -i "s/^ttsRate=.*/ttsRate=\"${ttsRate}\"/" "${config}/config" - else - echo "ttsRate=\"${ttsRate}\"" >> "${config}/config" + # Remove TTS settings when disabled + sed -i '/^tts=/d' "${config}/config" + sed -i '/^ttsRate=/d' "${config}/config" fi if [[ "${tts}" == "true" ]]; then dialog --msgbox "TTS enabled at rate ${ttsRate}." -1 -1 @@ -295,12 +302,9 @@ save_files() { fi } -tts_flags() { +ttsFlags() { if [[ "${tts}" == "true" ]]; then - # Check if ninjam client supports TTS flags - if $ninjam --help 2>&1 | grep -q "\-tts"; then - echo "-tts -tts-rate ${ttsRate}" - fi + echo "-tts -tts-rate ${ttsRate}" fi } @@ -405,7 +409,7 @@ esac ninjam="$(command -v cninjam 2> /dev/null)" [[ ${#ninjam} -le 3 ]] && { echo "Could not find cninjam."; exit 1; } if [[ "${soundDriver}" == "jack" ]]; then -$ninjam "${server}" -user "${userName}" -jack -sessiondir "${sessiondir}" ${saveSourceFiles} $(save_files) $(tts_flags) +$ninjam "${server}" -user "${userName}" -jack -sessiondir "${sessiondir}" ${saveSourceFiles} $(save_files) $(ttsFlags) else -$ninjam "${server}" -user "${userName}" -alsaconfig "${alsaParameters}" -sessiondir "${sessiondir}" ${saveSourceFiles} $(save_files) $(tts_flags) +$ninjam "${server}" -user "${userName}" -alsaconfig "${alsaParameters}" -sessiondir "${sessiondir}" ${saveSourceFiles} $(save_files) $(ttsFlags) fi