1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
#!/usr/bin/tclsh8.4
package require Tclx
# $Id: speech-server 4725 2007-07-02 02:12:26Z tv.raman.tv $
# Description: Speech server
#Usage: tcl speech-server port device-specific-script
#Example: tcl speech-server 2222 dtk-exp
# Keywords: Emacspeak, Speech, TCL
# {{{ LCD Entry:
# LCD Archive Entry:
# emacspeak| T. V. Raman |raman@cs.cornell.edu
# A speech interface to Emacs |
# $Date: 2007-07-01 19:12:26 -0700 (Sun, 01 Jul 2007) $ |
# $Revision: 4725 $ |
# Location undetermined
#
# }}}
# {{{ Copyright:
#Copyright (C) 1995 -- 2001, T. V. Raman
# Incorporated.
#All Rights Reserved
#
# This file is not part of GNU Emacs, but the same permissions apply.
#
# GNU Emacs is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# GNU Emacs is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GNU Emacs; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
# }}}
# {{{Initialize and get ready
set port [lindex $argv 0]
#start up the server
set server [server_create -myport $port -reuseaddr]
puts "Started speech server ..."
# and wait for a connection
set server_p 1
puts "Waiting for a connection on port $port ..."
# No longer support TCL older than 7.5
set handles [server_accept -nobuf $server]
#Now, connect the read and write handles to stdin and stdout
dup $handles stdout
dup $handles stderr
dup $handles stdin
#no more connections
close $server
#cue incoming connection
#launch speech synthesizer code
source [lindex $argv 1]
# }}}
# {{{ Emacs local variables
### Local variables:
### major-mode: tcl-mode
### voice-lock-mode: t
### folded-file: t
### End:
# }}}
|