Skip to content

alecigne/.emacs.d

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SwanEmacs 🦢

This is my Emacs configuration, compatible with Emacs 29+. It is part of my dotfiles as a Git submodule.

It uses John Wiegley’s use-package (part of Emacs 29) to make things:

Neatly organized
Everything is grouped by package. I also use outshine to organize code by sections.
Readable
use-package offers a large choice of expressive keywords.
Self-installable
All Emacs packages are downloaded automatically when I first start Emacs on a new environment.

Thanks to use-package’s :vc keyword, packages can even be fetched directly from source.

Structure

  • early-init.el is loaded. It contains a few specific customizations that can take effect before the normal init process begins.
  • init.el loads package.el, add a few tweaks to use-package and then loads my personal config files located in ./lisp/alc/:
    • alc-main.el – my main config.
    • alc-org.el – my Org-mode config.
    • alc-work.el – my work config (not loaded by default).

Local configuration

I usually add a short configuration (alc-local.el – not included on any public branch) on each machine for local customizations. For example, the org-agenda-files variable will mix different Org projects that depend on the machine I am working on. This way, I can separate Org projects at the file level but still mix tasks and events in the agenda to get a clear picture of my day. I then filter everything by context to avoid distraction.

About literate Emacs configurations

I am not a fan of literate Emacs configurations (yeah, I hate them). This one used to be such a “literate config” based on a network of Org file, but I switched for the sake of simplicity. Browse the last commit of that Org config if you’re interested, or check the way too numerous literate configs out there.

About

My Emacs configuration.

Topics

Resources

Stars

Watchers

Forks