RSS

Yazı ile Yazar Arasına Neden Bir Şey Girsin: Emacs Dark Room Mode

22 Jul

Geçenlerde .NET ile yazılmış ve “işte budur!” dedirten bir program keşfettim.

Yazarlarının deyişi ile Dark Room, tam ekran modunda çalışan, dikkat dağılmasını engelleyici bir yazı yazma ve metin düzenleme ortamı. Diğer kelime işlemcilere kıyasla çok çok az özelliği var, program sadece sizinle ve yazacağınız metne konsantre olmanızla ilgili.

.NET 2.0 yüklü bilgisayarlarda çalışabilen Dark Room, meşhur bir OS X (Tiger) programı olan WriteRoom‘un bir benzeri.

Dark Room’u hemen kurup denemeye başladım, uzun zamandır unutmuş olduğum sadeliği bana hatırlatması çok hoşuma gitti. Bu arada web sitesinde de şu ifade dikkati çekmişti:

Also, you can do something similar in emacs, but who wants to learn a bunch of obscure keyboard shortcuts?

Eh, bu lafı gören bir Emacs kullanıcısının boş boş durması beklenemezdi.

Hemen .emacs dosyama göz attım, açılışta menüyü, düğmelerin bulunduğu “toolbar”ı ve de kaydırma çubuklarını kapatan bölüm mevcuttu:


(tool-bar-mode nil)
(menu-bar-mode nil)
(scroll-bar-mode nil)

Geriye bir tek şey kalmıştı o da en alttaki sabit bilgi satırını (modeline) ortadan kaldırmak:


(setq mode-line-format nil)

Ancak tabii Emacs’ın açık olduğu pencerenin sınırları hala belliydi. Bundan kurtulmanın yolu ne idi? Fluxbox pencere yöneticisinin “Toggle Windows Decorations” özelliğinden faydalanmak yeterli olacak gibi görünüyordu. Emacs ile ~/.fluxbox/keys dosyamı açıp en sonuna Control m :ToggleDecor satırını ekledim ve Fluxbox’ın Windows Managers menüsünden Reconfigure ile konfigürasyon dosyasının yeniden okunmasını sağladım. Fluxbox’ın en tepedeki görev çubuğu zaten “auto-hide” ayarlı idi ve arkaplan da tamamen siyahtı, tüm programları minimize ettikten sonra Emacs’ın içinden C-m basmak yeterli oldu.

MS Windows’daki Dark Room tadını Debian ve Emacs ortamında yakalamıştım.

Tabii henüz ortada bir Emacs Dark Room Mode yok kolayca aktive edilebilen ancak en azından Fluxbox pencere yöneticisi için gerekli malzeme hazır. Mevcut pencere durumları arka planda bir yere kaydedilse ve sonra belli bir tuş ataması sonucu çalışan bir Emacs Lisp fonksiyonu bunları minimize edip, pencere dekorasyonlarını kaldırırsa ve tekrar çalıştığında da eski hallerine döndürürse benzer işlevsellik yakalanmış olur. Tabii yazı yazma ekranında aslında Emacs’a bakıyor olmanın ve bunun getirdiği metin düzenleme özelliklerinin varlığı da cabası.

Not: Bu vesile ile Stephenson’ın In the Beginning was the Command Line‘ını da epey bir yad ettim. Elleri dert görmesin.

Meraklısına soru: Acaba buradaki hangi bölüm Uzun Uzak Adam tarafından yazılmıştır? 😉

Advertisements
 
Leave a comment

Posted by on July 22, 2006 in Emacs, General, Programlama

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: