GeSHi (Generic Syntax Highlighter) Nedir?

Güncelleme Yayın

GeSHi (Generic Syntax Highlighter), PHP ile yazılmış, metin içi kod yapılarının belirtilen kod dahilinde işaretlenmesini, okunabilir, anlaşılabilir ve uygulanabilir olmasını sağlayan bir genel sözdizimi işaretleyicisi. Stabil versiyonu ilk kez 2014 yılında yayınlanan GeSHi, 2015 yılından beri Wikipedia tarafından öncelikli bir şekilde kullanılmakta. Bir çok işaretleme (markup) ve programlama dilini (200 üzerinde) destekleyen GeSHi, phpBB için geliştirilmeye başlanmış, ancak sunduğu yapı sayesinde Dokuwiki, Drupal (bkz. drupal eklentisi), Mambo, MediaWiki ve WordPress (bkz. wordpress eklentisi) gibi web tabanlı uygulamalar için eklenti desteğiyle oldukça geniş bir kullanıma kavuşmuştur.

GeSHi

Temel olarak, dil belirtileren metin yığınının işaretlenmesi yeterli olmakta. Bu aşamadan sonra çıktı belirtilen dilin yapısına uygun şekilde XHTML standartlarında CSS düzenlemesi dahilinde görüntülenebilmekte. Elbette bu işlemler için PHP desteği gerekmekte. Aşağıda örnek birkaç kod parçacığı iletiyorum.

BASH örneği;

<pre lang="bash">...</pre>

PHP örneği;

<pre lang="php">...</pre>

JavaScript örneği;

<pre lang="javascript">...</pre>

Yukarıdaki örneklere ek olarak, renklendirilen koda satır numarası (line number) da ekleyebiliriz. line satır numaralandırmasını belirttiğimiz sayı ile başlatacaktır. Örneğin, line="5" kodun 5. satır itibariyle numaralandırılmasını sağlar.

Go örneği;

<pre lang="go" line="1">...</pre>

HTML örneği;

<pre lang="html4strict" line="1">...</pre>

R örneği;

<pre lang="rsplus">...</pre>

WordPress İle Kullanımı

WordPress eklentisi olarak GeSHi bir çok eklenti üzerinden kullanılabilmekte. Uygun eklenti için WordPress Eklentiler sayfasını inceleyebilirsiniz. Kullanım ve diller ile ilgili daha detaylı bilgi için geshi-doc sayfasında demo ve örneklendirmeler mevcut.