create new tag
, view all tags

Slide Show Plugin

Create web based presentations based on topics with headings.


There is already a defacto standard for presentations, why this plugin? This plugin makes sense for organizations that do already have lots of content in TWiki: It is easy to create a web based presentation that contains many links to related content. The plugin does not try to compete with the bells and whistles of the other presentation program, but compelling interactive presentations can be made using the TML (TWiki Markup Language) and plugins, such as TWiki:Plugins.ChartPlugin, TWiki:Plugins.GaugePlugin, TWiki:Plugins.SpreadSheetPlugin, TWiki:Plugins.TWikiDrawPlugin.

Any topic with headings can be converted into a slideshow. Each slide starts with a "---++" heading. There are two modes to view a topic:

  • Normal topic view mode: Headings and text is shown in the usual TWiki rendering, representing the outline of the slideshow. This mode is useful to print handouts.
  • Presentation mode: Each heading with text is shown as a slide; the format is based on a slide template.

You can start the presentation by clicking on the "Start presentation" button.


While in presentation mode you can move around slides using navigation buttons and keys:

Button Key Action
first.gif Home Go to first slide
prev.gif Left-arrow, Page-up Go to previous slide
next.gif Right-arrow, Page-down Go to next slide
last.gif End Go to last slide
endpres.gif Esc End presentation

Slide navigation is quick because it is done using anchor jumps within the same page. Key-based navigation requires JavaScript enabled.

Syntax Rules

How to Create a Slideshow

  • Start with %SLIDESHOWSTART%
    • Use the optional template parameter to specify your own slide template topic, e.g. %SLIDESHOWSTART{ template="MyOwnSlideTemplate" }%
  • Create the slides. Start each slide with a "---++" heading and add text like paragraphs, bullets, tables and images.
    • Hint: Make sure to keep each slide short enough so that you do not need to scroll to see all text of a slide during the presentation.
    • Note: You can use any heading level you like, but use the same for all slides.
  • End your slideshow with %SLIDESHOWEND%

How to Link to Slides

The %SLIDESHOWSTART% renders as a startpres.gif button. This is the default way to link to the slideshow.

