Forum: Ders Arası RSS
Basit bir D Editoru
agora #1
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: Basit bir D Editoru
Merhaba Ruby(IronRuby) ile yazdigim bir editor var. D Editoru. SharpDevelop sagolsun bazi olanaklar saglayan bir DLL'i de var. Bunu da projeye dahil ederek bir editor girisiminde bulundum.

Indirme linki:

http://yadi.sk/d/a77tTQxZ8cYrF

Su an sadece kodlari renklendiriyor. Dosya acma ve kaydetme islemi yapiyor amacim sadece var olani test etmekti. Proje su anlik Windows altinda. Amacim bu isin olup olmayacagini ogrenmekti. Olabiliyor aslinda :)

Bir sonraki surume buyuk ihtimal Python ile kodlarim. O surumde autocomplete, derleme gibi imkanlari verebilirim :)

Aslinda java ile yazmistim bunu. Ondaki autocomple destekli bir suru kutuphane vardi fakat Java'nin inanilmaz yavaslamasina sasirdigim icin sildim Ruby ile hallettim.

Simdiki cok basit ama duzelecek :) bi kac ekran goruntusu de ekleyeyim. Bir de renklendirmeler konusunda onerileriniz olursa onlari da eklerim :)

[Resim: http://imgim.com/9073incir8943631.png]

[Resim: http://imgim.com/265incih1658966.png]

[Resim: http://imgim.com/2266incia8659053.png]
agora #2
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Bu arada belirteyim

IronRuby, IronPython vs. .NET implementasyonu diller.

.NET teknolojisine sahip olmuslar. Burada Iron olanlar ne kadar kendi oz kodlarini icerseler de C#'a ceviri yapiyorlar. :)
acehreli (Moderatör) #3
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ı
Eline sağlık. Çok güzel görünüyor. :)

Ali
agora #4
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Sagolun hocam :)

Python ile D IDE yapmak isteyen arkadaslar olursa diye yontemi de basit soyleyeyim :)

Tabii bu en basit hali

import os
 
giris = input('Deger Giriniz: ')
 
 
os.system('dmd -offilename %s %s.exe' % (giris,giris))

Bu kodda kullanicidan derlemesini istedigi dosyayi istiyor ama siz IDE yapiyorsaniz bunu kullaniciya sormuyorsunuz :-) Qt kullanarak yapilabilir. Guzel bi editor olayi olabilir :)

Saygilar :-)
Avatar
Salih Dinçer #5
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Zafer'in bu konuda ViviD isminde bir denemesi vardı. D üzerinde derlenen ve sanırım GtkD'yi kullanan bir temeli vardı.

Aslında bizim basit ama etkili, küçük ama becerikli bir yazılıma ihtiyacımız var. Yoksa editör olarak çok fazla varyasyon mevcut...
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
zekeriyadurmus #6
Kullanıcı başlığı: Talha Zekeriya Durmuş
Üye Eki 2012 tarihinden beri · 701 mesaj · Konum: Samsun/Türkiye
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Hocam ellerinze sağlık çok güzel olmuş.

Sizden bir şey rica edebilir miyim? Yapacağınız editöre rhs için de seçenek ekleyebilir misiniz?

Zekeriya
Bilgi meraktan gelir...
acehreli (Moderatör) #7
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ı
Zafer'inkinin adı Divid'miş:

  http://ddili.org/forum/thread/786

Bir de seneler öncesinden Mengü'nün şöyle bir editör projesi vardı:

  http://ddili.org/forum/thread/233

Ali
agora #8
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Hocam benim gtkD kurulumu bir turlu yapilamadi. Dershane kisminda derleme seceneklerini soyluyorum windows altinda herhangi bir uyari dahi vermiyor yani normalde derleriz

C:\Document and Settings\Users\admin\Desktop\ dmd ornek.d argumanlar vs.

hic hata vermeden devam ediyor ne bir object dosyasi ne de bir exe dosya olusturuyor. Bir de ben gtk'yi zaten normalde de bilmiyorum Qt bilgim biraz var o da zamanindaki Python kullanimimdan dolayi. Ilginctir QtD vardi onu da Windows'a kuramadim. windows 8 oldugundan mi acaba diye dusunuyorum.

@zekeriya bana RhS'nin keywordslerini yollama sansin var mi? :) Bu cok basit bi editor ama eger ki isleri devamini da getirebilirsem olur. Yoksa RhS icin ekleme islemleri kolayi yani. xshd dosyalarina bakiyor.

simdilerde yapacagim bazi seyler var..

otomatik tamamlama ve {} () [] gibi parantezlerde otomatik girintiyi aktiflestirme. Bunlar yine de basit seyler :)
acehreli (Moderatör) #9
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ı
Sitedeki bilgiler eski kalmış olabilir. GtkD'nin güncel projesi şu:

  https://github.com/gtkd-developers/GtkD

Ali
agora #10
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Hocam surada kurulumu var

https://github.com/gtkd-developers/GtkD/wiki/Installing-on…

Ben sc.ini dosyasini anlamadim. Orada ne diyor. sc.ini dosyasina lib adresi mi ver diyor acaba?

Ingilizcem yetersiz yine basima bela oldu :)
agora #11
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Yaptim oldu (Ali Agaoglu gibi oldu :))

Oncelikle Gtk-Runtime'ı indirdim kurdum. 64 bit olmama rağmen 32 bit olanı kabul etti 64'ü kabul etmedi. Daha sonra GtkD source dosyasını indirdim.

rdmd -m64 Build.d ile derlemem gerekiyorken onu da kabul etmedi rdmd Buil.d yaptım

3 tane lib dosyasi olusturdu. Bu 3 lib dosyasini windows ya da sizdeki ne ise o klasorun altina ekledim. Kopyalayip oraya tasidim bendeki hali soyle:

C:\D\dmd2\windows\lib

Daha sonra gtkD klasorunu dmd dizinimdeki src dizinime ekledim yol soyle

C:\D\dmd2\src

src altina kendi gtkD source klasorumu tasidim.

Daha sonra src.ini dosyasini actim bunun yolu

C:\D\dmd2\windows\bin

altinda src.ini dosyasinda benim soyle bir durum vardi

[Version]
version=7.51 Build 020
 
[Environment]
LIB="%@P%\..\lib";\dm\lib
DFLAGS="-I%@P%\..\..\src\phobos" "-I%@P%\..\..\src\druntime\import"
LINKCMD=%@P%\link.exe
LINKCMD64=%VCINSTALLDIR%bin\amd64\link.exe
VCINSTALLDIR=%VCINSTALLDIR%
WindowsSdkDir=%WindowsSdkDir%

Ben bundaki DFLAGS kisminin en sonuna sunu ekledim "-I%@P%\..\..\src\gtkD\src"

Yani boyle oldu

[Version]
version=7.51 Build 020
 
[Environment]
LIB="%@P%\..\lib";\dm\lib
DFLAGS="-I%@P%\..\..\src\phobos" "-I%@P%\..\..\src\druntime\import" "-I%@P%\..\..\src\gtkD\src"
LINKCMD=%@P%\link.exe
LINKCMD64=%VCINSTALLDIR%bin\amd64\link.exe
VCINSTALLDIR=%VCINSTALLDIR%
WindowsSdkDir=%WindowsSdkDir%

yani son degiskende gtkD'nin src klasorunu belirtmemiz gerekiyordu onu belirttim. Bildiginiz gibi gtkD'yi de dmd2 altindaki src klasorune aldim

Derlemeye gelince de

dmd hello.d -L+gtkd.lib

seklinde derleme yapilabiliyormus
acehreli (Moderatör) #12
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ı
Yanıtlanan mesaj #10
1) dmd.exe'nin kurulu olduğu klasörü açın. (Örneğin, C:\D\windows\bin\)

2) sc.ini dosyasını editörünüzde açın

3) DFLAGS değişkenini bulun ve satırın sonuna şunu ekleyin:

    "-I%@P%\..\..\src"

4) GtkDExtractionDir\src klasörünü dmddir\src klasörüne kopyalayın. (Ali'nin anladığı: dmddir dedikleri C:\D oluyor... galiba... :) )

5) GtkD.lib dosyasını dmddir\windows\lib klasörüne kopyalayın.

Ali
agora #13
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Calisiyor hocam :)

Baglanti olarak vereyim goruntu olarak verince baya bi yer kapliyor

http://imgim.com/1714incis9815814.png

http://imgim.com/61incik4796482.png

http://imgim.com/3592incif8244927.png

Tabii bu arkada cikan konsol ekrani neden cikiyor acaba.
acehreli (Moderatör) #14
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ı
Şuradaki yöntem işe yarayabilir:

  http://forum.dlang.org/thread/xkvdpdsfzevanucrgkud@forum.d…

Yani, dmd'ye şu bağlayıcı seçeneği verilecek:

$ dmd.exe -L/SUBSYSTEM:WINDOWS ...

Ali
Bu mesaj acehreli tarafından değiştirildi; zaman: 2013-09-03, 19:20.
agora #15
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Oldu hocam dediginiz yontem

dmd -L+gtkd.lib -L/SUBSYSTEM:WINDOWS hello.d

Bu sekilde.

Simdi bir gtkD dokumani bulmak gerekiyor. Ben gtkd.org sitesinde dokuman sayfasini actim da hic anlamadim. ddoc ciktisi olarak kodlar verilmis galiba sadece.

Buton kurma islemlerini falan anladim mesela

new Button("Butondaki yazi", &butonTiklamaIslevi); //gibi sanirim.
 
void butonTiklamaIslevi(Button button)
{
    // yapilacak islemler
}

Bir kisimda Vbox gordum Vbox ile main atamasi arasindaki fark nedir acaba diyordum.

Onu soyle yapmislar galiba

class Ornek : MainWindow

anladim simdi olayi sadece dokuman lazim boyle bi dokuman bulursam D ile deneyebilirim :)

Aslinda bu gtkD mesajlari baska bir basliga tasinabilirse arayanlar boyle ulasabilirler :)
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-11-18, 00:30:51 (UTC -08:00)