Forum: Ders Arası RSS
DDoc Hakkında???
nurullahisrgan #1
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: DDoc Hakkında???
Selam! ddili.org D dilinde yazıldığını biliyorum ancak 2 sorum olacaktı?

1-> Makefile'den fazla anlamam. Bu yüzden inceleyemedim. Ddoc ile yazılan dosyaların içindeki özellikler nasıl tanımlanıyor veya kullanılıyor?
2-> D diliyle yazılmış dosyalara nasıl görsellik ekleniyor? Bunun için ayrı bir dosyaya resim yollarını mı ekliyoruz?

 Kısacası, Ddoc hakkı9nda bilgi verir misiniz? Örnekli olsa güzel olur.. Şimdiden teşekkürler.
acehreli (Moderatör) #2
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4536 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yeniden başlasam herhalde Ddoc yerine başka bir markup dili kullanırdım. O zamanlar D öğrenmekte olduğumdan ve Ddoc açıklamalardan belge üretmeye de yaradığından elim alışsın onunla diye başlamıştım. :)

Önce kod belgelendirmeye bakalım. Bunun kaynağı şurada:

  http://dlang.org/ddoc.html

Şöyle bir kod olsun:
/**
 * Authors: Hasip Hesapçıoğlu
 *
 * Bugs: Sıfırla bölmeye karşı vs. denetim yoktur.
 */
struct Hesapçı {
    int bölen;    /// Bu, 'bölen'in belgesidir
 
    /**
     * Verilen değerin bölünmüşünü döndürür
     *
     * Params:
     *    değer = Bölünecek değer
     *
     * Returns: Bölme işleminin sonucu
     */
    int böl(int değer) {
        return değer / bölen;
    }
}
 
/// Ddoc açıklaması bulunan 'unittest' blokları da belgeye dahil edilir.
unittest {
    auto h = Hesapçı(2);
    assert(h.böl(42) == 21);
}
 
void main() {
}
O kodu -D ile derlediğimizde bir .html dosyası elde ederiz:

dmd -D deneme.d

Çıktısı şunun gibi bir şey oluyor (tabii aslında renkli):

deneme


struct Hesapçı;
    Authors:
    Hasip Hesapçıoğlu

    BUGS:
    Sıfırla bölmeye karşı vs. denetim yoktur.

    Examples:
    Ddoc açıklaması bulunan 'unittest' blokları da belgeye dahil edilir.

    auto h = Hesapçı(2);
    assert(h.böl(42) == 21);



    int bölen;
        Bu, 'bölen'in belgesidir

    int böl(int değer);
        Verilen değerin bölünmüşünü döndürür

        Params:
        int değer     Bölünecek değer

        Returns:
        Bölme işleminin sonucu

Her html dosyasında olduğu gibi, o belgenin görüntüsü .css ile ayarlanabilir. Ancak, aslında basit bir makro dili olduğundan, Ddoc baştan ayarlar yapma olanağı da verir. Örneğin, yukarıdaki belgeyi bütünüyle Türkçeleştirmek istersek, Authors, BUGS, vs. gibi metin parçalarını üreten makroları değiştirebiliriz.

Bu makroların ne oldukları Ddoc'un belgesinde görülüyor. Ben örnek olarak DDOC_AUTHORS ve DDOC_BUGS'ı değiştireceğim. Bu, ilk satırı Ddoc olan dosyalarla gerçekleştiriliyor. Örneğin, deneme.ddoc adında şöyle bir dosya yazalım:

Ddoc

DDOC_AUTHORS = $(B Yazarlar:)$(BR)$0$(BR)$(BR)
DDOC_BUGS = $(GREEN $(B YETERSİZLİKLER:))$(BR)$0$(BR)$(BR)

Belge üretirken o dosyayı da verirsek bizim makrolarımız kullanılıyor:

dmd -D deneme.d deneme.ddoc

İstediğimiz satırlar Türkçeleşti ve birisi kırmızı yerine yeşil ve kalın oldu:

struct Hesapçı;
    Yazarlar:
    Hasip Hesapçıoğlu

    YETERSİZLİKLER:
