Forum: Projeler trileri RSS
tr.yazi modülünü ekledim
acehreli (Moderatör) #1
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: tr.yazi modülünü ekledim
Henüz bitmedi ama "ali & jim" -> "ALİ & JIM" dönüşümü tamam! :)

- YazıParçası isimli bir arayüz tanımladım ve Dizgi'yi o arayüzden türeterek "Dizgi bir YazıParçası'dır" ifadesini gerçekleştirmiş oldum

- Yazı isimli bir sınıf tanımlayarak, YazıParçası türünden nesneleri bir araya getirdim. Bu sayede değişik alfabelerle yazılmış olan parçalar aynı yazı içinde birleştirilebiliyor:

import tr.yazi;
import std.cstream;
 
alias Dizgi!(AlfabeKodu.eng) dizgi_en;   // İngiliz alfabesi dizgi türü
alias Dizgi!(AlfabeKodu.tur) dizgi_tr;   // Türk alfabesi dizgi türü
alias Yazı!(AlfabeKodu.tur) yazı_tr;     // Türk alfabesini yeğleyen yazı türü
 
void main()
{
    // Boş bir yazı
    auto yazı = new yazı_tr;
 
    // Farklı alfabelere bağlı parçaları olabilir
    yazı ~= new dizgi_tr("ali ĞüŞiÖçIğÜşİöÇı âÎû");
    yazı ~= new dizgi_tr(" - ");
    yazı ~= new dizgi_en("jim ĞüŞiÖçIğÜşİöÇı âÎû");
 
    dout.writefln("     aslı: ", yazı);
    dout.writefln("   küçüğü: ", yazı.küçüğü);
    dout.writefln("   büyüğü: ", yazı.büyüğü);
    dout.writefln("aksansızı: ", yazı.aksansızı);
}

Çıktısı:

     aslı: ali ĞüŞiÖçIğÜşİöÇı âÎû - jim ĞüŞiÖçIğÜşİöÇı âÎû
   küçüğü: ali ğüşiöçığüşiöçı âîû - jim ğüşiöçiğüşİöçı âîû
   büyüğü: ALİ ĞÜŞİÖÇIĞÜŞİÖÇI ÂÎÛ - JIM ĞÜŞIÖÇIĞÜŞİÖÇı ÂÎÛ
aksansızı: ali ĞüŞiÖçIğÜşİöÇı aIu - jim GuSiOcIgUsIoCi aIu

Aksan kavramının her alfabede farklı olduğuna dikkat edin: ç'nin aksansızı Türk alfabesinde yine ç, ama İngiliz alfabesinde c...

Ayrıca İngiliz alfabesinde ı'nın büyüğü ve İ'nin küçüğü bulunmuyor. Bunun nedeni, o kavramların Unicode'da eksik olmaları... Unicode'da (en azından benim ortamımda) büyüğü olmayan başka harfler de var: ßẗ vs... Bunların bizim için o kadar önemli olmadığını biliyorum; sadece böyle bir yetersizlik olduğunu söylüyorum.

Daha ayrıca, trileri'nin İngiliz alfabesine de çok iyi geldiğini belirtmek isterim. trileri, aksanlı harfleri İngiliz alfabesindeki temel harflerinin hemen arkasında sıralıyor.

Ali
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Forum: Projeler trileri RSS
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-17, 16:44:31 (UTC -08:00)