diff options
author | B. Watson <yalhcru@gmail.com> | 2021-08-02 16:46:05 -0400 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2021-10-13 00:51:28 +0700 |
commit | 4956ca10e3d6d9736425d1e11bc5d9120b9a849d (patch) | |
tree | 9865b6bc3e3bf2501e801fbcd1e3cecc763881d2 /accessibility/svox/pico2audio | |
parent | 8e9bae1e816e7b09a5c9fc364fd365b9fa300b6d (diff) | |
download | slackbuilds-4956ca10e3d6d9736425d1e11bc5d9120b9a849d.tar.xz |
accessibility/svox: Add man page for pico2audio.
Signed-off-by: B. Watson <yalhcru@gmail.com>
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'accessibility/svox/pico2audio')
-rw-r--r-- | accessibility/svox/pico2audio | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/accessibility/svox/pico2audio b/accessibility/svox/pico2audio index 4f09c8805bf9..673950eb838c 100644 --- a/accessibility/svox/pico2audio +++ b/accessibility/svox/pico2audio @@ -17,7 +17,7 @@ Exit status of $SELF is that of pico2wave. Examples: $SELF 'Hello world.' - Speaks "Hello world" in the default language (en-US) + Speaks "Hello world" in the default language (en-US). $SELF -l en-GB 'Hello world.' As above, in a British accent. @@ -39,6 +39,10 @@ case "$1" in ;; -l) LOPT="$1 $2" shift + if [ -z "$1" ]; then + echo "$(basename $0): missing argument to -l option" 1>&2 + exit 1 + fi shift ;; -l?*) LOPT="$1" @@ -46,15 +50,22 @@ case "$1" in ;; esac +which pico2wave >/dev/null || exit 1 +which play >/dev/null || exit 1 + DIR=$( mktemp -t -d pico2audio.XXXXXX ) if [ ! -d "$DIR" ]; then exit 1 # mktemp already printed an error message fi -which pico2wave >/dev/null || exit 1 -which play >/dev/null || exit 1 +# the actual pico2wave command accepts multiple word arguments, +# but only speaks the first one (silently ignores the rest). +# here we combine all the word args into one quoted string and +# pass it to pico2wave via eval, so it sees one argument, possibly +# with spaces. +[ -n "$*" ] && ARGS="\"$@\"" -pico2wave $LOPT -w $DIR/tmp.wav "$@" +eval pico2wave $LOPT -w $DIR/tmp.wav $ARGS E="$?" play -q $DIR/tmp.wav 2>/dev/null rm -rf $DIR |