arşiv

0, 2010 için arşiv

Python: Windows’ta Türkçe Karakter Sorunu

Salı, 13 Nis 2010

Diyelim ki elimizde şöyle bir şey var:

#-*- coding: cp1254 -*-
 
def kayit_ekle(isim, soyisim, sehir, meslek, tel, adres):
    kayit = {}
 
    kayit["%s %s" %(isim, soyisim)] = [sehir, meslek, tel, adres]
 
    print "\nBağlantı bilgileri kayıtlara eklendi!\n"
 
    for k, v in kayit.items():
        print k
        print "-"*len(k)
        for i in v:
            print i
 
kayit_ekle(isim = "Abdurrahman",
           soyisim = "Çelebi",
           meslek = "Öğretmen",
           tel = "0212 123 45 67",
           sehir = "İstanbul",
           adres = "Çeliktepe")

Bu kodları (utf-8 ile) GNU/Linux’ta çalıştırırken herhangi bir Türkçe karakter sorunuyla karşılaşmıyoruz. Ancak aynı kodları Windows’ta çalıştırmak istediğimizde şöyle bir çıktı alıyoruz:

Ba­lant² bilgileri kay²tlara eklendi!
 
Abdurrahman Ãelebi
------------------
¦stanbul
Í­retmen
0212 123 45 67
Ãeliktepe

Gördüğünüz gibi bütün Türkçe karakterler birbirine girmiş durumda. Bunun temel sebebi Windows’ta komut satırının öntanımlı yazı tipinin unicode karakterleri gösterememesi. Yani aslında komut satırının kendisi Türkçe karakterleri düzgün bir şekilde algılayabiliyor. Ancak kullanılan öntanımlı yazı tipi bu karakterlerin düzgün bir şekilde gösterilmesine müsaade etmiyor… Ayrıca ortaya çıkan bu durumda, MS-DOS’un öntanımlı kod sayfasının da etkisi var.

Yukarıdaki sorundan kurtulmak için şu işlemleri yapmamız gerekiyor:

1. Önce kullanılan kod sayfasını değiştiriyoruz:

chcp 1254

2. Ardından pencere başlığına sağ tıklayıp “özellikler”e giriyoruz.

3. Yazı Tipi sekmesi içinde yazı tipini “Lucida console” olarak değiştiriyoruz.

4. Tamam’a basıyoruz.

5. Karşımıza çıkan pencerede, “özellikleri sadece geçerli pencereye uygula” seçeneğini işaretliyoruz.

Şimdi en başta verdiğimiz betiği çalıştırdığımızda şu çıktıyı alıyoruz:

Bağlantı bilgileri kayıtlara eklendi!
 
Abdurrahman Çelebi
------------------
İstanbul
Öğretmen
0212 123 45 67
Çeliktepe

Python, Teknik , , ,

Cımbız-0.3 + .pisi Paketi

Salı, 13 Nis 2010

TCMB’den aldığı döviz kurlarını kullanıcıya gösteren programımız CIMBIZ, .deb ve .exe paketlerinin ardından .pisi’sine de kavuştu.  Cımbız’ın pisi paketini http://istihza.com/programlar/icindekiler_programlar.html adresinden indirebilirsiniz.

Cımbız’ın pisi paketini hazırlayan Pardus-Linux.Org yöneticisi Erdem Artan’a teşekkür ederim.

istihza.com, Python, Yazılım , ,

Cımbız 0.3 + .deb + .exe

Pazar, 11 Nis 2010

TCMB’den aldığı döviz bilgilerini kullanıcıya gösteren basit bir PyGTK uygulaması olan CIMBIZ’ın 0.3 numaralı sürümü yayımlandı. Bu programın kaynak dosyalarıyla birlikte .deb ve .exe paketlerini de Python Programları bölümümüzden indirebilirsiniz.

CIMBIZ’ın özellikle Windows Vista ve Windows 7 üzerinde test edilmeye ihtiyacı var. Vakti olup da bu programı kendi sistemlerinde deneyecek arkadaşlara şimdiden teşekkür ederim…

Faydalı olması ümidiyle.

istihza.com, Python, Yazılım , , , ,

Server Tools

Cuma, 09 Nis 2010

Python Programları bölümümüzün bu seferki konuğu, istihza.com’un takipçilerinden Sevgili Ozan Uzer‘e ait “Server Tools” adlı bir program.

Server Tools; dinamik IP’nizi sabit bir hosta bildiren bir proje. Ozan Uzer’in sitesinde yazdığına göre, kendisi program üzerinde çalışmaya devam ediyor.

Bu programı http://dinamik-ip-tools.googlecode.com/files/servertools-0.1.tar.gz adresinden indirebilir, programın gelişimini ise http://ozanuzer.com/server-tools/ adresinden takip edebilirsiniz.

Python, Yazılım , ,

Cımbız 0.2

Çarşamba, 07 Nis 2010

