Скрінрідери (від Англійських слів Screen Reader, що перекладається як зчитувач з екрану або екранний читач) це клас програм, що надають можливість людям з повною втратою зору повноцінно взаємодіяти з операційною системою.
Для всіх сучасних операційних систем існують свої скрінрідери (для деяких операційних систем є також як комерційні, так і не комерційні скрінрідери). Назва цього класу програм, насправді, зовсім не означає, що такі застосунки в буквальному сенсі читають щось з екрана. В залежності від операційної системи, СКрінрідери можуть використовувати вбудовані механізми операційної системи для надання користувачеві необхідної інформації, або ж можуть використовувати для цього компонент, що відповідає за допоміжні технології. Ці механізми та компоненти називають засобами доступності. Результатом є те, що навіть повністю незряча людина може, використовуючи клавіатуру, більш-менш повноцінно взаємодіяти з різноманітними застосунками, вирішуючи необхідні їй задачі. Звичайно ж – доступність графічних середовищ і застосунків залежить також від того, наскільки грамотно розробники цього програмного забезпечення пишуть його код; А також від того, наскільки вони готові йти на зустріч незрячим, реалізуючи певні вимоги, що стосуються доступності. Іншими словами – скрінрідер отримує інформацію реагуючи на дії користувача, після чого передає її в опрацьованому вигляді компоненту, який відповідає за роботу з синтезаторами мовлення. Відповідно – користувач, за допомогою синтезатора мовлення, отримує відгук від скрінрідера (скільки об’єктів у каталозі, тип елемента в браузері, тощо). Звісно ж – скрінрідери дозволяють налаштувати деталізованість отримуваної інформації, дозволяють вибрати синтезатор мовлення і голос-варіант синтезатора мовлення якщо синтезатором такий функціонал надається, та багато іншого. Скажімо – можна вказати скрінрідеру не читати знаки пунктуації, або не озвучувати назви натиснених клавіш. За умови, що користувач знає сполучення клавіш скрінрідера (їх можна в разі чого перевизначити), він отримує ряд функцій, що значно прискорюють роботу. Наприклад – можливість переходити лише між певними елементами вебсторінок у браузері (між посиланнями, заголовками певного рівня, тощо), емулювати клавіші мишки, на льоту перемикати деякі параметри інформативності на кшталт вимови знаків пунктуації. І це далеко не повний список можливостей…
Для операційних систем на базі UNIX-Linux також є кілька скрінрідерів. Найпоширенішим і найпопулярнішим серед них, є скрінрідер Orca. Цей скрінрідер підтримується GNOME Foundation, і є складовою проєкту GNOME. Не зважаючи на це – Orca можна використовувати при роботі з іншими стільничними середовищами. Деякі дистрибутиви, в тому числі й Ubuntu та Ubuntu-MATE, вже містять в собі Orca, що дозволяє незрячим користувачам інсталювати дистрибутив на свій комп’ютер, або ж працювати у LIVE-режимі, без допомоги зрячих.
Протягом усього часу підтримки стабільних LTS-релізів Ubuntu, Orca, як і багато іншого програмного забезпечення зі стандартних сховищ, майже не оновлюється. Це може не влаштовувати користувачів. Orca динамічно розвивається, стабільні релізи виходять раз на пів року (приблизно в той же час, коли виходять релізи стільничного середовища GNOME). У нових релізах з’являється новий функціонал, виправляються помилки, а також вносяться зміни, спрямовані на покращення швидкодії Orca.
Існує ще один нюанс специфічний для Ubuntu. Orca в офіційних сховищах Ubuntu не оригінальний, має деякі зміни. Зокрема – оригінальний Orca зберігає свої налаштування в конфігураційних файлах; А модифікований зі сховищ Ubuntu – в базі даних конфігурації. Іноді такі модифікації тестуються не належним чином, і призводять до того, що в стабільні релізи Ubuntu потрапляє Orca з вадами, які, ймовірно, вже ніхто не буде виправляти протягом усього часу підтримки цього реліза. Наприклад в дистрибутиві Ubuntu версії 18.04, існує принаймні одна така вада. В налаштуваннях Orca, на вкладці Голос, не можливо вибрати варіант голосу синтезатора мовлення Espeak-NG (цей синтезатор мовлення входить типово до складу Ubuntu), без зміни параметрів швидкості мовлення. Простіше кажучи – якщо змінити варіант Espeak-NG та спробувати застосувати зміни натиснувши відповідну кнопку, то ніякої реакції не буде до тих пір, поки користувач не змінить швидкість мовлення. В оригінальному Orca ця вада відсутня.
Розробка Orca ведеться на платформі Gitlab (є також дзеркало на Github). Саме у версіях, які знаходяться в стадії розробки, з’являються нові функції, які тестуються спільнотою користувачів Orca. Супроводжує Orca Joanmarie Diggs. Існує Англомовний список розсилки де кожен охочий може запропонувати новий функціонал, повідомити про помилку, а також допомогти користувачам, якщо в них виникли якісь проблеми при використанні цього скрінрідера.
Зі стабільністю версій, що в процесі розробки, як правило, проблем немає. Я використовую Orca з Github а потім вже й з Gitlab коли проєкт GNOME перейшов на цю платформу, протягом кількох років. За цей час проблемних випадків було лише два. Але майже відразу Joanmarie Diggs усувала проблеми. Оскільки переважна більшість спільноти це незрячі користувачі, Joanmarie Diggs завжди намагається переконатися, що користувач, після встановлення версії з Gitlab, не залишиться без мовлення.
Отже – якщо користувача Ubuntu-OEM-Pack-MATE 18.04 не влаштовують особливості скрінрідера Orca, зумовлені специфікою Ubuntu, що наведені вище, він може встановити версію Orca з Gitlab. Передбачається що користувач вже знайомий з основами роботи в Linux взагалі, і в Ubuntu зокрема, знає що таке термінал, як його запустити, що таке пароль суперкористувача, тощо.
Спочатку потрібно встановити пакунки, необхідні для побудови Orca з вихідного коду. Для цього, відкривши попередньо термінал, і актуалізувавши бази даних пакунків за допомогою команди sudo apt update, потрібно ввести таку команду:
sudo apt install git intltool yelp-tools libgstreamer1.0-dev python-gi-dev libatspi2.0-dev libatk-bridge2.0-dev
Після встановлення цих пакунків, необхідно клонувати сховище скрінрідера Orca з Gitlab. Для цього – потрібно перейти до каталогу, в якому планується розмістити сховище, якщо його вже створено, або ж попередньо створити такий каталог, і перейти до нього. Для створення каталогу можна скористатися засобами файлового менеджера, але нижче наведеною командою можна пришвидшити цей процес:
mkdir ~/repos
Звісно ж – назву каталогу «repos» можна замінити на щось своє. В подальшому саме «repos» я буду використовувати в якості прикладу.
У корені домашнього каталогу, з’явиться підкаталог із назвою repos. Необхідно перейти до нього, за допомогою команди:
cd ~/repos
Далі – можна запустити процес клонування сховища, використовуючи команду:
git clone https://gitlab.gnome.org/GNOME/orca.git
Якщо процес клонування завершився успішно, то в каталозі repos з’явиться підкаталог orca. Це, власне, і є сховище Orca.
Потім – необхідно перейти в каталог сховища, за допомогою команди:
cd orca
Після цього, за допомогою нижче наведених команд, можна побудувати з вихідного коду та встановити Orca:
./autogen.sh
make
sudo make install
Після завершення виконання кожної з цих команд, бажано дивитися хоча б на останні рядки тексту, що виводиться в термінал. Не повинно виникати помилок, але все ж варто, про всяк випадок, здійснювати перевірку на предмет підозрілих повідомлень.
Для того, щоб почати роботу з інстальованим Orca, необхідно виконати команду:
sudo killall orca
яка знищує всі активні процеси Orca. Після цього потрібно натиснути один раз (іноді двічі) сполучення клавіш
Alt+Super+s
Orca відразу почне розмовляти.
Примітка для тих, хто використовує Українську мову інтерфейсу системи: як вже зазначалося вище, до складу Ubuntu входить синтезатор мовлення Espeak-NG. Він не має окремо Українського варіанту, але Українські літери додані до Російського. Тому, для встановлення системи та її налаштування, краще в налаштуваннях Orca, на вкладці Голос, вибирати саме Російський варіант. Після інсталяції Orca з Gitlab і після запуску, Orca почне працювати з типовими налаштуваннями. Це пов’язано з тим, що версія Orca зі сховищ Ubuntu зберігає налаштування в базі даних конфігурації, а оригінальна версія – у конфігураційних файлах, що розташовані в домашньому каталозі поточного користувача. Відповідно – типово Orca почне розмовляти, використовуючи Англійський варіант Espeak-NG (оскільки Український варіант відсутній, Orca типово вибирає саме Англійський). Якщо таке сталося, то з цієї ситуації можна вийти наступним чином:
- Необхідно натиснути сполучення клавіш інсерт і пробіл для входу в інтерфейс налаштувань Orca;
- Потрібно натиснути один раз стрілку вправо для переходу на вкладку Голос;
- Для того, щоб потрапити на список вибору варіантів синтезатора, необхідно чотири рази натиснути клавішу Tab;
- Щоб увійти в цей список, потрібно натиснути клавішу пробіл, після чого, використовуючи стрілки вгору та вниз, або клавіші Page Up та Page Down, вибрати Російський варіант Espeak. Назви варіантів на Англійській мові, тож Espeak-NG «скаже» щось на кшталт «рашен ру»;
- Потрібно підтвердити вибір, натиснувши клавішу Ентер;
- Потрібно натиснути CTRL+Tab, і потім ще тричі клавішу Tab.
- Після цього потрібно застосувати зміни, натиснувши клавішу Ентер.
Для спрощення процесу запуску нової версії Orca, можна створити сполучення клавіш, використовуючи редактор сполучень клавіш стільничного середовища. В якості команди, на яку призначається сполучення клавіш, необхідно вказати:
orca -r
Результатом натискання сполучення клавіш, закріплених за цією командою, стане те, що Orca знищить всі свої процеси, після чого перезапуститься. Це також стане в нагоді у тих випадках, коли, з якихось причин, Orca ні на що не реагує (таких випадків наразі дуже мало).
В будь-якому випадку – після перезавантаження системи, почне працювати нова версія скрінрідера Orca, оскільки вона встановлюється в підкаталоги, розташовані в /usr/local. Відповідно – у користувача лишається як стара версія Orca, так і нова. Якщо з якихось причин нова версія Orca не влаштовує, або ж вона тимчасово має якісь проблеми, то повернутися до старої версії дуже просто. Для цього потрібно командою:
sudo killall orca
знищити всі процеси Orca, після чого, відкривши діалог виконання команд (у стільничних середовищах GNOME та MATE його можна викликати сполученням клавіш Alt+F2), ввести таку команду:
/usr/bin/orca
Після цього, в разі необхідності, можна видалити нову версію. Для цього, знаходячись в тому ж таки каталозі сховища, необхідно виконати команду:
sudo make uninstall
Для оновлення версії Orca з Gitlab, необхідно спочатку перевірити, чи вносилися якісь зміни в код Orca. Для цього, в каталозі сховища, потрібно виконати команду:
git pull
Якщо вивід в термінал буде приблизно такий: «Вже актуально»
то це означає, що на даний момент оновлень немає. Якщо ж оновлення є, то завантажаться лише ті файли Orca, які реально оновилися.
Потім необхідно повторити послідовність команд, що будують і встановлюють Orca. Бажано перед цим видалити попередню версію Orca, використовуючи вже наведену вище команду:
sudo make uninstall
Але можна встановлювати й без видалення вже інстальованої в системі версії. Також зазначу, що мовлення під час встановлення оновленої версії не зникає, тобто не обов’язково переходити на версію Orca, що постачається з Ubuntu.
Наведені вище кроки зі встановлення свіжої версії Orca, будуть в тій чи іншій мірі актуальними для всіх дистрибутивів, що базуються на Ubuntu 18.04. Зазначу лише, що існує ймовірність того, що в офіційній збірці Ubuntu від Canonical, і відповідно в збірках які базуються на ній, Orca з часом може перестати збиратися. Це може статися, скажімо, через три-чотири роки після виходу стабільної версії Ubuntu. Пов’язано це з тим, що Joanmarie Diggs періодично оновлює мінімально допустимі версії залежностей, для Orca (наприклад в якості вимоги для побудови Orca з вихідного коду, з часом може знадобитися більш новіша версія компонента допоміжних технологій AT-SPI ніж та, що є у сховищах Ubuntu). Звісно ж – це робиться не для того щоб ускладнити користувачам життя. Оновлення мінімально допустимої версії у випадку того ж таки AT-SPI відбувається лише в тому разі, коли, наприклад, у AT-SPI є дуже суттєві зміни; І відповідно зберігати сумісність зі старими версіями AT-SPI стає важко, ще й вимагає багато часу. Користувачі збірок Ubuntu від спільнот, в тому числі й тих збірок, що базуються на цих збірках, майже не зіштовхуються з цим, оскільки збірки Ubuntu від спільнот підтримуються три роки. Тому, як правило, користувачі таких збірок як Ubuntu-MATE встигають вчасно оновитися, або ж встановити свіжі стабільні версії цих збірок.