Tutorial on
differences between HTML and Markup

PPresenter
Manual
Tutorials
html2Markup

Portable Presenter is a package designed to give presentations. Of course, presentations do contain text (although it should be avoided: try to stick to images and drawings). Text is entered using a formatter. The only formatter available now is the Markup formatter, which is described in this tutorial.

The Markup formatter and HTML

The Markup formatter is a close brother to HTML: although there are a few basic differences, markup is easy to learn when you are acquainted to HTML.

What are the differences, and why:

Markup is more compact

When you write a slide, you usually have many more font and color changes than on a web-site. To simplify your work, you can specify many font-changes with any other tag:
   HTML:                          Markup:

    <CENTER><FONT SIZE=-1          <CENTER SIZE=-1
     COLOR=green>tekst              COLOR=green>tekst
    </FONT></CENTER>               </CENTER>

Tags can be used as parameter

In Markup, any tag can be used as a parameter:
   HTML:                          Markup:

    <CENTER><B>                    <CENTER B>
     bold centered text             bold centered text
    </B></CENTER>                  </CENTER>
A parameter without value (as the B) is equivalent to B=1. You can also use B=0 to explicitly switch bold off.

Not permitted is <SIZE=+1> because a tag cannot carry a parameter, and a size without value is not useful.

Tags can be used as container and switch

In HTML, you have three types of tags:
Switches:
a tag which defines an action on one point in the text, like BR and HR.
Containers:
tags which enclose a part of html, for instance TITLE, H1, and FONT.
Containers with optional end:
tags which enclose a part of html, but where the terminating tag may be left out. The end of the tag is very obvious by the html parser. For example P (when the next paragraph or header is found, this paragraph end automatically) and HEAD (ends when BODY starts).
In Markup, you can use each tag as container or as switch. For example:
   Markup:                        HTML:

    <CENTER B>                     <CENTER><B>
    text                           text
    <FONT COLOR=yellow>            <FONT COLOR=yellow>
    more                           more
    <FONT COLOR=green>             </FONT><FONT COLOR=green>
    last                           last
    </CENTER>                      </FONT></B></CENTER>
In markup, containers are seen as brackets. When you leave a container, all font settings are set back to the values as when the container was entered.
In the example, in markup you may leave the </CENTER> away, for instance when you reach the end of the text.

Many more tags

Markup has quite some tags more than html has. Especially tags related to slides:
BD
Backdrop: a shadow character behind the real character, which improves the readability on bad projectors.

SHOW=how
How the text shall be shown. This is interpreted by the dynamics modules. For instance:
    <P SHOW="after 5">text
which shows the text after 5 seconds.
A lot of useful abbreviations are defined, as LARGE, HUGE, SMALL, which are derived from <FONT SIZE=number>.

It is safe to nest

Don not try this is HTML; browsers behave differently:
   <CENTER>
   <FONT SIZE=-1>small
      <FONT SIZE=-1>smaller</FONT>
   </FONT>
   </CENTER>
But in Markup, you can safely do:
   <CENTER>
   <SMALL>small
      <SMALL>smaller</SMALL>
   </SMALL>
   </CENTER>
or (optimized)
   <CENTER>
   <SMALL>small
      <SMALL>smaller
   </CENTER>

Adding logical tags

You can add your own logical tags:
   $show->find(formatter => 'markup')
        ->addLogical(EMAIL => 'TT B');
 
Portable Presenter is written and maintained by Mark Overmeer. Copyright (C) 2000-2002, Free Software Foundation FSF.