eev
eev copied to clipboard
a tool for automating almost everything (with Emacs)
This file:
https://github.com/edrx/eev/
http://anggtwu.net/eev-current/README.org.html
http://anggtwu.net/eev-current/README.org
(find-angg "eev-current/README.org")
(find-angg "eev-current/")
Author: Eduardo Ochs [email protected]
Some eev-isms:
(defun c () (interactive) (eek "C-c C-e h h"))
(defun o () (interactive) (find-angg "eev-current/README.org"))
(defun v () (interactive) (brg "~/eev-current/README.html"))
(defun cv () (interactive) (c) (v))
(find-eev "README.org")
(find-orgnode "Table of Contents")
#+OPTIONS: toc:nil num:nil
- Introduction
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 [[http://anggtwu.net/eev-intros/find-here-links-intro.html#1][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:
-
"[[http://anggtwu.net/emacsconf2019.html][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 [[http://anggtwu.net/eev-intros/find-eev-quick-intro.html#3][sexp hyperlinks]] and [[http://anggtwu.net/eev-intros/find-eev-quick-intro.html#6][eepitch blocks]]. This talk has a quick explanation of sexp hyperlinks at [[http://anggtwu.net/LATEX/2019emacsconf.pdf#page=5][slides 5 and 6]], a mention in [[http://anggtwu.net/LATEX/2019emacsconf.pdf#page=8][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 [[http://www.youtube.com/watch?v=86yiRG8YJD0#t=13m10s][13:10]]; the demo of eepitch starts at [[http://www.youtube.com/watch?v=86yiRG8YJD0#t=15m11s][15:11]],
-
"[[http://anggtwu.net/emacsconf2020.html][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 [[http://www.youtube.com/watch?v=hOAqBc42Gg8#t=30m40s][30:40]] it explains why eev implements a variant of [[http://www.gnu.org/software/emacs/manual/html_node/emacs/Key-Help.html][M-x describe-key]] that it much more hacker-friendly than the standard one. At [[http://www.youtube.com/watch?v=hOAqBc42Gg8#t=21m02s][21:02]] it shows how I use M-j to teach Emacs and eev to total beginners, and at [[https://www.youtube.com/watch?v=hOAqBc42Gg8#t=18m47s][18:47]] it explains the design decisions behind M-j.
-
"[[http://www.youtube.com/watch?v=kxBjiUo88_U][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 "[[http://anggtwu.net/LATEX/2019emacsconf.pdf#page=10][users should not be forced to see Lisp]]".
-
its [[http://anggtwu.net/eev-intros/find-eev-intro.html][sandboxed tutorials]],
-
its homepage: [[http://anggtwu.net/#eev]] .
The "[Video links:]" blocks in the sandboxed tutorials are explained [[http://anggtwu.net/eev-intros/find-video-links-intro.html#2][here]]; that link also has a list of the videos. See also [[https://lists.gnu.org/archive/html/emacs-devel/2021-05/msg00527.html][this announcement]] on emacs-devel.
(find-eev-quick-intro "3. Elisp hyperlinks")
(find-eev-quick-intro "6. Controlling shell-like programs")
(find-eev2019video "13:10" "Demo: patching xpdf")
(find-eev2019video "15:11" "Demo: the eepitch block (in red star lines)")
(find-eev2020video "18:47" "M-j - design decisions")
(find-eev2020video "21:02" "M-j itself")
(find-eev2020video "30:40" "their targets are not visible")
(ecop 8 "prehistory-7" "several megabytes")
(eco "prehistory-7" "several megabytes")
http://anggtwu.net/eev-intros/find-videos-intro.html#2
(find-videos-intro "2. Short links to eev video tutorials")
(ecop 10 "prehistory-9" "users should not be forced to see Lisp")
(eco "prehistory-9" "users should not be forced to see Lisp")
- Trying it
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 [[http://anggtwu.net/eev-intros/find-eev-quick-intro.html][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 [[http://anggtwu.net/eev-intros/find-eev-intro.html#1][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 [[http://anggtwu.net/eev-intros/find-eev-install-intro.html#1][here]]. The source code for M-x eev-beginner is [[http://anggtwu.net/eev-current/eev-beginner.el.html][here]].