Earlier this year, the Lighthouse for the Blind and Visually Impaired of San Francisco (known as San Francisco Lighthouse to people who speak standard English) agreed that the support for the Macintosh Terminal app using VoiceOver was an inadequate solution for all but the most minimal of its possible use cases. To remedy this issue, they funded the development of a new little screen reader called tdsr.
Tyler Spivey, author of tdsr, had attempted to port the really old UNIX command line screen reader yasr to Macintosh but as yasr is a rat’s nest of old C code, it proved easier to scrap it and write a new command line screen reader from scratch in Python.
While it’s been rumored that tdsr stands for “Tyler’s Damned Screen Reader,” it does not. In fact, tdsr stands for “Two Day Screen Reader” as Tyler got its first functioning prototype up and running in only two days. A lot more work has gone into tdsr since and users of the bash shell (the one used in Macintosh Terminal but not supported well with VoiceOver) will recognize all of the keystrokes as will users of GNU emacs or emacspeak. I personally use tdsr to maintain my server and when I’m messing around with the little bit of Python programming I try to do.
The importance of tdsr is that a command line is still essential for blind people who write software, study computer science and/or maintain servers and do IT stuff. For years, NVDA on Windows has been the only screen reader to provide truly useful support for a command line (JAWS used to do it well but it’s deteriorated over the years). Thus, most blind programmers, hackers, IT professionals and CS students have had to use Windows or GNU/Linux for their work. With the advent of tdsr, a student assigned a Macintosh can now enjoy the same functionality as their peers using Windows.
We want to get the tdsr story out to as many people in our community as possible. To that end, we hope that readers of this post will help to raise awareness of tdsr and its potential value to professionals, students and hobbyists alike. So, if you have the means and opportunity, please direct people to this post or write articles of your own. Of particular interest and value will be stories of how you are implementing tdsr in your own workflow and projects.
You can check out tdsr on Tyler’s GitHub page() for it. You can download the software (instructions on the GitHub page), install it and, as it comes from our little crew, you get the source code to inspect, learn from, modify or do whatever you like with it short of including it in a piece of proprietary software. While Tyler has written most of it, we’ve received some code contributions from outsiders and one fellow added braille support, something Tyler hadn’t planned on doing himself.
If you've questions about tdsr, feel free to send an email to 3 Mouse Technology and we'll try to get you an answer as quickly as possible. If you are interested in using a command line effectively on OSX, please do check out the software, post comments here and if you find a bug, please report it on the GitHub system to ensure Tyler will see it. If you're a Python programmer and would like to participate in the future of tdsr, you can get the code from GitHub and Tyler will consider all push requests.