Skip to content

C-Loftus/orca-intro-guide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Orca Screen Reader Intro Guide

This document is the written version of a video tutorial on my Youtube channel and is intended to provide new users of all abilities with a general intro on using the Orca screen reader.

This document was created by Colton Loftus but is community driven; create an issue or PR on Github if you would like to make changes.

Cheatsheet

A cheatsheet of many keyboard commands for Orca can be found here

Linux Background

  • A modern, widely used Linux distribution like Ubuntu or Fedora is likely to be a good choice if you want a distribution for general use that is accessible.
    • Ubuntu and Fedora are both good defaults, but can sometimes have outdated Orca versions in their repositories
    • Using Debian backports, Arch Linux or NixOS can all work and get you newer packages, but may be more complicated to use
    • Special custom Linux distros for specific accessibility needs can be useful but may not be as actively maintained or updated.
  • The choice of your desktop environment will make a significant difference to overall system accessibility
    • Many blind folks prefer using MATE; Gnome is also a good choice for overall accessibility

Voices

  • espeak-ng
    • Orca's default voice
    • Click here to listen to a demo.
    • espeak-ng supports many different languages, but is commonly criticized as being too robotic
  • Voxin
    • Paid, proprietary voices.
    • Many voices in many languages, many of which sound very good
      • MacOS uses many of these voices, such as Samantha (the default VoiceOver voice)
    • Each voice averages $20 but it is probably worth it if you can afford it
    • Click here to listen to multiple different voice demos
  • rhvoice
    • A free set of voices that is more natural than espeak
    • Easy to install and works cross platform if desired
  • piper
    • A free set of voices that are quite realistic without needing to pay or have a GPU
    • Generally too slow for screen reader use, but good for generating audiobooks or other audio content outside of screen reader use
    • Must be installed with pied which is sporadically maintained or use Orca's experimental spiel integration

Modes

  • Browse Mode
    • Navigate between semantic sections of the page using the keyboard
    • Default way you navigate the desktop
    • For example, pressing up in a text box could move you to the previous element
    • Toggled with Orca + A
    • Essentially a form of structural navigation.
  • Focus Mode
    • Navigate inside of a focused element without moving outside of it
    • Automatically enabled when moving focus into certain editable text boxes
    • For example, pressing up in a text box could move the cursor to the previous line in the same text box
    • Toggled with Orca + A
  • Learn Mode
    • Ignore all key presses and just echo out what they do
    • Toggled with Orca + H
  • Sleep Mode
    • Don't speak when a particular application is focused
    • Could be used to prevent duplicate speech when a self-speaking app is focused
    • Toggle for a specific application with Alt + ctrl + shift + q
  • Structural Navigation vs Flat Review
    • Not a mode difference technically, but structural navigation keys can be toggled with Orca + Z
    • Structural navigation commands move around by the semantic tags of the a11y tree.
    • Flat review goes through each line one a time without a structured hierarchy

Learning to Use Orca

  • Begin by learning navigation commands for your desktop environment
  • Workflows using the browser or electron applications like VSCode or Slack tend to have the best success
  • Orca mailing list tends to be the best place to ask questions

Downsides

  • Lack of accessibility support in many applications
  • There is no one central place for Linux accessibility discussions
  • May need to recompile to get latest Orca updates
    • I have a written guide here, but dependencies may change over time
  • There is no plugin system like in NVDA
    • You can create scripts and bundle them inside Orca but this is less straightforward

Useful Websites for Documentation

Scripting Orca

  • Orca as of version 49.0 can now be controlled with dbus bindings which are documented here
  • You can use my golang bindings to control Orca from a higher level programming language

Talks

Unfortunately there are not many videos regarding Orca. However, these are some that are relvant to Linux accessibility in general:

About

A new user's guide for the Orca screen reader on Linux

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages