Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How can I record myself working in Emacs to replay later to show others? There was a site a while ago that displayed an author writing up an article, and displayed everything they typed, corrected, rewrote, etc. I think such a think would be interesting for small programs, too.

I already have one possibly horrific idea; use Git and hook into the after-change hooks globally in Emacs, record every single buffer into a file in some repo as a single commit. Want to make a "browser"? Just use the Git repo as a database. But... that might be insulting to decency to use Git in such a way, I do not know.

share|improve this question
up vote 1 down vote accepted

There is a function in emacs that will record everything that you type

open-dribble-file is an interactive built-in function in `C source code'.

(open-dribble-file FILE)

Start writing all keyboard characters to a dribble file called FILE. If FILE is nil, close any open dribble file.

This won't do replay, but it might be the basis for a replay function.

share|improve this answer
Thanks, I was actually just wondering about this, too. I saw Marco Baringer use it on a Common Lisp video a few years ago to good effect. I think it complements a replay or screencast well. – Christopher Done Aug 19 '10 at 18:18

You probably saw a recording commonly known as a screencast. There's another question on SuperUser which discusses good options for desktop recording.

Also, take a look at the Emacs Screencasts page on the emacs wiki. It list some sites with emacs screencasts -- you can look at those sites and most have information about what tool(s) they used to create the recordings. At the bottom of that same wiki page, there are some links to emacs packages which can create screencasts.

share|improve this answer
Hi, the trouble is I'm writing software from scratch, right? Like writing an article from scratch. It might take three hours. I don't want to screen record for that long. I want a history of changes. Should I explicitly mention that in the question? I have used recordmydesktop successfully, but I believe the use case is different here. – Christopher Done Aug 19 '10 at 18:15

Doesn't backup save your unsaved buffers every so often? Could you increase the frequency of creating backup files and then save a bunch of different buffer states that way?

Still not really an elegant approach...

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .