annotate lisp/w3/w3-speak.el @ 172:a38aed19690b

Added tag r20-3b12 for changeset 929b76928fce
author cvs
date Mon, 13 Aug 2007 09:47:55 +0200
parents 15872534500d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
1 ;;; w3-speak.el,v --- Emacs-W3 speech interface
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
2 ;; Author: wmperry
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
3 ;; Original author: William Perry --<wmperry@cs.indiana.edu>
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
4 ;; Cloned from emacspeak-w3.el
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
5 ;; Created: 1996/10/16 20:56:40
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
6 ;; Version: 1.14
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 ;; Keywords: hypermedia, speech
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
8
70
131b0175ea99 Import from CVS: tag r20-0b30
cvs
parents: 22
diff changeset
9 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
10 ;;; Copyright (c) 1996 by T.V. Raman (raman@adobe.com)
82
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
11 ;;; Copyright (c) 1996, 1997 by William M. Perry (wmperry@spry.com)
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
12 ;;; Copyright (c) 1997 Free Software Foundation, Inc.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14 ;;; This file is not part of GNU Emacs, but the same permissions apply.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
16 ;;; GNU Emacs is free software; you can redistribute it and/or modify
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
17 ;;; it under the terms of the GNU General Public License as published by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 ;;; the Free Software Foundation; either version 2, or (at your option)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
19 ;;; any later version.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
21 ;;; GNU Emacs is distributed in the hope that it will be useful,
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
22 ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
23 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
24 ;;; GNU General Public License for more details.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
25 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
26 ;;; You should have received a copy of the GNU General Public License
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
27 ;;; along with GNU Emacs; see the file COPYING. If not, write to the
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
28 ;;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
29 ;;; Boston, MA 02111-1307, USA.
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
30 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
31
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
32 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33 ;;; A replacement module for emacspeak-w3 that uses all the new functionality
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
34 ;;; of Emacs-W3 3.0.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
35 ;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
36 ;;; This file would not be possible without the help of
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
37 ;;; T.V. Raman (raman@adobe.com) and his continued efforts to make Emacs-W3
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
38 ;;; even remotely useful. :)
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
39 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
70
131b0175ea99 Import from CVS: tag r20-0b30
cvs
parents: 22
diff changeset
40
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
41 ;;; This conforms to http://www4.inria.fr/speech2.html
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
42
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
43 (require 'widget)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
44 (require 'w3-forms)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
45 (require 'advice)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
46 ;; This condition-case needs to be here or it completely chokes
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
47 ;; byte-compilation for people who do not have Emacspeak installed.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
48 ;; *sigh*
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
49 (condition-case ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
50 (progn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
51 (require 'emacspeak)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
52 (require 'dtk-voices)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
53 (require 'emacspeak-speak)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
54 (require 'emacspeak-sounds)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
55 (eval-when (compile)
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
56 (require 'emacspeak-fix-interactive)))
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
57 (error (message "Emacspeak not found - speech will not work.")))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
58
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
59
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
60 ;;{{{ speaking form fields
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
61
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
62 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
63 ;;; Now for the guts
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
64 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
65 (defun w3-speak-summarize-form-field ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
66 "Summarizes field under point if any."
82
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
67 (let ((widget (widget-at (point))))
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
68 (and widget (w3-form-summarize-field widget))))
2
ac2d302a0011 Import from CVS: tag r19-15b2
cvs
parents: 0
diff changeset
69
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
70 ;;}}}
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
71
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
72 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
73 ;;; Movement notification
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
74 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
82
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
75 (defadvice w3-widget-forward (after emacspeak pre act comp)
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
76 (when (interactive-p)
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
77 (emacspeak-auditory-icon 'large-movement)
134
34a5b81f86ba Import from CVS: tag r20-2b1
cvs
parents: 98
diff changeset
78 (emacspeak-widget-summarize (widget-at (point )))))
82
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
79
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
80 (defadvice w3-widget-backward (after emacspeak pre act comp)
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
81 (when (interactive-p)
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
82 (emacspeak-auditory-icon 'large-movement)
134
34a5b81f86ba Import from CVS: tag r20-2b1
cvs
parents: 98
diff changeset
83 (emacspeak-widget-summarize (widget-at (point )))))
82
6a378aca36af Import from CVS: tag r20-0b91
cvs
parents: 80
diff changeset
84
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
85 (defadvice w3-scroll-up (after emacspeak pre act comp)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
86 "Provide auditory feedback"
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
87 (when (interactive-p)
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
88 (let ((start (point )))
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
89 (emacspeak-auditory-icon 'scroll)
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
90 (save-excursion
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
91 (forward-line (window-height))
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
92 (emacspeak-speak-region start (point ))))))
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
93
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
94 (defadvice w3-revert-form (after emacspeak pre act)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
95 "Announce that you cleared the form. "
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
96 (dtk-speak "Cleared the form. "))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
97
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
98 (defadvice w3-finish-text-entry (after emacspeak pre act )
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
99 "Announce what the field was set to."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
100 (when (interactive-p)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
101 (w3-speak-summarize-form-field)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
102
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
103 (defadvice w3-start-of-document (after emacspeak pre act)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
104 "Produce an auditory icon. Also speak the first line. "
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
105 (when (interactive-p)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
106 (emacspeak-speak-line)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
107 (emacspeak-auditory-icon 'large-movement)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
108
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
109 (defadvice w3-end-of-document (after emacspeak pre act)
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
110 "Produce an auditory icon. Also speak the first line."
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
111 (when (interactive-p)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
112 (emacspeak-speak-line)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
113 (emacspeak-auditory-icon 'large-movement)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
114
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
115 (defadvice w3-goto-last-buffer (after emacspeak pre act)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
116 "Speak the modeline so I know where I am."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
117 (when (interactive-p)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
118 (emacspeak-auditory-icon 'select-object)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
119 (emacspeak-speak-mode-line)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
120
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
121 (defadvice w3-quit (after emacspeak pre act)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
122 "Speak the mode line of the new buffer."
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
123 (when (interactive-p)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
124 (emacspeak-auditory-icon 'close-object)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
125 (emacspeak-speak-mode-line)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
126
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
127 (defadvice w3-fetch (around emacspeak act comp )
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
128 "First produce an auditory icon to indicate retrieval.
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
129 After retrieval,
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
130 set voice-lock-mode to t after displaying the buffer,
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
131 and then speak the mode-line. "
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
132 (declare (special dtk-punctuation-mode))
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
133 (emacspeak-auditory-icon 'select-object)
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
134 ad-do-it)
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
135
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
136 (defun w3-speak-mode-hook ()
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
137 (set (make-local-variable 'voice-lock-mode) t)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
138 (setq dtk-punctuation-mode "some")
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
139 (emacspeak-auditory-icon 'open-object)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
140 (emacspeak-speak-mode-line))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
141
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
142 ;;; This is really the only function you should need to call unless
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
143 ;;; you are adding functionality.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
144 (defun w3-speak-use-voice-locking (&optional arg)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
145 "Tells w3 to start using voice locking.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
146 This is done by setting the w3 variables so that anchors etc are not marked by
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
147 delimiters. We then turn on voice-lock-mode.
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
148 Interactive prefix arg does the opposite. "
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
149 (interactive "P")
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents: 82
diff changeset
150 (declare (special w3-echo-link))
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
151 (setq w3-echo-link 'text)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
152 (if arg
98
0d2f883870bc Import from CVS: tag r20-1b1
cvs
parents: 82
diff changeset
153 (remove-hook 'w3-mode-hook 'w3-speak-mode-hook)
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
154 (add-hook 'w3-mode-hook 'w3-speak-mode-hook)))
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
155
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
156 (defun w3-speak-browse-page ()
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
157 "Browse a WWW page"
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
158 (interactive)
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
159 (emacspeak-audio-annotate-paragraphs)
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
160 (emacspeak-execute-repeatedly 'forward-paragraph))
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
161
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
162 (declaim (special w3-mode-map))
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
163 (define-key w3-mode-map "." 'w3-speak-browse-page)
2
ac2d302a0011 Import from CVS: tag r19-15b2
cvs
parents: 0
diff changeset
164
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
165 (defvar url-speak-last-progress-indication 0
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
166 "Caches when we last produced a progress auditory icon")
2
ac2d302a0011 Import from CVS: tag r19-15b2
cvs
parents: 0
diff changeset
167
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
168 (defadvice url-lazy-message (around emacspeak pre act)
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
169 "Provide pleasant auditory feedback about progress"
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
170 (declare (special url-speak-last-progress-indication ))
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
171 (let ((now (nth 1 (current-time))))
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
172 (when (> now
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
173 (+ 3 url-speak-last-progress-indication))
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
174 (setq url-speak-last-progress-indication now)
136
b980b6286996 Import from CVS: tag r20-2b2
cvs
parents: 134
diff changeset
175 (apply 'message (ad-get-args 0))
80
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
176 (emacspeak-auditory-icon 'progress))))
1ce6082ce73f Import from CVS: tag r20-0b90
cvs
parents: 70
diff changeset
177
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
178 (provide 'w3-speak)