Zugänglichkeit von LibreOffice und OpenOffice unter Windows

Wie ich letzte Woche schon andeutete, tut sich unter Windows bei LibreOffice und Apache OpenOffice in Puncto Zugänglichkeit etwas!

Etwas Geschichte

Lange Jahre bestand die einzige Möglichkeit der „Zugänglichkeit“ darin, eine Java Runtime und die zugehörige Java AccessBridge zu installieren und konfigurieren, damit es mehr schlecht als recht lief. Für LibreOffice 4.2 und Apache OpenOffice 4.1 wurde der von IBM gespendete Code einer Implementierung von IAccessible2 eingebaut. Die Spende erfolgte zwar schon vor einigen Jahren, basierte jedoch auf einer sehr alten Codebasis und musste erst angeglichen und in OpenOffice eingebaut werden. LibreOffice übernahm den Code und optimierte den Code für sein Produkt noch etwas.

IAccessible2 ist eine Weiterentwicklung von Microsofts alter Schnittstelle Microsoft Active Accessibility (MSAA). Diese Weiterentwicklung war notwendig, um Beschränkungen der Microsoft’schen Schnittstelle zu überwinden. IBM, Mozilla, das NVDA-Projekt und andere waren an dieser Entwicklung beteiligt. So ermöglichte z. B. MSAA nicht das zugänglich Machen von Dokumentinhalten. Microsoft Office konnte MSAA für den Dokumentbereich von Word selbst nie nutzen. Dank IAccessible2 ist es möglich, dass Screen Reader unter Windows Eingabefelder in Firefox und Thunderbird auch ohne klassische Screen-Reading-Techniken lesen können und das formatierte Dokumente per definiertem Standard zugänglich gemacht werden können.

Apache OpenOffice

Und letzteres ist nun endlich soweit, und ich möchte hier kurz aufzeigen, wie man die Zugänglichkeit in LibreOffice aktiviert. In Apache OpenOffice 4.1 wird, sofern es erscheint, die Unterstützung von IAccessible2 einfach funktionieren. Einfach mit laufendem NVDA, JAWS oder anderen Screen Readern starten, und los geht’s. Wer’s ganz eilig hat, kann sich eine Entwicklerversion von OpenOffice herunterladen und ausprobieren. Achtung: Das englische oder deutsche Build unter „Windows Packages“, nicht unter „Windows Snapshot Packages“ nehmen, die Snapshot Packages haben einige wichtige Bugfixes noch nicht enthalten.

LibreOffice

Unter LibreOffice 4.2, welches am 30.01.2014 erschien, ist die Unterstützung von IAccessible2 noch experimentell. Die Ankündigung der Document Foundation beschreibt dies so:

LibreOffice 4.2 is the first open source suite to ship a new Windows (IAccessible2 based) accessibility feature developed by IBM. This is considered experimental for this release, but will replace legacy Java based accessibility in the next major release.

Man braucht also für die erste Zugänglichkeit immer noch eine konfigurierte Java-Umgebung mit AccessBridge. Sobald man IAccessible eingeschaltet hat, kann man diese dann aber deinstallieren, wenn man sie nicht mehr braucht. Und so kommt man da hin:

  1. LibreOffice 4.2.0 herunterladen und installieren. Achtung: Sowohl das Hauptpaket als auch die deutsche Hilfe installieren, wenn die Hilfe offline genutzt werden soll.
    1. Eine benutzerdefinierte Installation durchführen.
    2. Auf der Seite der optionalen Komponenten können z. B. der Online-Updater deaktiviert werden und auch der Quick Starter. Dadurch hat man immer die volle Kontrolle darüber, mit welcher Version man läuft.
    3. Auf der Seite mit dem Schalter „Installieren“ unbedingt ein Häkchen bei „Unterstützung für Hilfstechnologien“ setzen!
  2. Nach der Installation LibreOffice starten. Es läuft nun die Java-Unterstützung.
  3. Extras/Optionen aufrufen und mit Pfeil Runter auf die Dialogseite „Erweitert“ navigieren.
  4. Auf dieser Seite das Kontrollfeld „Experimentelle Features“ aktivieren. Das ist in diesem Fall synonym als „IAccessible2-Support verwenden“ zu verstehen.
  5. Mit OK bestätigen und LibreOffice beenden und neu starten.

Wer keine Java RunTime und AccessBridge installiert hat und dies auch nicht tun möchte, was ich durchaus verstehen kann, der kann vielleicht eine freundliche sehende Person bitten, die Schritte innerhalb LibreOffice einmal durchzuführen. Zusätzlich muss die Person dann aber vor dem Klicken auf OK noch auf die Seite „Zugänglichkeit“ wechseln und dort das Kontrollfeld „Unterstützung für Hilfstechnologien“ aktivieren. Erst dann auf OK. Läuft der Screen Reader mit, ist in diesem Fall die Unterstützung für IAccessible2 sofort aktiv, und man muss LibreOffice nicht noch neu starten. Unter LibreOffice 4.3 werden diese ganzen Schritte nicht mehr nötig sein, da installiert man es, und los geht’s!

Es gibt einige bereits bekannte Probleme, die hoffentlich in 4.2.1 gepatcht werden. So werden Überschriften im Dokument nicht als solche markiert (Bug 74234). Auch wechselt der Fokus bei nicht als Standard formatierten Absätzen gern mal in die Format-Symbolleiste (Bug 74232). Beide Probleme sind in den ersten täglichen Builds von LibreOffice 4.3.0 schon gefixt, die Patches landen dann also hoffentlich bald im Zweig von LibreOffice 4.2.x.

Und noch etwas Nostalgie

Vielleicht erinnert sich noch der eine oder andere: OpenOffice und LibreOffice haben ihren Ursprung in einem Office-Paket namens StarOffice von der deutschen Firma Star Division aus Hamburg. Diese wurde 1999 an Sun Microsystems verkauft. Wer sich die Geschichte genauer durchlesen möchte, kann dies im Wikipedia-Eintrag zu LibreOffice tun.

Als OpenOffice noch StarOffice war und es die Star Division noch gab, ergab es sich, dass ein junger Screen-Reader-Enthusiast und Auszubildender zum Informatikassistenten StarOffice nutzte und auch ganz intensiv JAWS-Skripte dafür schrieb. Im Verlauf des Versionszyklus der 4.0 ergab es sich, dass eine Umstellung auf eine neue grafische Bibliothek erfolgte, die Screen-reader-Nutzer auf einmal im Regen stehen ließ. Durch Newsgroups war ich mit Entwicklern in Kontakt gekommen, und es ergab sich die Möglichkeit einer persönlichen Vorführung in den Räumen der Star Division. Ich machte mich also mit einem Notebook mit 486 DX-50 Prozessor und JAWS 2.0 (wir waren immer noch unter Windows 3.11 unterwegs) und einer Handy Tech Modular 40 Braillezeile auf den Weg nach Hammerbrook. Als Sprachausgabe kam eine KeyNote PCMCIA-Karte zum Einsatz, eine der synthetischsten deutschen Sprachausgaben, die es gibt, kaum Verständlich für Laien.

Ich führte sowohl StarOffice 4.2, das ja noch funktionierte, als auch 4.3 vor, das nicht mehr funktionierte. Und ich brachte ins Gespräch, dass ich ja eventuell im Rahmen eines Praktikums, das ich für meine Ausbildung benötigte, an einer Entwicklung einer zugänglichen Lösung für das Problem mithelfen könnte.

Die Reaktionen reichten von bass erstaunt darüber, dass selbst mit 4.2 überhaupt was ging, über fasziniert bis hin zu realisierend, dass hier ein größeres Projekt bevorstehen könnte. Aus dem Praktikumsplatz wurde letztendlich nichts, bis zur rudimentären Zugänglichkeit mittels Java AccessBridge gingen fast 10 Jahre ins Land, und eine richtige Zugänglichkeit unter Windows wurde meiner Meinung nach tatsächlich erst jetzt, über 16 Jahre später, erreicht.

Ich will mir nicht auf die Fahnen schreiben, hier einen Grundstein gelegt zu haben, denn andere Faktoren wie die Section 508 aus den USA haben hier das eindeutig größere Gewicht, aber den einen oder anderen Denkanstoß könnte ich damals gegeben haben, und ich glaube ich habe definitiv dafür gesorgt, dass einige Entwickler zum ersten Mal in ihrem Leben einen Blinden einen Computer haben bedienen sehen und sich so später etwas drunter vorstellen können, wenn es um Accessibility ging. 🙂

Etwa 10 Jahre später, nicht all zu lang vor dem Kauf durch Oracle, kehrte ich nochmals in die Räume der ehemaligen Star Division, dann natürlich Sun Microsystems, zurück, und wir besprachen die Zugänglichkeit von Sunbird und Lightning, der auf Mozilla-Technologien basierenden Kalender-Anwendung und der Thunderbird-Erweiterung. Außerdem testete ich zum ersten Mal die Zugänglichkeit von OpenOffice.org mit VoiceOver auf OS X.

Ich weiß leider die Namen derjenigen nicht mehr, mit denen ich 1997/98 bei Star Division zusammentraf und ob von denen heute noch jemand in der Document Foundation oder der Apache Software Foundation tätig und an der Entwicklung von LibreOffice bzw. OpenOffice beteiligt ist. Mir fiel diese Episode aber wieder ein, als ich gestern den IAccessible2-Support von LibreOffice testete und meine ersten beiden Bugs für das Projekt einreichte. 🙂

5 Gedanken zu „Zugänglichkeit von LibreOffice und OpenOffice unter Windows“

  1. Es ist in der Tat ein großer Schritt vorwärts und wir sind sehr froh, dass der Code nun endlich unseren Usern zur Verfügung steht. Aber es ist nicht nur einfach eine Code Spende gewesen, IBM hat wie angekündigt den Code auch in Apache OpenOffice integriert und damit ein weiteres großes Investment in OpenOffice getätigt. Die Integration ist nicht mal eben so nebenher gemacht und ist das Resultat mehrerer Monate intensiver und harter Arbeit.

    Natürlich freut es uns wenn der Code auch in OpenOffice Derivaten Einsatz findet und damit noch mehr User erreicht werden. Aber noch mehr würden wir uns wünschen, wenn Bugfixes im Accessbility Code auch in die Code Basis zurück contributed würden, so wie es in Open Source eigentlich normal ist und im Regelfall auch praktiziert wird.

    Leider können wir das bis heute nicht feststellen und die LibreOffice Entwickler ziehen es vor, den Code nur zu konsumieren und nichts zurückzugeben. Eine wie ich finde sehr fragwürdige Entwicklung im Open Source Umfeld, die auch nicht wirklich logisch erklärt werden kann. Am Ende betrifft es in erster Linie User, die unter solchem moralischem Fehlverhalten der Entwickler leiden.

    Accessibility Unterstützung ist aus meiner Sicht sicherlich kein Thema für ideologische und/oder politische Spielchen und deswegen sollte in diesem Bereich die Kollaboration im Vordergrund stehen, um das bestmögliche Ergebnis für unsere User zu erreichen. Das gilt selbstverständlich auch für andere Schwerpunkte und ich denke gemeinsam könnte man sehr viel mehr erreichen.

    Apache OpenOffice ist nach wie vor offen für eine engere Kollaboration mit LibreOffice auf Basis einer gemeinsamen Code Basis. Denn alles andere ist doch eigentlich Verschwendung wertvoller Entwicklerresourcen. LibreOffice konsumiert heute schon Bufixes und Feature Implementierungen regelmäßig und contributed leider nichts zurück in die Code Basis, wo der Code herkommt. Das ist zwar generell möglich, aber in Open Source normalerweise nicht üblich und moralisch aus meiner Sicht sehr bedenklich, denn es schadet dem Open Source Gedanken mehr als es hilft.

    1. Hallo Jürgen!

      Vielen Dank für Deinen Kommentar!

      Ich stimme dem zu, ein Geben und Nehmen in beide Richtungen wäre hier sehr erstrebenswert! Ich persönlich bin weder in die eine noch in die andere Richtung gestimmt, was OpenOffice oder LibreOffice angeht, sondern lerne beide gerade erst wieder richtig kennen.

      Vielleicht kennt ja jemand, der diesen Blogbeitrag und die Kommentare liest, jemanden bei der Document Foundation, der/die hierzu Stellung nehmen möchte! Auch für die Nutzergemeinde wäre es definitiv wünschenswert, eine hervorragende Qualität zu bekommen, egal welches Office-Paket man nimmt.

      Und ja, eine Wiedervereinigung beider Office-Pakete wäre natürlich eine sehr gute Entwicklung für die Open-Source-Gemeinde, da man sich dann nicht mehr entscheiden müsste. Ob das allerdings kommen wird oder gar von allen beteiligten erwünscht ist, weiß ich natürlich nicht. Ich bin ja Außenseiter.

  2. Vielen Dank für den Hinweis auf die bevorstehende Zugänglichkeit von OpenOffice. Eine Frage habe ich noch: Von OpenOffice gibt es auch eine portable Version. Wird auch diese Version von der Implementation der IAccessible 2 Schnittstelle profitieren oder muss dafür eine „feste“ Installation durchgeführt werden?

  3. Ich habe die neue LibreOffice Version runter geladen, alles so gemacht wie im Artikel beschrieben. Wenn ich Libreoffice per Tastatur bediene, liest der Screenreader NVDA die markierten Menüeinträge im Hauptmenü nicht vor.
    Wenn ich mit dem Mauszeiger über Menüeinträge schwebe werden diese Vorgelesen 🙂
    Umgekehrt wäre für Blinde und Sehbehinderte besser!
    Muss ich noch irgendwas einstellen, damit der NVDA die Menüs vorliest, wenn ich die Software per Tastatur bediene?

    Herzliche Grüße

    Markus Lemcke

Was denkst Du darüber?