...

Ek olarak, --- ile ayrılan metin parçaları otomatik olarak kod olarak kabul ediliyor. Bu makro sistemi aslında D'den bağımsız ve başka amaçlarla da kullanılabiliyor.

Merhaba Dünya bölümünün kaynağı şu:

  https://bitbucket.org/acehreli/ddili/src/2c1dd7b…?at=mas…

Onu üreten .ddoc dosyalarından ikisi de şunlar (başkaları da var; onları 'make' yazınca kullanılan komut satırında görebilirsiniz):

  https://bitbucket.org/acehreli/ddili/src/2c1dd7b…?at=mas…
  https://bitbucket.org/acehreli/ddili/src/2c1dd7b…?at=mas…

Resim yolları da IMG, LINK, ve LINK2 gibi makroları kullanır. Şurada IMG kullanılıyor:

  https://bitbucket.org/acehreli/ddili/src/2c1dd7b…?at=mas…

Orada geçen pdficon_small.gif ise normalde şu klasörde duruyor:

  https://bitbucket.org/acehreli/ddili/src/2c1dd7b…?at=mas…

Bütün kitapların aynı 'image' klasöründe durmaları aslında yanlış. Her kitabın endi alt 'image' klasörü olmalıymış. Gerekirse öyle değiştiririz.

Ayrıca, kitabın oluşturulması, Ddoc'lar, vs. zamanla oldukça karmaşık hale geldi... :-/

Ali
nurullahisrgan #3
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Verdiğiniz bilgiler için teşekkürler ancak tanımladığınız makrolardan AUTHORS bende düzenlenmedi. Başka yazdığım kodlarda da düzenlenmedi...
acehreli (Moderatör) #4
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4536 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
AUTHORS mu DDOC_AUTHORS mu? Bir kaç satırlık kodla gösterebilir misin lütfen. Tabii bir de dmd komut satırını...

Ali
nurullahisrgan #5
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Hata benden kaynaklıymış. Rahatsız ettiğim için özür dilerim. DDOC_AUTHORS yerine yanlışlıkla DOC_AUTHORS yazıyormuşum. Kendi yazdığım kodda ise yine bu deneme.ddoc kullanmışım. Kendim yazdığım makroları kullanmamışım. Bunun gibi hatalar yapmışım. Kusura bakmayın...
nurullahisrgan #6
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Kendimi Ddoc ile geliştirmek isterim doğrusu... Bunun için çok fazla deneme yapacağım. Bitbucket'te sitenin kaynağını indirdim ve make yaptığımda; public_html_test klasöründe oluşan dosyalarda görsellik mevcut ama public_html dizininde görsellik ve karakter sıfır. Bunun nasıl olduğunu açıklayabilir misiniz?
nurullahisrgan #7
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Şimdi farkettim ve diğer ddoc dosyalarını incelememiştim. regular.ddoc, ders.ddoc, common.ddoc gibi...
Abdullah #8
Üye Ağu 2015 tarihinden beri · 48 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
ddoc ile "chm" uzantılı dosyalar mı oluşturuluyor?
nurullahisrgan #9
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Chm??? Hiç anlamadım doğrusu... Ddoc ile html uzantılı dosyalar oluşuyor...
Abdullah #10
Üye Ağu 2015 tarihinden beri · 48 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
derlenmiş html dosyası, ddoc d kodlarini html'e mi donusturuyor?
nurullahisrgan #11
Üye Ock 2015 tarihinden beri · 76 mesaj · Konum: Mardin, Nusaybin
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Onun gibi bir şey diyebiliriz. Ali hoca kaynağını ve anlatımını yapmış. Benim amacım sadece ddili.org kodlarını okumaktı. O yüzden ddoc'u merak ettim.
acehreli (Moderatör) #12
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4536 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Ddoc dosyası veriyoruz, HTML alıyoruz. Örneğin, $(B merhaba) yazıyoruz, HTML dosyasında <b>merhaba</b> olarak beliriyor.

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: Ders Arası 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-12-15, 05:57:40 (UTC -08:00)