Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
# 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]]. # (find-eev-install-intro "1. Beginners and experts") # http://anggtwu.net/eev-intros/find-eev-install-intro.html#1 # (find-eev-quick-intro) # http://anggtwu.net/eev-intros/find-eev-quick-intro.html # (find-eev "eev-beginner.el") # http://anggtwu.net/eev-current/eev-beginner.el.html # (find-eev-quick-intro "1. Installing eev") # http://anggtwu.net/eev-intros/find-eev-quick-intro.html#1 # (find-eev-intro "1. `eev-mode'") # http://anggtwu.net/eev-intros/find-eev-intro.html#1 # https://orgmode.org/ prose # (ecop 5 "prehistory-4") # (eco "prehistory-4") # (find-here-links-intro "1. Alternating between \"task\" and \"notes\"") # http://anggtwu.net/eev-intros/find-here-links-intro.html#1 # http://anggtwu.net/LATEX/2019emacsconf.pdf # http://anggtwu.net/LATEX/2019emacsconf.pdf#page=8 # http://anggtwu.net/LATEX/2019emacsconf.pdf#page=13 # Local Variables: # modes: (org-mode fundamental-mode) # End: