Habe unter GNOME eine (Full Size) HID Tastatur von Cherry Modell KC1000. Diese hat wie viele andere (USB ?) Tastaturen in voller Größe oben rechts vier Sondertasten. Tatsächlich kann man damit selbst unter GNOME den Taschenrechner und das das Email programm (ich benutze einen nachinstallierten Thunderbird) aufrufen. Ist ein Browser offen, so geht dieser mit der dritten Taste auf die Default Seite. Mit dem Mondsymbol schaltet sich der Bildschirm schwarz und ich krieg ihn nur noch durch neu Booten nach einem Hardware Reset wieder aufgeweckt. Wenn ich dieses Java Skript benutze: https://www.toptal.com/developers/keycode sehe ich keinen Code für einen Tastenevent. Wie teilt die Tastatur einen PC unabhängig vom Betriebssystem mit, in welchem Fall welche Anwendung aufgerufen werden soll oder sonst was gemacht werden soll ? Kann man die Belegung solcher Tasten selbst ändern oder korrigieren ?
Die Tastatur teilt dem BS nur den Keycode mit. Was das BS damit macht, bleibt ihm ueberlassen. I.A. kann man das Verhalten der jeweiligen Taste im BS einstellen.
Bei USB ist das etwas komplizierter. Kurz zusammengefasst: ein USB-HID-Device kann den Tasten Usage-IDs zuordnen, z.B. Launch-Calculator (Usage-ID 0x0192). Hier ein Dokument dazu (319 Seiten): https://usb.org/sites/default/files/hut1_21.pdf
Foobar schrieb: > Kurz zusammengefasst: ein > USB-HID-Device kann den Tasten Usage-IDs zuordnen, z.B. > Launch-Calculator (Usage-ID 0x0192). D.h. aber auch nur, dass dies die default Einstellung des OS ist. Aendern kann man das, wie man lustig ist.
J. V. schrieb: > Wenn ich dieses Java Skript benutze: > > https://www.toptal.com/developers/keycode > > sehe ich keinen Code für einen Tastenevent. Wie teilt die Tastatur einen > PC unabhängig vom Betriebssystem mit, in welchem Fall welche Anwendung > aufgerufen werden soll oder sonst was gemacht werden soll ? > > Kann man die Belegung solcher Tasten selbst ändern oder korrigieren ? PLENK! Weil das versch....ne Javascript als letzter in der Fresskette nur bereits "vorverdaute" Codes empfangen kann. Diese Tasten senden ganz normale bzw. extended Scancodes(!) an den Rechner, die von verschiedenen(!) Ebenen ausgewertet werden. Die kann man unter Windows bereits im Kernel remappen.
1 | REGEDIT4 |
2 | |
3 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] |
4 | "Scancode Map"=hex:00,00,00,00,00,00,00,00,\ |
5 | 06,00,00,00,\ |
6 | 1d,e0,3a,00,\ |
7 | 45,00,56,00,\ |
8 | 3a,00,45,00,\ |
9 | 49,e0,33,e0,\ |
10 | 51,e0,34,e0,\ |
11 | 00,00,00,00 |
Unter Linux sollte das mit "loadkeys" und den dazugehoerigen Konfigdateien fuer die Konsole bzw. xmodmap fuer X gehen. Die Applikationszuordnung ist nur teilweise konfigurierbar.
1 | REGEDIT4 |
2 | |
3 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey] |
4 | |
5 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\15] |
6 | "Association"="mailto" |
7 | |
8 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\16] |
9 | "Association"=".cda" |
10 | |
11 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\17] |
12 | "ShellExecute"="::{20D04FE0-3AEA-1069-A2D8-08002B30309D}" |
13 | |
14 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\18] |
15 | "ShellExecute"="calc.exe" |
16 | |
17 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\7] |
18 | "Association"="http" |
Einige weitere gibt es noch, z.B. die 5 fuer die "Suche". Etwas aehnliches wird sich auch im Gnome oder KDE verstecken. :)
Motopick schrieb: > Unter Linux sollte das mit "loadkeys" und den dazugehoerigen > Konfigdateien fuer die Konsole bzw. xmodmap fuer X gehen. Das geht in Gnome mit Einstellungen -> Tastenkombinationen noch viel einfacher.
mit "xev" kannst du dir das Event anschauen, was die Taste an X11 schickt:
1 | KeyRelease event, serial 41, synthetic NO, window 0x9c00001, |
2 | root 0x76e, subw 0x9c00002, time 1038673312, (34,40), root:(2594,1339), |
3 | state 0x10, keycode 148 (keysym 0x1008ff1d, XF86Calculator), same_screen YES, |
4 | XLookupString gives 0 bytes: |
5 | XFilterEvent returns: False |
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.