3 Ocak 2010 Pazar

Syntax Highlight Text Editör

Geçenlerde geliştirdiğim bir projem için sadece görsellik açısından bir metin editörüne ihtiyacım oldu.  Bu metin editöründe görmek istediğim sadece SQL kelimelerinin farklı renkte görünmesi idi. Hemen aklıma mevcut komponentlerden RichTextBox geldi. Ama RichTextBox’ta böyle bir özellik yoktu ve açıkçası böyle bir işlem için ayrı bir komponent yazmak işime gelmedi (Zaman açısından). Emektar google amcamızdan bir araştırma yapayım dedim. Codeproject.com ‘da farklı özelliklerde metin editörü vardı. Fakat bunlar da ya çok profesyonel ve karmaşık ya da kullanım kolaylığı olmayan editörlerdi. Biraz daha araştırdığımda karşıma 2 farklı editör çıktı. Bunlar: ScintillaNET ve SharpDevelop IDE’sinin metin editörleri. ScintillaNET meşhur Notepad++ metin editöründe kullanılıyor. Her ikisi de açık kaynak komponentler. Her iki editör de xml tabanlı ayar dosyalarıyla metin editöründe sözdizimi renklendirme (syntax highlight) yapıyor. Ama açıkçası ScintillaNET kullanışsız geldi bana. Bu yüzden tercihimi SharpDevelop IDE’sinde kullanılan ICSharpCode.TextEditor komponentinden yana kullandım. Bu komponent xshd uzantılı dosyalarda gerekli ayarları tutuyor. Her dil veya özel renklendirme için ayrı bir xshd dosyası kullanılıyor. 

Editörden birkaç resim:














Visual Studio 2008 Projesi için TIKLA