emacspeak won't shut up about TTS sync states

  • Done
  • quality assurance status badge
Details
3 participants
  • Christopher Lemmer Webber
  • Kei
  • Nicolas Goaziou
Owner
unassigned
Submitted by
Christopher Lemmer Webber
Severity
normal
C
C
Christopher Lemmer Webber wrote on 14 Aug 2020 17:47
(address . bug-guix@gnu.org)(name . Kei Kebreau)(address . kei@openmailbox.org)
87d03t5iwd.fsf@dustycloud.org
I was excited to try emacspeak again and opened it, but emacspeak would
nonstop talk about "tts sync states" over and over and over again... I
don't remember this being the case when I tried it on Debian years ago.
It's saying it so much nonstop I'm not getting any other commands in.

Anyone else trying out emacspeak on Guix and getting better results?
K
(address . 42861@debbugs.gnu.org)(address . cwebber@dustycloud.org)
b42d7512751aac252dce24adb6d7b75dfa77912a.camel@posteo.net
Hi there!

Sorry it took me a while to respond. I don't actively use the openmailbox email
account anymore. Please try this patch when you can. The sounds don't quite
work like they do on Debian yet, but at least emacspeak doesn't go on and on
about the TTS sync state and such.

Kei
From fcb7feadbd497e5d64c7867410bba894b277661f Mon Sep 17 00:00:00 2001
From: Kei Kebreau <kkebreau@posteo.net>
Date: Sun, 28 Mar 2021 22:38:09 -0400
Subject: [PATCH] gnu: emacspeak: Fix Tclx and espeak server loading.


* gnu/packages/emacs-xyz.scm (emacspeak)[arguments]: In the 'configure' phase,
add Tclx library to the load path of Tcl in the espeak server script. Remove
'wrap-program' phase.
---
gnu/packages/emacs-xyz.scm | 25 ++++++++++++-------------
1 file changed, 12 insertions(+), 13 deletions(-)

