Keycode
Die Bezeichnung Keycode halte für irreführend. Mir ist nicht klar, was der Artikel überhaupt beschreiben will. Ich dachte erst, er würde die Scancodes beschreiben, was aber der entsprechende Artikel beschreibt, aber nicht dieser. Der vorletzte Satz dieses sehr kurzen Lemmas ist auch inhaltlich falsch, denn die Tastatur sendet Scancodes und nicht irgenetwas ASCII-ähnliches, jedenfalls nicht beim PC. Die Links zu den anderen Sprachen führen zu Artikel, die etwas ganz anderes Beschreiben. Der erste Satz ist auch falsch, da weder Umlaute, Cursor-Tasten, Shift, Alt, Ctrl noch die Windows-/Apple-/sun-... tasten etwas mit dem ASCII Standard zu tun haben. – Raubsaurier 16:29, 30. Jan. 2008 (CET)
Als Keycode (engl. für „Tastenkode“) wird eine Kodierung bezeichnet, die jeder einzelnen Buchstaben-, Funktions-, Pfeil- oder anderen Taste auf der Computertastatur eine Zahl zuordnet. Keycodes entbinden den Programmierer von der Aufgabe, die vergleichsweise komplizierten Scancodes der Tastatur zu interpretieren. Die konkrete Kodierung ist meist an die ASCII- oder die dazu kompatible Unicode-Zeichenkodierung angelehnt, letztendlich aber immer vom Betriebssystemkern und/oder der Programmbibliothek der jeweils verwendeten Programmiersprache abhängig.
Windows
Drückt der Benutzer beispielsweise das Kürzel „Strg+S“ (in vielen Anwendungen für „Speichern“), wird diese Tastenkombination von der Programmbibliothek der Programmiersprache vorbereitend ausgewertet und meist als Keycode 115 (ASCII-Kodierung für den Kleinbuchstaben „s“) an die Ereignisbehandlung innerhalb des Programms weiter gereicht. Dort kann der Keycode zusammen mit einer weiteren Information über den Status der Strg-Taste ausgewertet und die vom Programmentwickler vorgesehene Aktion ausgelöst werden. In anderen Fällen werden die beiden Tasten „Strg“ und „S“ getrennt als Keycodes 17 und 83 (ASCII-Kodierung für den Großbuchstaben „S“) gemeldet.
Funktionen für die Bereitstellung von Keycodes existieren beispielsweise in den Programmiersprachen Visual Basic[1] und JavaScript[2].
Linux
Der Linux-Kernel ordnet jedem Scancode der Tastatur eine eindeutige Nummer zu, den sogenannten „Linux-Keycode“. Diese Zuordnung ist von der verwendeten Tastatur abhängig und kann mit Betriebssystemmitteln (setkeycodes etc.) modifiziert werden. Änderungen machen einen Neustart erforderlich. Tasten, denen kein Keycode zugeordnet wurde, bleiben vollständig funktionslos.
Bei Verwendung des X Window Systems (X11) wird jedem Linux-Keycode in einem zweite Schritt ein symbolischer Name zugeordnet (engl. keysym, kurz für „Tastensymbol“, umgangssprachlich auch „X11-Keycode“ genannt).[3][4] Den numerischen Keycodes werden konkrete Symbole zugewiesen, etwa Buchstaben oder andere Zeichen aus dem Unicode-Zeichenvorrat. Diese Zuweisung lässt sich ebenfalls modifizieren, etwa mit dem Kommandozeilenwerkzeug xmodmap. Änderungen werden ohne Neustart übernommen.
Einzelnachweise
- ↑ Microsoft: Key Code-Konstanten für Visual Basic 6.0-Benutzer.
- ↑ SELFHTML: JavaScript / Objektreferenz / event / keyCode.
- ↑ Doug Palmer: An Unreliable Guide to XKB Configuration. Stand Oktober 2004.
- ↑ Ingomar Wesp: Eigene Tastaturbelegungen in X11 (X.Org / XFree86). Stand Januar 2008.