From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 21485 invoked from network); 9 Sep 2022 18:36:46 -0000 Received: from hurricane.the-brannons.com (2602:ff06:725:1:20::25) by inbox.vuxu.org with ESMTPUTF8; 9 Sep 2022 18:36:46 -0000 Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by hurricane.the-brannons.com (OpenSMTPD) with ESMTP id fef545c6 for ; Fri, 9 Sep 2022 11:36:44 -0700 (PDT) Received: from mail.hallyn.com (mail.hallyn.com [178.63.66.53]) by hurricane.the-brannons.com (OpenSMTPD) with ESMTPS id 0a4a8bec (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO) for ; Fri, 9 Sep 2022 11:36:39 -0700 (PDT) Received: by mail.hallyn.com (Postfix, from userid 1001) id 29E7DB54; Fri, 9 Sep 2022 13:36:37 -0500 (CDT) Date: Fri, 9 Sep 2022 13:36:37 -0500 From: "Serge E. Hallyn" To: Patrick Smyth Cc: edbrowse-dev@edbrowse.org Subject: Re: Cli-focused screen reader Message-ID: <20220909183637.GA18584@mail.hallyn.com> References: <87czc4wgl6.fsf@gmail.com> X-BeenThere: edbrowse-dev@edbrowse.org List-Id: Edbrowse Development List MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87czc4wgl6.fsf@gmail.com> User-Agent: Mutt/1.9.4 (2018-02-28) On Fri, Sep 09, 2022 at 02:25:09PM -0400, Patrick Smyth wrote: > Hi all, > > Apologies if this is a basic or trivial question, but I wanted to ask about > setting up screen readers for the command line on Linux. I am using Linux > Mint (functionally Ubuntu LTS), and while I can use Orca to read X11 > terminals, it's quite slow and annoying to use, and I'd prefer something > specific to the terminal. I'm also pretty happy with speakup when I drop out > of the graphical interface, so not looking for anything there. > > I've tried a couple command-line specific screen readers, and I've had a lot > of trouble getting them to work. The two I've tried recently are tdsr > (https://github.com/tspivey/tdsr) and fenrir > (https://github.com/chrys87/fenrir). Setting aside Fenrir, since the setup > is a lot more involved, when I run tdsr I get the following error > > ModuleNotFoundError: No module named 'speechd' > > I have speech dispatcher installed with aptitude (apt-get install > speech-dispatcher). I downloaded the speech dispatcher project from GitHub > and tried importing the Python API, but it gives me a circular import issue. > Here's the speech dispatcher repo on GitHub, there's a clients folder with a > Python library: https://github.com/brailcom/speechd > > If people have gotten speech dispatcher for Python or the tdsr screen reader > working, I'd appreciate any guidance. If people are more familiar with > fenrir, I can try to articulate where I'm stuck with that, but it's > significantly more involved as a setup process. And apologies if edbrowse > isn't the place for this kind of question, though it seems fairly likely > some of us are using CLI screen readers in this community. > > Thanks, and hope you have a good end of the week! > > > Best, > Patrick I'm sure there's much better things out there and I look forward to seeing them listed here :) But if I were to want this right now, I would write a brief wrapper to wrap around a shell, which writes fd 1 and 2 output to espeak. (I've used espeak for several things like this, and love how easily i can switch the voice and accent and speed and pitch.) I'd be curious however, for your use case, what you'd want to do about input. Do you only want output to be spoken, or do you want each character spoken, or the input spoken when you hit return? Also not sure whether you'd want stdout and stderr interwoven, or whether that depends on whether the command has exited or is interactive, etc. -serge