1 puan yazan GN⁺ 2025-11-17 | 1 yorum | WhatsApp'ta paylaş
  • Emacs ortamını ana akım bir IDE gibi yapılandıran ve yeni başlayanların hemen kullanabilmesi için hazırlanmış bir ayar koleksiyonu
  • VSCode teması, gezgin, sekmeler, çoklu imleç, otomatik tamamlama gibi temel özellikleri Emacs’te yeniden oluşturur
  • GUI ve fare kullanımı varsayılan olarak desteklenir ve custom arayüzüyle yapılandırılabilir
  • Lisp (Sly/Geiser) geliştiricileri ile programcı olmayanlar için eksiksiz bir düzenleme ortamı sunar
  • Emacs’in mevcut giriş engelini düşürerek yeni kullanıcıların kolayca uyum sağlayabileceği bir başlangıç noktası sunar

IDEmacs’e genel bakış

  • IDEmacs, Emacs’i Visual Studio Code veya Sublime Text gibi GUI tabanlı bir IDE olarak kullanmayı mümkün kılan bir yapılandırma paketi
    • Emacs’in güçlü özelliklerini korurken yeni başlayanlara tanıdık bir arayüz sunar
  • Başlıca hedef kitle şu üç grup
    • Başka IDE’lerden gelen programcılar veya kodlamayı yeni öğrenen kullanıcılar
    • Common Lisp ve Scheme başlangıç seviyesindeki kullanıcıları (Sly/Geiser, yapısal düzenleme özellikleri dahil)
    • Org, Markdown, LaTeX belge düzenlemek isteyen programcı olmayan kullanıcılar
  • Amaç, Emacs’in varsayılan deneyimine yabancı olan kullanıcılara hemen kullanılabilir bir ortam sunarak giriş engelini azaltmak

Başlıca özellikler

  • GUI ve fare desteği
    • Çoğu başlangıç kiti unlike GUI öğelerini gizlemez
    • custom GUI üzerinden yapılandırmayı destekler (Elisp’i doğrudan düzenlemek gerekmez)
  • IDE tarzı tuş atamaları
    • CUA modu temelli olarak VSCode vb. ortamlarda kullanılan kısayolları geniş ölçüde yeniden üretir
    • Evil modunu kullanan Spacemacs ve Doom’dan farklı olarak GUI merkezli bir kullanım sunar
  • Tam teşekküllü bir Emacs dağıtımı düzeyinde yapılandırma
    • Hızlı ve ek yapılandırma gerektirmeyen bir ortam
    • Bol açıklamalı Elisp kodu içerdiğinden öğrenme materyali olarak da kullanılabilir
    Reklam
  • Hedef seviye, kusursuz taklitten ziyade “yeterince benzer” bir deneyim sunmaktır

VSCode yapılandırması (devam ediyor)

  • Şu anda sunulan tek IDE yapılandırması
  • Dahil edilen bileşenler
    • VSCode Dark Plus teması
    • Treemacs kenar çubuğu dosya gezgini
    • Centaur Tabs sekme çubuğu
    • breadcrumb dosya yolu gösterimi
    • idle-highlight-mode ile sembollerin otomatik vurgulanması
    • VSCode’un “General”, “Basic Editing”, “Rich Languages Editing”, “Multi-cursor” kısayollarının büyük bölümü uygulanmış durumda
  • Başlıca paketler
    • Düzenleme: whole-line-or-region, expand-region, multiple-cursors, smartparens
    • Sürüm kontrolü: vc, magit, diff-hl, blamer
    • Otomatik tamamlama: Vertico, orderless, Consult, marginalia, company
    • Lisp geliştirme: sly, geiser, adjust-parens
    • Diğer: eat(terminal), org-superstar, pdf-tools, undo-tree, helpful, rainbow-mode
    • Kod düzeni use-package ile yönetilir

Tuş atama yapılandırması

  • VSCode kısayollarını Emacs komutlarına eşler
    • Örnekler:
      • C-S-p → komut paleti (execute-extended-command)
      • C-p → dosya aç (consult-locate)
      • C-S-n → yeni pencere (make-frame)
      • C-w → pencereyi kapat (idemacs-kill-buffer-noprompt)
      • C-, → kullanıcı ayarları (customize)
    Reklam
  • Temel düzenleme, çoklu imleç, gezinme, dosya yönetimi, görünüm denetimi gibi ayrıntılı kategoriler için karşılık gelen komutlar tanımlanmış
  • Bazı kısayolların davranışı VSCode’dan farklı ve TODO olarak işaretlenmiş

Katılım ve katkı çağrısı

  • Kullanıcılardan IDEmacs’i kullandıktan sonra geri bildirim vermeleri isteniyor
    • Yeni başlayan kullanıcıların gözlemlenmesi, Jabber/XMPP veya issue tracker üzerinden görüş paylaşılması öneriliyor
  • Geliştiricilere de kod iyileştirme ve özellik genişletme çalışmalarına katılmaları tavsiye ediliyor

İlgili proje

  • Mousemacs (GitHub: seamus-brady/mousemacs)
    • Emacs’i Sublime Text veya VSCode gibi çalışacak şekilde hazırlayan bir dağıtım
    • Lisp öğrenimi için geliştirilmiş ve fare dostu bir arayüz sunuyor
    • Basit bir tema ile birlikte Emacs’in tüm özelliklerini koruyor

Kurulum ve çalıştırma

  • Zorunlu bağımlılıklar
    • Emacs 29 veya üzeri, git, DejaVu Sans Mono yazı tipi
  • İsteğe bağlı bağımlılıklar
    • grep, locate veya plocate
    Reklam
  • Kurulum adımları
    1. Depoyu klonlayın
      git clone https://codeberg.org/IDEmacs/IDEmacs
      
    2. İnternet bağlantısı açıkken Emacs’i çalıştırın
      emacs --init-directory=/path/to/IDEmacs/vscode
      
    • Çalıştırma sırasında gerekli Emacs paketleri otomatik olarak indirilir

Diğer

  • Şu anda VSCode yapılandırması dışında başka bir IDE tarzı sunulmuyor
  • Gelecekte kaynaklar elverirse yeni GUI uygulamaları ihtimalinden söz ediliyor
  • Özgün metinde ek bilgi yok

