Emacs'i Kişiselleştirmek

Artık kısayollarıda öğrendiğimize göre kendi emacs konfigürasyonumuza başlayabiliriz. Burada takip edebileceğiniz startup kitleri vs var yada github üzerinden diğer emacs kullanıcıları nasıl konfigürasyonlar yapmış, neler kullanmış inceleyebilirsiniz. Ben birkaç konfigürasyona baktım ve kendime göre bir düzen kurdum. Kısaca nasıl bir yapı kurdum ve nasıl bir yol izledim onu anlatacağım.


-> Emacs başlangıç dosyası olarak .emacs.d/init.el kullanıyorum. (Siz tabiki istediğiniz alternatifi kullanabilirsiniz)
(http://keremvatandas.com/Emacs-Initialization-File.html)


-> Toplam 5 tane konfigurasyon dosyam olacak.

Bunlar;

  • init.el
  • emacs-default.el
  • emacs-myfunc.el
  • emacs-packages.el
  • keybindings.el

-> init.el dosyası içersinde paket yöneticim olacak ve diğer konfigürasyon dosyalarımı init.el içerisine include edeceğim


-> Basit olarak init.el dosyamıza el-get paket yöneticimizi ekleyelim
(https://github.com/dimitri/el-get)


;; ----------------- EL-GET
(package-initialize)

(add-to-list 'load-path "~/.emacs.d/el-get/el-get")

(unless (require 'el-get nil t)
(url-retrieve
"https://github.com/dimitri/el-get/raw/master/el-get-install.el"
(lambda (s)
(end-of-buffer)
(eval-print-last-sexp))))

;; MY PACKAGE-LIST
(setq my-packages
(append
;; '(paket1 paket2 paket3 paket4)
'(helm helm-ag golden-ratio)
(mapcar 'el-get-as-symbol
(mapcar 'el-get-source-name el-get-sources))))

(el-get 'sync my-packages)

;; ----------------- Load Emacs Default File
(setq emacs-default-file "~/.emacs.d/emacs-default.el")
(load emacs-default-file)

;; ----------------- Load Emacs MyFunc File
(setq emacs-myfunc-file "~/.emacs.d/emacs-myfunc.el")
(load emacs-myfunc-file)

;; ----------------- Load Packages Config File
(setq emacs-packages-file "~/.emacs.d/emacs-packages.el")
(load emacs-packages-file)

;; ----------------- Load Keybindings File
(setq keybindings-file "~/.emacs.d/keybindings.el")
(load keybindings-file)

-> el-get paketlerini farklı biçimlerde yüklenebilir. Bununla ilgili tüm örnekler github’ta var. Kendinize göre bir yöntem seçebilirsiniz. Yada el-get kullanmayabilirsiniz. Birçok paket yöneticisi var.

https://github.com/emacs-tw/awesome-emacs#package-management


-> emacs-default.el içerisinde tool-bar, menu-bar, backup, display, mouse, tema gibi ayarlarımız bulunacak. Yani emacs yüklediğimizde otomatik olarak emacs’in içerisinde bulunan konfigürasyonları değiştirmek istediğimizde bu dosyayı kullanacağız.


-> emacs-myfunc.el içerisinde, kendi yazdığımız lisp fonksiyonları bulunacak.


-> emacs-packages.el içerisinde, yüklediğimiz paketlerin konfigürasyonları bulunacak.


-> keybindings.el içerisinde, tüm kısayol ayarlarımız bulunacak.


Yavaş yavaş paketlerimizi yükleyip, ayarlarımızı yapmaya başlayacağız.


Emacs için yararlı linkler: