Re: debian ile gelen türkçe problemleri (SONUC)
* Nilgün Belma Bugüner <nilgun@superonline.com> [2003-07-02 02:56:53+0300]
> Selam,
Selam
> Şu delete ile ne sorununuz var? Doğrusu anlamıyorum. Delete tuşu, imlecin sağındaki
> karakteri, Backspace tuşu ise imlecin solundakini siler ve bu hem konsol klavyesinde
> hem de xkb klavyesinde benim hazırladıklarımda sorunsuzdur.
> Eğer bir sorun varsa bu Debian ile ilgili olmalı. Sizden başka şikayet eden yok.
Once bazi konularda anlasalim:
- Tartisma alanimiz X ortami degil, X konsolu degil, karanlik *konsol*
ortami.
- "Backscape" derken kursorun solundaki karakterin silinmesi eylemini
kastediyoruz.
- "Backspace" sozcugunu Ascii set icindeki bir kontrol karakteri olan "BS"
ile karistirmayalim. "BS"in ascii karsiligi "0x08"dir ve bunun da
karsiligi ^H dir.
- "Delete" derken kursorun uzerinde bulundugu karakterin silinmesi
eylemini kastediyoruz.
- "Delete" sozcugunu Ascii set icindeki bir kontrol karakteri olan
(daha acik ifadeyle Ascii setin en son, yani 127nci karakteri) "DEL"
ile karistirmayalim. DEL'in ascii karsiligi "0x7f"dir ve bunun da
karsiligi ^? dir.
- Isleri daha da karistirmak adina ek bilgi: vt220 terminalini emule
eden Linux *kernel* tus eslemi "Delete" eylemi icin "\e[3~" kodunu
kullanir.
- "Backspace" ve "Delete" *eylemlerinin* tanimlandigi sekilde
davranmasi bircok faktore baglidir. Linux kernel'in on tanimli tus
haritasi, sectiginiz terminal emulasyonuna iliskin terminal
database'i (eskiden `termcap', simdilerde `terminfo' ve `ncurses')
ve uygulamanin kendi ozel secimleri.
Simdi de Linux camiasinda -bir yigin kaosdan sonra- yeni yeni oturmaya
baslayan standart davranisi tarif ediyorum (eski standartlarla
ilgilenmiyorum), ayrintilar icin [1] kaynagina bakilabilir:
- "Backspace" eylemine atanan kontrol karakteri Ascii "DEL"dir. Bakin
bunu tekrar yaziyorum, "Backspace" eylemini gerceklemek uzere
eslediginiz tusun uretmesi gereken kontrol karakteri Ascii "DEL"
yani ^? dir. (Denemek isteyecekler icin ek bilgi: uretilen kontrol
karakterini gormenin basit yontemi Ctrl-V tus kombinasyonundan sonra
o tusa basmaktir.) Yani klavyede "Backspace" eylemi icin secilen
<-- tusuna <C-v> tus kombinasyonundan sonra bastiginizda ^? kodunun
uretilmesi gerekir.
- "Delete" eylemine atanan kontrol karakteri "\e[3"dur. Bu secim
-tutarli veya tutarsiz ayri bir konu- linux cekirdeginden gelen on
tanimli kod ile uyumluluk acisindan yapilmistir. Yani <C-v> tus
kombinasyonundan sonra piyasadaki PC klavyelerde uzerinde "Delete"
yazan tusa bastiginizda "^[[3~" ("\e[3") kodunun uretilmesi gerekir.
Eger -uzerinde konustugumuz sorunda oldugu gibi- bu tus *yanlis
olarak* "Backspace" eylemini gerceklestiriyor ise muhtemelen ^?
kodunu uretecektir. Bu tip yanlislar cogunlukla yukarida
bahsettigim karisikliktan kaynaklanir. Yani:
Hmmm, "Delete" eylemi icin Ascii set icindeki "DEL" kodunu
("Delete" sembolunu) atamaktan daha dogal ne olabilir....
Ve booom! :-)
- Bir dagitim "Delete" ve "Backspace" hadiselerine bir de Ascii "BS"i
yani ^H yi karistiriyorsa intihar etmis demektir. Redhat zamaninda
boyle bir intihar girisiminde bulundu (evet, Turkce klavyeden degil
kendi US klavyelerinden bahsediyorum :-). Debian ilk surumlerinden
itibaren ("Hamm"den sonra) bu hatayi gidermistir. Iste kaynak
[1]'den alinti:
It's ridiculous that only Debian has done something about this issue.
Where's Redhat with their "Product Of The Year 1998"? Linux for the
masses? They can't even get the keys right!
- "Backspace/Delete" sorununu cozmenin on sarti "<--" tusuna ^?
kodunu, "Delete" tusuna da "^[[3~" kodunu eslemektir. Hersey bir
yana standartlar umurumda degil diyenler icin dahi en azindan bu
iki tusun farkli kodlar uretmesi mantiksal on sarttir. Eger bu
standart eslemeler veya farkli eslemeler yapilirsa en azindan
konsol'da dogru "Backspace/Delete" eylemleri "bash"in "readline"
yapilandirma dosyasi olan "/etc/inputrc"de yapilacak oynamalarla
elde edilebilir. (Bir dagitimin dogru eylemler icin boyle bir ayar
gerektirmesi utandiricidir. Redhat *bir zamanlar* maalesef boyle
bir hataya ducar olmustur.)
Simdi bizim klavyelere geliyorum...
Dosya: (Nam-i diger Layout 1)
tr_q-latin5.kmap.gz
Problem:
keycode 14: "<--" (Backspace) tusuna "Backspace" sembolu ("BS" kontrol
karakteri) atanmis. Bu tus ^H uretiyor. Neyse ki vt220'de ^H geriye
dogru sildiginden sorun yok gibi gozukuyor.
Tanriya sukur keycode 111: "Delete" tusuna hicbir sey atanmamis ve
bu tus icin tanimli kernel tus eslemi overwrite edilmemis.
Dolayisiyla dagitim -baska bir ayarla- ekstra bir giciklik yapmaz ise
bu tus dogru calisiyor.
Imdaat! :-) keycode 16: q icin altgr-q tanimsiz. "@" karakterini
basamiyor. Bu sorunun cozumu icin e-mail dahi atmayacaksiniz :-))
Diger kivir zivir problemler...
Dosya: (Nam-i diger Layout 2)
trq.kmap.gz
Problem:
keycode 14: "<--" (Backspace), keycode 111: "Delete" tuslarina
"Delete" sembolleri (Ascii "DEL") atanmis. her ikisi de ayni kodu: ^?
uretiyor ve ayni eylemi ("Backspace eylemini) gerceklestiriyor. Yani
cozum icin gerekli asgari on sarti (iki tusun farkli kodlar uretmesi
sartini) dahi saglamiyor.
Dosya: (Sizin hazirladiginiz trq.kmap eslemi)
http://www.belgeler.org/howto/turkish-howto_trq.html
Problem:
keycode 14: "<--" (Backspace) tusuna "Delete" sembolu ("BS" kontrol
karakteri) atanmis. ^? uretiyor, yani dogru calisiyor.
keycode 111: "Delete" tusuna da "Delete" sembolu atanmis. Yani bu tus
da ayni ^? kodunu uretiyor. Her iki tus ayni kodu urettiginden cozum
icin gerekli asgari sart yok! Sizin tuseslemini Debian'da denedim,
diger dagitimlarda deneme firsatim olmadi. Fakat amacim mumkun oldugu
nispette dagitimdan bagimsiz sekilde bu problem icin cozum uretmek
oldugundan sadece Debian ornegi yeterlidir diye dusunuyorum.
Bu sorunu tek benim yasadigimi, kimsenin dillendirmedigini
soylemissiniz. Kullandiginiz dagitim otomatik olarak bu basit problemi
spotlayip bir ilklendirme betiginde duzeltiyor olabilir (zor birsey
degil bunu yapmak). Fakat kendi dilinize ait klavyenin
"Backspace/Delete" islerinde dogru calismasi kullandiginiz dagitimin
mudahalesine kalmis ise vay halimize! Su ana kadar Turkce klavyede
"Backspace/Delete"i adam gibi calisan bir dagitima rastlamadim.
Bilemiyorum biraz da dinozor oldugumdan yeni dagitimlarda ne olup
bittigini takip edemiyor da olabilirim. En son bu sorunlari FM'den
Kivilcim ile konusmus idik, o da Klaus Knopper'a duzeltilmis bir trq
eslemi gonderdi. Eger Knoppix'de bu meseleyle karsilasmayanlar var ise
sagolsun Kivilcim'in sayesindedir.
Cevabiniz uzerine Redhat'i esas alan Mandrake 9.1'de deneme yaptim.
Problem ayniyla vaki... Listedeki arkadaslar bu anlattiklarim isiginda
Debian ve diger dagitimlar uzerinde deneme yapip sonuclari
raporlayabilir mi acaba?
[1] http://igloo.its.unimelb.edu.au/Webmail/tips/msg00238.html
--
roktas
Reply to: