Editor Emacs

Ada satu hal yang cukup aneh: kebanyakan (artinya tidak semua) orang Indonesia yang saya kenal jarang melakukan editing atau mengetik dokumen atau program dalam jumlah besar di Linux (kebanyakan melakukan editing di Windows). Lalu hal aneh kedua adalah, semua orang yang saya kenal melakukan editing dengan menggunakan vi, dan tidak ada yang menggunakan emacs.

Emacs adalah editor yang sulit di pelajari, saya setuju dengan hal itu. Untuk melakukan suatu hal butuh kombinasi beberapa tombol (seperti exit dengan control-x control c), dan kombinasinya cukup sulit diingat. Emacs bisa dikustomisasi, tapi caranya tidak mudah (GUI yang ada cukup membingungkan, sedangkan untuk customisasi manual diperlukan pemahaman dasar LISP).

Tapi belajar emacs tidak sia-sia, Anda bisa melakukan hampir segala hal dengan Emacs. Jadi belajar memakai Emacs sama saja dengan belajar memakai banyak program sekaligus (belajar memakai emacs sebagai editor, IDE, mail client, dll)

Lisp

Sebagian besar fitur emacs diprogram menggunakan bahasa Lisp (tepatnya lagi dialek elisp), dan kita bisa menambah kemampuan emacs dengan menulis program dalam elisp.

Mengevaluasi ekspresi dalam Lisp

(defun factorial(x) (if (= x 0) 1 (* x (factorial (- x 1))))) tekan C-x C-e di ujung baris
(factorial 5) tekan C-x C-e di ujung baris

Game

Emacs secara default menyertakan beberapa game yang bisa Anda nikmati seperti snake, puz, dan tetris (di beberapa distro Linux, game ini tidak ada karena nama Tetris melanggar merk dagang Tetris.)

Multiplatform

Emacs bisa berjalan di Linux dan Windows, dan puluhan OS lain.

Mode Teks

Tidak seperti kebanyakan editor modern yang harus dijalankan di mode grafik (XWindow), Emacs bisa berjalan di mode teks (console) biasa maupun di X Window, dengan segala macam fitur yang menjadi andalannya. Bekerja di mode teks terkadang lebih nyaman, dan tidak mudah terdistract (misalnya karena pesan dari Instant Messenger [tentu saja, di emacs kita juga bisa chatting — dengan IRC misalnya —, jadi tergantung pada Anda juga]).

Browsing

Dengan menginstall package w3m, kita bisa melakukan browsing langsung di dalam emacs, dengan teks yang bisa disalin ke buffer lain.

Membaca email

Emacs bisa digunakan untuk membaca email dan newsgroup.

Memprogram

Emacs secara default dapat digunakan secara nyaman untuk mengedit program dalam LISP maupun dalam C (bahasa lain juga didukung, tapi menurut saya hanya di kedua bahasa tersebut kustomisasi hampir tidak diperlukan)

Dalam pemrograman C, emacs bisa seperti IDE, bisa mengkompilasi program, menunjukkan baris yang salah, dan juga bisa digunakan sebagai debugger interaktif, dan dengan modul tambahan, maka hal ini bisa digunakan untuk bahasa lain.

Referensi Emacs

  1. Emacs wiki: Emacs
  2. Emacs LISP Intro