1 yorum

 
GN⁺ 2025-11-17
Hacker News yorumu
  • VSCode'un kolay olduğunu düşünenlerin biraz gerçeklik kontrolüne ihtiyacı var
    İlk açılışta açılır pencereler, kenar çubukları, araç ipuçları derken insanı bunaltabiliyor
    Ben de bir Emacs kullanıcısıyım ama Emacs'ın sezgisel olduğunu iddia etmiyorum
    Yine de VSCode da sihirli şekilde kolay bir araç değil; sadece kitlesel olarak tercih edilen bir seçenek

    • VSCode'un UX'i tanıdık geliyor
      Dosya ağacı, editör, terminal, sekme tamamlama ve eklenti kurulumu çoğu kullanıcının etkileşim alanını oluşturuyor
      Varsayılan olarak gelmiyorsa ya da bir eklentiyle kolayca eklenemiyorsa çoğu kişi onu kullanmıyor
    • Profesyonel araçlar (IDE'ler, DAW'lar, video düzenleyiciler vb.) doğaları gereği karmaşıklık taşır
      Ama VSCode'un karmaşıklığı vim ya da Emacs'la kıyaslanacak düzeyde değil
      Kısa bir öğretici ya da yarım saatlik kurcalamayla rahatça alışılabiliyor
      Buna karşılık neovim için resmen bir kitap gerekiyordu
    • Ben de her gün Emacs kullanıyorum ama VSCode bana uyarıcı ve sert geliyor
      Yakın zamanda RustRover'ı denedim; yalnızca tıklayarak istediğim yapılandırmayı oluşturmak zordu
      IDE'lerdeki “kolaylık” hissinin sanılandan daha büyük bir yanılsama olabileceğini düşündürdü
    • Emacs'i bir yıl kullanıp bırakan biri olarak, birlikte çalışabilirliğin (interoperability) çok daha önemli olduğunu düşünüyorum
      Standart dosya seçici ya da CUA kısayolları gibi yaygın arayüzleri destekleyen çok araç var
      Bu yüzden Emacs yerine Zim-wiki gibi alternatifler kullanıyorum ve daha memnunum
    • VSCode'un açılır pencereleri ve kenar çubuklarının yorucu olduğu görüşüne karşılık, Eclipse gibi ağır IDE'lere alışkın biri için bu aslında daha tanıdık gelebilir
      Buna karşılık tmux, vi, nano, emacs ekseninde çalışmış biri için şaşırtıcı olabilir
  • Emacs basit bir IDE değil, felsefe ve özgürlük taşıyan bir araç
    Programlama odaklı kullanım senaryolarına yönelen birçok proje var ama VSCode'da da Emacs tuş bağlarıyla bunun %75'i yapılabiliyor
    Emacs'ın özü, size bir “parça kutusu” verip onu kendiniz birleştirmenizi sağlaması
    Adeta “medenileşmiş bir çağ için zarif bir silah” gibi

    • Yalnız Emacs Lisp'i işlevsel bir dil saymak zor
      Veri yapılarının çoğu değiştirilebilir ve setq gibi buyurgan işlevler çok fazla
  • Emacs'ta sabit pencere düzenlerinin pratikte gerçekten iyi çalışıp çalışmadığından emin değilim
    Eskiden denediğimde Treemacs paneli dosya görüntüleyici yerine bazen kod tamponlarını gösteriyordu

  • Son dönemde Emacs'ı IDE olarak yapılandırmak çok daha kolaylaştı
    Yerleşik eglot sayesinde eskisine kıyasla çok daha az elisp kodu gerekiyor ve Python ayarı da tek satırla yapılabiliyor
    Bu yüzden böyle projeler benim gibi mevcut kullanıcılardan çok yeni başlayanlar için bir geçit gibi duruyor

    • 15 yıl önce okulda Emacs kullandığımda da epey akıcıydı
      OCaml REPL, 68000 emülatörü ve gdb entegrasyonu büyük bir yapılandırma olmadan çalışıyordu
      Sonrasında uzak sunucu ortamları yüzünden vim'e geçtim ama yakın zamanda Emacs'ı yeniden deneyince paket yönetiminin çok daha rafine hale geldiğini gördüm
      Yine de DevOps/SRE tarafındaki araç desteği hâlâ zayıf
  • Spacemacs ve Doom gibi paket demeti projelerini seviyorum
    Kendim kullanmasam da yeni paketler keşfetme fırsatı veriyorlar ve ayarları tekrar kurcalamak için bahane çıkarıyorlar

    • Ben de idemacs sayfasındaki paketlere göz attım; özellikle “minimap” adı hoşuma gitti
      Basit ama amacına tam oturan bir isim olduğu için yüzümde gülümseme oluşturdu
  • Emacs'ın arayüzünü modern biçimde yeniden inşa eden bir proje olmasını isterdim
    Çekirdek aynı kalsın ama görsel olarak daha net ayrışan, gözü daha az yoran bir arayüz olsun isterim
    Eski Lisp tabanlı editörlerdeki gibi Ctrl'a basınca kısayol ipuçlarının görünmesi de güzeldi

    • Ben tam tersini düşünüyorum
      Arayüz fena değil; asıl acil sorun tek iş parçacıklı yapı ve sık yaşanan takılmalar
      Günde en az bir kez C-g basmak zorunda kalma hali düzeltilmeli
    • Birebir aynı değil ama Common Lisp tabanlı Lem buna bakmaya değer
      curses/SDL2 üzerinde çalışıyor ve Emacs tarzını sürdürüyor
    • Sanırım kast edilen şey which-key
      Eskiden harici bir paketti ama yakın zamanda doğrudan Emacs'ın kendisine entegre edildi
      İlgili commit bağlantısı
    • Mümkün olduğunca mevcut arayüzün korunmasını isterim
      Grafik ortamda da terminalde de aynı görünümle çalışması büyük bir avantaj
      Treemacs'ın her yerde aynı görünmesi özellikle hoşuma gidiyor
  • OniVim v2'nin başarılı olamaması üzücü
    Yerel bir IDE'ydi ve VSCode eklenti sistemini tamamen destekliyordu
    OniVim v2 arşiv bağlantısı

    • OniVim, vim'in çekirdek işlevlerini libvim adlı ayrı bir kütüphaneye ayırmıştı
      Bu, başka GUI ön yüz geliştiricileri için de faydalı olabilirdi
      Neovim RPC üzerinden haberleşiyor ama performans yeterince hızlı
      VSCode için Neovim eklentisi de bu yapı sayesinde tam bir vim deneyimi sunuyor
    • Ama hedef kullanıcı kitlesi belirsizdi
      Vim kullanıcıları Electron tabanlı girdi gecikmesinden ve EULA'dan hoşlanmazdı; VSCode kullanıcılarınınsa Vim'le pek ilgisi yok
  • 25 yıldan uzun süredir Emacs kullanıyorum; yeni bir kurulumda yaptığım ilk şey GUI öğelerini devre dışı bırakmak oluyor
    Menü ya da araç çubuğunu hiç kullanmıyorum

    • Özellikle VSCode kullanıcıları fare merkezli çalışıyor ama Emacs'ın gücü, Lisp makinesini istediğiniz gibi değiştirebilmeniz
    • Ben de 15 yılı aşkın süredir Emacs'ı tamamen klavyeyle kullanıyorum
      Ama danışman hocam varsayılan Emacs'ı fareyle kullanıp LaTeX işleri yapıyordu; bu benim için oldukça taze bir deneyimdi
  • Doom Emacs kullanmaya devam edeceğim ama bu tür denemeler sevindirici
    Emacs'ta Vertico gibi yenilikçi arayüz eklentileri çok ama temel deneyim hâlâ yetersiz
    Böyle projeler Emacs'ı daha fazla insan için erişilebilir hale getirirse bu iyi bir şey

  • 15 yılı aşkın süredir Emacs kullanıyorum; benim tek dileğim, VSCode'daki gibi uzaktan düzenlemeyi mümkün kılan bir istemci-sunucu modu
    Gecikmenin yüksek olduğu ortamlarda da iyi çalışan bir çözüm olsa harika olurdu
    Olmazsa kendim yapmayı düşünüyorum
    Yine de VSCode'un Python entegrasyonu oldukça iyi

    • İki yaklaşım var
      1. Emacs'ı yerelde çalıştırıp uzak dosyaları Tramp ile düzenlemek
      2. Emacs'ı uzak sunucuda terminal modunda (-nw) çalıştırmak