keymap

SuSE-Blinux Keymaps

 

Autor: Marco Skambraks <marco@skammel.de>

Grundsätzliches

 

In den Keymap-Dateien von SuSE-Blinux werden alle Navigations-,

Profil-, Attributs-, cut and paste, PC- und Sprachausgabenbefehle bzw.

-funktionen festgelegt, die durch die Tasten an der Braillezeile bzw.

der normalen Tastatur ausgelöst werden können. Der Dateiname einer

Keymap ist sowohl von der Braillezeile als auch von der Anwendung

abhängig. D. h., ein Benutzer mit einer 2d-Zeile hat im Verzeichnis

 

/etc/sbl/keymap/

 

die Datei 2d.map. Wenn dieser Benutzer nun eine spezielle Anwendung

mit einer anderen Tastenbelegung als seine 2d.map haben möchte, muss

er die Datei 2d.map.xxx anlegen und in diese die veränderten

Navigations-Befehle eintragen. xxx steht für den Namen der

entsprechenden Anwendung, für die eine spezielle Keymap erstellt

werden soll.

 

SBL kann mit Tastenkombinationen gesteuert werden, die sich sowohl aus

einer als auch aus zwei Tasten an der Zeile zusammensetzen. Es kann

sowohl Taste 1 plus Taste 2 als Kombination verwendet werden, aber

auch Taste 2 plus Taste 1. Bei Befehlen für die man z. B.

Befehl=B001+B001 einträgt wird dafür gesorgt, das der Befehl erst beim

Loslassen der B-Taste ausgeführt wird. Grundsätzlich sollte es

vermieden werden, einem Befehl nur einen Tastenwert zuzuweisen, weil

sonst diese Taste für andere Tastenkombinationen nicht mehr benutzt

werden kann. Bei Funktionen wie lnup oder lndwn wird jedoch nur ein

Wert eingetragen, damit sbl bei gedrückter Taste den Befehl

wiederholt. Man betätigt also die Taste und läst sie solange gedrückt,

bis die gewünschte Zeile erreicht ist.

 

Eine Tastenkombination kann beispielsweise so aussehen:

 

Befehl=B010+B001

 

Hier wird der Befehl ausgelöst, wenn der Benutzer die 10. und die 1.

Brailletaste in Kombination drückt.

 

Wichtig: Bitte beachtet, das die Brailletasten mit einem B bezeichnet

sind und die Nummern dreistellig angegeben werden müssen.

 

Weiterhin ist es möglich auch Tasten der normalen Tastatur für SBL

Befehle zu belegen. Damit SBL mit Tastatureingaben gesteuert werden

kann, muß der Kernle gepatcht werden. Alle Kernel 2.2.x sollten mit dem

Patch arbeiten. Um den gepatchten Kernel mit SBL zu benutzen, muß in der

Datei /etc/sbl.conf der Eintrag kbdsniff auf 1 gesetzt werden

(kbdsniff=1). In der Keymap-Datei wird ein Befehl, der über die normale

Tastatur ausgelöst werden soll, durch ein Komma gefolgt von der

gewünschten Taste eingeleitet, z.B.:

lnup=,a

Es kann ebenfalls eine Kombination aus Tasten an der Braillezeile und

der normalen tastatur angegeben werden. Dadurch kann der Befehl sowohl

über die Zeile, als auch über die Tastatur ausgelöst werden. Ein

Eintrag sieht dann z.B. folgendermaßen aus:

attronof=B001+B002,a

Der Befehl wird also entweder ausgelöst, wenn erst B001 und dann B002

gedrückt wird, oder wenn die Taste a gedrückt wird.

SBL führt normalerweise nicht Befehle aus, die über die normale Tastatur

aktiviert werden sollen. Um das Programm in den Modus zu bringen, daß es

auch Tastatureingaben Befehle ausführen kann, müssen Tastenkombinationen

für die beiden Keymap-Befehle kbdsniffon und kbdsniffoff definiert

werden. Die Beste Variante ist es, wenn für beide Befehle die gleiche

Taste angegeben wird, z.B.:

kbdsniff=,LFT_CTRL

kbdsniff=,LFT_CTRL

Somit wird, so bald die linke STRG-Taste gedrückt gehalten wird, in

den Modus geschaltet, in dem SBL auch über die Tastatur eingegebene

Befhle abarbeiten kann. Der Modus wird wieder verlassen, wenn die linke

STRG-Taste losgelassen wird.

Zulässige Werte für Befehle, die über die tastatur ausgeführt werden

sollen, sind alle Buchstaben von A bis Z (Großschreibung ist wichtig!!!)

und die Zahlen von 0 bis 9. Über die weiteren zulässigen Tasten gibt

folgende Liste Auskunft:

CSRUP : Pfeil nach oben

CSRDN : Cursor nach unten

CSRLFT : Cursor nach links

CSRRGT : Cursor nach rechts

PGUP : Seite auf

PGDN : Seite ab

HOME : Home-Taste

END : Ende-Taste

