Şu anda dosya açma, kaydetme, renklendirme (performansı fena değil), geri alma-yineleme (undo-redo) gibi özellikleri var, yani henüz başlangıç aşamasında.
Kodu buraya koymuyorum; kalabalık olmasın, yukarıda linkini verdiğim GitHub reposundan bakabilirsiniz.
Açmak istediğiniz dosyanın kodlaması UTF-8 değil anlaşılan. Dosyaları UTF-8 olarak açtığım için, kodlamaları UTF-8 olmalı. Ancak tabii ki bu olması gereken değil. Normalde dosyanın kodlaması algılanıp, o kodlama ile dosya açılmalı.
Tkinter uygulamalarını IDLE ile açmayın, sorunlar çıkıyor.
Uygulama açılırken en son açılan dosyayı otomatik açıyor. Görünen o ki; bu dosyanın kodlaması UTF-8 olmadığı için uygulama sorun çıkarıyor. Geçici çözüm için ev dizininizdeki “.editor.py.ini” dosyasını silmeyi deneyebilirsiniz.
Ben bir ara bu editörle fotoğraf açmayı denedim galiba. O yüzden bu olmuş olabilir. Dosya açma ekranı tekrar düzenlenmeli. Sadece python dosyalarına izin vermeli.
Tüm metin dosyalarını açabilmesini düşünmüştüm başta. Tabii şu anda Python dosyaları dışındakileri renklendiremez. Ama dediğiniz gibi ikili dosyaları açamaması lazım.
Hocam programı baştan sona inceledim elinize sağlık.
Klasic olarak örnek sınıf yazıyorum ileri düzeyde örnek sınıflarda kendimi geliştirmek için tavsiyeleriniz var mı?
Başka arkadaşlarda yardımcı olurlarsa sevinirim.
Teşekkürler. Nesneye yönelik programlama pratiklerine dikkat etmedim programımda (Yine kendisi ile geliştirdiğim için düzenleme olanaklarım kısıtlıydı.). Bu sebeple nesneye yönelik programlama ile ilgili bu programdan örnek almamanızı tavsiye ederim.
Python’da örnek sınıf diye bir kavram olduğunu sanmıyorum. Sınıf ve o sınıfın örneği kavramları var ama.
class A:
sinif_niteligi = 10
def __init__(self):
self.ornek_niteligi = 5
print(A.sinif_niteligi)
# Sonuç: 10
print(A.ornek_niteligi)
# Sonuç: AttributeError: type object 'A' has no attribute 'ornek_niteligi'
# Örnek niteliği A sınıfına ait bir özellik değil.
# Örnek niteliği A sınıfının örneğine ait bir özellik.
print(A().ornek_niteligi)
# Sonuç: 5
# A --> Sınıf
# A() --> A sınıfının örneği