I used to call eev a “tool for automating almost everything” and “my project to save the world with Free Software”. In more concrete terms, eev is a library for Emacs that lets us create executable logs of what we do in a format that is reasonably easy to read and to modify, and that lets us “play back” those logs step by step in any order.
The best introductions to eev are:
- “How to record executable notes with eev - and how to play them back”: my talk at the EmacsConf 2019. Executable notes are mostly made of sexp hyperlinks and eepitch blocks. This talk has a quick explanation of sexp hyperlinks at slides 5 and 6, a mention in slide 8 of my 20+ years of executable notes in http://anggtwu.net/e/, and a very nice demo of playing back non-trivial executable notes in the video starting at 13:10; the demo of eepitch starts at 15:11,
- “On why most of the best features in eev look like 5-minute hacks”: my talk at the EmacsConf 2020. It is mostly about design decisions; for example, starting at 30:40 it explains why eev implements a variant of M-x describe-key that it much more hacker-friendly than the standard one. At 21:02 it shows how I use M-j to teach Emacs and eev to total beginners, and at 18:47 it explains the design decisions behind M-j.
- “How to install eev with M-x list-packages and how to navigate its tutorials”. This is a video tutorial accessible to total beginners - with an approach that is the exact opposite of ”users should not be forced to see Lisp”.
- its sandboxed tutorials,
- its homepage: http://anggtwu.net/#eev .
The “[Video links:]” blocks in the sandboxed tutorials are explained here; that link also has a list of the videos. See also this announcement on emacs-devel.
The recommended way to try eev it to install it with M-x list-packages and then run M-x eev-beginner; this will load all the modules of eev, turn eev-mode on, and open the main tutorial. I tried to make eev as friendly as possible both to:
- beginners, who at first know only the most obvious keybindings, like the arrow keys, and no Lisp at all, and:
- experts, who want a very non-invasive package, with a mode that they can turn on and off easily (hint: M-x eev-mode), and that they can learn by playing with it just 5 minutes per week. The “expert setup” is explained here. The source code for M-x eev-beginner is here.