NAME
     slides - show a presentation

SYNOPSIS
     slides [ -a ] [ -l ] [ -c ] [ -k ] [ -d secs ] file

DESCRIPTION
     Slides displays a plain text file one slide at a time, centred on the
     panel, with a slide counter at the bottom.  You advance it by hand or let
     it advance itself.

     The file is one you can write in any editor on the deck.  There is no
     build step and no separate viewer to keep in step with it: slides are
     paragraphs of text separated by a line of three dashes.  A talk written
     on a train is a talk you can give an hour later.

     Each slide's lines are centred individually, so text laid out with spaces
     keeps its shape.  Diagrams drawn with +, - and | work, which is how most
     of the shipped decks illustrate anything.

     Press q to leave.  The screen is cleared on the way out.

OPTIONS
     -a   Advance by itself, five seconds a slide.  Any keystroke moves to the
          next slide immediately; q still quits.  At the end it stops, unless
          -l says otherwise.

     -l   Loop: after the last slide, go back to the first.  Applies to hand
          advancing too.

     -d secs
          Seconds per slide under -a.  The default is 5 and the minimum is 1.

     -c   No chrome.  Hides the status bar so the slide has the whole panel.

     -k   Keep awake.  Suppresses the idle timeout, which otherwise blanks the
          deck partway through an unattended show.  Use it with -a.

KEYS
     space j l
          Next slide.  The right and down arrows do the same.

     backspace k h
          Previous slide.  The left and up arrows do the same.

     g    First slide.

     G    Last slide.

     q ctrl-c
          Quit.

FILE FORMAT
     A slide file is text.  Three things are special.

     A line of exactly ---
          Ends one slide and begins the next.  It must start at the left
          margin and have nothing after it but spaces or tabs.  Three dashes
          anywhere else in a line are ordinary dashes.

     A line beginning with #
          A heading.  The # characters and the spaces after them are removed
          and the rest is centred.  One # or several make no difference; the
          deck has one text size.  Write ## for a subheading if you like the
          look of it in an editor, but it comes out the same.

     A slide that is one path ending in .pbm
          An image slide.  The whole slide must be that single line and
          nothing else.  It is drawn full screen by img(1) -- centred, not
          scaled -- with no counter underneath.  Only .pbm is recognised here;
          a JPEG or PNG named in a slide is printed as text, not drawn.

     Everything else is copied out as written and centred.  There is no other
     markup: **bold** appears as asterisks, and a table drawn with pipes
     appears as pipes.

     The first slide starts at the top of the file, so a file may begin with a
     separator or not.  Blank lines within a slide are kept, and a slide is
     vertically centred as a block.

EXAMPLES
     A short deck:

          # Nobody Owns This

          ## Plan 9 and Homebrew Grid Computing

          Jon Sharp

          ---

          # What This Is About

            - a cyberdeck that ran into protocol complexity
            - a 1992 protocol that turned out to be the answer

          ---

          /n/local/img/model4.pbm

          ---

          # Thank You

            frstcomputer.com

     Give it by hand:

          slides /n/local/text/talk.slides

     Leave it running on a table, full screen, all day:

          slides -a -l -c -k -d 20 /n/local/img/gallery.slides

LIMITS
     16 KiB
          The most of a file that is read.  A longer file is cut off there.

     64   The most slides shown.  Later ones are ignored.

     255 characters
          The longest line rendered; the rest of that line is dropped.  At 80
          columns this is not a constraint you will meet by accident.

FILES
     /n/local/text/tour
          The shipped tour, including the VCF East 2026 talk, as an example of
          the format at length.

     /n/local/img/gallery.slides
          A picture show: nothing but image slides.

SEE ALSO
     img(1), p(1), ed(1)

NOTES
     Each text slide is a full screen of new text, which the panel draws in
     about a second.  Advancing slides is therefore deliberate rather than
     snappy, and that is the correct pace for a talk.  Image slides take
     longer: a full refresh, with the black flash.

     Under shell(1), a slideshow in a background shell keeps advancing but
     does not draw; switching back to it repaints the slide it reached.

BUGS
     Centring counts bytes, not characters, so a line containing accented
     letters or box-drawing characters written as UTF-8 is centred as though
     it were longer than it looks.  Lines of plain ASCII are centred
     correctly.

FRST Computer                                                        SLIDES(1)
