NASIL Gentoo utf-8 ve Türkçe Karakterler

From Lapis Wiki

Jump to: navigation, search
Bu makale NASIL bölümü serisinin bir parçasıdır
MasaÜstü Donanım Dağıtımlar
Tarayıcılar Programlama Linux ve Oyunlar

Konu başlıkları

Giriş

Gentoo'yu kurdunuz, X klavye ayarlarınızı yaptınız, KDE için yerelleştirme ayarlarını yaptınız ama bir şey eksik kaldı.. Eğer siz de benim gibi diğer pencere yöneticilerini WindowMaker, E17 gibi kullanıyorsanız ve Emacs gibi editörler kullanıyor ama Türkçe karakterler düzgün şekilde gösterilmiyorsa okumaya devam edin.

Bu yazıda Gentoo altında Türkçe ve utf-8 desteğini nasıl ayarlayacağımızı anlatıyoruz.

Çekirdek Ayarları

utf-8 ve Türkçe desteğini ayarlamak için çekirdek (kernel) ayarlarınızı şu şekilde yapmalısınız.


Dosya: usr/src/linux/.config
 (utf8) Default NLS Option
  <*> NLS UTF8
  <*> CodePage 857 (Turkish)
  <*> NLS ISO 8859-9 (Latin5;Turkish)

Bu ayarların bu şekilde ayarlanıp ayarlanmadığını kontrol etmek için bir terminalde:

cd /usr/src/linux
make menuconfig

File systems ---> Native Language Support ---> dizini altında bunların bu şekilde seçili olduğundan emin olun. Eğer seçili değilse 'y' ile seçebilir 'n' tuşuna basarak da seçimi kaldırabilirsiniz. Çekirdeği tekrar derlediğinizde dosya isimleri varsayılan olarak utf-8 kodlamasıyla oluşturulacak.

Yerelleştirme Ayarları

Yerelleştirme ayarlarını Türkçe olarak ayarlıyoruz


Dosya: etc/env.d/02locale
LANG="tr_TR.utf8"
LANGUAGE="tr_TR.utf8"
LC_ALL="tr_TR.utf8"


Not: Bunu yazarken en başta boşluk bırakmayın. Yoksa benim gibi hatalarla karşılaşabilirsiniz. Yani LANG="tr_TR.utf8" satırının başında boşluk bırakmayın.

Kurulu olan tüm yerelleştirme dosyalarını:


Kod:
 locale -a

ile görebilirsiniz.

Klavye Ayarları

/etc/rc.conf dosyasına şu satırı ekleyin:


Dosya: /etc/rc.conf
 UNICODE="yes"

(Klavye düzenini Türkçe olarak ayarlıyoruz)

Bu satırı /etc/conf.d/keymaps dosyanıza ekleyin.

Dosya: /etc/conf.d/keymaps
 KEYMAP="-u tr_q-latin5"

Klavye düzeni için kullanılabilecek dosyaları şu komutla görebilirsiniz

Kod:
   ls -al /usr/share/keymaps/i386/qwerty/ | less

Konsol Ayarları

~/.bashrc dosyanıza şu satırları ekleyin yoksa oluşturun:


Dosya: ~/.bashrc
 if [ $TERM = "linux" ]
 then
   unicode_start
 fi

böylelikle açılışta terminali evrensel yazım biçimini (unicode) destekleyecek şekilde ayarlamış oluyoruz.

Ya da alternatif olarak tüm konsolların açılışta evrensel yazım biçimini (unicode) destekleyecek şekilde bu init.d skriptini kullanarak ayarlayabilirsiniz:


Dosya: /etc/init.d/unicode
#!/sbin/runscript
conf=/etc/env.d/02locale

# Using devfs?
if [ -e /dev/.devfsd ] || [ -e /dev/.udev -a -d /dev/vc ]; then
  device=/dev/vc/
else
  device=/dev/tty
fi

depend() {
        need localmount
        after keymaps
        before consolefont
}

checkconfig() {

  if [ -r ${conf} ]; then
          . ${conf}
          encoding=
          [ -n "${LC_ALL}" ]      && encoding=${LC_ALL#*.}   && return 0
          [ -n "${LC_MESSAGES}" ] && encoding=${LC_MESSAGES#*. } && return 0
          [ -n "${LANG}" ]        && encoding=${LANG#*.}   && return 0
  fi
  eend 1 "Locale is not configured, Please fix ${conf}"
  return 1
}

start() {
        ebegin "setting consoles to UTF-8"
        checkconfig
        if [ "${encoding}" = "UTF-8" -o "${encoding}" = "utf-8" ]; then
                dumpkeys | loadkeys --unicode
                for ((i=1; i <= "${RC_TTY_NUMBER}"; i++)); do
                        echo -ne "\033%G" > ${device}${i}
                done
                eend 0
        else
                eend 1 "UTF-8 is not required"
        fi
}

Uygulamalar

Terminal Emülatörleri

xterm

xterm'i şu şekilde evrensel yazım biçimini destekleyecek şekilde çalıştırabiliriz:


Kod: xterm unicode

xterm -u8


ya da


Kod: xterm unicode -bis

uxterm

Editörler

Emacs

Emacs'ta kod sistemini utf-8 olarak seçmek için:


Kod: Emacs'ta yazı kodlama biçimini seçmek
M-x prefer-coding system    # Enter tuşuna basıyoruz
Prefer coding system: utf-8 # Buraya utf-8 yazıyoruz

Nano

Nano'nun 1.3.6'dan önceki versiyonları utf-8 yazı biçimini doğru bir şekilde kullanamıyor. Bunun için :


Kod:
 echo "=app-editors/nano-1.3.6 ~x86" >> /etc/portage/package.keywords
 emerge -uDav nano

X

fluxbox

fluxbox utf-8 kullanıldığında ilk açılması çok uzun sürüyor. Bunu düzeltmek için fluxbox'u disablexmb USE bayrağını kullanarak derleyebilirsiniz.

echo "x11-wm/fluxbox disablexmb" >> /etc/portage/package.use
emerge -av fluxbox

Ufak hatırlatma:

Eğer disablexmb bayrağını kullandığınızda belirli X uygulamaları (örneğin xedit ya da fluxbox hakkında diyalog kutusu) donarsa aşağıdaki şu yamayı deneyin:


Dosya: flux-utf8.patch
diff -ur fluxbox-0.9.11.orig/src/FbTk/Font.cc fluxbox-0.9.11/src/FbTk/Font.cc
--- fluxbox-0.9.11.orig/src/FbTk/Font.cc        2004-11-19 14:01:39.000000000 +0200
+++ fluxbox-0.9.11/src/FbTk/Font.cc     2004-12-24 19:19:46.015735856 +0200
@@ -293,7 +293,7 @@
     // create the right font implementation
     // antialias is prio 1
 #ifdef USE_XFT
-    if (antialias) {
+    if (antialias || m_utf8mode) {
         m_fontimp.reset(new XftFontImp(0, m_utf8mode));
     }
 #endif //USE_XFT

Bu yamayı kurmak için de şu adımları izleyin:

cd /usr/portage/x11-wm/fluxbox/files/0.9.13
wget http://wiki.linux-sevenler.org/images/1/15/Flux-utf8.patch.txt
mv Flux-utf8.patch.txt flux-utf8.patch

Bir editörle şu dosyayı açın:

nano /usr/portage/x11-wm/fluxbox/fluxbox-0.9.13-r1.ebuild

ve bu dosyaya şu satırları ekleyin:

Kod:

epatch ${FILESDIR}/${PV}/flux-utf8.patch

Not: Bunu fluxbox-0.9.13-r1.ebuild dosyasının src_unpack () bölümünde epatch ile başlayan satırların hemen altına ekleyeceksiniz.

rm /usr/portage/x11-wm/fluxbox/files/digest-fluxbox-0.9.13-r1 
cd /usr/portage/x11-wm/fluxbox
ebuild fluxbox-0.9.13-r1.ebuild digest

ve son olarak da fluxbox'u kurmak için

emerge  fluxbox

diyoruz. Derleme yaparken Applying flux-utf8.patch yazısını görmeniz lazım.

Yararlanılan Kaynaklar

Gentoo Wiki utf-8 ve evrensel yazı biçimini kullanmak