20
0
Files
cdsc_tex/slides_template/README.ltx-talk.md
Benjamin Mako Hill 288d571df2 Rewrite the port's README as Markdown
Converts it and fills in what was missing: install instructions, links to
ltx-talk, trantor, veraPDF and the presenter viewers, the upstream issues
behind the speaker-notes workaround and the overlay tagging bug, and how to
use the notes machinery in another document.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-14 07:26:23 -07:00

3.4 KiB

ltx-talk port

This branch is the presentation template ported from beamer to the ltx-talk class. ltx-talk was written with tagging as a design goal.

Requirements

  • LuaLaTeX
  • TeX Live 2025 or newer (ltx-talk needs LaTeX 2025-11-01 or later); texlive-latex-recommended ships the class
  • python3-pypdf, for assembling the notes PDF

You can install all three on Debian with:

apt install texlive-latex-recommended python3-pypdf

Building

make slides      # the deck; this is what gets uploaded
make notes       # double-width slide + notes pages for presenting
make pdfpc       # build the notes PDF and open it in pdfpc

The notes are a kludge. They exist to be read while talking and not shared. Only the slides build is expected to validate with tools like veraPDF.

Speaker notes

ltx-talk has no \note command. Its README and website list speaker notes among what the class is for, but the feature is unwritten (see issue #156).

talk-notes.sty defines \note so that it records its text to a side file and contributes nothing to the slides. mknotes reads that file afterwards and builds the presenter PDF.

The assembled page puts the slide on the left and, on the right, a grey band carrying the section and position in the talk, a thumbnail of the current slide flush into the corner, and the notes below. Previous and next slides are left to the viewer: dspdfviewer, pdfpc, or the web viewers Beamer Viewer and backstage.

Installing speaker notes

To use speaker notes in another ltx-talk document, copy two files out of this repository:

  • mknotes
  • talk-notes.sty

Load the package in the preamble:

\usepackage{talk-notes}

Write notes with \note{...}, or \note<2->{...} to bind one to particular slides of a frame. As in beamer, plain notes run together as text, each starting a new paragraph, and \note[item]{...} adds an entry to a numbered list printed after them.

Build the deck, then assemble the presenter PDF:

./mknotes example

That reads example.pdf and example.notes and writes example-notes.pdf, the double-width version you present from. The slides in example.pdf are untouched.

If fonts.tex is present it is used for the notes pages, so they match the deck. --preamble FILE names a different fragment.

Theme

trantor.sty is Marco Pompili's Metropolis-like theme for ltx-talk.

Known gaps

Frame titles must be given as \frametitle{...} inside the frame, not as the argument to \begin{frame}{...}. Only the command form is tagged.

ltx-talk tags frame titles at H4, well below sections, and its manual calls the relationship between frame titles and sectioning "still very much open".

Issue #33: \only<1> and \only<2> produce output that fails validation. The \pause and <+-> forms used here are unaffected.

ltx-talk is version 0.5.x and warns that almost all interfaces may change. talk-notes.sty reads two internals, \g__talk_frame_int and \g__talk_slide_int — the first thing to check if a release breaks the notes build.