Unix shell and terminal emulator accessibility integration: focus tracking for screen‑reader output
0 reputation · 02 Apr 2021, 21:18 UTC
Goal: Clarify the division of responsibility between Unix shells and terminal emulators for conveying command‑output changes to screen‑reader assistive technologies.
Uncertainty: The readline library used by bash, zsh and other shells does not invoke AT‑SPI, NSAccessibility or similar accessibility APIs, so live‑region notifications depend entirely on the emulator’s implementation. Meanwhile, emulator versions differ in their support for focus tracking and ARIA‑like roles, leading to inconsistent announcement of new output across xterm, GNOME Terminal, iTerm2 and others.
Questions: Should shells implement their own accessibility layer to expose output changes, or is it sufficient to rely on the terminal emulator’s accessibility API? How can focus tracking be reliably synchronized between the shell’s command line and the emulator’s viewport when assistive technology reads output? What minimal set of accessibility calls would need to be added to readline to achieve consistent behavior across mainstream terminal emulators?