Syntax Highlighting

Eklenti geliştirme bölümü.

Syntax Highlighting

İleti

butterflyT
19.03.2007, 18:57

##############################################################
## MOD Title: Syntax Highlighting
## MOD Author: 0racle < nigel@geshi.org > (Nigel McNie) http://qbnz.com/highlighter
## MOD Description: Adds [syntax="language"] bbcode to syntax-highlight many languages using
## GeSHi engine
## Better description would be useful. Note on installable by EM. Note on required
## BBCode mods.
##
## Modified by : ButterflyT http://www.canver.net
##
## MOD Version: 0.4.2
##############################################################
## MOD Title: Fix for Syntax Highlighting
##
## MOD Author: ButterflyT http://www.canver.net
## MOD Description: you can use Syntax Highlighting
## in phpBB 2.0.19 or upper versions
##
## MOD Version: 1.0.0
##############################################################
## MOD Title: Drop button for Syntax Highlighting
## MOD Author: ButterflyT http://www.canver.net
## MOD Description: Adds a drop button for Syntax Highlighting
##
## MOD Version: 1.0.0
##
## Installation Level: Easy
## Installation Time: 7 minutes
##############################################################
## Author Notes:
## Feel free, you can use this MOD or whatever you want
##############################################################

Örnek

[syntax="php"]// Include the GeSHi library
include('geshi.php');

// Make a new GeSHi object, with the source, language and path set
$source = 'echo "hello, world!";
// weeeeee!!!!';
$language = 'php';
$path = 'geshi/';

$geshi = new GeSHi($source, $language, $path);

// and simply dump the code!
echo $geshi->parse_code();[/syntax]

Syntax Highlighting aslında çalışıyor olmasına rağmen hemen hemen atıl bir modifikasyondu. phpBB 2.0.18'den sonra kurulamıyordu. Ben FIX'i kendim buldum. Yayınlamadan az önce siteye baktım meğer daha önce FIX verilmiş ancak eksik. Eski FIX alıntı kullanıcı adıyla yapıldığında bu sefer onun yapısını bozuyordu. O hata da giderildi. SQL sorgusunda ufak hatalar vardı onlar düzeltildi.

Ayrıca standart kurulum dosyasında buton yoktu. Ben açılır kutuda buton ekledim. MOD şuan toplamda 43 dili destekliyor. Normal sürümü 0.4.1 idi ama ben bu özelliklerden sonra sürümü 0.4.2 olarak adlandırdım. MOD Geshi motorunu kullanıyor. Ancak phpBB'ye MOD olarak başlayan proje artık phpBB'den uzaklaşmış durumda. Bu eski MOD'a destek vermiyorlar. O yüzden elimden geldiğince toparlayıp herkesin kullanabileceği hale getirmeye çalıştım.

Güle güle kullanın.

ButterflyT
Eklentiler
syntax_highlighting.0.4.2.zip
Adds [syntax=&quot;language&quot;] bbcode to syntax-highlight many languages using GeSHi engine
(186.91 KiB) 1023 defa indirildi
Kullanıcı avatarı
butterflyT
Kıdemli Üye
Kıdemli Üye
 
İleti: 144
Kayıt: 14.12.2005, 18:48

Cvp: Syntax Highlighting

İleti

butterflyT
19.03.2007, 23:49

Çok ilginç geldi şunu da yazayım. Bu güzel MOD'un yazarı (0racle) phpBB'den desteğini siteye küstüğü için kesmiş. Foruma bir mesaj atıyor yetkililer bu mesajı spam olarak algılamışlar ve konuyu kilitlemişler. Konu neden kilitlendi diye sorduğunda yetkililer neyin spam olduğuna biz karar veririz demişler. O da alınmış ve özür beklemiş. Bir cevap gelmeyince de bu MOD'a verdiği desteği kesmiş.
http://www.phpbb.com/community/viewtopi ... &start=195

phpBB uzun zamandır kapalıydı. Sunucularını yenilediler aynı zamanda siteyi de yenilemişler. Ben MOD'u yeni keşfettim, bulduğumda da phpBB çalışmadığı için çok fazla bilgi bulamamıştım nette. Yazık oysa şuana kadar gördüğüm en güzel MOD'lardan biriydi.

