[gelöst] Tablet-Button: Pfeil-Tasten tauschen

silberstein

New member
Registriert
2 Okt. 2010
Beiträge
173
Die Pfeil-Tasten der Tablet-Buttons sind für die Verwendung des Tablets in Portrait-Mode optimiert.
Ich arbeite jedoch meist im Landscape-Haltung (Annotation von Vorlesungsfolien) und da stört natürlich die umgekehrte Belegung der Pfeil-Tasten (vorwärts=rückwärts).

Hat jemand eine Idee, wie ich das ändern kann oder wo diese Einstellungen wieder gespeichert sind
(keycode, gconf oder dconf bei GNOME...) ? Danke euch.
 
Zuletzt bearbeitet:
Google mal nach xev und xmodmap.

Damit kannst du es machen :)

Grüße
 
Beides tolle Hinweise. Danke.

Ich habe mich an folgende Anleitung gehalten:

http://wiki.ubuntuusers.de/Xmodmap

D.h.

1) keycodes ermittelt mit xev: 112, 117
2) .Xmodmap angelegt und dort die Zuweisungen vertauscht
3) Neuanmeldung: werde gefragt, ob .Xmodmap geladen werden soll: ja

Resultat: unverändert für Landscape-Modus falsche Zuordnung

Was habe ich übersehen?
 
Probiers mal mit evtest.....xev hat mich immer zum Wahnsinn getrieben. Danach nur zum ausprobieren mit setkeycodes XX YYY. Wenn alles okay ist, kannst Dir das in die rc.local oder woanders hin schreiben.
 
Ok, evtest ermittelt folgende Werte:

Event code 104 (PageUp) für "Rechts" (in Landscape-Haltung)
Event code 109 (PageDown) für "Links" (in Landscape-Haltung)

hört sich erstmal logisch an, führt aber bei z.B. im pdf-viewer, Xournal zum unlogischen Verhalten.

xev hatte da Werte ausgegeben, die auch das Verhalten widerspiegeln:

"Rechts": keycode 112: Prior
*"Links": keycode 117: Next

Wie dem auch sei, Hauptsache ich bekomme beide getauscht.
Jetzt werde ich mir mal setkeycodes anschauen.

(Ich sehe im Text einen Stern *, den ich nicht getippt habe: Browser, Bug, mein Fehler?)
 
Zuletzt bearbeitet:
sudo showkey -s
liefert folgende scancodes (außerhalb von X):
  • *linke Taste: * * 0xe0 0x51 0xe0 0xd1
  • *rechte Taste: *0xe0 0x49 0xe0 0xc9
Die ersten zwei Blöcke bilden wohl das "Press"-Ereignis,
die letzen beiden das "Release"-Ereignis.

Wie hängen nun

- keycodes von xev
- Event codes von evtest
- scancodes von showkey

zusammen? Und wie muss setkeycodes angewendet werden?

Schade, dass der xev+xmodmap-Ansatz nicht funktionierte.
*Bestimmt mein Fehler. Oder irgendein "override" (GNOME)?
 
Zuletzt bearbeitet:
Ich hab mal rumgespielt mit

sudo setkeycodes 0x51 112
sudo setkeycodes 0x49 117

und umgekehrt. Hatte aber keinen Effekt. Bin etwas ratlos.
 
Werd etwas später folgendes ausprobieren
(also mit dem vollständigen scancode arbeiten):

sudo setkeycodes 0xe0 0x51 0xe0 0xd1*112
sudo setkeycodes 0xe0 0x49 0xe0 0xc9*117

Wenn das auch nicht gelingt,
nehme ich statt der keycodes die Event codes.
 
Bei setkeycodes gibst Du immer erst den Keycode und dann den Keysym an. Keycode ist quasi das, was Deine Taste ausgibt, der Keysym ist dann das Zeichen, welches die Taste schlussendlich darstellen soll. Hier ein Bespiel:

Code:
setkeycodes 68 125

Hier wird also die Taste "68" mit dem Symbol "125" belegt. Schau nochmal in meinem verlinkten HowTo den Punkt 4 an. Da ist das Schritt für Schritt erklärt. Wenn Du evtest startest, siehst Du in der Auisgabe ganz oben die Belegung Deiner Tasten, also welchen Keysym Du beispielsweise eingeben musst, damit Du den Buchsatben "w" erhälst...oder eben "vor" oder "zurück".

Grüße
Frank
 
Erfolg

sudo setkeycodes 6d 109
sudo setkeycodes 6e 104

evtest (erst rechts, dann links gedrückt)


Event: time 1326829880.240952, type 4 (Misc), code 4 (ScanCode), value 6d
Event: time 1326829880.240961, type 1 (Key), code 109 (PageDown), value 0
Event: time 1326829880.240964, -------------- Report Sync ------------

Event: time 1326829928.731717, type 4 (Misc), code 4 (ScanCode), value 6e
Event: time 1326829928.731727, type 1(Key), code 104 (PageUp), value 0
Event: time 1326829928.731729, -------------- Report Sync ------------


Vorher war's umgekehrt.

Kurzum, so hat's geklappt.

1) evtest anwerfen
2) Event-Ausgabe interpretieren
3) setkeycodes setzen

Jetzt muß ich's nur noch "fixieren".

Großes Dankeschön an Frank
 
Fixierung hat so funktioniert, wie im X61T-Link beschrieben:

sudo setkeycodes 6d 109
sudo setkeycodes 6e 104

in die

/etc/rc.local

schreiben. Fertig.
 
Ich muß gestehen, ich hatte es versehentlich mit "sudo" in die rc.local geschrieben.
Geht zwar auch, aber keine Empfehlung. Danke für den Hinweis.
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben