1 poin oleh GN⁺ 2025-11-17 | 1 komentar | Bagikan ke WhatsApp
  • Kumpulan konfigurasi yang menata lingkungan Emacs seperti IDE arus utama agar pemula bisa langsung menggunakannya
  • Menghadirkan kembali fitur utama seperti tema VSCode, penjelajah file, tab, multi-kursor, dan pelengkapan otomatis di Emacs
  • GUI dan operasi mouse didukung secara bawaan, dan dapat dikonfigurasi melalui antarmuka custom
  • Menyediakan lingkungan penyuntingan lengkap untuk pengembang Lisp (Sly/Geiser) dan non-programmer
  • Menurunkan hambatan masuk Emacs dan menyediakan titik awal yang mudah diadaptasi oleh pengguna baru

Gambaran umum IDEmacs

  • IDEmacs adalah set konfigurasi yang memungkinkan Emacs digunakan seperti GUI IDE semacam Visual Studio Code atau Sublime Text
    • Tetap mempertahankan kemampuan kuat Emacs sambil menyediakan antarmuka yang familier bagi pemula
  • Tiga kelompok pengguna utama adalah sebagai berikut
    • Programmer yang berpindah dari IDE lain atau pengguna yang baru belajar coding
    • Pemula Common Lisp dan Scheme (termasuk Sly/Geiser dan fitur penyuntingan struktural)
    • Non-programmer yang ingin mengedit dokumen Org, Markdown, LaTeX
  • Bertujuan menurunkan hambatan masuk dengan menyediakan lingkungan yang siap dipakai segera bagi pengguna yang merasa pengalaman default Emacs terasa asing

Fitur utama

  • Dukungan GUI dan mouse
    • Tidak menyembunyikan elemen GUI, berbeda dari kebanyakan starter kit
    • Mendukung pengaturan melalui GUI custom (tanpa perlu mengedit Elisp secara langsung)
  • Keybinding gaya IDE
    • Berbasis mode CUA untuk mereplikasi secara luas shortcut yang digunakan di VSCode dan sejenisnya
    • Berbeda dari Spacemacs dan Doom yang menggunakan mode Evil, pendekatannya berpusat pada GUI
  • Konfigurasi setingkat distribusi Emacs lengkap
    • Lingkungan yang cepat dan tidak memerlukan konfigurasi tambahan
    • Terdiri dari kode Elisp dengan komentar melimpah sehingga juga dapat dimanfaatkan sebagai materi belajar
    Iklan
  • Tingkat targetnya bukan tiruan sempurna, melainkan pengalaman yang “cukup mirip”

Konfigurasi VSCode (sedang berlangsung)

  • Saat ini satu-satunya konfigurasi IDE yang disediakan
  • Komponen yang disertakan
    • Tema VSCode Dark Plus
    • Penjelajah file sidebar Treemacs
    • Bilah tab Centaur Tabs
    • Tampilan jalur file breadcrumb
    • Penyorotan simbol otomatis idle-highlight-mode
    • Menerapkan sebagian besar shortcut VSCode untuk “General”, “Basic Editing”, “Rich Languages Editing”, dan “Multi-cursor”
  • Paket utama
    • Penyuntingan: whole-line-or-region, expand-region, multiple-cursors, smartparens
    • Manajemen versi: vc, magit, diff-hl, blamer
    • Pelengkapan otomatis: Vertico, orderless, Consult, marginalia, company
    • Pengembangan Lisp: sly, geiser, adjust-parens
    • Lainnya: eat(terminal), org-superstar, pdf-tools, undo-tree, helpful, rainbow-mode
    • Penataan kode dikelola dengan use-package

Konfigurasi keybinding

  • Memetakan shortcut VSCode ke perintah Emacs
    • Contoh:
      • C-S-p → palet perintah (execute-extended-command)
      • C-p → buka file (consult-locate)
      • C-S-n → jendela baru (make-frame)
      • C-w → tutup jendela (idemacs-kill-buffer-noprompt)
      • C-, → pengaturan pengguna (customize)
    Iklan
  • Menentukan perintah yang sesuai untuk kategori rinci seperti penyuntingan dasar, multi-kursor, navigasi, manajemen file, dan kontrol tampilan
  • Beberapa shortcut memiliki perbedaan perilaku dibanding VSCode dan ditandai sebagai TODO

Ajakan untuk mencoba dan berkontribusi

  • Pengguna diminta memberikan umpan balik setelah memakai IDEmacs
    • Berbagi pendapat melalui pengamatan penggunaan oleh pemula, Jabber/XMPP, atau issue tracker
  • Pengembang dianjurkan ikut serta dalam perbaikan kode dan perluasan fitur