Açık kaynak kodlu forum ve portal sitelerinden en kapsamlısı bana göre phpBB. Ancak nedense 2002-2004 yılları arasında çok fazla MOD yazılmış sonra işler birden durmuş. Güncel ya da 2006'dan sonra sıfırdan yazılan kallavi MOD hemen hemen yok en azından ben denk gelmedim. Slash News Mod ve Knowledge Base gibi MOD'lar da hep kenarda atıl durumda kalmışlar. FIX olmadan kurulamıyorlar. Yakın zamana kadar kendini güncelleyen kallavi MOD'lar arasında aklıma bir tek CTracker geliyor. Belki bir iki tane daha var olabilir. Neyse umarım bu tarz güzel MOD'ların sayısı artar.
Kullanıcı avatarı
butterflyT
Kıdemli Üye
Kıdemli Üye
 
İleti: 144
Kayıt: 14.12.2005, 18:48

Cvp: Syntax Highlighting

İleti

ALEXIS
20.03.2007, 00:04

Bu eklentiyi sadece phpbb ye uyarlamamışlardı, wordpress gibi diğer yazılımlar için de eklentileri var.

Uzun süredir kullanıyorum, tam anlamasamda çok hafif bir hantallık yarattı sanki, ancak bunu hiçbir zaman test edemedim.
Kullanıcı avatarı
ALEXIS
Site Yöneticisi
Site Yöneticisi
 
İleti: 2563
Kayıt: 30.06.2005, 09:08

Cvp: Syntax Highlighting

İleti

butterflyT
20.03.2007, 01:05

Hantallık kısmını henüz test edemedim ama beş gündür kullanıyorum ben bir fark sezemedim. Proje aslında phpBB'ye MOD olarak başlamış. Ama yazarı o olaydan sonra küstürmüşler. Dosya 2005'ten beri güncel değil. Kedine göre fix bulanlar sitelerine kurmuşlar. Oysa modülün özü çalışır durumda fix'i de çok basit. Fix ve buton eklendikten sonra herkes rahatlıkla kullanabilir, umarım.

Yukarda verdiğim php kod da zaten güncel Geshi'nin nasıl kullanılacağını gösteriyor. MOD olarak değil de harici bir eklenti olarak çalışıyor. Dediğin gibi php tabanlı bir çok sistemi destekliyor artık. Güncel sürümünde geshi.php ile aynı dizinde demo.php oluşturup o kaynak kodları yazarsanız demo çalışıyor. Son sürümlerini kullanabilmek için phpBB'ye uygun araya bir kod yazmak lazım.

Aslında ben bir hile denedim. Dosya yapıları hala aynı. Ben MOD'in içindeki eski geshi.php ve geshi klasörlerini güncel versiyonları (yeni versiyonlar phpBB için MOD değil artık) ile yer değiştirdim. MOD yine çalışıyor ancak renklendirme yine eskisi gibi oluyor ve yeni dilleri (şuan 70 küsür dil var) dosyaları olmasına rağmen görmüyor. Bu basit bir hileydi ama yemedi.

Sebebi, MOD renk bilgisini template dizinindeki *.css den alıyor. Oysa son sürüm css'yi php ile fonksiyon çağrıldığında üretiyor. Olay şu satırda bitiyor,

[syntax="php"]$geshi = new GeSHi($source, $language, $path);[/syntax]

phpBB'de syntax tagları arasındaki bilgiyi $source, " " çift tırnak arasındaki bilgiyi de $language olarak alabilirsek yukardaki satır bize sonucu üretecek. Geriye onu ekrana yazdırmak kalacak. Ama uğraşacak vaktim yok. php aslında direkt ilgilendiğim bir dil değil. İyi bilen biri için bunu yazmak bir günlük belki yarım günlük bir iş oysa. Ama en azından elimden geldiğince eski sürümünü sadece bilen değil herkesin kullanabileceği bir hale getirmek istedim. Umarım milletin işine yarar.

Güzel MOD'muş keşke daha önce farkedebilseymişim.
Kullanıcı avatarı
butterflyT
Kıdemli Üye
Kıdemli Üye
 
İleti: 144
Kayıt: 14.12.2005, 18:48

Cvp: Syntax Highlighting

İleti

ALEXIS
20.03.2007, 01:17

