To
15
Syy
2011
17:33
Windows-näppäimen uudelleenohjelmointi
Tietokonenäppäimistö on tullut monille tutuksi viimeisten parin kolmenkymmenen vuoden aikana. Näppäimistö tai sormio ei ole juurikaan kokenut muutoksia sitten kirjoituskoneen keksimisen 1800-luvun. Tietokoneaikakausi toi mukanaan tukun uusia näppäimiä perusaakkosten, numerojen ja välimerkkien lisäksi. Myöhemmin erilaiset erikoisnäppäimistöt ovat saaneet kylkiäisiksi enemmän tai vähemmän painikkeita erityisiin tarkoituksiin. Erikoisnäppäimistöjä kutsutaan eri nimillä, kuten medianäppäimistöt ja pelinäppäimistöt. Suomalaisen kirjoittajan kannalta yleisessä tietokonenäppäimistössä on kaikki olennaiset painikkeet ja joukko erikoisnäppäimiä, joita tulee käytettyä harvakseltaan tai ei koskaan.
Kuuntelen Spotify-radiota ja aika ajoin haluan hypätä jonkun kappaleen yli. Seuraava kappale alkaa soida painamalla multimedianäppäimistön erillistä "Soita seuraava" -painiketta. Kaikissa näppäimistöissä ei tosin ole tätä kätevää painiketta, joten päätin ratkaista puutteen korvaamalla jonkun perusnäppäimistön painikkeen ohjelmoimalla sen toiminnallisuuden uudestaan. Windows-käyttöjärjestelmässä uuden toiminnallisuuden toteuttaminen olemassa olevaan näppäimeen onnistuu suhteellisen helposti. Aluksi etsin laudalta sellaisen näppäimen, jota en käytä juuri koskaan. Painikkeiden seasta valikoitu erikoinen, niin sanottu Windows-painike, joita on tyypillisesti kaksin kappalein, yksi vasemmalle ja toinen oikealle kädelle. Olen tottunut käyttämään vasemmanpuoleista Windows-painiketta pikanäppäimenä, joten uhratuksi tuli siis joutilas oikeanpuoleinen kosketin.
Ryhdyin ohjelmoimaan siihen "Soita seuraava" -painikkeen toiminnallisuutta. Windows-käyttöjärjestelmässä näppäinten uudet toiminnallisuudet merkitään rekisteriin. Työhön löytyy epämääräinen joukko sovelluksia, joilla tempun voi tehdä nopeasti ja vaivattomasti. Microsoftilla on lisäksi Keyboard Layout Creator -sovellus, jolla voi laatia kokonaan uuden näppäimistöasettelun. Aivan näin suurta operaatiota en ollut valmistelemassa, joten tyydyin yksinkertaiseen rekisterimerkintään. Näppäimen uusi toiminnallisuus luodaan binääriarvona HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Keyboard Layout -ryhmään. Varsinainen binäärinen arvo on joukko numeroita, joilla kerrotaan miten monta näppäintä muutos koskee, mikä näppäin muutetaan ja minkä näppäimen toiminnallisuudella se korvataan. Arvo on pitkä numerosarja:
00000000 00000000 02000000 00003A00 00000000
- missä ensimmäiset 16 numeroa ovat aina nollia;
- lihavoitu "02" esimerkissä ilmaisee, miten monta näppäintä muutos koskettaa (tarkalleen ottaen tämä kertoo, miten monta kahdeksan numeron ryhmää tulee seuraavaksi eli käytännössä arvojen pituuden);
- seuraavaksi lihavoitu "0000" ilmaisee uuden toiminnallisuuden, jolla alkuperäinen painike korvataan (tässä tapauksessa näppäin poistetaan kokonaan käytöstä asettamalla uudeksi arvoksi joukko nollia);
- lihavoitu "3A00" ilmaiseen alkuperäisen painikkeen, joka tullaan korvaamaan uudella toiminnallisuudella (tässä esimerkissä Caps Lock -painikkeen toiminnallisuus poistetaan) ja
- loput kahdeksan nollaa päättävät lukuarvon.
Seuraava vaihe uudelleenohjelmoinnissa on näppäinten numerokoodien selvittäminen. Jokaisella painikkeella on yksilöivä numerosarja, joka useimmiten esitetään heksadesimaalimuodossa. Jos jonkin näppäimen toiminnallisuuden haluaa kokonaan pois, riittää asettaa sen uudeksi arvoksi neljä nollaa. Oheisessa taulukossa on lueteltu yleisimpien näppäinten yksilöivät eli niin sanotut scan code -arvot.
Näppäinten scan code -arvoja Perusnäppäimet Scan Code ' " 28 00 - _ 0C 00 , < 33 00 . > 34 00 /? 35 00 ;: 27 00 [ { 1A 00 | 2B 00 ] } 1B 00 ¨ ~ 29 00 = + 0D 00 0 ) 0B 00 1 ! 02 00 2 @ 03 00 3 # 04 00 4 $ 05 00 5% 06 00 6 ^ 07 00 7 & 08 00 8 * 09 00 9 ( 0A 00 A 1E 00 B 30 00 C 2E 00 D 20 00 E 12 00 F 21 00 G 22 00 H 23 00 I 17 00 J 24 00 K 25 00 L 26 00 M 32 00 N 31 00 O 18 00 P 19 00 Q 10 00 R 13 00 S 1F 00 T 14 00 U 16 00 V 2F 00 W 11 00 X 2D 00 Y 15 00 Z 2C 00 Erikoisnäppäimet sovelluspainike 5D E0 askelpalautin 0E 00 Caps Lock 3A 00 Delete 53 E0 End 4F E0 Enter 1C 00 Escape 01 00 Home 47 E0 Insert 52 E0 vasen Alt 38 00 vasen Ctrl 1D 00 vasen vaihtopainike 2A 00 vasen Windows 5B E0 Num Lock 45 00 Page Down 51 E0 Page Up 49 E0 virtapainike 5E E0 PrtSc 37 E0 oikea Alt 38 E0 oikea Ctrl 1D E0 oikea vaihtopainike 36 00 oikea Windows 5C E0 Scroll Lock 46 00 Sleep 5F E0 välilyönti 39 00 tabulaattori 0F 00 herätyspainike 63 E0 Numeronäppäimet 0 52 00 1 4F 00 2 50 00 3 51 00 4 4B 00 5 4C 00 6 4D 00 7 47 00 8 48 00 9 49 00 - 4A 00 * 37 00 . 53 00 / 35 E0 + 4E 00 Enter 1C E0 Nuolinäppäimet alas 50 E0 vasemmalle 4B E0 oikealle 4D E0 ylös 48 E0 Funktionäppäimet F1 3B 00 F2 3C 00 F3 3D 00 F4 3E 00 F5 3F 00 F6 40 00 F7 41 00 F8 42 00 F9 43 00 F10 44 00 F11 57 00 F12 58 00 F13 64 00 F14 65 00 F15 66 00 Sovellusnäppäimet laskin 21 E0 sähköposti 6C E0 media 6D E0 pikaviestin 11 E0 oma tietokone 6B E0 F-näppäimet sulje 40 E0 Fwd 42 E0 ohje 3B E0 uusi 3E E0 Office Home 3C E0 avaa 3F E0 tulosta 58 E0 toista 07 E0 vastaa 41 E0 tallenna 57 E0 lähetä 43 E0 oikolue 23 E0 tehtävälista 3D E0 peruuta 08 E0 Medianäppäimet mykistä 20 E0 soita seuraava 19 E0 soita/paussi 22 E0 soita edellinen 10 E0 pysäytä 24 E0 vähennä äänenvoimakkuutta 2E E0 lisää äänenvoimakkuutta 30 E0 Selainnäppäimet paluu 6A E0 suosikit 66 E0 seuraava 69 E0 selain/alkuun 32 E0 uudista 67 E0 etsi 65 E0 pysätä 68 E0 Microsoft Natural Multimedia Keyboard -näppäimet kuvat 64 E0 musiikki 3C E0 mykistä 20 E0 soita/paussi 22 E0 pysätä 24 E0 + (lisää äänenvoimakkuutta) 30 E0 - (vähennä äänenvoimakkuutta) 2E E0 |<< (edellinen) 10 E0 >>| (seuraava) 19 E0 media 6D E0 posti 6C E0 selain/alkuun 32 E0 pikaviestin 05 E0 laskin 21 E0 kirjaudu ulos 16 E0 Sleep 5F E0 ohje (F1-näppäin) 3B E0 peruuta (F2-näppäin) 08 E0 toista (F3-näppäin) 07 E0 Fwd (F8-näppäin) 42 E0 lähetä (F9-näppäin) 43 E0 oikolue (F10-näppäin) 23 E0 tallenna (F11-näppäin) 57 E0 tulosta (F12-näppäin) 58 E0 Juttuni aiheena olevan oikeanpuoleisen Windows-painikkeen arvo on 5C E 0 eli teen tästä näppäimestä "Soita seuraava" -painikkeen, jonka arvo puolestaan on 19 E0. Lisään rekisteriin uuden arvon nimellä "Scancode Map". Työvaiheet ovat:
- Käynnistä Regedit-rekisterieditori.
- Avaa HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Keyboard Layout -ryhmä.
- Valitse Edit / New / Binary Value ja anna arvon nimeksi Scancode Map.
- Avaa uusi arvo ja näppäile numerot:
00 00 00 00 00 00 00 00 02 00 00 00 19 E0 5C E0 00 00 00 00- Paina lopuksi OK ja sulje editori.
- Kirjaudu ulos ja uudelleen sisään tai käynnistä tietokone uudelleen, jolloin muutos astuu voimaan.
Sain pienellä vaivalla uuden toiminnallisuuden yksinkertaiseen perusnäppäimistööni. Voin nyt helposti ohittaa soittokappaleita painamalla milloin tahansa oikeanpuoleista Windows-näppäintä. Spotify-soitto-ohjelmassa ei tarvitse olla fokusta, sillä painikkeen toiminnallisuus on käytettävissä kaikkialla käyttöjärjestelmässä, olinpa sitten kirjoittamassa sähköpostia tai selaamassa nettisivuja. Näppäimistön tehokkaampi hyödyntäminen nopeuttaa työskentelyä ja helpottaa elämää. Käyttämättömät painikkeet kannattaakin siis ottaa tehokäyttöön ja asettaa niille uudet toiminnallisuudet.
- Julkaistu
- Torstaina 15.9.2011 klo 17:33
- Linkki
- Windows-näppäimen uudelleenohjelmointi
- Edellinen
- Sateenvarjo hajosi
- Seuraava
- Virtuaalinen Tampere
- Avainsanat