Fenrir Screenreader: Der gute Wolf für die Shell

Geschrieben von Steffen Schultz 3 Kommentare
Kategorisiert in : Software Schlüsselwörter : A11Y, CLI, GitHub, Linux, OpenSource, Python, Shell

Als blinder Nutzer eine grafische Linux-Oberfläche zu bedienen ist trotz aller Fortschritte bei Desktop-Systemen, Accessibility-Schnittstellen und nicht zuletzt dem Orca-Screenreader noch immer mitunter recht abenteuerlich. Zwar sind mittlerweile viele grafische Linux-Programme gut nutzbar, doch allein die Performance des Screenreaders reicht selbst auf schnelleren Systemen nicht an jene eines Windows-Bildschirmlesers heran, was die Arbeit teils erheblich behindern kann. Anders sieht es da in der Shell aus; dank Lösungen wie BRLTTY und Speakup ist hier ein zügiges, rein textbasiertes Arbeiten möglich und erlaubt je nach Distribution sogar eine von Grund auf zugängliche Installation des Linux-Systems. Und nicht nur blinde Nutzer wissen daher die Konsole zu schätzen, da in ihr viele Routineaufgaben effizienter erledigt werden können als auf dem Desktop.

Ein moderner Screenreader für die Shell

Neben den bekannten Lösungen für konsolenbasiertes Auslesen des Bildschirminhaltes per Sprachausgabe und Braillezeile wurde mit Fenrir ein noch sehr junges Projekt ins Leben gerufen, um einen modernen, textbasierten Bildschirmleser zu kreieren. Und obwohl die Todo-Liste des Projekts noch sehr lang sein dürfte, kann sich das bisher erreichte durchaus sehen lassen.

Fenrir ist ein auf Python3 basierender Screenreader, der komplett im Userspace läuft und demnach kein spezielles Kernel-Modul erfordert. Bislang ist die Sprachausgaben-Unterstützung gut implementiert und kann die eSpeak generisch ansteuern oder auf den Speech-Dispatcher zugreifen, welcher wiederum die Anbindung weiterer Sprachausgaben zur Verfügung stellt. Braillezeilen werden via BRLTTY angesteuert. Dieses Feature ist jedoch noch nicht vollständig implementiert und weitere Verbesserungen sind für Version 2.0 vorgesehen. Als zusätzliche Unterstützung sind Sound-Schemata verfügbar, welche beispielsweise leere Zeilen, Hervorhebungen, Rechtschreibfehler oder das Starten und Pausieren des Bildschirmlesers kennzeichnen.

Die Tastaturbedienung orientiert sich in den Grundfunktionen stark an bekannten Lösungen: Die Bildschirmnavigation erfolgt über den Nummernblock, spezielle Funktionen werden über die Einfüge- oder Capslock-Taste ausgelöst. Das Erlernen der grundlegenden Navigationsbefehle ist also keine große Hürde. Wer dennoch Hilfe benötigt, kann über die Tastenkombination Einfügen+H einen Lernmodus starten, welcher die Funktionsbeschreibung jedes Befehls wiedergibt ohne ihn auszuführen. Alle Tastenkombinationen sind in den Dateien unter /etc/fenrir/keyboard notiert, hierbei kann zwischen Desktop- und Laptop-Layout gewählt werden. Die Funktionsvielfalt ist dabei durchaus beachtlich und lässt in manchen Punkten beinahe an den Komfort eines Desktop-Bildschirmlesers erinnern. So ist es beispielsweise möglich, auf Tastendruck eigene Shell-Scripts auszuführen, Uhrzeit und Datum vorzulesen oder die Systemlautstärke sowie Parameter der Sprachausgabe zu verändern. Sogar eine Rechtschreibprüfung mittels Aspell oder die Erkennung von Emojis ist vorgesehen.

Hakelige Installation

Wer Fenrir ausprobieren möchte, findet den Quellcode und aktuelle Releases auf GitHub. Da es noch keine spezifischen Installationspakete gibt, sollte man sich je nach Distribution auf etwas Forschungsarbeit gefasst machen, um die notwendigen Abhängigkeiten nachzuladen. Unter Debian Stretch sind beispielsweise nicht alle der Python-Abhängigkeiten über den Paketmanager erhältlich oder liegen in veralteten Versionen vor, die nicht mit Fenrir kompatibel sind. Hier kann man sich jedoch mit dem Python-Paketmanager Pip behelfen, über den sich Fenrir übrigens auch direkt installieren lässt. Ob alle Abhängigkeiten erfüllt sind, zeigt der Befehl python3 check-dependencies.py im Quellcode-Verzeichnis. Die eigentliche Fenrir-Installation geschieht dann über ein einfaches Installations-Script und besteht lediglich im Kopieren der notwendigen Dateien an ihren jeweiligen Bestimmungsort im System. Nach Abschluss des Vorgangs werden die Kommandos zum Starten des Systemdienstes angezeigt sowie ein Befehl, welcher Fenrir auch für Pulseaudio-Nutzer verfügbar macht. Vor dem ersten Start sollte man natürlich noch die Konfigurationsdateien seinen Wünschen entsprechend anpassen. Auch werden bislang keine Sprachdateien automatisch installiert, diese muss man händisch aus dem Locales-Verzeichnis im Quellcode nach /usr/share/locale/<Sprachcode>/LC_MESSAGES kopieren. Eine deutsche Sprachdatei wurde von mir erstellt und ist auf GitHub bereits im Master-Branch vorhanden.

ich persönlich bin gespannt, wie sich Fenrir noch entwickeln wird. Zwar bin ich was die Shell angeht eher von grafischen Oberflächen verwöhnt und nutze lieber einen richtigen Desktop, doch wie bereits erwähnt ist die Shell für manche Aufgaben immer noch sehr attraktiv. Wenn der Bildschirmleser seinen Teil dazu beiträgt, die Arbeit noch mehr zu vereinfachen, kann das am Ende nur gut sein.

Über den Autor

Steffen Schultz, ein lichtloser Gelegenheitsblogger aus dem Norden Brandenburgs. Ich bin auf den Betriebssystemen Windows, Linux und Android unterwegs und berichte u. a. über meine Erfahrungen beim Nutzen von Anwendungen mit Zugangstechnologien für Blinde.

3 Kommentare

#1  - Fryboyter sagte :

>Da es noch keine spezifischen Installationspakete gibt, sollte man sich je nach Distribution auf etwas Forschungsarbeit gefasst machen, um die notwendigen Abhängigkeiten nachzuladen.

Nur wegen diesem Tool die Distribution zu wechseln wird für die meisten vermutlich nicht in Frage kommen, aber unter Arch gibt es Fenrir sowie Fenrir-Git im AUR. Die normale Version lässt sich einfach so installieren (die Git-Version habe ich nicht ausprobiert).

Antworten
#2  - Steffen Schultz sagte :

Danke für den Hinweis, das ging für mich aus der Dokumentation des Tools bisher nicht hervor.

Antworten
#3  - Chrys sagte :

Howdy Steffen,

Erst mal: Respekt für den gelungenen artikel.
2. bin ich baff auch einen Landsmann kennen zu lernen der meinen screenreader nutzt.
3. danke für die patches zwecks
Lokalisierung ( ich selbst war bisher zu sehr mit dem Code beschäftigt um es zu übersetzen :/ )

Erwähnenswert ist eventuell auch das es eine wiki doku gibt:
https://wiki.linux-a11y.org/doku.php?id=fenrir_user_manual
Eine offline kopie wird als maschinell generierte man page mit ausgeliefert
In dem wiki findest du auch die doku zu meinen anderen accessibility tools (OCRdesktop und SOPS - einem kleinen plugin system für orca)

Samuel hat jüngst Fenrir für Debian testing u. unstable gepackt.

https://packages.debian.org/search?keywords=fenrir

Ja die ToDo liste ist noch recht groß XD unter anderem soll fenrir auch in Terminal emulatoren lauffähig gemacht werden und eine tabellen navigation erhalten. (Derzeit bin ich aber durch meinen job sehr eingespannt...)

Cheers chrys

Antworten

Schreiben einen Kommentar

 Angaben merken
Was ist das vierte Charakter des Wortes 98yxiw7 ?

Kommentare-Feed (RSS) dieses Artikels