Eğer işiniz gereği döviz kurlarıyla bol bol haşır neşir oluyorsanız, TCMB’nin sitesine girip kur durumuna bakmak bir süre sonra size angarya gibi gelecektir. En azından bana öyle geliyor… İşte bu döviz kuru kontrol etme işini biraz olsun kolaylaştırabilmek için, daha önce yazdığım CIMBIZ programını biraz daha geliştirdim. CIMBIZ artık şöyle bir görünüme sahip:

Bu program Windows’ta ise şöyle görünüyor:

Cımbız şu anda şu para birimlerini destekliyor:

“ABD Doları”,
“AVUSTRALYA Doları”,
“DANİMARKA Kronu”,
“EURO”,
“İNGİLİZ Sterlini”,
“İSVİÇRE Frangı”,
“İSVEÇ Kronu”,
“KANADA Doları”,
“KUVEYT Dinarı”,
“NORVEÇ Kronu”,
“SUUDİ ARABİSTAN Riyali”,
“JAPON Yeni”

CIMBIZ programı yardımıyla, yukarıdaki dövizler için 2003-2010 yıllarına ait “döviz alış”, “döviz satış”, “efektif alış” ve “efektif satış” bilgilerini sorgulayabilirsiniz.

Programı http://istihza.com/programlar/icindekiler_programlar.html adresinden indirebilirsiniz.

Programda bulduğunuz hataları veya önerilerinizi kistihza [at] yahoo [nokta] com adresine bildirebilirsiniz.

Faydalı olması ümidiyle…

NOT: Bu programın Vista ve Windows 7‘de test edilmeye ihtiyacı var. Vista ve/veya Windows 7 kullanan arkadaşlar arasında bu programı test edip sonucu bana bildirebilecek olanlara şimdiden teşekkür ederim.

Python, Yazılım , , ,

Python’la İlgili Bir Soru

Salı, 06 Nis 2010

Python’da platform adlı bir modül bulunur. Bu modül, kullanılan sisteme ilişkin çok önemli bilgiler elde etmemizi sağlar.

platform modülünün system() adlı fonksiyonu GNU/Linux’ta “Linux” çıktısı, Windows XP’de ise “Windows” çıktısı veriyor. Ancak bu fonksiyonun öteki sistemlerde nasıl bir çıktı verdiğinden emin değilim. Dolayısıyla bana kendi sisteminizde şu komutların çıktısının ne olduğunu söyleyebilirseniz memnun olurum:

>>> import platform
 
>>> platform.system()

İlgilenen herkese teşekkürler.

Python , ,

Bir Sözlük Programı: Tercüman

Salı, 06 Nis 2010

istihza.com takipçilerinin Python ile yazdıkları uygulamaları tanıttığımız Python Programları bölümümüzün bugün yeni bir konuğu var: Tercüman

Eren Usturalı tarafından yazılan Tercüman, PyGTK arayüz takımı ile hazırlanmış bir sözlük programı. GNU/Linux üzerinde geliştirilip test edilen bu uygulama, kelime bilgilerini sozluk.web.tr adresinden alıyor ve şık bir biçimde kullanıcılarına sunuyor.

Programın şöyle bir görünümü var:

Her zamanki gibi, bu programı http://www.istihza.com/programlar/icindekiler_programlar.html adresinden indirebilirsiniz.

Programı yazıp bize gönderen Eren Usturalı’ya teşekkür ederim.

istihza.com, Python, Yazılım , , ,

Ubuntu Lucid Lynx’te Pencere Önceliği

Cuma, 02 Nis 2010

Ubuntu’nun Lucid Lynx’ten önceki sürümlerinde, ekranda bir pencere açıkken, alt tarafta duran başka bir pencereye tıkladığımızda o alt taraftaki pencere öne, öndeki pencere ise arkaya gidiyordu. Bu durumu şöyle de tarif edebiliriz:

Diyelim ki bir Gedit sayfası açtınız ve bu sayfada yazı yazıyorsunuz. Daha sonra, bu Gedit sayfasını kapatmadan bir tane de uçbirim açtığınızı varsayalım. Bu durumda, uçbirim ön tarafta, Gedit ise arka tarafta yer alacaktır. Eğer arka tarafta duran Gedit sayfasına fare ile tıklarsanız, uçbirim Gedit’in arkasına gidecek, böylece Gedit sayfası öne gelmiş olacaktır.

Ancak bu davranış biçimi Lucid Lynx’le birlikte değişikliğe uğradı. Artık ön taraftaki uçbirimi arkaya göndermek için Gedit sayfasına tıklamak işe yaramıyor. Bunun için ya Gedit’in pencere başlığına tıklamamız, ya da uçbirimin “küçült” düğmesine basmamız gerekiyor. Doğrusunu söylemek gerekirse ben bu davranış biçimini kullanışlı bulmadım. Eğer siz de benim gibi düşünüyorsanız, işleri eski haline getirmek için şu yolu takip edebilirsiniz:

1. ALT+F2

2. gconf-editor

3. apps > metacity > general

4. “raise_on_click” seçeneğine bir tık…

GNU/Linux , , , ,