EMACSPEAK-DT(1)

NAME
emacspeak-dt - C language interface between Emacspeak and a DoubleTalk speech synthesizer

SYNOPOSIS
export DTK_TCL=/usr/local/bin/emacspeak-dt

DESCRIPTION

emacspeak-dt accepts text and commands on its standard input and forwards them to a DoubleTalk speech synthesizer connected to a serial port. It is normally executed as a subprocess by emacs when running emacspeak.

OPTIONS
emacspeak-dt accepts the following options for testing purposes:

-s statement
    Speak statement and exit.

-t [file]
    Send all output to file (or DoubleTalk by default) instead of to the device.

-v  Print the program version number to standard output and exit.

-V  Interrogate the DoubleTalk. Speak and print to the standard output the program version, ROM version, serial number, and memory available, then exit.

ENVIRONMENT VARIABLES

DTK_TCL
    Gives the full path name for the program that Emacspeak should start, to drive the speech synthesizer. The default is tcl. To use emacspeak-dt, set DTK_TCL to the full path name of emacspeak-dt (as suggested under SYNOPSIS above). Note: if emacspeak-dt is used, the variable DTK_PROGRAM is not consulted.

DTK_PORT
    Points to the serial device where the speech synthesizer is connected. If not set, the default is as follows: /dev/tty00 under ULTRIX or OSF1, /dev/ttya under SunOS, or /dev/ttyS0 under Linux.

EMACSPEAK
    If set to "ilog", then emacspeak-dt input is written to the file emacspeak.ilog. If set to "olog", then output is written to the file emacspeak.olog in addition to the device. If set to "log", then both input and output are logged.

EXAMPLES
If the DoubleTalk is connected to /dev/ttyS0, one can set the environment variable and get spoken confirmation like this:

	DTK_PORT=/dev/ttyS0 emacspeak-dt -s "slash dev slash t t y S 0"

If the device is not there after all, you may have to interrupt the program to get control back (e.g. with ^C).

BUGS

If emacspeak-dt fails, emacs can be left in an awkward state. C-z will not suspend it. C-x C-c will not stop it. Most keystrokes result only in a beep and the displayed message "Process speaker not running". The first thing you should try is to restart the speaker process with C-e C-s. Otherwise, it will be necessary to kill the emacs process from a different terminal or virtual console. For example, one can switch to a different virtual console with alt-F2, log in, and type

	ps | grep emacs

and the result might be

 901  1 S  0:00 emacs emacspeak-dt.1
 966  2 S  0:00 emacs emacspeak-dt.c
1016  3 S  0:00 sh /usr/bin/emacspeak foobar
1017  3 S  0:01 emacs -q -l /usr/share/emacs/site-lisp/emacspeak/emacspeak-
1018 p0 S  0:00 /usr/bin/tcl /usr/share/emacs/site-lisp/emacspeak/dtk-exp
1023  1 S  0:00 /bin/bash -c ps -ax | grep emacs
1025  1 S  0:00 grep emacs

The process number is in the first column. One could kill the emacspeak process with the command

	kill 1016

AUTHOR
Jim Van Zandt <jrv@vanzandt.mv.com>

Derived from the tcl program dtk-exp by T. V. Raman, the author of Emacspeak.