Slides have anchors names Slide_1, Slide_2, Slide_3, etc. For example, write [[#Slide_3][Silly Introduction]] to link to slide 3 of the presentation on the current topic in page view mode, which renders as Silly Introduction.

Write [[%SCRIPTURL{view}%/%WEB%/%TOPIC%?slideshow=on;skin=print#Slide_3][Silly Introduction]] to link to a specific slide in presentation mode, which renders as Silly Introduction.

How to Create Your own Slide Template

To create your own template topic, copy the "Default Slide Template" section below into your own slide template topic and customize it to your needs. It can be activated as the default template in the plugin's TEMPLATE setting, or per slideshow with the %SLIDESHOWSTART{ template="MyOwnSlideTemplate" }% setting.

  • Use an HTML table that defines a slide. For example, create one row for the slide title, another one for the slide text.
  • These keywords can be used:
    Keyword What it means
    %SLIDETITLE% The heading of the slide
    %SLIDETEXT% The text of the slide
    %SLIDECOMMENT% The comment of the slide (optional; appended to slide of missing)
    %SLIDENUM% The current slide number
    %SLIDEMAX% The last slide number
    %SLIDENAV% The navigation buttons for "First", "Previous", "Next" slide
    %SLIDENAVALL% The navigation buttons for "First", "Previous", "Next", "Last" slide
    %SLIDENAVFIRST% The navigation button for "First slide"
    %SLIDENAVPREV% The navigation button for "Previous slide"
    %SLIDENAVNEXT% The navigation button for "Next slide"
    %SLIDENAVLAST% The navigation button for "Last slide"
  • Only text between %STARTINCLUDE% and %STOPINCLUDE% is used for the template.


This is a short example of a slideshow. You should see a "Start presentation" button if this plugin is installed:

Start Presentation

Slide 1: Silly Sample Slideshow

By TWiki:Main.PeterThoeny

San Jose, 2012-04-07

Slide 2: Agenda

  • Silly Introduction
  • Silly Feature
  • Silly Conclusion

Slide 3: Silly Introduction

  • why foo bar
  • blah blah


  • This text is not shown in the slide if HIDECOMMENTS is set to on.

Slide 4: Silly Feature

  • it's foo bar
  • more foo bar

Slide 5: Silly Conclusion

  • foo is bar
  • bar is foo

This text is not part of the slideshow

Default Slide Template

The part between the rulers defines the default format of a slide:

TWiki Slide Show
COPYRIGHT © 2024 by the contributing authors

SlideShowPlugin Global Settings

Plugin settings are stored as preferences variables. To reference a plugin setting write %<plugin>_<setting>%, i.e. %SLIDESHOWPLUGIN_SHORTDESCRIPTION%

  • One line description, is shown in the TextFormattingRules topic:
    • Set SHORTDESCRIPTION = Create web based presentations based on topics with headings.

  • Debug plugin: (See output in data/debug.txt)
    • Set DEBUG = 0

  • Hide text starting with a ---+++ Comments heading:
    • Set HIDECOMMENTS = on

Plugin Installation Instructions

This plugin is pre-installed. TWiki administrators can upgrade the plugin as needed on the TWiki server.

  • For an automated installation, run the configure script and follow "Find More Extensions" in the in the Extensions section.

  • Or, follow these manual installation steps:
    • Download the ZIP file from the Plugins home (see below).
    • Unzip SlideShowPlugin.zip in your twiki installation directory. Content:
      File: Description:
      data/TWiki/SlideShowPlugin.txt Plugin topic
      data/TWiki/VarSLIDESHOWSTART.txt Documentation of the SLIDESHOWSTART variable
      data/TWiki/VarSLIDESHOWEND.txt Documentation of the SLIDESHOWEND variable
      pub/TWiki/*.gif Various button image files
      lib/TWiki/Plugins/SlideShowPlugin.pm Plugin Perl module
      lib/TWiki/Plugins/SlideShowPlugin/SlideShow.pm Plugin core module
    • Set the ownership of the extracted directories and files to the webserver user.

  • Plugin configuration and testing:
    • Run the configure script and enable the plugin in the Plugins section.
    • Test if the installation was successful: See example above.

Plugin Info

Plugin Author: TWiki:Main.PeterThoeny
Copyright: © 2002-2013 Peter Thoeny, TWiki.org
© 2002-2013 TWiki:TWiki.TWikiContributor
License: GPL (GNU General Public License)
Plugin Version: 2013-01-07
2013-04-07: TWikibug:Item7216: Change default slide template from table layout to div layout; add Slide_N anchors for easy linking to specific slides; fix JS so that arrow key navigation works on Safari browser
2013-01-13: TWikibug:Item7091: Use TWISTY in plugin settings section, installation instructions and change history
2012-11-14: TWikibug:Item7020: Categorize TWiki Variables SLIDESHOWSTART, SLIDESHOWEND
2012-09-05: TWikibug:Item6837: Doc fixes
2011-08-08: TWikibug:Item6789: Better error handling in SLIDESHOWSTART variable
2011-07-09: TWikibug:Item6725: Change global package variables from "use vars" to "our"
2010-12-28: TWikibug:Item6626: New slide navigation using keys: Home, Left-arrow, Page-up, Right-arrow, Page-down, End and Esc
2010-05-16: TWikibug:Item6433: Doc improvements
02 Aug 2008: Fixed corruption of preview
29 Sep 2007: Added VarSLIDESHOWSTART and VarSLIDESHOWEND to have them listed in TWikiVariables
12 Feb 2007: fixed construction of view urls (TWiki:Main/MichaelDaum)
19 Nov 2006: 12011: Preserve URL parameters in slideshow (suggested by TWiki:Main/ThomasWeigert); changed logo in default template to T-logo; fixed warning errors introduced by 1.005
16 Mar 2005: 1.005 Crawford Currie prepped for Dakar, and fixed multiple evaluation bug
21 Nov 2004: 1.004 Added support for %SLIDECOMMENT% template keyword (TWiki:Main/ArthurClemens); added benchmarks
21 Mar 2004: Internal change: Fixed unofficial function call
14 Dec 2002: Added %SLIDENAVALL% template keyword; added HIDECOMMENTS setting
23 Nov 2002: Added %SLIDENAVLAST% template keyword; using print Skin for presentation mode
19 Nov 2002: Added "Start presentation" and "End presentation" buttons; added %SLIDENAVFIRST%, %SLIDENAVPREV%, %SLIDENAVNEXT% template keywords
17 Nov 2002: Initial version
CPAN Dependencies: none
Other Dependencies: none
Perl Version: 5.005
TWiki:Plugins/Benchmark: GoodStyle 98%, FormattedSearch 99%, SlideShowPlugin 99%
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/SlideShowPlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/SlideShowPluginDev
Appraisal: http://TWiki.org/cgi-bin/view/Plugins/SlideShowPluginAppraisal

Related Topics: VarSLIDESHOWSTART, VarSLIDESHOWEND, TWikiPreferences, TWikiPlugins

Topic revision: r14 - 2013-04-08 - TWikiContributor
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 1999-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Note: Please contribute updates to this topic on TWiki.org at TWiki:TWiki.SlideShowPlugin.