butterflyT, sana tavsiyem phpBB2 ile uğraşma, phpBB3 üzerinde çalışmaya başla.
Kullanıcı avatarı
ALEXIS
Site Yöneticisi
Site Yöneticisi
 
İleti: 2563
Kayıt: 30.06.2005, 09:08

Cvp: Syntax Highlighting

İleti

butterflyT
20.03.2007, 02:37

Haklısın. phpBB3 güzel de phpBB2 için şuan çok fazla MOD alternatifi var. Aslında phpBB2'de olmayıp da phpBB3'de olan şeyleri sıralarsak phpBB3'ü 20-30'a yakın temel MOD'ların yüklendiği bir preMOD olarak görebiliriz. Yani tek tek uğraşma phpBB3 kur bitsin. Üstelik yeni yazılmış kodlarla. Bu konuda çok haklısın. Ancak phpBB3 henüz Beta aşamasında ve yeni sürümü (alfa beta arası birşey olacak sanırım) çok yakında çıkmayacak ve güvenlik açığı olursa FIX yayınlayacağız diyorlar. İnternet üzerine deneysel amaçlı kurulabilir ama gerçek zamanlı site için henüz uygun değil gibi geliyor. Artı ufak tefek de olsa phpBB2 için yararlı bazı MOD'ları phpBB3 için kullanamayacağız. En azından bu aşamada.

Bilinmeyen şey her zaman bence daha tehlikelidir. phpBB2 bir iki güvenlik MOD'u ve bazı temel önlemlerle şuan phpBB3'ten daha güvenli (tahminimce). En azından çoğu açık biliniyor. Sunucu kırılmadığı müddetçe ACP'ye ulaşmak zor gibi ...

Gerçi portal siteni gezdim çok güzel olmuş. Yabancılar baya meraklanmışlar bakıyorum. Ben senin kadar phpBB3'e yakın değilim. Yorumlarım yüzeysel kalıyor. Bir müddet daha bekleme taraftarıyım ben. Ama yerel sunucu da kurulup test edilebilir elbette.

Şuan sanırım tam desteğe sahip phpBB2-> phpBB3 dönüştürücüsü üzerine çalışıyorlar. phpBB.com da versiyon 3'e geçmiş. Yine de biraz daha beklemede kalmak istiyorum.
Kullanıcı avatarı
butterflyT
Kıdemli Üye
Kıdemli Üye
 
İleti: 144
Kayıt: 14.12.2005, 18:48

Cvp: Syntax Highlighting

İleti

ALEXIS
20.03.2007, 19:39

Son kullanıcı isen elbette beklemen daha yararlı olacaktır, ancak yazdığın yazılardan kullanıcı yerine geliştirici kademesine daha yakın olduğunu görüyorum, kullanmak için birşeyler geliştirmek, yapısını öğrenmek için phpBB3'e doğru kaymanı söylemiştim.

Mesela neden phpBB3 için "Syntax Highlighting" 'i sen yapmayasın ki ? Geshi'nin class yapısınıa da çözdüğüne göre ? Senin ne eksiğin var o gavurlardan :D
Kullanıcı avatarı
ALEXIS
Site Yöneticisi
Site Yöneticisi
 
İleti: 2563
Kayıt: 30.06.2005, 09:08

Cvp: Syntax Highlighting

İleti

butterflyT
21.03.2007, 03:05

Anladım demek istediğini. Programlama dillerinden bildiklerim var elbette ama php ve MySql iyi bilmiyorum. Hatta kısaca bilmiyorum diyelim biz buna. Benim alanım farklı. Ama programlama mantığını bildiğim için phpBB'de kodun tabiri caizse çok kıl olmayan yerlerini yorumlayabiliyorum hatta bana lazım olan yer için biraz araştırma yapıp bir iki satır birşey ekleyebiliyorum. Ama sağlam bir mod yazmak için gözü kapalı olmasa da akıcı şekilde php kod yazmak lazım. Vaktim olsa belki konuya daha çok eğilirdim de bir de pek vaktim yok.

Ama bir başka konuda bahsettiğim MD5 güvenliği yüzünden phpBB3 biraz kurcalamam gerecek sanırım.
Kullanıcı avatarı
butterflyT
Kıdemli Üye
Kıdemli Üye
 
İleti: 144
Kayıt: 14.12.2005, 18:48


Eklenti Geliştirme



Kimler çevrimiçi

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 0 misafir

cron