oleh aerphanas pada May 27, 2023
Bagikan ke: Twitter | Facebook | LinkedIn
Free Your Soul wallpaper by Sayem Chaklader

Daftar isi

Pendahuluan


Emacs dibuat oleh Richard Stallman pada 1970, Emacs dikenal dengan kosumisasi, dokumentasi dan real-time editor, Emacs Memiliki Bahasa programnya sendiri yang digunakan untuk scripting kostumisasi yang bernama Emac Lisp, Emac Lisp merupakan sebuah Lisp dialect yang dibuat untuk Emacs, namun perlu diingat bahwa Emacs Lisp dan Dialect Lisp lain seperi Scheme sangatlah berbeda.

pada post kaliini saya akan memberikan cara kostumisasi untuk keperluan ediing pada Emacs Vanila, menurut saya Emacs Vanila sangat bagus dibanding distribusi emacs yang sudah di kostumisasi oleh orang lain karna kita bisa mendapatkan installasi emacs tanpa Bloat atau package yang tidak di perlukan.

untuk post ini saya asumsikan pembaca sudah menginstall Emacs, cara paling mudah untuk menginstall emacs adalah melalui package manager.

MELPA


untuk menginstall package untuk Emacs saya akan menggunakan MELPA tetapi anda bebas memilik bagaimana cara anda menginstall package.

untuk menginstall MELPA kita hanya perlu mennambahkan script dibawah kedalam .emacs.

(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
;; Comment/uncomment this line to enable MELPA Stable if desired.  See `package-archive-priorities`
;; and `package-pinned-packages`. Most users will not need or want to do this.
;;(add-to-list 'package-archives '("melpa-stable" . "https://stable.melpa.org/packages/") t)
(package-initialize)

bila terjadi masalah saat insallasi MELPA saya anjurkan untuk bertanya pada komunitas atau anda bisa pergi ke website MELPA.

Package yang berguna


package yang berguna untuk pengguna baru emacs adalah :

  • which-key
  • neotree
  • magit
  • multiple-cursors
  • lsp-mode
  • company
  • drag-stuf
  • dan mode untuk programming language yang di inginkan

which-key

which-key merupakan minor mode untuk Emacs, package ini sangat berguna untuk pengguna baru yang sedang belajar menggunakan emacs, package ini berguna untuk melengkapi shortcut seperti C-c, C-x dan yang lainya.

contohnya ketika kita melakukan shortcut C-c kita akan otomatis di beritahu list apa saja kemungkinan yang dapat dilakukan, penjelasan mudahnya seperti auto complete pada text editor.

neotree

neotree merupakan sebuah package yang mirip seperti nerdtree di vim, kita perlu membuat sebuah shortcut baru untuk membuka neotree, seperti ini contoh konfigurasinya

(add-to-list 'load-path "/some/path/neotree")
(require 'neotree)
(global-set-key [f8] 'neotree-toggle)

kita juga bisa membuat agar list tree kita menggunakan ikon, namun sebelum itu kita perlu menginstall package all-the-icons dan mengkonfigurasi variable neo theme ke icons, kita bisa mengubahnya dengan script di .emacs atau melalui shortcut M-x customize=group neotree lalu mincari Neo Theme

multiple-cursors

package ini memberikan fungsi yang mirip dengan sublime text, sesuai namanya mode ini memberikan kita fungsi untuk menggandakan cursors, untuk shortcutnya yang sering saya pakai adalah C-< atau C-> kommand ini akan menggandakan cursor ke atas atau ke bawah.

lsp-mode

sesuai namanya lsp-mode merupakan sebuah package yang memungkinkan kita untuk menggunakan lsp atau laguage server protocol di dalam Emacs, sehingga kita kita dapat menggunakan auto cumplete pada emacs, sebuah fitur yang mirip dengan VSCode.

company

company mode merupakan sebuah mode yang digunakan oleh lsp-mode untuk melakukan autocomplete, company mode digunakan untuk membuat buffer autocomplete, namun jika lsp-mode tidak sedang terpakai kita juga bisa mendapatkan autocomplete untuk melengkapi text yang sudah pernah di ketik.

drag-stuf

kadangkala ketika ingin memindahkan sebuah 1 line kode kita harus mengcut atau mengkopi lalu menaruhnya, dengan package/mode ini kita dapat memindahkan 1 line kode dengan shortcut M-Up untuk memindahkan ke atas dan M-Down untuk ke bawah

Programming mode

agar kita bisa dengan nyaman melakukan proggramming di dalam emacs, saya menginstall mode bhs porgram yang akan saya tulis, sebagai contoh saya akan meginstall package rust-mode dan cargo-mode saya menginstall mode ini agar saya mendapatkan syntax highlight dan beberapa shortcut untuk kompilasi contohnya, dengan menginstall cargo-mode shortcut C-c C-c kanan otomasis melakukan kompilasi dan menjalankan program.

Daftar Pustaka