1.4 KiB
Some things have to be done to make sure that everything works as it should. This includes enabling lexical binding, loading Cask and keeping some comments.
Use lexical binding
For some of my functions, and general coolness, lexical binding is a must. Without it, closures cannot be made for example.
;; -*- lexical-binding: t -*-
This line needs to appear at the beginning of the file to work. Just to keep things looking nice I put it at the beginning of the file.
Keep package.el from changing my init
Some time ago my init file was changed by Emacs. It added a single line of code and some explanatory comments. Apparently I need to keep this comment in my initialization file so that Emacs doesn't try to add the code again. I actually use Cask to manage and load my packages so I don't need this.
;; (package-initialize)
Load Cask
I use Cask to manage my installed packages and for that to work I need to load Cask at the start of the initialization file. This should be executed both when byte-compiling and loading at run-time so that other bits and pieces can byte-compile without warnings or errors.
(eval-and-compile
(require 'cask "~/projects/ext/cask/cask.el")
(cask-initialize))