Warning: this is an htmlized version!
The original is across this link,
and the conversion rules are here.
(Re)generate: (find-eev-intro)
Source code:  (find-eev "eev-intro.el" "find-eev-intro")
Main intros:  (find-eev-quick-intro)
Index to the source files: (find-eev "eev2-all.el")
This buffer is _temporary_ and _editable_.
Is is meant as both a tutorial and a sandbox.
The quickest way to reach this index is with `M-5 M-j'.

Here is a list of all the available sandbox-y tutorials that
explain parts and concepts of eev, listed in (a kind of)
recommended reading order:

  00. (find-eev-quick-intro)
   0. (find-eev-intro)
   1. (find-eval-intro)
   2. (find-eepitch-intro)
   3. (find-wrap-intro)
   4. (find-links-intro)
   5. (find-eejump-intro)
   6. (find-code-c-d-intro)
   7. (find-psne-intro)
   9. (find-brxxx-intro)
  10. (find-pdf-like-intro)
  11. (find-audiovideo-intro)
  12. (find-anchors-intro)
  13. (find-multiwindow-intro)
  14. (find-rcirc-intro)
  15. (find-templates-intro)
  16. (find-prepared-intro)
  17. (find-bounded-intro)
  18. (find-channels-intro)
  19. (find-videos-intro)

Items 00, 1 and 2 should give you a good grasp of the main ideas
- namely, that _elisp hyperlinks and interactive scripts can be
embedded anywhere_. The other tutorials mainly show how to make
these ideas pervasive.

The last item above is an index of the video tutorials, with
scripts for downloading local copies of them and links to
important positions in the videos.

There are also these two, ahem, "things", that I use in
workshops, but that are not very eev-specific:

   A. (find-emacs-intro)
   B. (find-defun-intro)
   C. (find-eev-quick-intro)

Installation: way 1
If you're a real beginner and you are reading this in a web browser
then this is the easiest way to install eev and start playing with it.
Mark the multi-line "{ ... }" block below, copy it to the clipboard
with ctrl-C, and paste it to a shell running in a terminal to execute
its commands. It will download the current version of eev and unpack
it into ~/eev/.

  rm -Rv ~/eev/
  mkdir  ~/eev/
  cd     ~/eev/
  rm -v eev2.tgz
  wget http://angg.twu.net/eev-current/eev2.tgz
  tar -xvzf eev2.tgz

Now do the same with this block:

    echo '#!/bin/sh'
    echo 'cd ~/eev/ && emacs -l ./eev-readme.el --eval="(find-eval-intro)"'
  } > ~/e
  chmod 755 ~/e

You now have a shell script that you can invoke with


that starts Emacs, loads eev, and opens this tutorial:


Once you learn how to navigate the help system by following elisp
hyperlinks and going back, the rest is easy.

The README for eev2 is an elisp file,

  (find-eev "eev-readme.el")

that contains an easy way of installing eev - in either a
temporary directory or in a permanent one - and initial
instructions for trying the main keys. ***HIGHLY RECOMMENDED***!

Installing eev
The instructions below are adapted from:

  (find-eev-update-links "/tmp/eev/")
    and:   (find-eev "eev-readme.el")

You should download the tarball with all the elisp files, unpack
it somewhere - doing something like this (here you can use F8 if
you already have eev installed),

* (eepitch-shell)
* (eepitch-kill)
* (eepitch-shell)
rm -Rv /tmp/eev/
mkdir  /tmp/eev/
cd     /tmp/eev/
wget http://angg.twu.net/eev-current/eev2.tgz
tar -xvzf eev2.tgz

and then evaluate these sexps (type C-x C-e at the end of each

  (add-to-list 'load-path "/tmp/eev/")
  (require 'eev2-all)
  (eev-mode 1)

This will turn on eev-mode - which just activates a few
keybindings. To understand the main ideas, please follow these
two tutorials:


To toggle eev-mode on and off, use `M-x eev-mode'.

The keybindings
`eev-mode' defines its own meanings for lots of meta-shift-letter
key combinations - which are not normally used by Emacs - and,
besides that, only for:

  `M-e'    (find-eval-intro "`M-e'")
  `M-k'    (find-eval-intro "`M-k'")
  `M-j'    (find-eejump-intro "\neejump\n")
  `M-h'    (find-links-intro "Elisp hyperlinks buffers")
  `<f8>'   (find-eepitch-intro "The main key: <F8>")

For the full lists of keybindings, see:

  (find-efunctiondescr        'eev-mode)
  (find-eminormodekeymapdescr 'eev-mode)
  (find-efunctiondescr        'eev-avadj-mode)
  (find-eminormodekeymapdescr 'eev-avadj-mode)