BeamerLecture
by Don Eisenstein
QUICK DOWNLOAD of latest version if
you are a current user: BeamerLecture.tex
bashscripts
What is BeamerLecture?
BeamerLecture is a set of macros that builds upon the LaTeX-Beamer Class
for producing slides in LaTeX for teaching. One source file
is used to produce 4 different versions of one's lecture slides.
Here is a simple Example.tex file
that when used with BeamerLecture produces 4 output files.
- ExampleLecture.pdf: Full
in-class lecture with animated lists, etc.
- ExampleClass2up.pdf: A
two slides per page version to distribute to the class at the start of
the lecture. Some items may be hidden in this version of the
slides. Animation is suppressed.
- ExamplePost2up.pdf:
A
two slides per page version to be made available to the class after the
lecture. All previously hidden items are now revealed.
Animation is also suppressed.
- ExampleNote.pdf: Portrait
view with lecture slide on top and your own notes on bottom.
Examine
the Example.tex source file and the pdf output files above to get the
basic idea of what BeamerLecture is all about and to explore some
features in detail.
At the heart of BeamerLecture is the introduction of a hush environment. So that \hush{The answer is 4} within your LaTeX file will be
displayed in the Lecture
output file, for use during your lecture. But it will be
suppressed in the Class2up
handouts the students are provided at the start of class. There
is also a Note version
that includes lecture notes for you to refer to during class, as well
as a Post2up version
that is designed to be provided to students AFTER the lecture, with all
material exposed, for their review.
Here are some examples of some of the basic macros in BeamerLecture.tex:
- \hush{x} :
Suppress x in Class2up
- \hushframe : Suppress
the entire frame in Class2up
- \alrt{x} :
Display x in the
alert color of Beamer, default red
- \alrtL{x} : Display x in
the alert color of Beamer in large font
- \struc{x}: Display x in the structure color of
Beamer, default blue
I also provide a number of macros that build upon the itemize environment useful for
lectures. For example, iitemize
reveals items consecutively on each slide while ialert does so but highlights
the current item in red. The Lecture output ExampleLecture.pdf demonstrates these
and other features.
How to use BeamerLecture
The macro file BeamerLecture.tex
contains
all the additions to the beamer class that you need. You will
find a CUSTOMIZE section that you will need to edit with your name and
other personal data, etc. You
must have the LaTeX-Beamer Class
installed, and you need the latest Version 3.06.
BeamerLecture.tex needs to be prepended to your slide
source file. Take a look at BeamerLecture.tex. Near the top you
will see sections for each version, Lecture, Class, Post, Note.
For example the Lecture section has 5 or so lines that each begin with
%LECTURE%. These
lines must now have %LECTURE%
removed in order
to create a Lecture version
output. Or similarly, remove the %CLASS%
pieces of text to create a Class
version, etc.
There are two ways to
accomplish this:
1)
From the Unix Command Line: MacOS X, Linux, etc...
The way I use BeamerLecture, and I think the simplest, is from the Unix
Command line. For example, with one command I can create
all four versions from the same source file. This works for a
Mac, Linux, Sun etc.
A command such as "pdflecture
infile" automatically prepends the BeamerLecture.tex file to
infile.tex, removes the %LECTURE% pieces, compiles using
pdflatex, and
creates the output file infileLecture.pdf.
And "pdfall
infile.tex" produces all 4 output files. Here
are the bashscripts that I
add
to my bash shell startup script, .bashrc,
and then can use at a bash terminal command line. Some
modifications will be needed to accommodate shells other than bash.
To get 2up output these scripts call the utility pdfnup to convert a
landscape slide pdf into a 2up portrait pdf. pdfnup is part of the pdfjam
system of utilities. You will also need to edit the bash scripts
to
reflect the path where you locate BeamerLecture.tex or have it
located in
your current working directory.
The bash scripts provide the following commands, with usage as follows
given a source input file, "infile.tex"
- pdflecture infile
- pdfclass infile
- pdfnote infile
- pdfpost infile
- pdfpost2up infile
- pdfall infile (produces all of the above)
2)
Using with Windows or other LaTeX GUI system:
Without the command line, which I have not experimented much with,
seems a bit more
cumbersome. Here you create four versions (or the ones you
use)
of BeamerLecture.tex,
each of which has been manually edited. So
for example you might create a file BeamerLectureClass.tex
that has all
%CLASS% pieces removed.
Then simply put
"\input{BeamerLectureClass}"
at the top of your source file and compile
using pdflatex
as usual. This may be the preferred method for
those using Windows or those using Mac systems that are not comfortable
with the terminal command line. One issue here is that you must
postprocess your pdf using some other utility if you desire 2up (two
slides per page output). I have not done this, so if anyone
has a better solution that does not use the command line please
let me know.
Help/Suggestions:
If you need help, or have any suggestions/comments, feel free to
send me an e-mail.
Bugs/Features:
My unix scripts use filenames beginning with "yap" as temp
files. So do not name your
source, "yap.tex".
My unix scripts leave some files such as yap.aux, yap.log etc.
These are required by LaTeX to build references and table of
contents, etc.