[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: shift takılı kalıyor sanki



* Osman Yozgatlıoğlu [2005-01-07 14:36:16+0200]
> Evde ve işyerinde iki makinada da olunca donanım problemi olamayacağını 
> düşündüm.
> Sarge kullanıyorum
> Konsolda uzun süre çalıştıktan sonra evdeki tty1 işyerinde de tty2'de 
> sanki shift tuşu basılı kalmış gibi oluyor.
> caps-lock sönükken büyük  harf, yanıkken küçük harf yazıyor.
> Harfler neyse de üstteki sayı satırının kullanımı imkansızlaşıyor.
> O konsolda logout-login de sorunu çözmüyor.
> ilgili tty'deki getty'yi restart etmem de işe yaramadı.
> 
> Var mıdır sebebini bilen.

Hmm, meseleyi anladim.  Oncelikle yuce Linux kernel'indan ozur dilerim,
kendisine dil uzattigim icin :-)  Linux cekirdeginin Unicode kipte
CapsLock'la arasi iyi degildir.  Bir ara cok yogun sekilde cekirdek
denemesi + Turkce konsol klavye testi yapmistim.  Bu deneyimlerin
zihnimde biraktigi tortuyla oyle dusundum galiba.  Her neyse...

Biraz once hatayi tekrar olusturmak icin konsol actim ve dumpkeys'le o
an etkin olan tus eslemini inceledim.  Soyle bir goruntu:

    keycode 125 = Shift_Lock
    keycode 126 = Caps_On
    keycode 127 = CapsShift

Yani herhangi bir sekilde klavyenizdeki uc Windows® tusundan birine
dokundugunuzda garip seyler donmeye basliyor.  Iste biri CapsLock
led'ini yakiyor, digeri CapsLock'a geciyor vesaire...

Sistemde trq kurulu ve boyle bir esleme trq dosyasinda mevcut degil.
"Nereden geldi bu?" diye bakinirken bu tanimlarin trqu yani unicode
eslemde bulundugunu farkettim.  Peki 'install-keymap' ile trq eslemini
kurdugumuz halde o dosyada bulunmayan bu eslemeler nicin hortluyor?  Bu
sorunun muhtemel cevabi console-tools'un klavye eslemi kurarken
kullandigi dumkeys | loadkeys cevrimi.  Konu biraz karisik.  D-i'da
trqu'yu kullaniyoruz ve sistem kurulumu tamamlandiginda klavyeyi trq'ya
(ISO kipi) geciriyoruz.  Fakat bu son asamada kurulum:

    loadkeys trq && dumpkeys | gzip -9 >/etc/console/boottime.kmap.gz

gibi bir komutla yapildigindan[1] trqu'daki _uzerine yazilmayan_
eslemeler ayniyle acilis zamaninda etkin oluyor :-)  Benim anladigim
senaryo bu; fakat sonucta kurgusal konusuyorum, tam emin olmak icin
biraz daha deneme yapmak lazim.

Problemi cozmenin bir yolu trqu'daki eslemeleri kaldirmak.  Fakat
console-data paketi bir temel paket olarak su an dondurulmus durumda.
Yani bir yama gondersem de Sarge'a yetisecegi supheli.  Debian Way (TM)
uyumlu bir baska (gecici) cozum buldum: /etc/console-tools/remap
olanagini kullanmak.  Ekte gonderdigim 'remap' isimli dosyayi
/etc/console-tools/dizinine kopyalayin (veya icerigini remap dosyasina
aktarin).  Bu dosya acikladigim haliyle problemi ortadan kaldiracaktir.
Tabii isin icinde bir baska bit yenigi yoksa :-)

Geribildirim yaparsaniz sevinirim.

[1] Bu esasinda zarif bir yontem olmakla birlikte cesitli hatalara da
yol aciyor.  Aylar once bu olasi hatalarla ilgili bir hata bildirimi
yapmistim.

-- 
roktas
# This sed script is run across the dumpkeys output to remap keys on the console

# This turns caps lock into control
#s/keycode  58 = Caps_Lock/keycode  58 = Control/;

# Windows® tuslari kafa karistirmasin.
s/keycode 125 = Shift_Lock/keycode 125 = nul/;
s/keycode 126 = Caps_On/keycode 126 = nul/;
s/keycode 127 = CapsShift/keycode 127 = nul/;

Attachment: signature.asc
Description: Digital signature


Reply to: