git clone 'git://github.com/howardabrams/demo-it.git'
When making demonstrations of new products, technologies and other geekery, I love the versatility of using Emacs to demonstrate the trifecta of sprint reviews:
However, I don't want to fat-finger, mentally burp, or even delay
gratification for my audience while I laboriously type, so I
predefine each “step” as an Elisp function, and then have
execute each function when I hit the
Click the following for a quicker example:
Using this project is a three step process:
demo-it-startfunction with the ordered list of functions.
(load-library "demo-it") ;; Load this library of functions ;; Define the first of many steps that do things. (defun my-demo/step-1 () (delete-other-windows) (demo/org-presentation "~/presentations/emacs-demo/emacs-demo-start.org")) (defun my-demo/step-2 () (demo-it-load-side-window "~/Work/my-proj/src/my-proj.py") (demo-it-presentation-advance)) ;; Wrap the collection of functions in another function... (defun my-demo () "My fabulous demonstration." (interactive) (demo-start (list 'my-demo/step-1 'my-demo/step-2 ;; ... ))) (my-demo) ;; Optionally start the demo when file is loaded.
Each “step” is an Elisp functions that does something like load some source code, or show off an org-mode file as a presentation. While this package has a collection of helping functions, the steps can use any Elisp command to show off a feature.
For a more complete example, see example.el.
I recommend installing these other Emacs packages: