アクセシビリティ

提供: ArchWiki
ナビゲーションに移動 検索に移動

身体的または視覚的なハンディキャップを持っているユーザーのためにアクセシビリティを提供する方法は様々なものがあります。しかしながら、デスクトップ環境を使わない場合、きちんと使えるようにするまで設定に多少の手直しが必要になります。

デスクトップ環境

最近のデスクトップ環境は拡張機能のセットが付いており、その中にアクセシビリティのオプションを設定するツールも入っています。大抵は、'アクセシビリティ'とかそれぞれの入力デバイス (例: 'キーボード'や'マウス') の設定にオプションが存在します。

ノート: デスクトップ環境の設定ツールを使用する場合、デスクトップ環境に非依存のツールと設定が衝突する可能性があります。

身体支援

音声認識については、音声認識を見て下さい。

キーボードの操作

点字については、TalkingArch を見て下さい。

コンソール

スティッキーキー

TTY でスティッキーキーを有効にするには、使用するキーのキーコードを知る必要があります。キーコードは xorg-xevxkeycaps などのツールで確認することが可能です。または、(現在のキーマップが正しければ) dumpkeys の出力を調査することもできます。

例えば、Logitech Ultra-X における修飾キーのキーコードは以下の通りです:

LCtrl = 29
LShift = 42
LAlt = 56
RShift = 54
RCtrl = 97

次に、dumpkeys を使ってキーコードの範囲を確認します:

# dumpkeys | head -1
keymaps 0-63

適当な名前 (例: "stickyKeys") で新しいファイルを作成して、好きなエディタを使って先に確認した情報と必要なキーの機能を組み合わせます。

上に書かれたキーコードの場合、以下のようになります:

keymaps 0-63
keycode 29 = SCtrl
keycode 42 = SShift
keycode 56 = SAlt
keycode 54 = SShift
keycode 97 = SCtrl

ここで、修飾キーの前の "S" という文字はそのキーのスティッキーバージョンを使用することを示しています。

ノート: 以下の手順は全ての TTY のキーマッピングが変更されます。キーコードが正しいことを確認してください。間違っていると重要なキーが使えなくなる可能性があります。

次のコマンドを実行して新しいマッピングをロード:

# loadkeys ./stickyKeys

結果に満足したら、適当なディレクトリにファイルを移動して、起動時にロードされるようにします。上記のコマンドを /etc/rc.local に記述するか (古い方法)、または systemd のサービスを使います (推奨される方法)。

systemd の場合、サービスファイルは以下のようになります:

[Unit]
Description="load custom keymap (sticky keys)"
 
[Service]
Type=oneshot
ExecStart=/usr/bin/loadkeys /path/to/stickyKeys
StandardInput=tty
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target emergency.target rescue.target

最後にファイル (例: loadkeys.service) を /usr/lib/systemd/system/ に移動して次を実行して有効にします:

# systemdctl enable loadkeys

グラフィカル環境非依存

One method of enabling desktop environment-independent accessibility function is by passing it through X, given that it is build with XKB support. This can be done by setting parameters for the X server, as specified in its man page:

[+-]accessx [ timeout [ timeout_mask [ feedback [ options_mask ] ] ] ]
              enables(+) or disables(-) AccessX key sequences (Sticky Keys).

-ardelay milliseconds
              sets the autorepeat delay (length of time in milliseconds  that
              a key must be depressed before autorepeat starts).

-arinterval milliseconds
              sets  the  autorepeat  interval (length of time in milliseconds
              that should elapse between autorepeat-generated keystrokes).

上記のパラメータは ~/.xserverrc ファイルに記述してください (ファイルは作成する必要があるかもしれません)。

For example, to enable Sticky Keys without timeout and without audible or visible feedback, the following can be used:

if [ -z "$XDG_VTNR" ]; then
  exec /usr/bin/X -nolisten tcp "$@" +accessx 0 0x1e 0 0xcef
else
  exec /usr/bin/X -nolisten tcp "$@" vt$XDG_VTNR +accessx 0 0x1e 0 0xcef
fi

Note that once X has started, e.g. by executing startx, it still requires you to press the shift key 5 times to enable Sticky Keys. Unfortunately, this is needed each time X starts. Alternatively, a script can be used to automate this process.

Similar to most implementations, Sticky Keys can be disabled by pressing a modifier key and any other key at the same time.

マウスの操作

グラフィカル環境非依存

ボタンのマッピング

xmodmap を使うことで、グラフィカル環境に依存しない形でマウスボタンに機能をマッピングすることができます。その場合、xorg-xev などのツールによってマウスの物理的なボタンがどのように認識されて読み込まれているのか確かめる必要があります。通常、左・中・右の物理ボタンが順番に読み込まれます。

Once you have acquired these, continue by creating a configuration file on a suitable location, e.g. ~/.mousekeys. Next, open the file with your favourite editor, and write the keyword pointer = followed by an enumeration of the previously-found number of mouse buttons.

For example, a three button mouse with a scroll wheel is able to provide five physical actions: left, middle, and right click, as well as scroll up and scroll down. This can be mapped to the same functions by using the following line in the configuration file:

pointer = 1 2 3 4 5

Here, the location will tell the action required to perform an internal mouse-button function. For example, a mapping for left-handed people (left- and right button switched) might look like

pointer = 3 2 1 4 5

設定が完了したら xmodmap を実行してマッピングをテストできます:

$ xmodmap ~/.mousekeys
$ xmodmap -pp

設定に満足したら、~/.xinitrc に上記の最初の行を記述することで起動時に有効にできます。

視覚支援

身体支援と同じように、最近のデスクトップ環境にはシステムの視覚的な部分を調整できる拡張機能のセットがあります。大抵は、'アクセシビリティ'や'視覚支援'というようなところにオプションがあります。また、個別のアプリケーションの設定に有用なオプションがある場合もあります。

テキスト読み上げ

テキスト読み上げを見て下さい。

コンソールと仮想ターミナルエミュレータ

  • /etc/vconsole.conf を編集。
  • ~/.Xresources を編集。

問題

  • Wine, VirtualBox, QEMU など、ソフトウェアレイヤーを迂回するソフトウェアは入力デバイスの設定を認識しません。