Hallo Liste, ich habe mir jetzt endlich mal die Zeit genommen, und meiner SUSE 10.0 die bisher unbekannten Tasten meiner Laptoptastatur vorgestellt. Mit dumpkeys | grep =$ && dumpkeys | grep "= nul" habe ich mir freie Keycodes herausgesucht und diese dann mittels setkeycodes den betreffenden Tasten zugewiesen. xev zeigt mir nun auch alle Tasten an, soweit so gut. Die Tastenbelegung funktioniert auch wie gewünscht. Warum zeigt mir aber dumpkeys die mittlerweile belegten Scancodes immer noch als frei an? Google hat mir hier nicht weitergeholfen - weiß hier vielleicht jemand warum das so ist? Gruss Mario
Hallo, Am Sam, 01 Jul 2006, Mario van der Linde schrieb:
ich habe mir jetzt endlich mal die Zeit genommen, und meiner SUSE 10.0 die bisher unbekannten Tasten meiner Laptoptastatur vorgestellt.
Mit dumpkeys | grep =$ && dumpkeys | grep "= nul" habe ich mir freie Keycodes herausgesucht und diese dann mittels setkeycodes den betreffenden Tasten zugewiesen.
xev zeigt mir nun auch alle Tasten an, soweit so gut. Die Tastenbelegung funktioniert auch wie gewünscht.
Warum zeigt mir aber dumpkeys die mittlerweile belegten Scancodes immer noch als frei an? Google hat mir hier nicht weitergeholfen - weiß hier vielleicht jemand warum das so ist?
Dumpkeys betrifft die Konsole, nicht X. Konsole: showkeys, dumpkeys, loadmap, keymaps(5) X11: xev, xmodmap -pke, xmodmap, xmodmap(1x), xkeycaps Noch Fragen? -dnh, ;) -- Netscape als root auszufuehren ist das Aequivalent zum Betreten des Innenhofes eines Hochsicherheitstrakts zur Pausenzeit, sich die Hosen runterzuziehen, weit nach vorn zu beugen und zu bruellen: "Los Jungs, holt es euch!". Oder Windows zu benutzen. [Wolfgang Weisselberg in suse-linux] -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
Am Samstag, 1. Juli 2006 18:47 schrieb David Haller: [...]
Dumpkeys betrifft die Konsole, nicht X.
Ist schon klar - xev zeigt mir ja auch Keycodes für X an (und das die Konsole und X unterschiedliche Keycodes haben, ist mir auch schon aufgefallen - wo steht eigentlich, wie die Kernelkeycodes auf die XKeycodes gemappt werden?). Da ich aber mit setkeycodes auf der Konsole Keycodes gesetzt habe, habe ich eigentlich erwartet, dass dumpkeys mir diese jetzt auch anzeigt. Nur damit wir nicht aneinander vorbeireden: Nichtzugeordnete Tasten verursachen eine Fehlermeldung in /var/log/messages a la # atkbd.c: Unknown key pressed (translated set 2, code 0x55 on isa0060/serio0). # atkbd.c: Use 'setkeycodes 55 <keycode>' to make it known. Mittels dumpkeys suche ich mir einen freien Keycode heraus (in meinem Fall habe den Keycode 89 genommen): # chubaka:~ # dumpkeys | grep "=$" # keycode 85 = # keycode 89 = # keycode 90 = # keycode 91 = # chubaka:~ # setkeycodes 55 89 Die Fehlermeldung ist weg und showkey liefert was es soll: # chubaka:~ # showkey -k # kb mode was UNICODE #[ if you are trying this under X, it might not work # since the X server is also reading /dev/console ] # # press any key (program terminates 10s after last keypress)... # keycode 28 release # keycode 89 press # keycode 89 release Das hat bis hierher erst mal gar nix mit X zu tun.
Konsole: showkeys, dumpkeys, loadmap, keymaps(5) X11: xev, xmodmap -pke, xmodmap, xmodmap(1x), xkeycaps
Noch Fragen?
Ja, warum zeigt mir nach diesem Exkurs dumpkeys immer noch das gleiche an: # chubaka:~ # dumpkeys | grep "=$" # keycode 85 = # keycode 89 = # keycode 90 = # keycode 91 = Das ist mir auch nach dem lesen der Man-Pages noch nicht klar. Muss ich im $EDITOR die aktuelle Keymap per Hand ändern, damit dumpkeys die Änderungen anzeigt?
-dnh, ;)
[...] Gruss Mario
Jetzt sehe ich meinen Denkfehler: dumpkeys zeigt mir die Keycode <-> Keysym Zuordnung an, ist also wohl der verkehrte Ansatz... Aber womit kann ich mir die Zuordnung Scancode <-> Keycode anzeigen lassen? Ich meine, ich kann ja einem Keycode mehrere Scancodes zuordnen. Um das zu vermeiden müsste ich mir doch die Keycodes anzeigen lassen können, denen noch kein Scancode zugeordnet ist... Gruss Mario
Hallo, Am Sam, 01 Jul 2006, Mario van der Linde schrieb:
Jetzt sehe ich meinen Denkfehler:
dumpkeys zeigt mir die Keycode <-> Keysym Zuordnung an, ist also wohl der verkehrte Ansatz...
Genau. Du hast dem keycode 89 keine Bedeutung zugewiesen.
Aber womit kann ich mir die Zuordnung Scancode <-> Keycode anzeigen lassen?
man kbd_mode?
Ich meine, ich kann ja einem Keycode mehrere Scancodes zuordnen. Um das zu vermeiden müsste ich mir doch die Keycodes anzeigen lassen können, denen noch kein Scancode zugeordnet ist...
Hm. AFAIK passiert das im Kernel-Tastatur-Treiber... => drivers/input/keyboard/* Und evtl. in 'kdb' / loadkeys ... http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html [1] Die Scancodes sind aber doch erst relevant, wenn showkeys keine Reaktion auf eine Taste zeigt d.h. keinen keycode liefert. Ist das bei dir der Fall? Und brauchst du das auf der Konsole? Denn unter X ist's ja wieder ne eigene Geschichte. Was hast du denn fuer ne komische Tastatur? ;) HTH, -dnh [1] gefunden in der kbd-Doku :) -- Da Ihre Web-Seite wohl nur den IE akzeptiert, wollte ich anfragen, ob dieses auch mit anderen Browsern irgendwie möglich ist, oder ob Sie mir, wenn nicht, eine WindowsCD kostenlos zukommen lassen können um Ihr Angebot wahrzunehmen. -- Axel Lindlau -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
Am Sonntag, 2. Juli 2006 02:17 schrieb David Haller:
(...). Die Scancodes sind aber doch erst relevant, wenn showkeys keine Reaktion auf eine Taste zeigt d.h. keinen keycode liefert.
So hatte ich das auch verstanden.
Ist das bei dir der Fall?
Ich hatte eher das umgekehrte Problem mit einer Sondertaste: keine Meldungen wie "atkbd.c: Unknown key pressed..." und "showkey -k" zeigte mir den keycode 0x6d an. "showkey -s" aber irgendwie keinen scancode. (Wie geht das eigentlich?) Und xev reagierte natürlich nicht auf den Tastendruck.
Und brauchst du das auf der Konsole? Denn unter X ist's ja wieder ne eigene Geschichte.
Jetzt verwirrst du mich. Ich hatte gestern einige Anleitungen gelesen. Und ich habe die so verstanden, daß ohne keycode X auch nie reagieren würde. Mein Problem: Offensichtlich hat "showkey -k" mir sehrwohl einen scancode angezeigt, denn 0x6d (109) ist nämlich der keycode für PgDown. Nach ein paar Stunden habe ich aus Verzweiflung einfach mal "setkeycodes 6d 231" ausgeführt und xev bekam plötzlich den Tastendruck mit. Also entweder erzählt die man-page von showkey Blödsinn oder die von setkeycodes. Jedenfalls kann ich Taste ohne setkeycodes unter X nicht benutzen. BTW, evtest aus dem Paket input-utils gefällt mir viel besser als showkey. Das funktioniert nämlich wenigstens wie erwartet: es zeigt als scancode 0x6d an.
Was hast du denn fuer ne komische Tastatur? ;)
Logitech Cordless Desktop EX110. Gruß Jan -- Whatever hits the fan will not be evenly distributed. -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
Am Sonntag, 2. Juli 2006 11:55 schrieb Jan Ritzerfeld: [...]
Also entweder erzählt die man-page von showkey Blödsinn oder die von setkeycodes. Jedenfalls kann ich Taste ohne setkeycodes unter X nicht benutzen.
Nun ja, ist doch eigentlich klar: Wenn schon Linux selbst nicht mit der Taste klar kommt, kann X erst recht nix damit anfangen. Also erst Linux mit der Taste verheiraten und dann sorgt Linux schon dafür, dass X auch was davon hat (per Xmodmap oder sonstwie)...
BTW, evtest aus dem Paket input-utils gefällt mir viel besser als showkey. Das funktioniert nämlich wenigstens wie erwartet: es zeigt als scancode 0x6d an.
Muss ich mir mal anschauen [...]
Gruß Jan
Gruss Mario
Am Sonntag, 2. Juli 2006 12:17 schrieb Mario van der Linde:
Am Sonntag, 2. Juli 2006 11:55 schrieb Jan Ritzerfeld: [...]
Also entweder erzählt die man-page von showkey Blödsinn oder die von setkeycodes. Jedenfalls kann ich Taste ohne setkeycodes unter X nicht benutzen.
Nun ja, ist doch eigentlich klar: Wenn schon Linux selbst nicht mit der Taste klar kommt, kann X erst recht nix damit anfangen.
Ja, aber "showkey -k" hatte mir eingeredet, daß die Taste schon einen keycode hat. Daher war ich ziemlich ratlos, weil X die Taste gar nicht bemerkt. Auf die Idee, daß "showkey -k" vielleicht doch den scancode anzeigt, bin ich erst spät gekommen.
Also erst Linux mit der Taste verheiraten und dann sorgt Linux schon dafür, dass X auch was davon hat (per Xmodmap oder sonstwie)... (...).
Da habe ich David wohl falsch verstanden. Gruß Jan -- He who dies with the most toys, wins! -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
Am Sonntag, 2. Juli 2006 12:50 schrieb Jan Ritzerfeld: [...]
Ja, aber "showkey -k" hatte mir eingeredet, daß die Taste schon einen keycode hat. Daher war ich ziemlich ratlos, weil X die Taste gar nicht bemerkt. Auf die Idee, daß "showkey -k" vielleicht doch den scancode anzeigt, bin ich erst spät gekommen. [...]
Also, ich weiss ja nicht, welche kbd-Version du hast, aber dass showkey -k eine Hexzahl anzeigt halte ich für fast unmöglich... atkbd.c: -s: printf("0x%02x ", buf[i]); -k: printf(_("keycode %3d %s\n"), buf[i], s); /*stark vereinfacht!*/ Mit -k sollte also ganz klar eine Dezimalzahl angezeigt werden... Mal abgesehen davon: In den meisten Fällen ist Scancode=Keycode. Ist nicht so offensichtlich, weil der Scancode als Hex und der Keycode als Dec angezeigt wird... Beispiel Minustaste: showkey -k -> 53, showkey -s -> 0x35; 0x35(hex) = 53(dec)
Gruß Jan -- He who dies with the most toys, wins!
Gruss Mario
Am Sonntag, 2. Juli 2006 13:18 schrieb Mario van der Linde:
Am Sonntag, 2. Juli 2006 12:50 schrieb Jan Ritzerfeld: [...]
Ja, aber "showkey -k" hatte mir eingeredet, daß die Taste schon einen keycode hat. Daher war ich ziemlich ratlos, weil X die Taste gar nicht bemerkt. Auf die Idee, daß "showkey -k" vielleicht doch den scancode anzeigt, bin ich erst spät gekommen.
[...]
Also, ich weiss ja nicht, welche kbd-Version du hast, aber dass showkey -k eine Hexzahl anzeigt halte ich für fast unmöglich... (...).
Öh, ja. Das stimmt natürlich. 0x6d hatte ich geschrieben, weil setkeycodes den halt in Hex haben will. Und eben weil "-k" eine Dezimalzahl anzeigt, bin ich erst so spät drauf gekommen, diese Zahl in Hex für setkeycodes zu benutzen.
Mal abgesehen davon: In den meisten Fällen ist Scancode=Keycode.
getkeycodes sagt ja auch "for 1-83 (0x01-0x53) scancode equals keycode".
Ist nicht so offensichtlich, weil der Scancode als Hex und der Keycode als Dec angezeigt wird... (...).
Naja, wenn es nur das wäre: Anfangs zeigte mir "-k" 109 an, "-s" nichts. Daß "setkeycodes 6d 231" funktioniert hat, halte ich schon fast für Zufall. Allerdings zeigt danach "showkey -s" 0xe0 0x5a/da an und "-k" eben die 231. getkeycodes sagt für diesen scancode aber 0, klar, denn 0x6d ist ja der auf 231 gesetzte. Sprich, daß was showkey so anzeigt, paßt hier so gar nicht zu get/setkeycodes. Wozu showkeys Angaben wiederum gut passen, ist xev. Denn X bekommt nicht die 231 geliefert, sondern 218 und das ist 0x5a + 0x80, wie auch von "showkey -s" behauptet. evtest zeigt sich von "setkeycodes 6d 231" unbeeindruckt. Sowohl davor als auch danach gibt es als scancode 0x6d aus. Vorher eben kein key(?)code und nachher die 231. Hätte ich das mal vorher benutzt ... Gruß Jan -- If you're strong enough, there are no precedents. -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
Am Sonntag, 2. Juli 2006 02:17 schrieb David Haller: [...]
man kbd_mode?
Hmm, diese manpage ist _die_ Definition für "dürftig" [...]
Hm. AFAIK passiert das im Kernel-Tastatur-Treiber... => drivers/input/keyboard/*
Das sieht interessant aus, bringt mich aber nicht allzuweit.
Und evtl. in 'kdb' / loadkeys ...
showkey.c hat mich ein wenig inspiriert. Nachdem ich mir den Code angeschaut habe, kommt es mir so vor als würde da eine weitere Option -m / --showmap hingehören. Da bastel ich grad ein wenig dran. Da ich aber kein C-Programmierer bin, könnte das auch ins nirgendwo führen... :)
http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html [1]
Die Scancodes sind aber doch erst relevant, wenn showkeys keine Reaktion auf eine Taste zeigt d.h. keinen keycode liefert. Ist das bei dir der Fall? Und brauchst du das auf der Konsole? Denn unter X ist's ja wieder ne eigene Geschichte.
Ja. Nein (zumindest im Moment nicht). Genau.
Was hast du denn fuer ne komische Tastatur? ;)
Ist ein Notebook, da kommt sowas schon mal vor... *g*
HTH, -dnh
[1] gefunden in der kbd-Doku :)
Gruss Mario
Hallo, Am Son, 02 Jul 2006, Mario van der Linde schrieb:
Am Sonntag, 2. Juli 2006 02:17 schrieb David Haller: [...]
man kbd_mode?
Hmm, diese manpage ist _die_ Definition für "dürftig"
*g*
showkey.c hat mich ein wenig inspiriert. Nachdem ich mir den Code angeschaut habe, kommt es mir so vor als würde da eine weitere Option -m / --showmap hingehören. Da bastel ich grad ein wenig dran. Da ich aber kein C-Programmierer bin, könnte das auch ins nirgendwo führen... :)
dumpkeys macht das. Z.B. 'dumpkeys -1'.
Was hast du denn fuer ne komische Tastatur? ;)
Ist ein Notebook, da kommt sowas schon mal vor... *g*
Toshiba? -dnh -- Get back there in front of the computer NOW. Christmas can wait. -- Linus "the Grinch" Torvalds, 24 Dec 2000 on linux-kernel -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
Am Sonntag, 2. Juli 2006 17:26 schrieb David Haller: [...]
Was hast du denn fuer ne komische Tastatur? ;)
Ist ein Notebook, da kommt sowas schon mal vor... *g*
Toshiba?
Joa, sind die etwa bekannt dafür? Im allgemeinen bin ich eigentlich recht zufrieden mit dem Teil...
-dnh
-- Get back there in front of the computer NOW. Christmas can wait. -- Linus "the Grinch" Torvalds, 24 Dec 2000 on linux-kernel
Gruss Mario
Hallo, Am Son, 02 Jul 2006, Mario van der Linde schrieb:
Am Sonntag, 2. Juli 2006 17:26 schrieb David Haller: [...]
Was hast du denn fuer ne komische Tastatur? ;)
Ist ein Notebook, da kommt sowas schon mal vor... *g*
Toshiba?
Joa, sind die etwa bekannt dafür? Im allgemeinen bin ich eigentlich recht zufrieden mit dem Teil...
Ja. Deren Tastaturen sind IIRC traditionell seltsam. http://freshmeat.net/projects/toshlinux/ http://freshmeat.net/search/?q=toshiba§ion=project HTH, -dnh -- "The Board views the endemic use of PowerPoint briefing slides instead of technical papers as an illustration of the problematic methods of technical communication at NASA." -- http://www.caib.us/news/report/default.html -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
Am Samstag, 1. Juli 2006 19:53 schrieb Mario van der Linde:
Aber womit kann ich mir die Zuordnung Scancode <-> Keycode anzeigen lassen?
man getkeycodes Gruß. Oliver -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
participants (4)
-
David Haller
-
Jan Ritzerfeld
-
Mario van der Linde
-
Oliver Block