Video summary
A New Beginning With GNU Emacs - Configuring Emacs 01
Main summary
Key takeaways
Tech/product goals of the video
- The creator wants to build a plain “vanilla” GNU Emacs setup that feels closer to Doom Emacs.
- They start a multi-part series (“Configuring Emacs 01”).
- Main approach: write the Emacs configuration as an Org-mode document (
config.org) and tangle/load it into Emacs via Org Babel.
Step-by-step setup described (tutorial/guide content)
1) Install Emacs + start from a clean config
- Install GNU Emacs via your OS package manager (examples:
pacmanon Archapton Debian/Ubuntu)
- Ensure config directories don’t already exist:
- Remove
~/.emacs.d - Remove XDG config location (mentioned as
~/.config/emacs), then create a fresh one
- Remove
2) Create init.el that loads config.org (Org Babel)
- Create
~/.config/emacs/init.elwith an Org Babel setup that:- Treats
config.orgas the source config - Loads/transforms it into usable Emacs configuration behavior (similar to auto-generating
config.el)
- Treats
3) Create config.org as the configuration “source of truth”
- Includes org metadata for export (title/author/description).
- Sets org options like:
- Startup visibility (e.g., “show everything” / unfolding headings)
- Table of contents depth
- Builds the config in sections/headers, starting with important programs to load first.
Core tooling choices (package management + keybinding stack)
4) Use Elpaca as the package manager (instead of package.el)
- Install/configure Elpaca by copying its GitHub example snippet into
config.orginside an Emacs Lisp source block. - Add an early-init setting to disable the built-in Emacs package manager:
- Set
package-enable-at-startupto nil (sopackage.eldoesn’t conflict)
- Set
5) Enable Elpaca’s use-package integration
- Add Elpaca support for
use-packageso packages can be declared via macros.
6) Install and configure Evil mode (Vim-like modal editing)
- Install Evil via a
use-packageexample. - Configure Evil to start automatically at Emacs launch.
- Settings highlighted:
- Split preferences:
- Vertical splits open to the right
- Horizontal splits open to the bottom
- Split preferences:
- Also install:
evil-collection(expands Evil beyond basic editing)evil-tutor(a Vim-tutor-like learning aid)
7) Install general.el for keybindings
- Install
general.elviause-package. - Use
general-evil-setupso keybindings integrate with Evil’s modal states. - Define a leader key using Evil-compatible maps:
- Leader prefix: Space (
spc)
- Leader prefix: Space (
- Example leader bindings (with which-key descriptions):
- Buffer actions:
SPC b b→ switch bufferSPC b n→ next bufferSPC b p→ previous bufferSPC b k→ kill buffer
- Buffer actions:
GUI/UX improvements made in the config
8) Fix fonts (custom faces + frame defaults)
- Adds a fonts section configuring:
- Default font face: JetBrains Mono; height 110; medium weight
- Variable-pitch font: Ubuntu
- Fixed-pitch font: JetBrains Mono
- Italic styling for comments and keywords
- Updates
default-frame-alistso appearance is consistent in Emacs client windows. - Sets line spacing via
Q-defaultline spacing (0.12). - Notes that default Emacs fonts looked “terrible/small,” and this section improves readability.
9) Remove extra GUI chrome + enable line numbers
- Disables:
menu-bar-mode(set to-1)toolbar-mode(set to-1)scroll-bar-mode(set to-1)
- Enables:
- Global line numbers (
global-display-line-numbers-mode) - Wrapped/truncated line behavior via
global-visual-line-mode(set to true)
- Global line numbers (
Productivity/UI integration
10) Install which-key
- Install via
use-package which-key. - Configuration highlights:
- Display position: bottom
- Padding, columns, and separator style (right arrow)
- Demonstration: keybinding hints appear when pressing leader sequences (e.g.,
SPC b...andC-x...).
11) Improve Org-mode writing experience: TOC + bullets
- Installs/configures:
- toc-org
- Dynamic table of contents
- Added via
add-hook org-mode-hook toc-org-enable
- org-bullets
- Bullet-based headings instead of heavy asterisks
- Enabled via
org-indent-modeandorg-bullets-modeonorg-mode-hook
- toc-org
- Demonstrates:
- A special org block label like
SPACE :toc:to generate the TOC - TOC updates automatically as headings change
- Clicking TOC entries jumps to sections
- A special org block label like
Project organization / where the code is saved
- The creator saves the result to a GitLab repo and keeps a versioned directory per video.
- Example repository naming:
01-alpaca-evil-general
- Repo includes:
config.orginit.elearly-init.el
Main speakers/sources (end)
- Main speaker/source: The video creator (solo narrator) discussing GNU Emacs/Doom Emacs and demonstrating the configuration live.
- Primary external sources referenced:
- GitHub documentation/snippets for:
- Elpaca
use-packageintegrationgeneral.eltoc-org/org-bullets
- GitHub documentation/snippets for:
Rate this summary
Your feedback will help improve summaries.
Improve this summary
Reprocess with a stronger model when the summary feels incomplete or inaccurate.
Translate summary in another language
Ask questions to this video
Chat for follow-up questions, clarifications, and source-backed answers.