Emacs
Emacs, özellikle genişletilebilirlik yönünden birbirine benzeyen ve ilişkili metin edtiörlerinin genel adıdır. Temel görevi metin düzenlemek olan bu editörlerden en yaygını GNU Emacs olduğundan, kimi zaman GNU Emacs yerine kullanılır.
Tarihçe
İlk Emacs, 1970'lerde MIT Yapay Zeka Labı'nda Richard M. Stallman tarafından bir satır düzenleyici olan TECO'ya makro kümesi olarak yazıldı. Kısa sürede yaygınlaşan ve bu şekilde büyüyen makrolar Guy Steele ve Stallman tarafından derlenip EMACS ismini aldı.
Unix'de çalışan ilk emacsi, Java programlama dilinin de yazarı olan James Gosling 1981 yılında geliştirdi. Gosling Emacs olarak anılan uygulama C'de yazılmış olmasına rağmen, kullanıcılara kolayca kişiselleştirme ve geliştirme imkânı veren Mocklisp isimli Lisp türevi betik dili destekliyordu.
1984'e kadar özgürce dağıtılan bu uygulamanın haklarının Gosling tarafından satılması, aynı kod ağacından başlayan Stallman'ın GNU Emacs isimli düzenleyicisinin eski kodlardan temizlenmesine sebep oldu. Benzer şekilde kendi uygulamasının da özgürlüğünü kaybetmesini istemeyen Stallman, GPL lisansını yazdı ve GNU Emacs, GPL ile lisanslanan ilk uygulama oldu.
1991'de, GPL lisansının özgürlüğünden faydalanan bir takım farklı geliştiriciler Lucid Emacs'i türetti. Daha sonradan XEmacs ismini alan bu uygulama özgür yazılım tarihindeki en büyük çatallanmaya sebep oldu. GNU Emacs ve XEmacs, 2006 yılı itibariyle halen kullanılmakta olan en yaygın iki emacsdir.
Özellikleri
Emacs Lisp
GNU Emacs ile birlikte, Mocklisp'in yerini kimi zaman ELisp olarak kısaltılan Emacs Lisp almıştır. Yorumlanan bir dil olan Lisp türevi betik dili, birçok akranı gibi değişken işlevlere izin verir. Özellikle bu yeteneği Emacs'in geliştirilebilirliğine önemli katkıda bulunmasını sağlar. Zengin kütüphanesi ile birlikte, web tarayıcısından, eposta istemcisine, çeşitli oyunlardan yapay zekaya kadar birçok uygulamanın yazılabilmesine imkân veren dil, Emacs'in basit bir metin düzenleyici olarak kalmayıp, teknik olarak bir işletim sistemi sınıfına girebilmesinin sebebidir.
Düzenleme kipleri
Çok amaçlı düzenleyi olan Emacs, dosya türünü düzenlerken yardımcı olacak kiplerle gelir. Bu kipler o dosya türüne özgü söz dizimi renklendirme, kelime tamamlama, otomatik girintileme (indentation) gibi birçok işlev ile düzenleme işini kolaylaştırır. Bunların yanı sıra yazım denetimi, yazıtipi şekillendirme, dosya türüne özel tuş ve komut tanımları, hata ayıklama görevleri kipler yardımıyla yapılabilir. Emacs ile dağıtılmayan birçok kip Emacs Lisp dosyası olarak internette bulunabilir.
Düzenli ifadeler
Emacs, karmaşık ara/değiştir işlemleri için oldukça zengin ve kullanışlı düzenli ifade desteği ile gelir. Emacs bütün yaygın işletim sistemlerine taşınmıştır.
Belgeleme ve dil desteği
Emacs çok ayrıntılı ve gömülü belgelerle gelir. Arayüzü gibi bunlar da genelde İngilizcedir. Kullanım kılavuzu farklı dillere çevrilmişse de, ne arayüzü ne de çekirdek Emacs Lisp kütüphanesi hiçbir dile çevrilmemiştir.
Ayrıca bakınız
Dış bağlantılar
- LAPİS-Emacs Başlangıç Rehberi
- Aycan iRiCAN'ın "Nasıl Bir EMACS" başlıklı Belgesi
- EMACS ve GNU/Linux yazı tipleri