gorkem@gelecek.com.tr
Bu belge, Linux ve bazý özel durumlarda UNIX iþletim sisteminde Türkçe kullanabilmek için gereken eklemeler hakkýnda okuyucuyu bilgilendirmek için yazýldý. Türkçe'ye ait olan latin5, bir baþka adýyla ISO8859-9 standardýnýn, Amerika ve bazý Avrupa ülkelerince kullanýlan latin1 standardý ile ayný olmamasý nedeniyle sadece Linux deðil, hemen hemen tüm iþletim sistemlerinde bu sorunu fazlasýyla yaþýyor olmalýsýnýz. Ýleride ele alýnacak konular ile bu sýkýntýlarýn pek çoðunu atlatacaðýnýzý ümit ediyorum. Eðer metin ekranda, X Window altýnda Türkçe yazamýyor ve okuyamýyorsanýz, pine ve Netscape gibi uygulamalarda Türkçe karakterleri göremiyorsanýz bizi izlemeye devam edin.
Bu belgedeki çözüm denemelerimi Red Hat Linux ile yaptým. Çalýþmayan, eksik bilgi içeren ya da eklenmesinde fayda gördüðünüz bir bölüm gördüðünüzde gorkem@gelecek.com.tr adresine bir ileti yollamanýz yeterlidir. Özellikle diðer Linux daðýtýmlarýnda yapýlacak iþlemler farklý olabilir, bu nedenle çeþitli Linux daðýtýmlarýnda karþýlaþtýðýnýz çözümleri bana gönderebilirsiniz.
Sürüm 1.0 : Turkish-HOWTO'nun yazýlmasý. Hala belirli alanlarda Türkçe sorunlarý yaþadýðýmdan dolayý bu belgenin 1.0 sürümde kalmayacaðýný ümit ediyorum. Dosya, birtakým alanlarda eksiklikler içerebilir. Burada görmek istediðiniz ne varsa bana bir ileti gönderin. Tüm mektuplarýnýza cevap vermeye çalýþacaðým.
Linux'un HOWTO belgeleri, Linux meraklýlarý tarafýndan biraraya getirilmiþ ve hepsi belirli bir konuyu ele alan inceleme yazýlarýndan oluþuyor. Hem teorik, hem de pratik çözümler içeren bu belgeleri tüm Linux kullanýcýlarýnýn okumalarýný tavsiye ederim.
/usr/doc
dizininden eriþebilirsiniz. Buradaki
HOWTO dizini altýnda ise tahmin edebileceðiniz gibi HOWTO
belgelerini bulabilirsiniz.
Bazý HOWTO belgelerinin çevrilmesi sonucu oluþturulan Türkçe Linux-NASIL sayfalarýna www.linux.org.tr adresinden ulaþabilirsiniz.
Haber öbekleri :
Kitaplar :
Türkiye'de Linux ile ilgili çýkmýþ tüm yayýnlara www.gelecek.com.tr adresinden ulaþabilirsiniz.
Bu bölümde, metin ekranda Türkçe yazmak için gerekli programlarý
inceleyeceðiniz. Bunlardan ilki, bilgisayara Türkçe klavye tuþ takýmý
haritasýný gösterecek olan loadkeys
komutudur. loadkeys
komutu ve uygun bir Türkçe klavye daðýlýmý haritasý yardýmýyla istediðimiz
bir Türkçe klavyeyi (Q Türkçe, F Türkçe gibi) yükleyebiliriz.
loadkeys
komutunun kullanýmý çok basittir. Daðýtýmýnýzda bulunan ve
/usr/lib/kbd/keymaps/i386
dizini altýna yerleþtirilmiþ olan klavye
haritalarýndan bir tanesini seçin. Aslýnda klavye haritalarýnýn adýný
bilmek zorunda deðilsiniz, burada kullanabileceðiniz dosyalarý ve ne
tip bir klavyeyi yüklediklerini görebilirsiniz:
Þimdi loadkeys
komutunu birkaç örnekte kullanalým:
$ loadkeys trq.map (Türkçe Q klavye haritasýný yükle)
$ loadkeys trf.map (Türkçe F klavye haritasýný yükle)
$ loadkeys tralt.map (Türkçe F klavye haritasýný yükle)
Eðer normal US klavye haritasýna dönmek isterseniz, defkeymap klavye eþlem dosyasýný kullanýn.
$ loadkeys defkeymap
Yapýlan tüm iþlemler tüm sistemde etkin olacaktýr. Bir kullanýcý çalýþma yaptýktan sonra sistem kapanýncaya, ya da baþka bir klavye daðýlýmý yüklenince deðin klavye düzeni ayný kalýr.
Not: Çoðu Linux daðýtýmlarýnda bulunan kbd paketi sistemde kullanýlabilecek
klavye eþlem (daðýlým) dosyalarýný ve yazýtiplerini içerir. Son
zamanlarda, diskten tasarruf saðlamak amacýyla hem yazýtipi, hem de
klavye eþlem dosyalarý sýkýþtýrýlarak kullanýlmaktadýr. Bu tip sýkýþtýrýlmýþ
dosyalarýn sonu .gz ile biter (örneðin trq.map.gz
).
loadkeys
ve setfont
komutlarý herhangi bir sorunla
karþýlaþmadan bu dosyalarý okuyabilecek ve gerekli iþlemleri yapacaktýr.
Eðer kullandýðýnýz daðýtýmda trq.map, trf.map ya da tralt.map klavye eþlem dosyalarýný bulamýyorsanýz ve yukarýdaki komutlarý iþlerken hata mesajý alýyorsanýz, ftp.gelecek.com.tr adresinden bu dosyalarý indirmeniz mümkündür.
Dilediðiniz klavye düzenini, Red Hat daðýtýmýnda yeralan /etc/sysconfig/keyboard dosyasýna ekleyebilirsiniz. Kullanabileceðiniz dosya isimlerinden bazýlarý trq, trf ve tralt'týr.
Metin ekranda Türkçe görebilmek için birkaç iþleme daha ihtiyacýmýz
var. Bunlardan ilki Türkçe karakterleri içeren yazýtiplerinin
yüklenmesi. Bir yazýtipini yüklemek için setfont
komutunu kullanýyoruz.
$ setfont latin5u-16.psf.gz
Yukarýdaki komut /usr/lib/kbd/consolefonts
dizini altýndaki
latin5u-16.psf.gz yazýtipi dosyasýný yükledi. Bu dizin altýnda yeralan, ya
da yukarýda belirttiðim ftp adresinden indirdiðiniz ve adý
latin5 ile baþlayan tüm yazýtipleri Türkçe karakterler içerir. Birkaç
deneme de siz yapýn. Özellikle latin5u-12 ve latin5u-14 dosyalarý daha
küçük yazýtipi içerir ve ekranda ayný anda daha çok karakter görüntüleyerek
çalýþma alanýnýzý geniþletir.
Metin ekranda kullanabileceðiniz tüm Türkçe yazýtiplerini ftp.gelecek.com.tr dizini altýnda bulabilirsiniz.
Atýlmasý gereken birkaç adým daha kaldý. Önce /etc/inputrc dosyasý içine aþaðýdaki satýrlarý ekleyin. Eðer dosya yoksa kendiniz oluþturun.
set input-meta on
set convert-meta off
set output-meta on
Ardýndan /etc/profile dosyasýnýn sonuna, aþaðýdaki satýrlarý ekleyin.
export INPUTRC=/etc/inputrc
Artýk rahatlýkla bash komut satýrý altýnda Türkçe yazabilir ve okuyabilirsiniz. Yukarýda yapýlan iþlemleri eðer /etc/rc.d/rc.local dosyasýna eklerseniz, herkes için tanýmlý bir klavye eþlem dosyasý ve yazýtipi yaratmýþ olursunuz:
setfont latin5u-16.psf
loadkeys trq.map.gz
Pine ile Türkçe ileti göndermek ve almak istiyorsanýz, .pinerc dosyasýnda, character-set deðiþkeninin karþýsýnda, aþaðýdaki deðiþikliði yapmanýz gerekiyor:
# Reflects capabilities of the display you have. Default: US-ASCII.
# Typical alternatives include ISO-8859-x, (x is a number between 1 and 9).
character-set=ISO-8859-9
Yukarýdaki deðiþiklikleri yaptýktan sonra, pine ile kolayca Türkçe karakterler içeren e-posta yollayabilirsiniz.
Netscape'te yazýtipi seçimi için, Edit - Preferences - Appearance - Fonts - For the Encoding menüsüne gidin ve buradan ``Turkish (iso-8859-9)'' seçeneðini iþaretleyin. Daha aþaðýda yeralan ``Use my default fonts, overriding document-specified fonts'' seçeneðini iþaretlemeniz halinde ise Netscape, sadece sizin belirttiðiniz yazýtiplerini ekranda gösterecektir. Yine de Netscape ile Türkçe yazýtiplerini görmekte sýkýntý çekerseniz View -> Encoding -> Turkish (ISO-8859-9) seçeneðini iþaretlemelisiniz.
Genel kural olarak yazýtipini seçmenize izin veren tüm yazýlýmlarda Türkçe yazýtiplerini kullanabilirsiniz.
KDE pencere arayüzünün büyük bir kýsmý Türkçeye çevrildi. 1.0 sürümünden itibaren gelen Türkçe desteði ile pek çok uygulama yazýlýmýný Türkçe çalýþtýrabiliyorsunuz.
KDE altýnda, programlarýn Türkçe çalýþmasý ve mesajlarýn Türkçe çýkmasý için kcontrol programýný çalýþtýrýn. Sol tarafta yeralan Desktop - Language menüsü içinde ilk dil olarak Turkish'i seçin. Bundan sonra açacaðýnýz her KDE programý, eðer destekleniyorsa Türkçe çalýþacaktýr.
kvt, KDE ile birlikte gelen bir terminal emülasyon programýdýr. kvt'de kullanacaðýnýz yazýtipini seçmek için, sýrasýyla
Artýk kvt altýnda Türkçe yazabilirsiniz. Ancak X Window'da henüz Türkçe karakterlerinizi tanýtmadýysanýz yukarýda yazýlanlarý yapmak mümkün olmaz. Bunun için önce ``X Window Türkçe yazýtiplerinin yüklenmesi'' baþlýðý altýnda yeralan yönergeleri izleyin.
kvt'nin yeni bir sürümünü kullanmanýz halinde, önce kvt'yi çalýþtýrýn, ardýndan farenin sað tuþuyla kvt üzerinde herhangi bir noktaya basýn. Yukarýdaki maddeleri sýrasýyla takip edin.
GNOME masaüstü altýnda, özellikle gnome terminal altýnda yaþayabilmeniz muhtemel Türkçe karakter sorununa çözüm için, aþaðýdaki maddeleri uygulayýn:
Türkiye, Greenwich'ten 2 saat ileride yeralan zaman dilimi kuþaðý içindedir. Bunu, bir e-posta aldýðýnýz zaman iletinin en üst kýsmýnda yeralan +02:00 iþaretinden de anlayabilirsiniz. Eðer hatalý bir zaman diliminde yeralýyorsanýz, yapýlmasý gereken iþlemler aþaðýdadýr. Alternatif olarak, Red Hat ve Mandrake daðýtýmlarýyla gelen timeconfig paketi zaman dilimini ayarlamanýz konusunda yardýmcý olacaktýr.
Önce /etc/localtime saat ayarý dosyasýný silin:
# rm /etc/localtime
Ardýndan, bu dosyayý bir sembolik bað ile, /usr/share/zoneinfo/Europe/Istanbul dosyasýna baðlayýn.
# ln -s /usr/share/zoneinfo/Europe/Istanbul /etc/timeconfig
timeconfig paketinde ise sadece ``Turkey'' seçeneðini iþaretleyin ve çýkýn.
Eðer /etc/localtime dosyasý yoksa, baþta sendmail olmak üzere pek çok programda hoþ olmayan hata mesajlarý alýrsýnýz.
Metin tabanlý bir ekran altýnda Türkçe yazdýktan ve uygulamalarýmýzý Türkçe yazýtipleriyle kullanmaya baþladýktan sonra X Window altýnda nasýl Türkçe yazýlýr ve okunur, görelim.
Öncelikle yapmamýz gereken, Türkçe yazýtiplerinin X Window'a
tanýtýlmasýdýr. X Window açýlýrken, hangi yazýtiplerini yükleyeceðini
belirlemek amacýyla bazý öntanýmlý dizinlere bakar. Bu dizinler,
/usr/X11R6/lib/X11/XF86Config
dosyasýnda belirtilmiþtir.
RPM paketlerini kurabileceðiniz bir daðýtým kullanmanýz halinde, Türkçe yazýtiplerini ve klavye harita ek dosyasýný yüklemiþseniz, iþiniz çok kolay. Bu dosyalarý yükleyip yüklemediðinizi bilmiyorsanýz aþaðýdaki komutu çalýþtýrýn.
# rpm -qa | grep ISO8859-9
XFree86-ISO8859-9-75dpi-fonts-2.1.2-1
XFree86-ISO8859-9-2.1.2-1
XFree86-ISO8859-9-100dpi-fonts-2.1.2-1
Yukarýdaki satýrlara benzer bir çýktý almýþ olmanýz gerekiyor (sürüm numaralarý farklý olabilir). Eðer almadýysanýz Türkçe yazýtiplerini kurmamýþsýnýz demektir. Eðer Red Hat Linux kullanýyorsanýz, CD'yi sürücüye yerleþtirip sýrayla þu iþlemleri yapýn:
# mount /dev/cdrom
# cd /mnt/cdrom/RedHat/RPMS/
# rpm -i XFree86-ISO8859-9-75dpi-fonts-2.1.2-1
# rpm -i XFree86-ISO8859-9-2.1.2-1
# rpm -i XFree86-ISO8859-9-100dpi-fonts-2.1.2-1
Yazýtiplerini ve klavye eþlem dosyasýný sisteminize kurduktan sonra bir sonraki adýma geçin.
Þimdi, daha önce yarým býraktýðýmýz noktaya geri dönelim. X Window'un
yükleyeceði yazýtiplerinin bulunduðu dizinler /usr/X11R6/lib/X11/XF86Config
dosyasýnda belirtiliyordu.
Bu dosya içinde, aþaðýdakine
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
ya da buna
FontPath unix/-1
benzer satýrlar göreceksiniz.
Bu satýrlarýn en baþýna, kurduðumuz Türkçe yazýtipleri neredeyse o
dizinin adýný yazýyoruz. Red Hat Linux 6.0'dan itibaren Türkçe yazýtipleri
/usr/share/fonts/ISO8859-9
dizinine kuruluyor. Bu dizin patikasýný
XF86Config dosyasýnýn en üstüne ekleyelim. Tüm Türkçe yazýtipleri kurulmuþsa
/usr/share/fonts/ISO8859-9
dizini altýnda aþaðýdaki dosyalarý
görebilirsiniz:
# ls -al /usr/share/fonts/ISO8859-9/
total 17
drwxr-xr-x 5 root root 1024 Feb 13 19:04 .
drwxr-xr-x 11 root root 1024 Feb 15 18:46 ..
drwxr-xr-x 2 root root 6144 Feb 13 19:04 100dpi
drwxr-xr-x 2 root root 6144 Feb 13 19:04 75dpi
drwxr-xr-x 2 root root 1024 Feb 13 19:04 misc
Þimdi ISO8859-9 dizininde Türkçe yazýtiplerimizin bulunduðunu
/usr/X11/lib/X11/XF86Config
dosyasýnda belirtelim.
FontPath "/usr/X11R6/lib/X11/fonts/ISO8859-9/misc"
FontPath "/usr/X11R6/lib/X11/fonts/ISO8859-9/75dpi"
FontPath "/usr/X11R6/lib/X11/fonts/ISO8859-9/100dpi"
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/Type1/"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"
Tabi, bu dosyada "FontPath unix/:-1" satýrý varsa, ekleme yapacaðýnýz üç satýrý da "FontPath unix/:-1" satýrýnýn baþýna koymanýz gerekiyor.
Þu anda yazýtiplerimizi sisteme tanýtmýþ durumdayýz. X Window açýlýrken önce en üstteki FontPath bilgileri okunacaktýr.
Þimdi X Window'a girin. Netscape ile herhangi bir Türkçe dosyayý görüntüleyebilirsiniz.
Sýra geldi klavye ayarlarýnýn yapýlmasýna. Red Hat ile birlikte, Türkçe
klavye eþlem dosyalarý da geliyor. Bu dosyalar, /usr/X11R6/lib/X11/etc
dizininde yeralýyorlar:
# cd /usr/X11R6/lib/X11/etc/
# ls -al xmodmap.*
-r--r--r-- 1 root root 4988 Oct 10 10:53 xmodmap.std
-rw-r--r-- 1 root root 2764 Oct 6 1998 xmodmap.tralt
-rw-r--r-- 1 root root 2316 Oct 6 1998 xmodmap.trf
-rw-r--r-- 1 root root 2316 Oct 6 1998 xmodmap.trq
Yukarýdaki dosyalar sýrasýyla standart Amerikan klavye, alt Türkçe klavye, F
klavye ve Q Türkçe klavyeye karþýlýk geliyor. X Window'a girerken bu
klavyelerden bir tanesini aktif hale getirmemiz gerekiyor. Örnek olarak, Q
Türkçe klavyenin, X Window açýlýrken etkin olmasý için,
/home/kullanýcý-adý/.xinitrc
dosyasýna aþaðýdaki satýrý eklemelisiniz.
xmodmap /usr/X11R6/lib/X11/etc/xmodmap.trq
.xinitrc
dosyasýna, kullandýðýnýz pencere yönetecisini
çalýþtýracak þekilde bir eklenti de yapmanýz gerekecektir. Bu eklentiyi
de yaptýktan sonra dosyanýn son hali aþaðýdakine benzer bir hal alýr:
xmodmap /usr/X11R6/lib/X11/etc/xmodmap.trq
startkde
Tabi siz startkde yerine istediðiniz pencere yöneticisini çalýþtýracak þekilde bir komut yazabilirsiniz.
X Window'a girdikten sonra da klavye haritasýný deðiþtirmek mümkündür. Bunun
için yukarýda örneði bulunan xmodmap
komutunu doðrudan xterm altýnda
çalýþtýrabilirsiniz.
X Window altýnda kullanýlan klavye eþlem dosyalarýndan xmodmap.tralt, konsol ekranda kullanýlan tr.alt dosyasýndan biraz farklýlýk gösteriyor. Konsol altýnda, herhangi bir Türkçe karakteri bastýrmak için ALT tuþunu kullanýrken, X Window altýnda ALT-GR tuþunu kullanmalýsýnýz.
XFree86'daki güzel bir özellik de, konsolda kullanýlan klavye eþlem
dosyasýnýn aynýsýnýn, X Window açýlýrken de kullanýlabilmesi. Bunun için,
/usr/X11R6/lib/X11/XF86Config
dosyasýnda,
XkbDisable
þeklinde bir satýrýn bulunmasý gerekir.
Nefesimin yettiði bir noktada, uluslararasýlaþtýrma (i18n - internationalizaton) ve yerelleþtirme (l10n - localization) konularýna da girmek istiyorum. Bu sayede örneðin ayný kaynak kodu derleyerek, farklý diller için farklý tarih gösterimleri sunabilirsiniz. Bir dosya içinde sýralama yaparken "ç" karakterinin, "c"den hemen sonra gelmesini saðlayabilirsiniz. i18n sayesinde bir yazýlýmýn kullanýþlýðý çok artar. KDE gibi güzel bir masaüstü paketini þimdi Türkçe kullanabiliyorsanýz bunu i18n desteðine borçlusunuz.
Bunlarýn yanýnda, sýrada Star Office'in Türkçe ayarlarýnýn yapýlmasý var. Saðolsun Sun Microsystems, Star Office'i serbest býrakarak Linux kullanýcýlarýnýn çok geliþmiþ bir ofis paketine sahip olmalarýna yardým etti. Bize de bu nimetten yararlanmak kaldý.
Sevgi, saygý, Linux