Toggle diff (46 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index ead2144b42..764a1cd99c 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -11987,8 +11987,18 @@ highlights quasi-quoted expressions.")
#:phases
(modify-phases %standard-phases
(replace 'configure
- (lambda _
+ (lambda* (#:key inputs outputs #:allow-other-keys)
(setenv "SHELL" (which "sh"))
+ ;; Ensure the tclespeak.so binary is found in the correct location
+ ;; by adding the path to the Tclx library to the Tcl $auto_path
+ ;; variable.
+ (with-fluids ((%default-port-encoding "ISO-8859-1"))
+ (substitute* "servers/espeak"
+ (("package require Tclx")
+ (string-append "set auto_path [linsert $auto_path 0 "
+ (assoc-ref inputs "tclx")
+ "/lib]\n"
+ "package require Tclx"))))
;; Configure Emacspeak according to etc/install.org.
(invoke "make" "config")))
(add-after 'build 'build-espeak
@@ -12016,18 +12026,7 @@ highlights quasi-quoted expressions.")
;; Install the convenient startup script.
(mkdir-p bin)
(copy-file "run" (string-append bin "/emacspeak")))
- #t))
- (add-after 'install 'wrap-program
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (emacspeak (string-append out "/bin/emacspeak"))
- (espeak (string-append (assoc-ref inputs "espeak")
- "/bin/espeak")))
- ;; The environment variable DTK_PROGRAM tells emacspeak what
- ;; program to use for speech.
- (wrap-program emacspeak
- `("DTK_PROGRAM" ":" prefix (,espeak)))
- #t))))
+ #t)))
#:tests? #f)) ; no check target
(inputs
`(("emacs" ,emacs)
--
2.31.0
N
N
Nicolas Goaziou wrote on 1 Apr 2021 17:30
Re: bug#42861: emacspeak won't shut up about TTS sync states
(name . Kei)(address . kkebreau@posteo.net)(address . 42861@debbugs.gnu.org)
87ft0ahvk0.fsf@nicolasgoaziou.fr
Hello,

Kei <kkebreau@posteo.net> writes:

Toggle quote (5 lines)
> Sorry it took me a while to respond. I don't actively use the openmailbox email
> account anymore. Please try this patch when you can. The sounds don't quite
> work like they do on Debian yet, but at least emacspeak doesn't go on and on
> about the TTS sync state and such.

This is much better indeed. Thank you.

On Debian espeak seems to be activated after loading ".emacs" file.
Here, the package spells out all configuration messages displayed on in
the minibuffer.

Regards,
--
Nicolas Goaziou
K
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)(address . 42861@debbugs.gnu.org)
203c61c9a4fd32c7f663dd6cce051de69870eebb.camel@posteo.net
On Thu, 2021-04-01 at 17:30 +0200, Nicolas Goaziou wrote:
Toggle quote (14 lines)
> Hello,
>
> Kei <kkebreau@posteo.net> writes:
>
> > Sorry it took me a while to respond. I don't actively use the openmailbox
> > email
> > account anymore. Please try this patch when you can. The sounds don't
> > quite
> > work like they do on Debian yet, but at least emacspeak doesn't go on and on
> > about the TTS sync state and such.
>
> This is much better indeed. Thank you.
>

My pleasure!

Toggle quote (2 lines)
> On Debian espeak seems to be activated after loading ".emacs" file.

How are you able to tell (aside from looking at the command line arguments)?
I'm unable to distinguish the startup processes using Emacs on Debian and Guix
even if I install "etc/emacspeak.sh" as the startup script instead of "run".

Toggle quote (4 lines)
> Here, the package spells out all configuration messages displayed on in
> the minibuffer.
>

Unless I'm misunderstanding you, Emacspeak seems to do the same for me on
Debian. For example, it reads "Active processes exist?..." and so on when
exiting. Is this not proper behavior?

Thanks,
Kei
N
N
Nicolas Goaziou wrote on 2 Apr 2021 16:44
(name . Kei)(address . kkebreau@posteo.net)(address . 42861@debbugs.gnu.org)
87czvcsq4e.fsf@nicolasgoaziou.fr
Hello,

Kei <kkebreau@posteo.net> writes:

Toggle quote (5 lines)
> How are you able to tell (aside from looking at the command line arguments)?
> I'm unable to distinguish the startup processes using Emacs on Debian and Guix
> even if I install "etc/emacspeak.sh" as the startup script instead of
> "run".

On Debian, the voice kicks in after all the initial minibuffer
information is displayed, i.e., it starts when it is actually ready. On
Guix, see below.

Toggle quote (8 lines)
>> Here, the package spells out all configuration messages displayed on
>> in the minibuffer.
>>
>
> Unless I'm misunderstanding you, Emacspeak seems to do the same for me on
> Debian. For example, it reads "Active processes exist?..." and so on when
> exiting. Is this not proper behavior?

It is, but I am speaking at the initial messages, when you start a fresh
Emacs session.

Regards,
--
Nicolas Goaziou
K
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)(address . 42861@debbugs.gnu.org)
38628d62b0ae3bc01cea3c30728d3788e45263c5.camel@posteo.net
On Fri, 2021-04-02 at 16:44 +0200, Nicolas Goaziou wrote:
Toggle quote (27 lines)
> Hello,
>
> Kei <kkebreau@posteo.net> writes:
>
> > How are you able to tell (aside from looking at the command line
> > arguments)?
> > I'm unable to distinguish the startup processes using Emacs on Debian and
> > Guix
> > even if I install "etc/emacspeak.sh" as the startup script instead of
> > "run".
>
> On Debian, the voice kicks in after all the initial minibuffer
> information is displayed, i.e., it starts when it is actually ready. On
> Guix, see below.
>
> > > Here, the package spells out all configuration messages displayed on
> > > in the minibuffer.
> > >
> >
> > Unless I'm misunderstanding you, Emacspeak seems to do the same for me on
> > Debian. For example, it reads "Active processes exist?..." and so on when
> > exiting. Is this not proper behavior?
>
> It is, but I am speaking at the initial messages, when you start a fresh
> Emacs session.
>

I'm having trouble replicating the issue you're having. When I run Emacspeak on
Debian and Guix, the first thing I hear is "espeak one point five zero espeak".
Also, when I place an infinite loop in my Emacs init file, Emacspeak is
prevented from loading in both cases.

Thanks,
Kei
K
K
Kei Kebreau wrote on 21 Apr 2021 23:44
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)(address . 42861-done@debbugs.gnu.org)
ce25a8cc-c8de-f6a3-aaa5-7e99898360a6@posteo.net
On 4/2/21 10:44 AM, Nicolas Goaziou wrote:
Toggle quote (23 lines)
> Hello,
>
> Kei <kkebreau@posteo.net> writes:
>
>> How are you able to tell (aside from looking at the command line arguments)?
>> I'm unable to distinguish the startup processes using Emacs on Debian and Guix
>> even if I install "etc/emacspeak.sh" as the startup script instead of
>> "run".
> On Debian, the voice kicks in after all the initial minibuffer
> information is displayed, i.e., it starts when it is actually ready. On
> Guix, see below.
>
>>> Here, the package spells out all configuration messages displayed on
>>> in the minibuffer.
>>>
>> Unless I'm misunderstanding you, Emacspeak seems to do the same for me on
>> Debian. For example, it reads "Active processes exist?..." and so on when
>> exiting. Is this not proper behavior?
> It is, but I am speaking at the initial messages, when you start a fresh
> Emacs session.
>
> Regards,

I've pushed the patch as-is to master. If you are able to provide a
method to replicate the issues you speak of here, please message me and
we can open a bug report.


Thanks,

Kei Kebreau
Closed
N
N
Nicolas Goaziou wrote on 22 Apr 2021 01:39
(name . Kei Kebreau)(address . kkebreau@posteo.net)(address . 42861-done@debbugs.gnu.org)
87im4f5hro.fsf@nicolasgoaziou.fr
Hello,

Kei Kebreau <kkebreau@posteo.net> writes:

Toggle quote (2 lines)
> I've pushed the patch as-is to master.

Thank you.

Toggle quote (3 lines)
> I was If you are able to provide a method to replicate the issues you
> speak of here, please message me and we can open a bug report.

OK noted.

Regards,
--
Nicolas Goaziou
Closed
?