Kaynak >>> AMAZON GNU Emasc'i öğrenmek. Bölüm 1: Emacs'ın Temelleri Bazılarınız muhtemelen klavyeyi eline alıp yazmaya başlamak için can atıyor. Sizi durdurmaya çalışmayacağız; "Emacs'ı Başlatmak" adlı bölüme dönün ve devam edebilirsiniz. Ancak daha sonra ara vermeye hazır olduğunuzda bu bölümün başlangıcını okuyun. Aşağıdaki girişte tartışacağımız bazı temel kavramları anlarsanız, Emacs'ı öğrenmek çok daha kolaydır. Emacs'e Giriş GNU Emacs, bugün dünyada en yaygın kullanılan metin editörlerinden biridir. Birçok kullanıcı Emacs'i vi'ye veya diğer GUI metin düzenleyicilerine tercih eder. Emacs neden bu kadar popüler? Emacs en yeni araç değil ve kesinlikle en güzeli de değil. Ama öğreneceğiniz en faydalı araç olabilir. Emacs hakkında faydalı işler yapabilmeniz için bilmeniz gerekenleri, etkili bir şekilde kullanmanızı sağlayacak şekilde sunmak istiyoruz. Bu kitap, Emacs kullanıcıları için bir rehberdir; sıradan kullanıcılardan programcılara kadar birçok okuyucunun ihtiyaçlarını karşılamaya çalışır. Bu nedenle yaklaşımımız, Emacs'ın yaptığı her şeyi size kesinlikle söylemek değildir. Bu kitabın açıklamadığı birçok özelliği ve komutu var. Bunun bir sorun olduğunu düşünmüyoruz; Emacs, bunların ne olduğunu anlamanıza yardımcı olan kapsamlı bir çevrimiçi yardım olanağına sahiptir. Dikkatimizi, faydalı işlerin nasıl yapılacağını açıklamaya odaklıyoruz. İlk üç bölümde temel düzenlemeyi ele aldıktan sonra, kapsamlı bir çalışma ortamı olarak Emacs'ın nasıl kullanılacağını açıklıyoruz: birden çok arabellek ve pencere ile üretkenliğin nasıl artırılacağı, Emacs editöründen ayrılmadan komutların nasıl verileceği, özel düzenleme modlarından nasıl yararlanılacağı, özel dosya türlerini düzenlemek için Emacs'in nasıl kullanılacağı vb gibi. En önemli komutları ve en önemli düzenleme modlarını ele alıyoruz. Ancak, her zaman bir ilkeyi aklınızda tutmalısınız: Emacs birçok şeyi iyi yapar, ancak bu nedenle de önemli değildir. Asıl önemli olan ise Emacs'in yapmanız gereken farklı şeylerin entegrasyonu nedeniyle önemli olmasıdır. Entegrasyon ne demek? Basit bir örnek yardımcı olacaktır. Birinin size yeni bir yazıcıya erişmek için özel bir komutu açıklayan bir posta mesajı gönderdiğini varsayın. Bir Emacs kabuğu açıp komutu Emacs'a yapıştırabilir ve doğrudan çalıştırabilirsiniz. Eğer çalışırsa, komut için bir takma ad oluşturmak üzere başlangıç dosyanızı düzenleyebilirsiniz. Tüm bunları düzenleyiciden ayrılmadan ve komutu bir kez, yeniden yazmak zorunda kalmadan yapabilirsiniz. Bu yüzden Emacs çok güçlüdür. Bir editörden daha fazlasıdır; çalışma şeklinizi değiştirebilecek eksiksiz bir ortamdır. Size ilk tavsiyelerden birini daha vereceğiz. Birçok kişi Emacs'ın öğrenilmesi son derece zor bir editör olduğunu düşünüyor. Bunun nedenini bilmiyoruz. Kuşkusuz, birçok özelliği var ve muhtemelen hepsini asla kullanmayacaksınız. Ancak herhangi bir editör, ne kadar basit veya karmaşık olursa olsun, aynı temel işlevlere sahiptir. Eğer bunlardan birini öğrenebilirseniz, herhangi birini de öğrenebilirsiniz. Size komutları hatırlamanıza yardımcı olacak standart anımsatıcı işaretler sağlayacağız, ancak bunların bile gerekli olduğunu düşünmüyoruz. Öğrenme sürecinde sizi bir ilk kamburdan kurtarırlar, ancak uzun vadede fazla bir fark yaratmazlar. Bir editörü kullanmayı öğrenmek temel olarak parmak alışkanlıklarını öğrenmekle ilgilidir: önceki satıra geçmek için parmaklarınızı nereye koyacağınızı öğrenmek gibi. Emacs ile denemeler yapıp örneklerimizden birkaçını yazmayı denerseniz, bu parmak alışkanlıklarını hızla edineceksiniz. Ve bu alışkanlıkları edindikten sonra, bisiklete binmeyi unutup tekrar hatırladığınız gibi asla unutmayacaksınız. Emacs'ı bir veya iki gün kullandıktan sonra, "C-p önceki satır anlamına gelir" diye düşünmemize gerek kalmamıştı. Çünkü parmaklarımız nereye gideceğini biliyordu. Bu noktada olduğunuzda, yuvadasınız demektir. Emacs ile yaratıcı olabilir ve özelliklerini sizin için nasıl çalıştıracağınızı düşünmeye başlayabilirsiniz. Emacs'in kapsamlı menüleri vardır, ancak yine de yaygın olarak kullanılan komutlar için tuş bağlantılarını öğrenmenizi öneririz. İyi parmak alışkanlıkları sizi inanılmaz derecede hızlı bir daktilo yazarı yapabilir ve klavyeden fareye ulaşmak ise yalnızca sizi yavaşlatır. Parmak alışkanlıkları yaklaşımı, bu kitabı okumanın farklı bir yolunu da ima ediyor. Entelektüel olarak, bir okumadan çok şey almak mümkündür, ancak her gün yalnızca birkaç yeni alışkanlık oluşturabilirsiniz. 2. Bölüm, kullanacağınız temel düzenleme tekniklerinin çoğunu kapsar. Her seferinde biraz farklı bir odakla birkaç kez okumanız gerekebilir. Örneğin, Emacs size ilerlemek için birçok farklı yol sunar: bir karakter, bir kelime, bir satır, bir cümle, bir paragraf, bir sayfa vb. şeklinde ilerleyebilirsiniz. Bu tekniklerin tümü Bölüm 2'de ele alınmaktadır. İleri ve geri hareket etmeyi öğrenerek başlayın, ardından yavaş yavaş daha karmaşık komutlar ekleyin. Benzer şekilde, Emacs, bir dosyada arama yapmak için Bölüm 3'te ele alınan birçok farklı teknik sunar. Hepsini bir kerede öğrenmek zorunda hissetmeyin; bir şey seçin, pratik yapın ve bir sonraki konuya geçin. Kitabımızın ilk üç bölümünü birkaç kez çalışmak zorunda kalırsanız eğer, kimse bundan şikayet etmeyecektir. Çünkü iyi alışkanlıklar geliştirmek için harcanan zaman, iyi harcanan zamandır. Dosyaları ve ara belleği anlamak Aslında Emacs ile dosyaları gerçekten düzenlemiyorsunuz. Bunun yerine, Emacs bir dosyanın içeriğini geçici bir arabelleğe kopyalar ve siz onu düzenlersiniz. Siz arabelleği kaydedene kadar diskteki dosya değişmez. Dosyalar gibi, Emacs arabelleklerinin de adları vardır. Bir arabelleğin adı genellikle düzenlemekte olduğunuz dosyanın adıyla aynıdır. Bir kaç istisna var. Bazı arabelleklerin ilişkili dosyaları yoktur; örneğin, scratch, bir karalama defteri gibi yalnızca geçici bir uygulama arabelleğidir; yardım aracı, yardım mesajlarını aynı zamanda bir dosyaya bağlı olmayan Help adlı bir arabellekte görüntüler. Tek kelimeyle modlar Emacs, bazı ünlü işlevselliklerini, biraz farklı davrandığı çeşitli düzenleme modlarına sahip olarak elde eder. Kelime modu kulağa teknik gelebilir, ancak bunun asıl anlamı, Emacs'in eldeki göreve duyarlı hale gelmesidir. Yazarken, her satırın sonunda Enter tuşuna basmak zorunda kalmamak için genellikle sözcük kaydırma gibi özellikler istersiniz. Programlama yaparken, dile bağlı olarak kodun doğru biçimlendirilmesi gerekir. Yazmak için metin modu vardır; programlama için C, Java ve Perl gibi dilleri içeren farklı modlar vardır. Bu yüzden Mondlar, Emacs'in farklı görevler için istediğiniz türden bir editöre dönüşmesini sağlar. Metin modu ve Java modu ana modlardır. Bir arabellek aynı anda yalnızca bir ana mod içinde bulunabilir; bir ana moddan çıkmak için de bir başkasına girmeniz gerekir. Aşağıdaki tablo ana modlardan bazılarını, ne yaptıklarını ve bu kitapta nerede ele alındıklarını listelemektedir: ANA MODLAR LİSTESİ MOD MODUN İŞLEVİ Temel Mod Varsayılan Moddur (Bölüm 6) Metin Modu Metin Yazmak İçin Kullanılan Moddur (Bölüm 2) Görüntüleme Modu Dosyaları Görüntülemek İçin Kullanılır Fakat Düzenlemek İçin Değil (Bölüm 4) Kabuk Modu Emacs İçinde Bir Kabuk Çalıştırmak İçin Kullanılan Moddur (Bölüm 5) Anahat Modu Anahatları Yazmak İçin Kullanılan Moddur (Bölüm 7) Girintili Metin Modu Otomotik Bir Şekilde Metni Girintilemek İçin Kullanılan Moddur (Bölüm 7) Paragraf Girintili Metin Modu Her Paragrafın İlk Satırını Girintilemek İçin Kullanılan Moddur (Bölüm 7) Resim Modu Klavyeyi Kullanarak ASCII Tarzında Çizimler Oluşturmak İçin Kullanılan Moddur (Bölüm 7) HTML Modu HTML Yazmak İçin Kullanılan Moddur (Bölüm 8) SGML Modu SGML ve XML Yazmak İçin Kullaınılan Moddur (Bölüm 8) LaTeX Modu Dosyaları TEX ve LATEX'e Formatlamak İçin Kullanılan Moddur (Bölüm 8) Derleme Modu Programları Derlemek İçin Kullanılan Moddur (Bölüm 9) CC Modu C, C++ ve Java Programlarrını Yazmak İçin Kullanılan Moddur (Bölüm 9) Java Modu Java Programlarını Yazmak İçin Kullanılan Moddur (Bölüm 9) Perl ve Cperl Modu Perl Programlarını Yazmak İçin Kullanılan Moddur (Bölüm 9) SQL Modu SQL'i Kullanan Veri Tabanlarıyla Etkileşim Kurmak İçin Kullanılan Moddur (Bölüm 9) Emacs Lisp Modu Emacs Lisp Fonksiyonlarını Yazmak İçin Kullanılan Moddur (Bölüm 11) Lisp Modu Lisp Programlarını Yazmak İçin Kullanılan Moddur (Bölüm 11) Lisp Etkileşim Modu Lisp İfadelerini Yazmak ve Değerlendirmek İçin Kullanılan Moddur (Bölüm 9 ve 11) Bir dosyayı her düzenlediğinizde, Emacs, düzenleyeceğiniz şey için sizi doğru ana moda sokmaya çalışır. ". c" ile biten bir dosyayı düzenlerseniz, sizi cc moduna geçirir. ". el" ile biten bir dosyayı düzenlerseniz, sizi Lisp moduna geçirir. Bazen dosyanın adından çok içeriğine bakar. TEX için biçimlendirilmiş bir dosyayı düzenlerseniz, Emacs sizi LaTeX moduna geçirir. Hangi modda olmanız gerektiğini söyleyemezse, sizi hepsinden daha genel olan temel moda sokar. Emacs genişletilebilir olduğundan eklenti modları da mevcuttur; burada listelemesek de bu kitapta bazılarından bahsediyoruz. Ana modlara ek olarak küçük modlar da vardır. Bunlar, Emacs'ın davranışının belirli bir yönünü tanımlar ve ana modda açılıp kapatılabilir. Örneğin, otomatik doldurma modu, Emacs'in sözcük kaydırma yapması gerektiği anlamına gelir; uzun bir satır yazdığınızda, otomatik olarak uygun bir satır sonu yapmalıdır. Aşağıdaki liste ise, bazı küçük yani ikincil modları, yaptıklarını ve bu kitapta nerede ele alındıklarını listeler: BAZI İKİNCİL MODLARIN LİSTESİ MOD MODUN İŞLEVİ Otomatik Doldurma Modu Kelime Kaydırmayı Etkinleştiren Moddur (Bölüm 2) Üzerine Yazma Modu Direk Eklemek Yerine Yazdıkça Yazdığınız Karakterlerin Yerlerini Değiştiren Moddur (Bölüm 2) Oto Kayıt Modu Dosyanızı Özel Bir Oto Kayıt Dosyasına Otomatik Bir Şekide Ara Sıra Kaydeden Moddur (Bölüm 2) Isearch Modu Aramak Yapmak İçin Kullanılan moddur (Bölüm 3) Flyspell Modu Flyspell Yazım Denetleyicisi İçin Kullanılan Moddur (Bölüm 3) Flyspell Prog Modu Fyspell İle Programların Yazımını Denetlemek İçin Kullanılan Moddur (Bölüm 3) Kısaltma Modu Kısaltılmış Kelimeler Kullanmanıza İzin Veren Moddur (Bölüm 3). Paragraf Girintili Metin Modu Her Paragrafın İlk Satırını Girintilemek İçin Kullanılan Moddur (Bölüm 7) Tekrar Doldurma Modu Düzenledikçe Emacs'in Paragrafları Doldurmaya Çalışan Modudur (Biraz deneyseldir, Bölüm 2) Artistik Mod Mouse Kullanarak ASCI tarzı çizimler Oluşturmak İçin Kullanılan Moddur (Bölüm 7) Anahat Modu Anahatları Yazmak İçin Kullanılan Moddur (Bölüm 7) SGML İsim Varlık Modu HTML, SGML ve XML Dkümanlarına Özel Karakterler Eklemeke İçin Kullanılan Moddur (Bölüm 8) ISO Vurguları Modu Metin Belgelerinin İçine Vurgulanmış Aksanlı Karakterler Eklemek İçin Kullaınılan Moddur Font Kilitleme Modu Okunabilirliği Artırmak İçin Metinleri Renkler ve Yazı Tipleriyle Özel Olarak Vurgulamak İçin Kullanılan Moddur (Örneğin, yorumları koddan görsel olarak ayırmak, Bölüm 9). Derleme Modu Programları Derlemek İçin Kullanılan Moddur (Bölüm 9) Zenginleştirilmiş Mod Metin Niteliklerini Kaydetmek İçin Kullanılan Moddur (Bölüm 10) VC Modu Emacs Altında Çeşitli Versiyon Kontrol Sistemlerini Kullanmak İçin Kullanılan Moddur (Örneğin: git, Bölüm 12) Bilgi Modu Emacs'in Kendi Dökümantasyonunu Okumak İçin Kulanılan Bir Moddur (Bölüm 14) Paragraf girintili metin modu, anahat modu ve derleme modu dahil olmak üzere birçok modun hem büyük hem de küçük yani ikincil modlar olduğunu fark etmiş olabilirsiniz. Her biri tek başına ana mod olarak veya diğer ana mod ile birlikte bir minor yani ikincil mod olarak kullanılabilir. Bazı belirsiz ama ilginç programlama dilleri (Modula 2 gibi) için modlar içeren ve burada tartışmayacağımız birçok başka mod da vardır. Ayrıca Emacs'in kendisinin kullandığı diğer birkaç mod da vardır. Örneğin: 5. bölümde açıklanan ve klasöz düzenleme özelliği için kullanılan Dired modu gibi. Ek olarak, eğer Lisp programlama dilinde iyiyseniz kendi modlarınızı da ekleyebilirsiniz. Emacs neredeyse sonsuz bir şekilde genişletilebilir. EMACS'i başlatma Emacs'i başlatmak için, basitçe Emacs ikonuna tıklayın veya komut satırına "emacs" komutunu yazın ve Enter'a basın. Birkaç önemli menü ögesi ve çalıştırıyor olduğunuz Emacs sürümünü açıklayan kısa bir mesaj göreceksiniz. Emacs sıçrayan grafiksel bir ekran veya metinsel bir ekran olarak görünebilir. Bu mesaj, ilk karakteri yazar yazmaz ortadan kaybolur. Daha sonra Emacs sizi genellikle boş olan "scratch" adlı bir buffer yani arabelleğe yerleştirir ki burası ayrıca deneme yapmanız için de ideal bir yerdir. NOT: Emacs'i nasıl başlatacağınız platformlara göre çeşitlilik gösterebilir. Linux'un varsayılan olarak masaüstünde ikon yoktur. Eğer Emacs'i bu platformlara yüklediyseniz Windows ve MacOS'da bu ikonlar bulunabilir. MacOS X'in " usr/bin/ "konumuna yüklü bir GNU Emacs sürümüyle birlikte geldiğini ve Emacs'i terminal emülatörünü kullanarak başlattığınızda varsayılan olarak çalışan şey olduğunu untmayaın. Eğer Emacs'i terminal emilatöründen çalıştırdıysanız mouse'ı her çalışmanızda kullanamayacaksınız ve ayrıca bazı kısıtlamalar da olacaktır. Sizin için GNU Emacs'in daha iyi bir sürümü mevcut: detaylar için 13. bölüme bakın. EMACS ekranı hakkında Emacs'e girdiğinizde, editlerinizi yapacağınız pencerenin üst kısmında geniş bir çalışma alanı görürsünüz. Aşağıdaki şekle bakın: Bir imleç pozisyonunuza işaret eder. Ayrıca bu imleç, özellikle Emacs'e daha fazla aşina olanlar arasında ve online yardım sisteminde, "point - işaret" olarak da adlandırılır; bu yüzden bu terimi unutmamak çok önemlidir. Yazmaya başlamadan önce herhangi özel bir şey yapmak zorunda değilsiniz. Alfa numeretik karekterler ve noktalama işaretlerini yazdığınız sürece, Emacs onları arabelleğinizin içine ekler. İmleç, Emacs'in yeni karakterler eklediği yeri belirtir; yazdıkça da ileriye doğru taşınır. Birçok editörün aksine, Emacs'in metin yazmak ve komut vermek için ayrı modları yoktur. Hemen şimdi birşeyler yazmayı deneyin ve Emacs'i kullanmanın ne kadar basit olduğunu görmeye başlayacaksınız. . Son düzenleyen: Moderatör: 19 Haziran 2022