Features Download
From: Eduardo Ochs <eduardoochs-Re5JQEeQqe8AvxtiuMwx3w <at> public.gmane.org>
Subject: Re: So here I am
Newsgroups: gmane.emacs.eev.devel
Date: Wednesday 5th September 2007 15:45:28 UTC (over 9 years ago)
Hi Xavier,

> By the way, I am trying to setup eev-current on my machine but it
> fails since I do not have a ~/.bashrc (I try to follow
> freedesktop recommendation).

sorry for not having answered earlier... eev is a "tool for automating
everything"... have you taken a look at the (unfinished) article about
it? Here's the url:


And here's something much older, that is mostly about the, hmm,
"social implications" of using e-scripts:


I can try to give you a few starting points. One of the things on
which I have been working lately is to make eev less dependent on
being installed - that is, now it should be possible to use a good
part of it - hopefully enough to grasp the main concepts - without
patching any rcfiles. Here is how: if you unpack the tarball at some
directory, say, with

 mkdir ~/eev-current/
 cd    ~/eev-current/
 wget http://angg.twu.net/eev-current.tar.gz
 tar -xvzf eev-current.tar.gz

then you can load eev and activate eev-mode with just:

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

The effects of the "(require 'eev-all)" are: lots of functions -
mainly for elisp hyperlinks - become defined; a few glyphs, like the
red star (^O) are set, and some environment variables - $EE,
$EEVTMPDIR, etc - are set inside Emacs, and will be inherited by
programs that are started from Emacs - for example, the shells in `M-x
shell' buffers, and the shells inside xterms launched from Emacs. Try
to run this,

 (find-bgprocess "xterm")

and check that $EE is defined in that shell... however, the `ee' shell
function described in


will NOT be defined in these shells.

Turning eev-mode on does only two things: it activates the
`eev-mode-map' keymap, and it sets `pop-up-windows' to nil - when
`pop-up-windows' is nil the keys `M-e', `M-E' in `eev-mode-map', that
follow elisp hyperlinks, behave better; and the keys `M-k', and `M-K',
also from `eev-mode-map', work more consistently as ways to return
from elisp hyperlinks (`M-e' is `kill-this-buffer', `M-E' is
`bury-buffer'). Turning eev-mode off deactivates the keymap and
restores the previous value of `pop-up-windows'.

Currently the eev-mode keymap has lots of key bindings. You can
inspect them with:

 (find-efunctiondescr 'eev-mode)
 (find-ekeymapdescr eev-mode-map)
 (find-evariable 'eev-mode-map)

I have to rewrite some parts of the documentation to convince people
to forget about `M-x eev' and `M-x eev-bounded'/ when they are
just starting to use eev, as these kinds of things require "prepared
shells"... Instead, they should start by `M-e' (obviously), `M-k',
`C-q C-o', `' and the `M-h ___' family. `C-q C-o' generates a red
star glyph; `' and the `M-h ___' commands were the subject of most
of the recent posts to this mailing list, and these links are good
starting points about them:


I hope this helps, and more soon,
   Eduardo Ochs
   [email protected]

P.S.: "eev-all.el" is new, please download the newest tarball from

P.P.S.: as you mentioned FreeDesktop, let me quote a paragraph from
the comments in the file "eev.el", just to scare you a bit... 8-)

;; My central idea with eev - and I was so isolated that it took me
;; about five years to realize that it should really be called "my
;; idea" instead of "the way that Emacs was intended to be used" - was
;; that _everything that we do once should be easy to repeat later_.
;; This "everything" included not only executing commands at shell
;; prompts but also opening files, manpages, manuals in Info format,
;; etc, and locating information in them... At that time graphical
;; interfaces were not so prevalent, and it was quite natural then to
;; just dismiss them as a flawed idea; GUIs suggest that everything
;; should be done with "magic buttons", while Emacs (with eev) offers
;; us an alternative: instead of magic buttons whose innards are
;; hidden we can use small programs - often one-liners - that when
;; executed (and executing them shouldn't be much harder than pressing
;; a button) worked as buttons whose lids are open, with their inner
;; structure visible...
CD: 3ms