← Back to team overview

sslug-teknik team mailing list archive

Re: Er der nogen der ved hvordan man får et såkaldt 'multimedie' keyboard til at virke ?

 

>> jeg vil umiddelbart tro det var noget der skulle være med i kernen.. og
>> således kunne findes i dens konfiguration..
>> det er dog ikke muligt i 2.2.X kernerne... men prøv 2.3.X kernerne..
>vroevl, hvorfor skulle det dog vaere med i kernen ??
>der er almindelig keyboard support nok. De extra knapper sender
>sandsynligvis bare et andet bit mønster end de normale knapper paa
>keyboarded. Problemet bliver at finde dem. Ellers skal du vel have et
>program der opfanger disse taste tryk. Siden jeg formoder du kører i X, så
>skal de bare configureres der, og saa kører det.

Det er nu ikke sikkert det er så nemt. Jeg fik for mange år
siden lokket en linux programmør (Andries Brouwer) til at lave
support i konsoldriveren for de fire konsolskiftetaster der
sidder på et RC930/RC931 tastatur (fra Regnecentralen).
En af dem konflikter med en scankode japanerne bruger
(JAP_86).

Den fil det er rettet i har nu fået navneforandring til
/usr/src/linux/drivers/char/pc_keyb.c, og det er omkring
linje 180.

Prøv at trykke på dem alle sammen og kig i /var/log. Jeg
har konstateret at kernen logger hvis man trykker på en
ukendt tast. De øvrige tasters scankode kan man teste
med showkey programmet.

Desværre sidder jeg ikke lige med et rc931 keyboard, da
det nægter at virke med et 3 meters forlængerkabel. Men
hvis xev programmet kan se at man trykker på en tast, kan
man også konfigurere X serveren til at fortolke den.

Men nu er jeg på dybt vand, for hvornår fanger applikationen,
window manageren, hhv. X serveren et tastetryk?
Bare jeg vidste det.

Addendum. Konsolskiftetasterne skulle yderligere ind i en
keyboard map (tfj.map) fil som tilføjes som argument til
loadkeys programmet under startup: loadkeys dk-latin1.map tfj.map

tfj.map:
========
keycode  124 = Console_1
        shift   keycode  124 = Console_5
        control keycode  124 = Console_9
        alt keycode      124 = Console_13
keycode  125 = Console_2
        shift   keycode  125 = Console_6
        control keycode  125 = Console_10
        alt keycode      125 = Console_14
keycode  126 = Console_3
        shift   keycode  126 = Console_7
        control keycode  126 = Console_11
        alt keycode      126 = Console_15
keycode  127 = Console_4
        shift   keycode  127 = Console_8
        control keycode  127 = Console_12
        alt keycode      127 = Console_16

-- 
torben fjerdingstad        | linux-2.2.10-smp/GNU/gnome-1.0
tfj@xxxxxxxxxxxxxxx        |   Man skal ikke skyde bjørnen
http://www.fjerdingstad.dk |     før skindet er solgt.