DEL : Delte-Taste im 6er Block

INSERT : Einfügetaste

NUM_1 : 1 im Nummernblock

NUM_2 : 2 im Nummernblock

NUM_3 : 3 im Nummernblock

NUM_0 : 0 im Nummernblock

NUM_4 : 4 im Nummernblock

NUM_5 : 5 im Nummernblock

NUM_6 : 6 im Nummernblock

NUM_PLUS : Pluszeichen im Nummernblock

NUM_7 : 7 im Nummernblock

NUM_8 : 8 im Nummernblock

NUM_9 : 9 im Nummernblock

NUM_SUB : Minuszeichen im Nummernblock

NUM_LOCK : Numlock-Taste

NUM_DIV : Divitonszeichen im Nummernblock

NUM_MUL : Multiplikationszeichen im Nummernblock

NUM_ENT : Entertaste des Nummernblocks

NUM_COMMA : Kommataste im Nummernblock

CAPS_LOCK : Capslock-Taste

LFT_CTRL : Linke STRG-Taste

RGT_CTRL : rechte STRG-Taste

ALT : Linke Alt-Taste

ALT_GR : Rechte Alt-Taste (AltGR)

LFT_SHFT : Linke Umschalttaste, linke Shifttaste

RGT_SHFT : Rechte Umschalttaste, rechte Shifttaste

Die Formatierung der Datei spielt für den Ablauf von sbl keine Rolle,

aber auf Grund der übersichtlichkeit sollten die Befehle nicht zu sehr

verteilt werden.

 

Da die Braillezeilen unterschiedlich viele Tasten haben, ist eine

keymap für alle Zeilen nicht möglich, deshalb werden die Befehle

allgemein erklärt.

 

Die Befehle und ihre Funktionen

 

* resetbrl= : Resettet die Braillezeile

* lnlft= : Zieht die Zeile 40 oder 80 Zeichen nach links

* lnrgt= : Zieht die Zeile 40 oder 80 Zeichen nach rechts

* lnup= : Bewegt die Braillezeile um eine Zeile nach oben. Für diese

Funktion sollte nur eine Taste angegeben werden!

* lndn= : Bewegt die Braillezeile eine Zeile nach unten. Auch hier

sollte nur eine Taste angegeben werden!

* chrlft,csrrgt= : Bewegt die Braillezeile ein Zeichen nach links

oder ein Zeichen nach rechts

* line01= : Bringt die Braillezeile in die erste Zeile des

Bildschirms

* jmpmark1,jmpmark2,jmpmark3,jmpmark4= : Diese Befehle springen

feste, in den Profilen definierte, Marken an.

* topleft= : Zieht die Braillezeile in die obere linke Ecke des

Bildschirms.

* botleft= : Zieht die Braillezeile in die untere linke Ecke des

Bildschirms

* csrtrk= : Bewegt die Braillezeile an die aktuelle Cursorposition

und liest bei vorhandener Sprachausgabe den Cursor vor. In einer

Anwendung wie z. B. yast wird der Menüpunkt vorgelesen.

* csrtrkoff= : Schaltet die obige Funktion aus und gibt dem Anwender

die Möglichkeit, eine bestimmte Zeile zu überwachen, ohne dass die

Braillezeile an die aktuelle Cursorposition springt.

* csrvisoff= : Blendet den Cursor aus, solange die Taste gedrückt

wird. Auch hier muss also nur eine Taste angegeben werden, da

sonst die Funktion erst beim Loslassen ausgeführt wird.

* csrblinkonoff= : Ändert die Darstellung des Cursors auf der Zeile.

Der Grundzustand wird im Profil festgelegt.

* csrblockonoff= : Schaltet die Darstellung auf Block oder auf

Strich um. Die Default-Darstellung wird in der Profildatei

festgelegt

* csrjump= : Zieht den PC-Cursor innerhalb der Zeile also in

x-Richtung.

* csrjmpvert= : Die gleiche Funktion wie zuvor, allerdings für die

y-Richtung, also Zeilen übergreifend.

* syscsr= : Veranlasst sbl, nur den System-Cursor zu verfolgen.

* softcsr= : Veranlasst sbl nur den Soft-Cursor zu verfolgen.

* lineroutbeg= : Spezieller Befehl für die 2d von Papenmeier

* lineroutend= : Spezieller Befehl für die 2d von Papenmeier

* csrroutbeg= : Hier muss die Startnummer der Cursorrouting-Tasten

angegeben werden. Der Wert hängt von der benutzten Braillezeile

ab.

* csrroutend= : Hier wird das Ende der Cursorrouting-Tasten

angegeben. Der Wert hängt ebenfalls von der benutzten Braillezeile

ab.

* keyup= : Die Tastaturfunktion Cursorup kann hiermit durch eine

Tastenkombination an der Braillezeile ausgelöst werden.

* keydn= : Die Tastaturfunktion Cursordown kann hiermit durch eine

Tastenkombination an der Braillezeile ausgelöst werden.

