branch: externals/greader
commit a2c9a169899355db8eec5ca0a4f4d82782551dca
Author: Michelangelo Rodriguez <[email protected]>
Commit: Michelangelo Rodriguez <[email protected]>
changed greader-set-rate to reflect new back-ends architecture.
---
greader-espeak.el | 14 ++++++++++----
greader-speechd.el | 13 +++++++++----
greader.el | 4 ++--
3 files changed, 21 insertions(+), 10 deletions(-)
diff --git a/greader-espeak.el b/greader-espeak.el
index 8c2c251..604dbd5 100644
--- a/greader-espeak.el
+++ b/greader-espeak.el
@@ -46,7 +46,9 @@ this variable determines authomatically if espeak is present
in your PATH enviro
"returns a string suitable for setting espeak rate."
(if (not rate)
(concat "-s" (number-to-string greader-espeak-rate))
- (concat "-s" (number-to-string rate))))
+ (progn
+ (setq-local greader-espeak-rate rate)
+ (concat "-s" (number-to-string rate)))))
(defun greader-espeak-set-language
(&optional lang)
"returns the appropriate string to pass to espeak in order to set the
language appropriately"
@@ -81,9 +83,13 @@ this function accepts only nil or t."
(greader-espeak-set-language)
(greader-espeak-set-language arg)))
('rate
- (if (not arg)
- (greader-espeak-set-rate)
- (greader-espeak-set-rate arg)))
+ (cond
+ ((not arg)
+ (greader-espeak-set-rate))
+ ((numberp arg)
+ (greader-espeak-set-rate arg))
+ ((equal arg 'value)
+ greader-espeak-rate)))
('punctuation
(cond
diff --git a/greader-speechd.el b/greader-speechd.el
index 04f7988..17609a5 100644
--- a/greader-speechd.el
+++ b/greader-speechd.el
@@ -62,7 +62,9 @@ if lang is omitted, it looks in variable
greader-speechd-language and retrieves
for further documentation, see the documentation for greader-speechd-rate
variable."
(if (not rate)
(concat "-r " (number-to-string greader-speechd-rate))
- (concat "-r " (number-to-string rate))))
+ (progn
+ (setq-local greader-speechd-rate rate)
+ (concat "-r " (number-to-string rate)))))
(defun greader-speechd-set-punctuation (&optional punct)
"returns a suitable parameter to pass to spd-say for setting punctuation
leve.
punct must be a numeric value, 0 for no punctuation, 1 for some and 2 or >2
for all punctuation."
@@ -103,9 +105,12 @@ punct must be a numeric value, 0 for no punctuation, 1 for
some and 2 or >2 for
(greader-speechd-set-language)
(greader-speechd-set-language arg)))
('rate
- (if (not arg)
- (greader-speechd-set-rate)
- (greader-speechd-set-rate arg)))
+ (cond((not arg)
+ (greader-speechd-set-rate))
+ ((numberp arg)
+ (greader-speechd-set-rate arg))
+ ((equal arg 'value)
+ greader-speechd-rate)))
('punctuation
(cond
((equal arg 'no)
diff --git a/greader.el b/greader.el
index dda5414..1d1f9ec 100644
--- a/greader.el
+++ b/greader.el
@@ -710,7 +710,7 @@ If prefix, it will be used to increment by that."
(if (not n)
(setq n 10))
(greader-stop)
- (greader-set-rate (+ greader-rate n))
+ (greader-set-rate (+ (greader-call-backend 'rate 'value) n))
(greader-read))
(defun greader-dec-rate (&optional n)
@@ -720,7 +720,7 @@ If prefix, it will be used to decrement rate."
(if (not n)
(setq n 10))
(greader-stop)
- (greader-set-rate (- greader-rate n))
+ (greader-set-rate (- (greader-call-backend 'rate 'value) n))
(greader-read))
(defun greader-sentence-needs-dehyphenation (str)