[Prev][Next][Index][Thread][Search]
Process speaker not running?
My reply to this last week was terse because I was away at WWW97.
Let me try and explain what I think is happening in your istuation; it's
basically the result of
misunderstanding how the various emacspeak environment variables work.
Here is a summary:
Emacspeak uses three environment variables.
a) DTK_TCL --pathname to a tcl interpreter
(or in general an interpreter that will be called with a synthesizer specific
script)
b) DTK_PROGRAM --the name of the device specific script e.g. dtk-exp
c) DTK_PORT --port where the speech box is connected e.g. /dev/ttyS0
Upon startup, Emacspeak launches the driver by executing
DTK_TCL with DTK_PROGRAM as the first (and only) command line argument.
The above is expected to examine environment variable DTK_PORT to decide where
the speech device is connected; if that environment variable is not set it
picks a suitable platform default,
e.g. /dev/ttyS0 on linux or /dev/ttya on sparcs.
With this summary, it's probably clear why things went wrong for you.
2) Killing a hung emacs, and getting minimal spoken feedback from a shell:
This is not really an Emacspeak question/answer, but you may find what I use
useful for your own situation.
1) In your /usr/local/bin create a simple
shell script called speak that sends its arguments to the speech box ie a
talking version of the shell's echo.
Assuming you use bash:
b) In your .profile, add a command at the end to echo a message to the speech
box indicating succesful login.
c) bash lets you specify a command to execute every time a shell prompt is
displayed--
I have a sound card so I typically set bash to play a sound file like so:
EXPORT PROMPT_COMMAND="play ding.au"
(replace play and ding.au with appropriate pathnames for your setup.
If you dont have a sound card, set PROMPT_COMMAND to something like
echo "go. " > /dev/ttyS0
d) Now, if you are stuck, you can go to another virtual console, and get
sufficient feedback to do what you need in terms of killing a stuck emacs, or
whatever.
I typically have shell scripts called "spot" and "slay"
that accept a process name, e.g. emacs and display the pid --
so to locate an emacs session I would do
bash: spot emacs
and to get the output spoken
speak `spot emacs`
note that the above backquote trick is really useful when you have no other
speech
e.g. you can tell which directory you are in by typing
speak `pwd`
Finally I also typically have a script called slay that nukes processes by
name so I can do
slay emacs
or
once I have detected the offending process with spot do
kill pid
Hope this helps alleviate some of your frustration--
feedback
Steve Holmes writes:
> Why am I getting this? I am attempting unsuccessfully to use emacspeak
> 5.0 on my linux box. I do not own a dectalk so am trying to build a
> driver for the Speakout from GW Micro. When I test it using TCL or when I
> attempt to use a C program modled after Jim Van Zant's d-exp program, I
> get reasonable results; more work is yet required but at least they more
> less work. When I try to load up emacspeak, I keep getting the message
> "Process speaker not running". After that, I cannot get out of emacs no
> matter what I do. I usually end up rebooting the system. Jim told me
> recently I could do a c-e followed by a c-s but that doesn't appear to do
> me any good subsequent key strokes give me the same damn old thing. I
> have set DTK_PROGRAM to my replacement module for the speakout correctly
> in the environment but still to no avail. I am running out of luck and
> patience with this bloody thing. It sounds so simple but I can't get any
> thing worthwhile out of it thus far. I suppose if I had a dectalk all
> this would be moot. We need compatability to other synthesisers and I
> want to do my part but not having good luck so far.
>
> Can anyone help me out? Jim Van Zant has been a good help so far, but I
> think I might need more:).
>
> Thanks in advance,
> <Steve> Holmes
--
Best Regards,
--raman
Adobe Systems Tel: 1 (408) 536 3945 (W14-129)
Advanced Technology Group Fax: 1 (408) 537 4042
(W14 129) 345 Park Avenue Email: raman@xxxxxxxxxxx
San Jose , CA 95110 -2704 Email: raman@xxxxxxxxxxx
http://labrador.corp.adobe.com/~raman/raman.html (Adobe Internal)
http://www.cs.cornell.edu/Info/People/raman/raman.html (Cornell)
-----------------------------------------------------------------------
Disclaimer: The opinions expressed are my own and in no way should be taken
as representative of my employer, Adobe Systems Inc.
____________________________________________________________