* keyrgt= : Die Tastaturfunktion Cursor nach rechts kann hiermit

durch eine Tastenkombination an der Braillezeile ausgelöst werden.

* keylft= : Die Tastaturfunktion Cursor nach links kann hiermit

durch eine Tastenkombination an der Braillezeile ausgelöst werden.

* keyenter= : Die Entertaste kann hiermit durch eine

Tastenkombination an der Braillezeile ausgelöst werden.

* attroff= : Durch diesem Befehl kann die Attributanzeige

abgeschaltet werden.

* attr1,attr2,attr3,attr4= : Schaltet auf das 1.,2.,3. oder 4.

Attribut um. Die einzelnen Attribute werden in den Profildateien

festgelegt.

* prof1,prof2,prof3,prof4= : Mit diesen Befehlen kann man die in

/etc/sbl.conf festgelegten Profilen manuell umschalten.

Dies ist z. B. sehr nützlich, wenn die Auto-Umschaltung nicht

richtig funktioniert oder man mit telnet, ssh usw. auf anderen

Rechnern remote arbeitet.

* autoprofonoff= : Hier läßt sich die automatische Profilumschaltung

ein- bzw. ausschalten.

* attrmodonoff= : Schaltet zwischen der Attributanzeige und der

normalen Anzeige um.

* sixdotsonoff= : Schaltet zwischen 8- und 6-Punkt-Braille um. Die

Default-Einstellung ist im Profil festgelegt.

* cutbegin= : sbl unterstützt cut and paste über mehrere Konsolen

hinweg oder innerhalb eines Textes. Es kann nur Text in den Puffer

kopiert werden, der auf dem Bildschirm dargestellt wird und mit

der Braillezeile angesteuert werden kann. Au0erdem können nur

ganze Zeile kopiert und wieder eingefügt werden. Durch diesen

Befehl wird der Anfang des zu kopierenden Abschnitts markiert.

* cutend= : Hiermit wird das Ende des zu kopierenden Textabschnitts

kopiert.

* paste= : Durch diesen Befehl wird der Inhalt des Puffers

eingefügt.

* loadkeymap= : Diese Funktion läd die Keymap im laufenden Betrieb

neu.

* soundonoff= : Schaltet die sounds von sbl an oder aus. Die

Default-Einstellung wird in den Profilen festgelegt. Sounds werden

nur bei Funktionen von sbl ausgegeben, die keine unmittelbare

Wirkung auf der Zeile auslösen, z. B. autoprofonoff=.

* setmark= : Dieser Marker wird online im laufenden Betrieb und

nicht im Profil gesetzt.

* jmptomark= : Mit diesem Befehl kann man den online gesetzten

Marker anspringen.

* kbdsniffon= : Schaltet SBL in den Modus, der auch Tastatureingaben der

normalen Tastatur annimmt.

* kbdsniffoff= : Bringt SBL wider aus den Modus, der Eingaben über eine

normale Tastatur für Befehle annimmt.

Funktionen für die Sprachausgabe

 

* spktocsr= : Spricht alles vom linken Rand bis zum Cursor.

* spkfromcsr= : Es wird alles rechts vom Cursor gesprochen.

* spkscrfromcsr= : Der Bildschirm-Inhalt wird ab der Cursorposition

bis zum Ende vorgelesen.

* spkscrtocsr= : Hiermit wird der Bildschirm vom Anfang bis zum

Cursor vorgelesen.

* nextlang= : Schaltet die Sprache der Sprachausgabe bei mehreren

ROMs eine Sprache weiter.

* prevlang= : Schaltet eine Sprache zurück.

* spkmod= : Schaltet in den Buchstabiermodus oder aus diesem wieder

zurück in den normalen Modus.

* spkoff= : Schaltet die Sprache für die aktuelle Anwendung ab.

* nextfrq= : Verändert die Tonhöhe der Sprachausgabe nach oben.

* prevfrq= : Verändert die Tonhöhe der Sprachausgabe nach unten.

* nextspd= : Verändert die Sprachgeschwindigkeit nach oben.

* prevspd= : Verändert die Sprachgeschwindigkeit nach unten.

* nextvol= : Verändert die Lautstärke der Sprachausgabe nach oben

(lauter).

* prevvol= : Verändert die Lautstärke der Sprachausgabe nach unten

(leiser).

* nextvoice= : Viele Hardwaresynts haben mehrere vordefinierte

Stimmen. Dieser Befehl schaltet eine Stimme weiter.

* prevvoice= : Hiermit wird eine vordefinierte Stimme

zurückgeschaltet.

* nextspec= : Für jeden Hardwaresynt können Spezialfunktionen

festgelegt werden. Dieser Befehl schaltet zur nächsten

Spezialfunktion um. Spezialbefehle werden im Verzeichnis spk in

der entsprechenden spk-Datei festgelegt. Die Profile enthalten

ebenfalls Angaben zur automatischen Ausführung der Befehle.

* prevspec= : Schaltet zum vorigen Spezialbefehl zurück.