Proyek terkait

  • Mousemacs (GitHub: seamus-brady/mousemacs)
    • Distribusi yang membuat Emacs berperilaku seperti Sublime Text atau VSCode
    • Dibuat untuk mempelajari Lisp dan menyediakan antarmuka yang ramah mouse
    • Tetap mempertahankan seluruh fitur Emacs dengan tema yang sederhana

Cara instalasi dan menjalankan

  • Dependensi wajib
    • Emacs 29 atau lebih baru, git, font DejaVu Sans Mono
  • Dependensi opsional
    • grep, locate, atau plocate
    Iklan
  • Langkah instalasi
    1. Clone repositori
      git clone https://codeberg.org/IDEmacs/IDEmacs
      
    2. Jalankan Emacs saat terhubung ke internet
      emacs --init-directory=/path/to/IDEmacs/vscode
      
    • Saat dijalankan, paket Emacs yang diperlukan akan diunduh secara otomatis

Lain-lain

  • Saat ini belum ada gaya IDE lain selain konfigurasi VSCode
  • Disebutkan bahwa implementasi GUI baru mungkin dimungkinkan di masa depan jika sumber daya memadai
  • Tidak ada informasi tambahan dalam teks asli

1 komentar

 
GN⁺ 2025-11-17
Komentar Hacker News
  • Orang yang menganggap VSCode itu mudah perlu cek realitas
    Saat pertama dijalankan, rasanya seperti dibombardir popup, sidebar, tooltip, dan semacamnya
    Saya juga pengguna Emacs, tapi saya tidak akan mengklaim Emacs itu intuitif
    Hanya saja VSCode juga bukan alat yang ajaib dan mudah, melainkan sekadar pilihan yang populer

    • UX VSCode terasa cukup familier
      Pohon file, editor, terminal, pelengkapan tab, dan pemasangan ekstensi adalah sebagian besar ruang interaksi pengguna
      Kalau tidak tersedia bawaan atau mudah ditambahkan lewat ekstensi, kebanyakan orang tidak akan memakainya
    • Alat profesional (IDE, DAW, editor video, dll.) pada dasarnya memang tak bisa lepas dari kompleksitas
      Tapi kompleksitas VSCode tidak sebanding dengan vim atau Emacs
      Dengan tutorial singkat atau sekitar 30 menit mencoba-coba, orang sudah bisa cukup terbiasa
      Sementara neovim sampai terasa perlu satu buku penuh
    • Saya juga memakai Emacs setiap hari, tapi VSCode terasa terlalu merangsang dan kasar
      Saya baru-baru ini mencoba RustRover, dan sulit membuat konfigurasi yang saya inginkan hanya lewat klik
      Itu membuat saya merasa bahwa ‘kemudahan’ IDE bisa jadi lebih semu dari yang dibayangkan
    • Dari sudut pandang orang yang memakai Emacs selama 1 tahun lalu menyerah, saya rasa interoperabilitas jauh lebih penting
      Ada banyak alat yang mendukung antarmuka umum seperti pemilih file standar atau shortcut CUA
      Karena itu saya lebih puas memakai alternatif seperti Zim-wiki daripada Emacs
    • Soal pendapat bahwa popup dan sidebar VSCode terasa membebani, bagi orang yang terbiasa dengan IDE berat seperti Eclipse justru mungkin terasa familier
      Sebaliknya, kalau selama ini bekerja terutama dengan tmux, vi, nano, atau emacs, itu bisa terasa mengejutkan
  • Emacs bukan sekadar IDE, melainkan alat yang memuat filsafat dan kebebasan
    Banyak proyek berfokus pada use case yang berpusat pada pemrograman, tetapi di VSCode pun 75% bisa diwujudkan dengan keybinding Emacs
    Inti pendekatan Emacs adalah memberi “kotak komponen” lalu membiarkan pengguna merakitnya sendiri
    Rasanya seperti “senjata elegan dari zaman yang lebih beradab”

    • Namun Emacs Lisp sulit dianggap sebagai bahasa fungsional
      Sebagian besar struktur datanya dapat diubah, dan ada banyak fungsi imperatif seperti setq
  • Saya ragu apakah layout jendela tetap di Emacs benar-benar bekerja dengan baik
    Saat saya mencobanya dulu, panel Treemacs kadang menampilkan buffer kode alih-alih penampil file

  • Belakangan ini mengatur Emacs sebagai IDE jadi jauh lebih mudah
    Berkat eglot bawaan, jumlah kode elisp yang dibutuhkan jauh lebih sedikit daripada dulu, dan konfigurasi Python pun cukup satu baris
    Karena itu proyek seperti ini terasa lebih dekat sebagai gerbang untuk pemula daripada untuk pengguna lama seperti saya

    • Bahkan 15 tahun lalu saat saya memakai Emacs di kampus, pengalamannya sudah cukup mulus
      Integrasi REPL OCaml, emulator 68000, sampai gdb bisa dilakukan tanpa banyak konfigurasi
      Setelah itu saya pindah ke vim karena lingkungan server jarak jauh, tetapi saat baru-baru ini mencoba Emacs lagi, manajemen paketnya terasa jauh lebih rapi
      Hanya saja tooling terkait DevOps/SRE masih kurang
  • Saya suka proyek bundel paket seperti Spacemacs dan Doom
    Walau saya tidak memakainya langsung, proyek seperti itu memberi kesempatan menemukan paket baru dan alasan untuk mengutak-atik konfigurasi lagi

    • Saya juga melihat-lihat paket di halaman idemacs, dan nama ‘minimap’ terasa sangat berkesan
      Sederhana, tapi sangat pas dengan tujuannya, sampai bikin saya tersenyum
  • Saya berharap ada proyek yang membangun ulang UI Emacs secara modern
    Intinya tetap dipertahankan, tetapi saya ingin antarmuka yang secara visual lebih jelas dibedakan dan tidak terlalu melelahkan mata
    Saya juga suka fitur seperti editor lama berbasis Lisp yang menampilkan panduan shortcut saat tombol Ctrl ditekan

    • Saya justru berpendapat sebaliknya
      UI-nya sudah cukup baik, dan masalah yang lebih mendesak adalah arsitektur single-thread serta sering macet
      Kenyataan bahwa saya harus menekan C-g setidaknya sekali sehari perlu diperbaiki
    • Tidak sepenuhnya sama, tetapi Lem berbasis Common Lisp layak dijadikan rujukan
      Berjalan di atas curses/SDL2 dan mewarisi gaya Emacs
    • Mungkin yang dimaksud adalah which-key
      Dulu itu paket eksternal, tetapi belakangan sudah diintegrasikan ke inti Emacs
      Tautan commit terkait
    • Saya ingin sebisa mungkin mempertahankan UI saat ini
      Fakta bahwa tampilannya berjalan sama baik di lingkungan grafis maupun terminal adalah keunggulan besar
      Saya sangat suka Treemacs terlihat sama di mana pun
  • Sayang sekali OniVim v2 tidak berhasil
    Itu adalah IDE native yang sekaligus mendukung penuh sistem plugin VSCode
    Tautan arsip OniVim v2

    • OniVim memisahkan fitur inti vim ke pustaka terpisah bernama libvim
      Itu juga akan berguna bagi pengembang frontend GUI lain
      Neovim berkomunikasi lewat RPC, tetapi performanya cukup cepat
      Plugin Neovim untuk VSCode juga bisa memberi pengalaman vim yang utuh berkat struktur ini
    • Namun pengguna sasarannya memang tidak jelas
      Pengguna Vim kemungkinan akan mengeluhkan input lag berbasis Electron dan EULA, sedangkan pengguna VSCode tidak tertarik pada Vim
  • Saya sudah memakai Emacs lebih dari 25 tahun, dan hal pertama yang saya lakukan pada instalasi baru adalah menonaktifkan elemen GUI
    Saya sama sekali tidak memakai menu atau toolbar

    • Pengguna VSCode khususnya bekerja dengan pendekatan yang berpusat pada mouse, tetapi kekuatan Emacs adalah bahwa mesin Lisp-nya bisa dimodifikasi sesuka hati
    • Saya juga sudah lebih dari 15 tahun memakai Emacs dan mengoperasikannya sepenuhnya lewat keyboard
      Tetapi profesor pembimbing saya memakai Emacs bawaan dengan mouse untuk pekerjaan LaTeX, dan itu pengalaman yang cukup segar
  • Saya akan tetap memakai Doom Emacs, tetapi upaya seperti ini tetap menyenangkan untuk dilihat
    Emacs punya banyak plugin UI yang inovatif seperti Vertico, tetapi pengalaman dasarnya masih kurang
    Jika proyek seperti ini bisa membuat Emacs lebih mudah diakses oleh lebih banyak orang, itu hal yang baik

  • Saya sudah memakai Emacs lebih dari 15 tahun, dan satu-satunya harapan saya adalah mode client-server untuk penyuntingan jarak jauh seperti di VSCode
    Akan bagus kalau ada solusi yang tetap bekerja baik di lingkungan berlatensi tinggi
    Kalau tidak ada, saya berniat membuatnya sendiri
    Meski begitu, integrasi Python di VSCode memang cukup bagus

    • Ada dua pendekatan
      1. Menjalankan Emacs secara lokal lalu mengedit file jarak jauh dengan Tramp
      2. Menjalankan Emacs dalam mode terminal (-nw) di server jarak jauh