-*- mode: org; fill-column: 80; eval: (display-fill-column-indicator-mode 1); -*-
Personal Emacs configuration. Uses a two-layer approach: a vanilla (no external packages) base loaded first, then third-party packages on top via use-package.
init.el- Main configuration. Loads
Emacs-vanilla/init.elthen layers third-party packages viause-package. early-init.el- Runs before the GUI; sets a dark background to avoid a white flash on startup.
emacs--init-all.org- Literate version of the full configuration. Tangles to
init.elandearly-init.el. emacs--straight.org- Alternative literate configuration using
straight.elinstead ofpackage.el. gallery.el- Helpers for batch-processing Hugo blog galleries (thumbnails, picture tags).
menu.el- Menu-bar customisations.
abbrev_defs- Saved Emacs abbrevs.
templates- tempo-style snippet templates.
keymap_with_locked_modifiers.xkb/keymap_with_sticky_modifiers.xkb- xkb keymap files for system-level key remapping.
Emacs-vanilla/- Vanilla-only Emacs configuration layer (separate repo). Pure Emacs 27.2+ features; ~60 custom
my/utility functions, no external packages. Loaded byinit.elas the base layer. Emacs-DIYer/- DIY extensions layer (separate repo). Small hand-rolled replacements for common packages, aimed at offline use.
offline-packages/- Shell scripts for building local ELPA mirrors on an online machine and transferring them to an offline Emacs of a matching version. See build-mirror.sh.
ollama-buddy-user-prompts/- System prompts for
ollama-buddygrouped by category (coding, analysis, creative, emacs, documentation). old-ada-mode/- Vendored legacy
ada-mode. themes/- Local
james-00N-theme.elcolour themes. eshell/- Eshell aliases.
The init.el file and the literate emacs--init-all.org are kept in sync via tangling. Section markers follow the pattern ;; -> section-name for navigation; major sections include package-archives, org-agenda, org-capture, use-package, keys-navigation, and ollama-buddy.
Key prefixes:
M-l- Jump keymap (navigate to common locations/files).
C-q- Window/visual operations.
M-s- Search/edit operations.
C-c Oollama-buddytransient menu.
Run offline-packages/build-mirror.sh on an online machine with the same Emacs version as the offline target. It produces a tarball under emacs-<ver>/<os-slug>/<arch>/ containing a local ELPA archive plus MANIFEST.txt and PACKAGES.txt. On the offline machine, extract the tarball and point package-archives at the resulting directory.
See LICENSE.