Okay, I very recently started to use the public git repository of my Emacs Configuration as my main configuration. The content of it is not that different, but I used to use a mono repo of all my DotFiles. I have recently changed that to make it easier to manage on Windows.
The configuration is fairly simple. I use regular Emacs keybindings, and I use a plugin called No easy keys to for myself to learn emacs keybindings. Other than that: I use Ivy, Projectile and Smart Mode line and a few extra themes. Look in the configuraiton yourself for the details. Everything is well commented.
I have two init file, the regular one called init.el that loads everything, and one called fast-init that only loads stuff that ship with emacs that I use in situations where I just want emacs to load as fast as possible. Then I have various files that all my settings are organized in
- pre.el: sets settings and loads stuff that come as a part of emacs
- funcs: defines some helpers functions I use all the time
- core.el: loads everything third party modules I use that are not programming languages
- langs.el loads programming languages
Fast-init only loads pre.el, while init.el first sets a GC setting designed to start fast, while perform well after start. Then I load pre, funcs, core and langs. Finally after that it loads personal.el if it exist. This is a file that is excluded from git that I use if I need to override some setting.
This config is a little bit more complex than I would like because I need it to run on Mac OS, Windows and Linux. But the functionality is more or less the same across them.