NASIL Emacs Kullanımına Giriş
From Lapis Wiki
Bu makale NASIL bölümü serisinin bir parçasıdır
|
| MasaÜstü • Donanım • Ağ • Dağıtımlar |
| Tarayıcılar• Programlama • Linux ve Oyunlar |
Giriş
Linux altında programlamayla uğraşmak istiyorsunuz ama işlerinizi kolaylaştıracak güzel bir IDE bulamamaktan şikayetçisiniz. Ya da postaları okumak için var olan alternatiflerden sıkıldınız. Postalarınızı okumak ve haber gruplarını takip edebilmek için değişik alternatifler arıyorsunuz. Ya da kullandığım IDE öyle bir şey olsun ki canım sıkıldığında hiç kapatmadan basit oyunlar oynayabileyim diyorsanız okumaya devam edin ;-)
Bu yazının amacı çok pratik olarak sizi Linux altında Emacs ile tanıştırmaktır.
Emacs İle Neler Yapılabilir
[cedet linki eklenecek]
Emacs ile şunları yapabilirsiniz:
- kodu otomatik tamamlama,
- kodu renklendirme
- programları derlemek
- derleme hatası olan satıra gitmek
- grep sonuçlarına gitmek
- gdb ile hata ayıklamak
- bir adın tanımlandığı yere gitmek
- cvs veya p4 işlemlerini gerçekleştirmek
- mailleri okumak
- oyun oynamak
- haber gruplarını takip etmek
- ..
Emacs Kurulum
Emacs'ı Gentoo kullandığım için kolayca:
emerge emacs
diye kurabiliyorum. Başka arkadaşlar da kendi dağıtımlarına göre Emacs'ı kurulumunu buraya yazabilirler.Bu arada Emacs'in wikipedia modu var.Wikipedia sayfalarını wikipedia modunu kullanarak hazırlayabiliyorsunuz. Ben şahsen bundan sonra bu sayfaları wikipedia modunu kullanarak hazırlayabilirim ;-)
Merak edenler için söyleyeyim. Örneğin C++ ya da html modunda çalıştığınız zaman Emacs'ın otomatik tamamlama, kod renklendirme, derleme vs.. vs.. gibi özelliklerinden faydalanabiliyorsunuz ve en önemlisi hızlı olarak kod yazabiliyorsunuz.
Emacs İlk Açılış
Emacs'ı bir terminalden emacs yazarak ya da editörler altından simgesine tıklayarak çalıştırabilirsiniz. İlk açıldığında sizi şunun gibi bir ekran karşılayacak:
Evet bence de çirkin bir görünüm :)
.emacs Dosyasını Değiştirmek
Emacs'ın görünüm ve kod düzenleme ile ilgili tüm ayarları .emacs dosyasında tutulur. Şimdi .emacs dosyamızı değiştireceğiz.
Not : Bu .emacs dosyasını http://www.acehreli.org adresinden aldım. Benim de emacs kullanmayı sevmemi sağlayan sayın Ali Çehreli'ye çok teşekkürler.
Not : Sayın Ali Çehreli'ye ait olan bu dosyada Ali bey kendi kullanımlarına göre tuş kombinasyonlarının görevlerini değiştirmişler. Bu dosyayı kendi ".emacs" dosyanız ile değiştirdiğinizde TUTORIAL içinde anlatılan komutların farklı davranışları ile karşılaşabilirsiniz. Bunu düzeltmek isterseniz dosyayı bir editörle açıp tuş kombinasyonlarını kendi istediğiniz tarzda değiştirebilirsiniz.
Şimdi bir terminal açın ve şunları yazın:
$ cd $ wget http://wiki.linux-sevenler.org/images/9/97/Emacs.txt $ mv Emacs.txt .emacs
Şimdi emacs'ı tekrar başlatın ve Control tuşu ile beraber x tuşuna ve tekrar Control tuşu ile beraber f tuşuna basın. Ve daha sonra Find File: ~/ diye alt kısımda bir yer çıkacak buraya .emacs yazın.
Emacs'ın yeni görünümü.. Baya şık görünüyor değil mi ;-) .emacs ayarlarımıza göre lisp modu otomatik olarak yükleniyor ve kod renklendirmesi yapılıyor. Aynı şey C, C++ .. diğer diller için de geçerli.
Emacs'ı Kullanmaya Başlayalım
Herşeyden önce Emacs'ı kullanabilmek için komut kısaltmalarının ne anlama geldiğini bilmemiz gerekiyor:
C - Control tuşuna basılı tut demek
M - Meta Tuşu (Çoğu klavyede Alt tuşu oluyor)
DEL - Backspace Tuşu (Delete tuşu değil)
RET - Return Tuşu (Ya da bizim bildiğimiz şekliyle Enter tuşu)
SPC - Space Tuşu (Yani boşluk tuşu)
ESC - Escape Tuşu
TAB - Tab tuşu
Örneğin "C-M" ya da "M-C" tuş kombinasyonu Control tuşuna basarken Meta tuşuna da beraber bas demek. C-x C-f İlkönce Control tuşu ile beraber x'e daha sonra yine Control tuşu ile f'ye bas demek.
Şimdi emacs ile sık kullanılan bazı komutları görelim:
Yeni Belge Oluşturma
C-x C-f
(Eğer döküman varsa açar yoksa yeniden oluşturur)
Bunu denemek için Control ile beraber x tuşuna tekrar Control ile beraber f tuşuna basın ve Find File: ~/ kısmına merhaba.cpp yazın. Loading cc-mode...done diye bir mesaj göreceksiniz. Yukarda emacs'taki çeşitli modlardan ve ne işe yaradıklarından bahsetmiştik. Bu mesaj c ve c++ programları yazmak için kullanılan cc modunun yüklendiğini söylüyor. merhaba.cpp dosyasının içine de şunları yazın.
#include <iostream>
using std::cout;
int main ()
{
cout << "Merhaba Dünya" << '\n';
}
Daha sonra M-x compile yazın. Compile command: g++ -o diye bir yazı göreceksiniz. Bunu g++ merhaba.cpp -o merhaba olarak değiştirin. Ve enter tuşuna basın. Böylece emacs kullanarak ilk c++ programımızı yazmış ve derlemiş olduk ;-)
Dosya Kaydetme
C-x C-s
Kabuk kullanımı
M-! Bu komut ile tek satırlık bir terminal elde edersiniz. Burda dilediğiniz kabuk komutlarını çalıştırabilirsiniz.
M-shell Bazı durumlarda ise tek komut satırı yetmez, örneğin dışardan girdi alan bir program için kabuk açılması gerekecektir. Bu komut yeni bir buffer olarak terminal açmamızı sağlar.
M-eshell eshell komutu ile daha gelişmiş bir terminal penceresi açılmış olur. shell'den farklı olarak renklendirmeler, eski komutları hafızaya alma ve bilmediğim birkaç özellik mevcut :)
Bir Bölgeyi Seçme
C-SPC (Bu da genellikle kes yapıştır gibi işlemlerde işimize çok yarıyor)
Metin Üzerinde Çalışma
C-d (Delete tuşunun görevini görür)
C-n (Kursorün bulunduğu satırdan bir sonrakine geçiş yapar(n: next))
C-p (Bir önceki satıra geçiş yapar(p: previous))
C-f (Bir karakter ileri gider(f: forward))
C-b (Bir karakter geri gider(b: backward))
M-f (Bir kelime ileri gider)
M-b (Bir kelime geri gider)
C-a (Kursörü satır başına getirir)
C-e (Kursörü satır sonuna götürür)
M-a (Kursörü parağraf başına getirir)
M-e (Kursörü parağraf sonuna götürür)
C-k (Kursörün bulunduğu satırı kursörün sağından itibaren siler)
M-k (Kursörün bulunduğu parağrafı kursörün sağından itibaren siler)
C-v (Bir sonraki sayfaya geçişi sağlar)
M-v (Bir önceki sayfaya geçişi sağlar)
Seçili Alan Üzerinde Çalışma
C-w (Seçili metni keser)
M-w (Seçili metni kopyalar)
C-y (Kopyalanan veya kesilen metni yapıştırır(y: yank))
M-y (Daha önceki kopyalanan veya kesilen metni yapıştırır)
Arama
C-s (İleriye doğru arama)
C-r (Geriye doğru arama)
Kullanımı: Örneğin C-s elma diyoruz. Yazının en başında ikinci kez C-s'ye bastığımızda ikinci elmayı, üçüncüde üçüncüyü vs.. buluyor..
Yapılan İşlemi Geri Alma
C-_
C-x u (Bu şekilde de geri alma gerçekleştirilebilir(u: undo))
C-x 4 u (Bu şekilde de kaç defa isterseniz o miktarda geri alabilirsiniz)
İptal Etme
C-g
Yapmaya başladığınız bir eylemi iptal etmek için C-g (yani kontrol tuşu ile birlikte g'ye bas demek) kullanıyoruz. Örneğin 'M-x gnus' şeklinde bir komut girecektim. (gnus burda mail ve haber grubları için bir istemci oluyor) Ama tam bu sırada 'M-x gn' yazdım ve birisi beni çağırdı ve bundan vazgeçmek istedim. İşte bunun için C-g kullanıyoruz.
Yardım Almak
C-h k
Tuş birleşiminin ne işe yaradığını ingilizce olarak anlatır.
Çıkış
C-x C-c
Emacs'tan çıkar
Tamponu (Buffer) Sonlandırmak
C-x k
Emacs'ta aynı anda açılan her belgeye buffer ismi verilir. Bu da o an aktif olan buffer'ı kapatır(k: kill).
Pencereyi Bölmek
C-x 2 (Aktif pencereyi ikiye böler)
C-x 1 (Kursorün bulunduğu pencereyi bırakır ötekilerini arka plana iter)
C-x 0 (Kursorün bulunduğu pencereyi kapatıp diğer pencereyi açık bırakır. Birden çok pencere varsa ne yapar diye merak ediyorsunuzdur, bence denemelisiniz :) )
C-x o (Açık pencereler arasında gezinir(o: other))
C-x b (Eğer birden fazla dosya üzerinde çalışıyorsak bu
dosyalar arasında geçiş yapar)
C-x C-b (Buffer listesi (çalıştığımız dosyaların listesi))
M-x komut
Bu tuş kombinasyonunu unuttuğumuz komutları yazarak uygulamamızı sağlar.
Örnegin : M-x undo (Geri Al demek) yu C-_ yerine kullanabiliriz.
Ya da bazı programlarda örneğin gnus'u çalıştırmak için M-x gnus şeklinde ya da belirli modları yüklemek için kullanabiliriz. M-x c++-mode gibi. Bu modlar o dille ilgili işimizi kolaylaştıran bir sürü işlevler sunan program parçalarıdır.
Otomatik Tamamlama
Çoğu kişinin (ben de dahil) en çok sevdiği ve otomatik tamamlama yapma özelliği sağlayan komuttur. M-/ şeklinde kullanıyoruz. Örneğin bu kısmı Emacs ile yazmayı deneyin burda ikinci kez ot girip M-/ 'e basınca bunu otomatik haline getiriyor :)
Emacs İle İlgili Başka Kaynaklar
Eğer tuttum ben bu Emacs'ı ;-) biraz daha bir şeyler öğreneyim bakiyim diyorsanız uygulamalı olarak Emacs kullanmayı öğreneceğiniz Emacs dersini kullanabilirsiniz. Emacs dersi Türkçeye Ali Çehreli tarafından çevrildi. Büyük ihtimalle Emacs'ın yeni sürümünde de Türkçe olarak bulabileceksiniz.Emacs dersini Türkçe olarak kullanmak için şu adımları yapmanız gerekiyor.
İngilizce Olan Versiyonunu Tekrar İsimlendirin
Emacs dersini Türkçe olarak kullanabilmek için ilkönce orjinal İngilizce olan Emacs dersini yeniden isimlendiriyoruz. Genelde bu /usr/share/emacs/21.4/etc gibi bir dizindedir. Burada bulunan TUTORIAL kütüğünü TUTORIAL.en olarak olarak isimlendiriyoruz.
# cd /usr/share/emacs/21.4/etc/ # mv TUTORIAL TUTORIAL.en
Türkçe Dersi İndirip Kaydedin
Daha sonra Emacs dersinin Türkçesini bilgisayarımıza yüklüyoruz.Bu işlemleri root kullanıcısı olarak yapmalısınız:
# wget http://acehreli.org/~ali/TUTORIAL
Not : Root kullanıcısı olmak için yeterli izinleriniz yoksa TUTORIAL'ı ev dizininize ~/ kaydedip kullanabilirsiniz. wget dışında tarayıcınızı kullanarak da bu dosyayı indirip yukardaki dizine kopyalayarak da kullanabilirsiniz. Ama TUTORIAL'ın .txt ya da .html gibi bir uzantıyla kaydedilmediğinden emin olun. Eğer o şekilde kaydedildiyse bile mv TUTORIAL.txt TUTORIAL diyerek tekrar uzantısız hale getirebilirisiniz.
Türkçe karakterlerin doğru gösterilmesini sağlayın
Emacs'ın Türkçe karakterleri UTF-8 kodlamasıyla göstermesi için şunları yapın:
- Alt-x yapın (Sol Alt tuşu basılıyken x tuşuna basın) Ekranın altında M-x görünecektir.
- M-x'in yanına prefer-coding-system yazın ve Enter'a basın. Prefer coding system: yazısı görünecektir.
- Onun yanına utf-8 yazın ve Enter'a basın.
Artık Emacs açtığı belgelerin UTF-8 olduğunu düşünecektir.
Dersi Başlatın
Dersi başlatmak için:
- Eğer yukarıdaki notlarda belirtilen yetkilerle ilgili sorunlarla karşılaşmadıysanız, Ctrl-h yapın ve t tuşuna basın. Eğer herşey yolunda gittiyse Emacs dersini Türkçe olarak görmeniz gerekiyor.
- Eğer root kullanıcısı olmaya yeterli izniniz yoksa, Ctrl-x Ctrl-f yapın ve Find File: satırına ~/TUTORIAL yazın ve Enter'a basın.
İşiniz bitti; iyi eğlenceler! :)
Emacs dersi ile ilgili gördüğünüz aksaklıkları veya önerilerinizi lütfen Ali'ye bildirin: acehreli@yahoo.com
Yararlanılan Kaynaklar
Türkçe Emacs Dersi ve .emacs Dosyası
C Dili Grubu Emacs Kullanımı
http://www.emacswiki.org
http://www-scf.usc.edu/~csci410/handouts/emacs.notes
- Makalelere kategorilerine göre göz at
- NASIL kısmına geri dön

