view release on metacpan or search on metacpan
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
return undef unless (ref $tok && ToString($tok) eq '{');
return $gullet->readArg; }
#**********************************************************************
# beamerbasedecode.sty
#**********************************************************************
# The decoding macro does decoding using tex, we do it with perl!
# Doesn't have a user-facing interface.
# this grammar defines what an (alert|overlay|mode) specification is!
our $BEAMER_SPECIFICATION = Parse::RecDescent->new(<<'EOGRAMMAR');
# a mode specification
mode_spec:
MODE(s /|/)
# an overlay specification
overlay_spec:
mode_and_frame(s /\|/)
# an action specification
action_spec:
mode_and_action_and_frame(s /\|/)
mode_and_frame :
MODE ':' frames { $return = [ "mode" => $item[1], "spec" => [ "frames" => $item[3] ] ] }
| frames { $return = [ "mode" => undef, "spec" => [ "frames" => $item[1] ] ] }
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
MODE : 'all' | 'presentation' | 'article' | 'beamer' | 'second' | 'handout' | 'trans'
INT : /-?[0-9]+/ { $return = $item[1] + 0 }
POSINT : /[1-9][0-9]*/ { $return = $item[1] + 0 }
MODIFIER : '.' | '+'
STAR : '*'
EOGRAMMAR
# processBeamerSpec is the main function for processing alert and overlay specifications.
# This takes place in three steps:
#
# 1. Process the AST
# 2. Filter out non-matching modes
# 3. Evaluate '+'s and perform actions
#
# This function takes the following arguments:
# $spec - The specification to parse (a string)
# $mode - The current (actual) mode to process the specification in.
# $allowActions - when true, process an action specification, else an overlay specification.
# $beamerPauses - The value of plus that was encountered. This is used to process relative frame numbers.
#
# The function returns a pair ([@actions], $newBeamerPauses).
# $newBeamerPauses - The new last plus encountered.
# @actions - an array containing a list of frames and the corresponding actions to perform.
#
# When parsing fails, returns (undef, $beamerPauses).
#
# Each $action in @actions is a hash with the following keys:
# 'action' => The action to perform (in the case of an overlay specification this is undef, in alert specifications, this might be undef or the action itself).
# 'frames' => an array of hashes with the following keys:
#
# 'from' => The absolute slide number this action should start at, may be undef to indiciate the first slide.
# 'to' => The absolute slide number this action should end at (inclusive), may be undef to indiciate the last slide.
sub processBeamerSpec {
my ($spec, $allowActions, $mode, $beamerPauses) = @_;
# process the specification into an ast!
$spec =~ s/\s+//g;
# process an overlay or alert, depending on if $allowActions is true
# FIXME: action_spec only parses first one
my ($ast);
if ($allowActions) {
$ast = $BEAMER_SPECIFICATION->action_spec($spec); }
else {
$ast = $BEAMER_SPECIFICATION->overlay_spec($spec); }
return $beamerPauses, undef unless defined($ast);
# prepare the returned list of actions
my (@actions) = ();
my ($action, $start, $end) = ();
my (@frames, %actionspec, %framespec);
foreach my $data (@$ast) {
%actionspec = @{$data};
next if defined($actionspec{'mode'}) && !matchesMode($actionspec{'mode'}, $mode); # wrong mode!
%actionspec = @{ $actionspec{'spec'} };
$action = $actionspec{'action'} if $allowActions;
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
$offset = 0 unless defined($offset);
return $beamerPauses + $offset, $beamerPauses; }
else { # use and increment
$offset = 1 unless defined($offset);
my $oldBeamerPauses = $beamerPauses;
$beamerPauses = $beamerPauses + $offset;
return $oldBeamerPauses, $beamerPauses; } }
# getSlideActions processes $actions, and returns an ordered list with the following items:
# $action: the action to be performed, or undef if none provided.
# $overlay: a string describing the overlay specification for the provided action.
sub getSlideActions {
my ($actions) = @_;
my (@actions, @spec) = ();
my (%action, %frame);
my ($from, $to);
foreach my $data (@{$actions}) {
%action = @{$data};
@spec = ();
foreach my $framedata (@{ $action{'frames'} }) {
%frame = @{$framedata};
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
$no++;
$temporal = getTemporalSlide($actions, $no); }
return undef if ($temporal == 1); # we don't have another slide!
$no; }
#**********************************************************************
# Digesting Beamer Specifications
#**********************************************************************
NewCounter('beamer@slideinframe'); # the current slide number in the frame
NewCounter('beamerpauses'); # overlay we are on, i.e. the last '+' value encounted.
NewCounter('beamer@lastslideinframe'); # the last known slide in a frame
# digestBeamerSpec digests an alert or overlay specification.
# It returns the actions contained in it.
sub digestBeamerSpec {
my ($spec, $allowActions) = @_;
my ($actions);
# get current state
my $theMode = getCurrentMode();
my $thePauses = CounterValue('beamerpauses')->valueOf;
# process it, and write back the state!
($actions, $thePauses) = processBeamerSpec($spec, $allowActions, $theMode, $thePauses);
SetCounter('beamerpauses', Number($thePauses));
# update the max slide number
my $theMaxSlide = CounterValue('beamer@lastslideinframe')->valueOf;
$theMaxSlide = getMaxSlideNumber($actions, $theMaxSlide);
SetCounter('beamer@lastslideinframe' => Number($theMaxSlide));
# check if we have another slide!
my $theSlide = CounterValue('beamer@slideinframe')->valueOf;
AssignValue('beamer@anotherslide' => $theSlide < $theMaxSlide, 'global') unless ($theSlide == 0);
# return the parsed actions!
$actions; }
# digestOverlaySpec digests an overlay specification.
# It returns where the current slide is located temporally to the overlay.
# See getTemporalSlide for return values.
sub digestOverlaySpec {
my ($spec) = @_;
return undef unless defined($spec);
$spec = ToString(Expand($spec)); # TODO: Should this be done ealier? Perhaps in the argument type?
# get the action
my $action = digestBeamerSpec($spec, 0);
unless (defined($action)) {
Warn('unexpected', '<overlay>', $spec, 'Missing overlay specification, treated as matching');
return 0; }
return undef unless defined($action);
# check if we need to do anything
my $theSlide = CounterValue('beamer@slideinframe')->valueOf;
# for debugging!
# Info('expected', 'overlay', $spec, "spec = <$spec> slide = $theSlide value = " . getTemporalSlide($action, $theSlide));
getTemporalSlide($action, $theSlide); }
# digestActionSpec digests an overlay specification.
# It returns the processed actions.
# See getSlideActions for return values.
sub digestActionSpec {
my ($spec) = @_;
return undef unless defined($spec);
$spec = ToString(Expand($spec)); # TODO: Should this be done ealier? Perhaps in the argument type?
# get the action
my $action = digestBeamerSpec($spec, 1);
unless (defined($action)) {
Warn('unexpected', '<overlay>', $spec, 'Missing overlay specification, treated as matching');
return 0; }
return undef unless defined($action);
# check if we need to do anything
getSlideActions($action); }
#**********************************************************************
# beamerbasemodes.sty
#**********************************************************************
RequirePackage('etoolbox');
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
\def\today{\ifcase\month\or
\translate{January}\or \translate{February}\or \translate{March}\or
\translate{April}\or \translate{May}\or \translate{June}\or
\translate{July}\or \translate{August}\or \translate{September}\or
\translate{October}\or \translate{November}\or \translate{December}\fi
\space\number\day, \number\year}
EoTeX
#**********************************************************************
# beamerbaseoverlay.sty
#**********************************************************************
RawTeX(<<'EoTeX');
% This variant based on \@ifnextchar does not skip spaces
% (So like amsmath's \new@ifnextchar). It is used where beamer allows
% an overlay at the end of a command, and would thus otherwise result in
% space gobbling.
\long\def\beamer@ifnextcharospec#1#2{%
\def\reserved@a{#1}%
\def\reserved@b{#2}%
\futurelet\@let@token\beamer@ifnch}
\def\beamer@ifnch{%
\ifx\@let@token<%
\let\reserved@c\reserved@a%
\else%
\let\reserved@c\reserved@b%
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
%
% newenvironment extension
%
\let\beamer@orignewenvironment=\newenvironment
\def\newenvironment{\@ifnextchar<{\beamer@newenv}{\beamer@orignewenvironment}}
\def\beamer@newenv<>{\@star@or@long\beamer@new@environment}
\def\beamer@new@environment#1{\@ifnextchar[{\beamer@@newenv{#1}}{\beamer@newenvnoopt{#1}{0}}}
\def\beamer@@newenv#1[#2]{\@ifnextchar[{\beamer@newenvopt{#1}{#2}}{\beamer@newenvnoopt{#1}{#2}}}
% The beamer syntax for \newenvironment<> follows the pattern for \newcommand<>
% and allows the overlay spec anywhere: the same code path is therefore used for
% both.
\long\def\beamer@newenvnoopt#1#2#3#4{%
\expandafter\newcommand\expandafter<\expandafter>\csname#1\endcsname[#2]{#3}%
\expandafter\long\expandafter\def\csname end#1\endcsname{#4}%
}
\long\def\beamer@newenvopt#1#2[#3]#4#5{%
\expandafter\newcommand\expandafter<\expandafter>\csname#1\endcsname[#2][#3]{#4}%
\expandafter\long\expandafter\def\csname end#1\endcsname{#5}%
}
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
\let\beamer@origrenewcommand=\renewcommand
\def\renewcommand{\@ifnextchar<{\beamer@renewcom}{\beamer@origrenewcommand}}
\def\beamer@renewcom<>#1{%
\ifcsundef{@orig\string#1}%
{\cslet{@orig\string#1}#1}%
{}%
\csundef{beamerx@\string#1}%
\newcommand<>#1}
% The class allows overlays specs at any position in a command.
% To handle that, beamer first collects up material potentially
% including overlay info before passing to the 'real' definition.
\long\def\beamer@presort#1#2#3{%
\def\beamer@todo{#1}%
\def\beamer@ospec{}%
\beamer@argscount=#2\relax
\beamer@prechecka{#3}}
\long\def\beamer@prechecka#1{\@ifnextchar<{\beamer@preget{#1}}{\beamer@precheckb{#1}}}
\long\def\beamer@preget#1<#2>{\def\beamer@ospec{<#2>}\beamer@precheckb{#1}}
\long\def\beamer@precheckb#1{\@ifnextchar[{\beamer@pregetb}{\beamer@pregetb[{#1}]}}
\long\def\beamer@pregetb[#1]{%
\expandafter\def\expandafter\beamer@todo\expandafter{\beamer@todo{#1}}%
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
#**********************************************************************
# \only, {onlyenv}, \alt, {altenv}, \temporal
#**********************************************************************
# \only<spec>{stuff}<spec>
# only shows text only on specified slides - but only one specficiation may be present
DefMacro('\only', '\beamer@ifnextcharospec{\beamer@only@before}{\beamer@only}');
DefMacro('\beamer@only {}', '\beamer@ifnextcharospec{\beamer@only@after{#1}}{\beamer@only@plain{#1}}');
DefMacro('\beamer@only@after {} BeamerAngled', '\beamer@only@before<#2>{#1}');
DefMacro('\beamer@only@before BeamerAngled {}', sub {
my ($gullet, $overlay, $argument) = @_;
if (digestOverlaySpec($overlay) == 0) {
$argument; }
else {
(); } });
DefMacro('\beamer@only@plain {}', '#1'); # the empty only always matches
RawTeX(<<'EoTeX');
\newenvironment{onlyenv}{\begin{altenv}{}{}{\begingroup\setbox0=\vbox\bgroup}{\egroup\endgroup}}{\end{altenv}}
EoTeX
DefMacro('\alt', '\beamer@ifnextcharospec{\beamer@alt@before}{\beamer@alt}');
DefMacro('\beamer@alt {}{}', '\beamer@ifnextcharospec{\beamer@alt@after{#1}{#2}}{\beamer@alt@plain{#1}{#2}}');
DefMacro('\beamer@alt@after {}{} BeamerAngled', '\beamer@alt@before<#3>{#1}{#2}');
DefMacro('\beamer@alt@before BeamerAngled {}{}', sub {
my ($gullet, $overlay, $text, $altText) = @_;
if (digestOverlaySpec($overlay) == 0) {
$text; }
else {
$altText; } });
DefMacro('\beamer@alt@plain {}{}', '#1'); # the empty spec always matches
DefMacro('\altenv', '\beamer@ifnextcharospec{\beamer@altenv@}{\beamer@altenv}');
DefMacro('\beamer@altenv@ BeamerAngled {}{}{}{}', '\beamer@altenv{#2}{#3}{#4}{#5}<#1>'); # put the <> at the end!
DefMacro('\beamer@altenv {}{}{}{}', '\alt{#1\def\beamer@eoenv{#2}}{#3\def\beamer@eoenv{#4}}');
DefMacro('\endaltenv', '\beamer@eoenv');
DefMacro('\temporal BeamerAngled {}{}{}', sub {
my ($gullet, $overlay, $beforeText, $text, $afterText) = @_;
my $temporal = digestOverlaySpec($overlay);
if ($temporal == 0) {
$text; }
elsif ($temporal == -1) {
$beforeText; }
else {
$afterText; } });
#**********************************************************************
# \pause
#**********************************************************************
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
#**********************************************************************
# TODO: Support me!
#**********************************************************************
# beamerbaseframe.sty
#**********************************************************************
DefKeyVal('beamerframe', 'fragile', '', '');
# To render a frame, we need to render all the overlay(s) contained in it.
# To achieve this, we first record the content of the frame environment into a macro - so we can replace it multiple times.
DefMacro(T_CS('\begin{frame}'), '\frame@');
DefMacro('\frame@ OptionalBeamerAngled BeamerSquared OptionalKeyVals:beamerframe LiteralBalanced LiteralBalanced', sub {
my ($gullet, $overlay, $defaultOverlay, $opts, $title, $subtitle) = @_;
# store the default overlay (which may be undef)
AssignValue('beamer@action@default@local' => $defaultOverlay);
# store title and subtitle
prepareFrameTitles($title, $subtitle);
# ensure we have an overlay
$overlay = '*' unless defined($overlay);
$overlay = ToString($overlay);
# execute overlay with a blank context, discarding any changed state.
($overlay) = digestBeamerSpec($overlay, 0);
Error('unexpected', '<overlay>', $overlay, 'Unable to parse slide overlay') unless defined($overlay);
AssignValue('beamer@frame@overlay' => $overlay);
# figure out the first slide to render
my $first = getNextSlide($overlay, undef);
# read the body of the frame!
my $fragile = defined($opts) && defined(GetKeyVal($opts, 'fragile'));
unless (readFrameBody($gullet, $fragile, 'frame')) {
Fatal('unexpected', '<eof>', $gullet, 'Unexpected end of input while looking for \end{frame}'); }
# and do the frame now!
(T_CS('\beamer@slides'), T_BEGIN, ExplodeText(ToString($first)), T_END); });
# readFrameBody is responsible for reading the body of a frame.
sub readFrameBody {
my ($gullet, $fragile, $env) = @_;
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
# To render all the slides in the current frame, we use the loop
DefMacro('\beamer@slides {}', '\begin{beamer@frame}\beamer@slides@do{#1}\end{beamer@frame}');
# do { iter } while (anotherslide)
DefMacro('\beamer@slides@do {}', '\beamer@slides@iter{#1}\beamer@slides@while{#1}');
DefMacro('\beamer@slides@iter {}', '\begin{beamer@frame@slide}#1\beamer@slide\end{beamer@frame@slide}');
DefMacro('\beamer@slides@while {}', sub {
my ($gullet, $current) = @_;
return () unless LookupValue('beamer@anotherslide');
my $overlay = LookupValue('beamer@frame@overlay');
my $next = getNextSlide($overlay, ToString($current) + 0);
return () unless defined($next); # overlay spec for the slide
(T_CS('\beamer@slides@do'), T_BEGIN, ExplodeText(ToString($next)), T_END); });
NewCounter('framenumber'); # public counter for the current frame.
NewCounter('beamer@pagenumber'); # fake page number counter, in real tex this uses pdf pages
NewCounter('beamer@slidenumber'); # fake slide number counter, in real tex this uses math
# Environments that create the real xml for frames and slides!
DefEnvironment('{beamer@frame}', "<ltx:slidesequence>#body</ltx:slidesequence>",
beforeDigest => sub {
StepCounter('framenumber');
ResetCounter('beamer@slidenumber'); });
Tag('ltx:slidesequence', afterOpen => sub { GenerateID(@_, 'frame'); });
DefEnvironment('{beamer@frame@slide} Number', "<ltx:slide overlay='#overlay'>#body</ltx:slide>",
# HACK: we use properties to be able to access $overlayno.
properties => sub {
my ($gullet, $overlayno) = @_;
SetCounter('beamer@slideinframe' => $overlayno);
StepCounter('beamer@pagenumber');
StepCounter('beamer@slidenumber');
(overlay => ToString($overlayno)); });
Tag('ltx:slide', afterOpen => sub { GenerateID(@_, 'slide'); });
# TODO: Ignore \setbeamersize for now
DefMacro('\setbeamersize {}', '');
#**********************************************************************
# Frame Titles
#**********************************************************************
DefConstructor('\beamer@frametitle {}', '^<ltx:title class="ltx_frame_title">#1</ltx:title>');
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
DefMacro('\insertpresentationstartpage', sub { beamerTODO('insertpresentationstartpage'); });
DefMacro('\insertpresentationendpage', sub { beamerTODO('insertpresentationendpage'); });
DefMacro('\insertappendixstartpage', sub { beamerTODO('insertappendixstartpage'); });
DefMacro('\insertappendixendpage', sub { beamerTODO('insertappendixendpage'); });
DefMacro('\insertdocumentstartpage', sub { beamerTODO('insertdocumentstartpage'); });
DefMacro('\insertdocumentendpage', sub { beamerTODO('insertdocumentendpage'); });
DefMacro('\insertpagenumber', '\@arabic\c@beamer@pagenumber');
DefMacro('\insertframenumber', '\@arabic\c@framenumber');
DefMacro('\insertslidenumber', '\@arabic\c@beamer@slidenumber');
DefMacro('\insertoverlaynumber', '\@arabic\c@beamer@slideinframe');
#**********************************************************************
# beamerbasecolor.sty
#**********************************************************************
RequirePackage('xcolor'); # TODO: actually uses xxcolor, close enough
# TODO: implement the rest
#**********************************************************************
# beamerbasenotes.sty
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
$env = $env . 'env';
$spec = '<' . $action{'spec'} . '>';
# add to the beginning and the end
push(@begins, T_CS('\begin'), T_BEGIN, Tokenize($env), T_END, Tokenize($spec));
push(@ends, T_CS('\end'), T_BEGIN, Tokenize($env), T_END); }
# store the stuff for the end, and return the beginning
AssignValue('beamer@todoend' => Tokens(@ends));
Tokens(@begins); });
DefMacro('\endactionenv', sub { LookupValue('beamer@todoend'); });
# a beamer variant of beginItemize, that additionally takes a default overlay.
sub beginBeamerItemize {
my ($defaultOverlay, @rest) = @_;
AssignValue('beamer@action@default@local' => $defaultOverlay) if defined($defaultOverlay);
my @result = beginItemize(@rest);
# create a hook to wrap items in
Digest('\gdef\beamer@closeitem{}');
# replace \item with \beamer@item
Let('\beamer@item@org', '\item');
Let('\item', '\beamer@item');
@result; }
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
DefMacro('\beamer@item@', '\@ifnextchar[{\beamer@item@@}{\beamer@item@none}');
DefMacro('\beamer@item@@ []', '\@ifnextchar<{\beamer@item@after[#1]}{\beamer@item@none[#1]}');
DefMacro('\beamer@item@after [] BeamerAngled', '\beamer@item@before<#2>[#1]');
DefMacro('\beamer@item@none', sub {
my $defaultOverlay = LookupValue('beamer@action@default@local');
if (defined($defaultOverlay)) {
(T_CS('\beamer@item@before'), Tokenize('<' . ToString($defaultOverlay) . '>')); }
else {
(T_CS('\beamer@closeitem'), T_CS('\beamer@item@org')); } });
DefMacro('\beamer@item@before BeamerAngled []', sub {
my ($stomach, $overlay, $key) = @_;
my @return = ();
push(@return, T_CS('\beamer@closeitem'), T_CS('\beamer@item@org'));
push(@return, T_OTHER('['), Revert($key), T_OTHER(']')) if defined($key);
push(@return, T_CS('\beamer@item@action'), revertBeamerAngled($overlay));
@return; });
# Hook into all the {enumerate} {itemize} {description}
# from LaTeX.Pool
DefEnvironment('{itemize} [BeamerAngled]',
"<ltx:itemize xml:id='#id'>#body</ltx:itemize>",
properties => sub { beginBeamerItemize($_[1], 'itemize', '@item'); },
beforeDigestEnd => sub { Digest('\par'); Digest('\beamer@closeitem'); },
locked => 1, mode => 'text');
lib/LaTeXML/Package/beamer.cls.ltxml view on Meta::CPAN
RequirePackage('hyperref', options => ['bookmarks=true', 'bookmarksopen=true', 'pdfborder={0 0 0}', 'pdfhighlight={/N}', 'linkbordercolor={.5 .5 .5}']);
# RequirePackage('atbegshi'); # normally loaded by hyperref, but let's be safe
# TODO: Typically loaded by a package option, but not yet supported
# RequirePackage('sansmathaccent');
#**********************************************************************
# All the extra commands with <> arguments
#**********************************************************************
# AddBeamerWrapper adds a beamer overlay argument to a command.
sub AddBeamerWrapper {
my ($command, $args, $wrapper) = @_;
$wrapper = '\only' unless defined($wrapper);
# build tex code to pass the arguments!
my ($count) = 0;
my ($tex) = '';
while ($count < $args) {
$count++;
$tex .= '{#' . $count . '}'; }
if ($args == 0) {
lib/LaTeXML/Package/listings.sty.ltxml view on Meta::CPAN
linewidth=\linewidth,xleftmargin=0pt,xrightmargin=0pt,resetmargins=false,breaklines=false,
prebreak={},postbreak={},breakindent=20pt,breakautoindent=true,
frame=none,frameround=ffff,framesep=3pt,rulesep=2pt,framerule=0.4pt,
framexleftmargin=0pt,framexrightmargin=0pt,framextopmargin=0pt,framexbottommargin=0pt,
backgroundcolor={},rulecolor={},fillcolor={},rulesepcolor={},
frameshape={},
index={},indexstyle=\lstindexmacro,
columns=[c]fixed,flexiblecolumns=false,keepspaces=false,basewidth={0.6em,0.45em},
fontadjust=false,texcl=false,mathescape=false,escapechar={},escapeinside={},
escapebegin={},escapeend={},
fancyvrb=false,fvcmdparams=\overlay1,morefvcmdparams={},
ndkeywordstyle=keywordstyle,texcsstyle=keywordstyle,directivestyle=keywordstyle
}
EoTeX
#======================================================================
# Finally, we want to load the definitions from the configurations...
# Actually, we should just load .cfg
# and the extra files should be loaded as needed, but...
sub lstLoadConfiguration {
InputDefinitions("listings", type => 'cfg');
lib/LaTeXML/Package/mathabx.sty.ltxml view on Meta::CPAN
# | Bruce Miller <bruce.miller@nist.gov> #_# | #
# | http://dlmf.nist.gov/LaTeXML/ (o o) | #
# \=========================================================ooo==U==ooo=/ #
package LaTeXML::Package::Pool;
use strict;
use warnings;
use LaTeXML::Package;
#======================================================================
# Specials (matha/mathb)
# These are intended to overlay to show negation,
# but they're not going to work well for that.
DefMath('\notsign', '|', role => 'OPERATOR', meaning => 'not');
DefMath('\varnotsign', '/', role => 'OPERATOR', meaning => 'not');
DefPrimitive('\changenotsign', sub {
Info('unexpected', '\\changenotsign', $_[0],
"The \\changenotsign operation of mathabx is not implemented."); });
# \cdotp
#======================================================================
# Usual binary operators (matha)
lib/LaTeXML/Package/pgfsys-latexml.def.ltxml view on Meta::CPAN
%props);
$doc->insertElement('svg:rect', undef, class => 'ltx_debug',
x => -4, y => -4, width => $w + 8, height => $h + $d + 8, stroke => '#FF0000', fill => 'none')
if $LaTeXML::DEBUG{pgf};
return $array; }
sub closeTikzAlignmentElement {
my ($tag, $document) = @_;
my $node = $document->closeElement($tag);
if ($LaTeXML::DEBUG{pgf} && $node && (($node->getAttribute('class') || '') eq 'ltx_debug')) {
my $rect = $node->firstChild; # Move the rectangle to the end, so it overlays
$node->removeChild($rect);
$node->appendChild($rect); }
return $node; }
sub openTikzAlignmentRow {
my ($tag, $doc, %props) = @_;
my $class = 'ltx_tikzmatrix_row' . ($props{class} ? ' ' . $props{class} : '');
my $y = ($props{y} && $props{y}->pxValue) || 0;
my $w = ($props{cwidth} && $props{cwidth}->pxValue) || 0;
my $h = ($props{cheight} && $props{cheight}->pxValue) || 0;
lib/LaTeXML/Package/psfrag.sty.ltxml view on Meta::CPAN
# | Bruce Miller <bruce.miller@nist.gov> #_# | #
# | http://dlmf.nist.gov/LaTeXML/ (o o) | #
# \=========================================================ooo==U==ooo=/ #
package LaTeXML::Package::Pool;
use strict;
use warnings;
use LaTeXML::Package;
use LaTeXML::Util::Image;
#======================================================================
# Would be lovely to overlay SVG, MathML, Images etc
# but kinda impractical to hope to align things the same way as LaTeX would.
# So, we just punt all of it to LaTeX to create a composite image
# Store fragments for later use
AssignValue(saved_psfragments => Tokens());
AssignValue(psfrag_scan_all => LookupValue('2.09_COMPATIBILITY'));
AssignValue(psfrag_scan => 0);
DeclareOption('209mode', sub { AssignValue(psfrag_scan_all => 1); });
DeclareOption('2emode', sub { AssignValue(psfrag_scan_all => 0); });
DeclareOption('scanall', sub { AssignValue(psfrag_scan_all => 1); });
lib/LaTeXML/Package/pstricks.sty.ltxml view on Meta::CPAN
use LaTeXML::Util::Transform;
use LaTeXML::Util::Geometry;
# Implementation of the pstricks package. (incomplete)
# missing: \psgrid is missing most attributes
# shadow, doubleline and border support
# some special attributes for arrows
# fillstyle is assumed solid or none
# \pscustom and its special commands (chapters 20, 21, 22)
# \SpecialCoor is not supported
# overlays are not supported
# special box commands (Help part A, ...)
RequirePackage('xcolor');
##############################################################
## Parameter type definitions
##############################################################
DefParameterType('Float', sub { $_[0]->readFloat; });
sub ReadPSDimension {
lib/LaTeXML/Package/revtex3_support.sty.ltxml view on Meta::CPAN
DeclareOption('amssymb', sub { RequirePackage('amssymb'); });
DeclareOption('amsmath', sub { RequirePackage('amsmath'); });
ProcessOptions();
RequirePackage('revtex4_support');
#======================================================================
# The following are additional or different definitions from revtex4_support
RawTeX('\newif\ifpreprintsty\newif\ifsecnumbers\newif\ifsegabssty');
# \overlay seems to be yet another of these stacked things...
# \vereq also
DefMacro('\eqsecnum', ''); # ?
DefMacro('\tightenlines', '');
DefMacro('\wideabs', ''); # wide abstract? takes an arg, but avoid reading it
# RevTeX's subequation numbering environment.
# Hmm, this seems to allow random chunks of text within;
# it really only specifies the numbering, not alignment or ...
DefMacro('\mathletters', '\lx@equationgroup@subnumbering@begin');
DefMacro('\endmathletters', '\lx@equationgroup@subnumbering@end');
lib/LaTeXML/Package/slides.cls.ltxml view on Meta::CPAN
RequirePackage('color'); # ?
# \@color, \@colorlist, \last@color,
DefMacro('\blackandwhite', '');
DefMacro('\colors{}', ''); # ?
DefMacro('\colorslides{}', '');
DefMacroI('\setupcounters', undef, '');
DefMacroI('\ps@headings', undef, '');
DefMacroI('\ps@note', undef, '');
DefMacroI('\ps@overlay', undef, '');
DefMacroI('\ps@slide', undef, '');
# \@doglnotelist, \@doglslidelist, \@donotelist, \@doslidelist,
# \@extraslide,
#**********************************************************************
# The core sectioning commands are defined in LaTeX.pm
# but the counter setup, etc, depends on article
NewCounter('slide', 'document', idprefix => 's', nested => ['overlay']);
NewCounter('overlay', 'slide', idprefix => 'o');
NewCounter('note', 'document', idprefix => 'n');
DefMacro('\theslide', '\arabic{slide}');
DefMacro('\thenote', '\arabic{note}');
DefMacro('\theoverlay', '\theslide.\arabic{overlay}');
NewCounter('equation', 'document', idprefix => 'E');
DefMacro('\theequation', '\arabic{equation}');
NewCounter('@itemizei', 'document', idprefix => 'I');
DefMacro('\theenumi', '\arabic{enumi}');
DefMacro('\theenumii', '\alph{enumii}');
DefMacro('\theenumiii', '\roman{enumiii}');
DefMacro('\theenumiv', '\Alph{enumiv}');
lib/LaTeXML/Package/slides.cls.ltxml view on Meta::CPAN
AssignValue(DOSLIDES => 1, 'global'); });
DefEnvironment('{slide}',
"<ltx:slide xml:id='#id'>"
. "#tags"
. "#body"
. "</ltx:slide>",
properties => sub { (doslide => sub { LookupValue('DOSLIDES'); },
RefStepCounter('slide')) });
DefEnvironment('{overlay}',
"<ltx:slide xml:id='#id'>"
. "#tags"
. "#body"
. "</ltx:slide>",
properties => sub { (doslide => sub { LookupValue('DOSLIDES'); },
RefStepCounter('overlay')) });
DefEnvironment('{note}',
"<ltx:note xml:id='#id'>"
. "#tags"
. "#body"
. "</ltx:note>",
properties => sub { (doslide => sub { LookupValue('DONOTES'); },
RefStepCounter('note')) });
#**********************************************************************
lib/LaTeXML/Package/txfonts.sty.ltxml view on Meta::CPAN
use warnings;
use LaTeXML::Package;
RequirePackage('amssymb');
#================================================================================
# See LaTeX Symbol list, Table 27.
DefMath('\circledbar', "\x{29B6}");
DefMath('\circledbslash', "\x{29B8}");
DefMath('\circledvee', "\x{2228}\x{20DD}"); # overlay circle?
DefMath('\circledwedge', "\x{2227}\x{20DD}"); # overlay cirxle?
DefMath('\invamp', "\x{214B}");
# DefMath('\medbullet', "\x{}");
# DefMath('\medcirc', "\x{}");
# DefMath('\sqcapplus', "\x{}");
# DefMath('\sqcupplus', "\x{}");
# Not in table, but apparently defined?
DefMath('\boxast', "\x{29C6}");
DefMath('\boxbar', "\x{25EB}"); # ?
DefMath('\boxbslash', "\x{29C4}");
lib/LaTeXML/Package/txfonts.sty.ltxml view on Meta::CPAN
scriptpos => 'mid', mathstyle => \&doVariablesizeOp);
DefMath('\iiint', "\x{222D}", meaning => 'triple-integral', role => 'INTOP',
mathstyle => \&doVariablesizeOp);
DefMath('\iiintop', "\x{222D}", meaning => 'triple-integral', role => 'INTOP',
scriptpos => 'mid', mathstyle => \&doVariablesizeOp);
DefMath('\iiiint', "\x{2A0C}", meaning => 'quadruple-integral', role => 'INTOP',
mathstyle => \&doVariablesizeOp);
DefMath('\iiiintop', "\x{2A0C}", meaning => 'quadruple-integral', role => 'INTOP',
scriptpos => 'mid', mathstyle => \&doVariablesizeOp);
# Following made with combining clockwise or counter clockwise overlay
DefMath('\oiiintclockwise', "\x{222D}\x{20D9}",
meaning => 'triple-clockwise-contour-integral', role => 'INTOP',
mathstyle => \&doVariablesizeOp);
DefMath('\oiiintclockwiseop', "\x{222D}\x{20D9}",
meaning => 'triple-clockwise-contour-integral', role => 'INTOP',
scriptpos => 'mid', mathstyle => \&doVariablesizeOp);
DefMath('\varoiiintclockwise', "\x{222D}\x{20D9}",
meaning => 'triple-clockwise-contour-integral', role => 'INTOP',
mathstyle => \&doVariablesizeOp);
DefMath('\varoiiintclockwiseop', "\x{222D}\x{20D9}",
lib/LaTeXML/resources/RelaxNG/LaTeXML-structure.rnc view on Meta::CPAN
## A Slide within a slideshow, that may or may not be contained within a slidesequence.
element slide { slide_attributes, slide_model }
## The content allowable as the main body of a \elementref{slide}.
slide.body.class = Para.model
## Attributes for \elementref{slide}.
slide_attributes =
Sectional.attributes,
## \attr{overlay} is the number of the current overlay.
## This must be specified when part of a slidesequence, else it may be omitted.
## Should be unique and rising within a slidesequence.
attribute overlay { text }?
## Content model for \elementref{slide}.
slide_model = (SectionalFrontMatter.class | subtitle )*, (slide.body.class | BackMatter.class)*
#======================================================================
sidebar =
## A Sidebar; a short section-like object that floats outside the main flow.
element sidebar { sidebar_attributes, sidebar_model }
lib/LaTeXML/resources/RelaxNG/LaTeXML-structure.rng view on Meta::CPAN
</element>
</define>
<define name="slide.body.class">
<a:documentation>The content allowable as the main body of a \elementref{slide}.</a:documentation>
<ref name="Para.model"/>
</define>
<define name="slide_attributes">
<a:documentation>Attributes for \elementref{slide}.</a:documentation>
<ref name="Sectional.attributes"/>
<optional>
<attribute name="overlay">
<a:documentation>\attr{overlay} is the number of the current overlay.
This must be specified when part of a slidesequence, else it may be omitted.
Should be unique and rising within a slidesequence.</a:documentation>
</attribute>
</optional>
</define>
<define name="slide_model">
<a:documentation>Content model for \elementref{slide}.</a:documentation>
<zeroOrMore>
<choice>
<ref name="SectionalFrontMatter.class"/>
lib/LaTeXML/resources/RelaxNG/LaTeXML.model view on Meta::CPAN
ltx:rawhtml{}(xhtml:*)
ltx:rawliteral{close,open}(#PCDATA)
ltx:rdf{!xml:*,*:*,about,aboutidref,aboutlabelref,class,content,cssstyle,datatype,prefix,property,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:lang}(#PCDATA,ltx:ERROR,ltx:Math,ltx:anchor,ltx:bibref,ltx:block,ltx:break,ltx:cite,ltx...
ltx:rect{!xml:*,*:*,about,aboutidref,aboutlabelref,angle1,angle2,arc,arcsepA,arcsepB,arrowlength,class,content,cssstyle,curvature,datatype,displayedpoints,fill,height,points,prefix,property,r,rel,resource,resourceidref,resourcelabelref,rev,rx,ry,show...
ltx:ref{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,color,content,cssstyle,datatype,font,fontsize,framecolor,framed,fulltitle,href,idref,labelref,opacity,prefix,property,rel,resource,resourceidref,resourcelabelref,rev,show,title,t...
ltx:resource{!xml:*,*:*,about,aboutidref,aboutlabelref,class,content,cssstyle,datatype,media,prefix,property,rel,resource,resourceidref,resourcelabelref,rev,src,type,typeof,vocab,xml:lang}(#PCDATA)
ltx:rule{!xml:*,*:*,about,aboutidref,aboutlabelref,align,backgroundcolor,class,color,content,cssstyle,datatype,depth,float,framecolor,framed,height,opacity,prefix,property,rel,resource,resourceidref,resourcelabelref,rev,typeof,vattach,vocab,width,xml...
ltx:section{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,content,cssstyle,datatype,fragid,framecolor,framed,inlist,labels,prefix,property,rdf-prefixes,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:lang}(lt...
ltx:sectional-block{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,content,cssstyle,datatype,fragid,framecolor,framed,inlist,labels,prefix,property,rdf-prefixes,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:...
ltx:sidebar{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,content,cssstyle,datatype,fragid,framecolor,framed,inlist,labels,prefix,property,rdf-prefixes,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:lang}(lt...
ltx:slide{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,content,cssstyle,datatype,fragid,framecolor,framed,inlist,labels,overlay,prefix,property,rdf-prefixes,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:la...
ltx:slidesequence{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,content,cssstyle,datatype,fragid,framecolor,framed,inlist,labels,prefix,property,rdf-prefixes,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:la...
ltx:sub{!xml:*,*:*,about,aboutidref,aboutlabelref,class,content,cssstyle,datatype,fragid,prefix,property,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:lang}(#PCDATA,ltx:ERROR,ltx:Math,ltx:anchor,ltx:bibref,ltx:break,ltx:cite...
ltx:subparagraph{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,content,cssstyle,datatype,fragid,framecolor,framed,inlist,labels,prefix,property,rdf-prefixes,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:lan...
ltx:subsection{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,content,cssstyle,datatype,fragid,framecolor,framed,inlist,labels,prefix,property,rdf-prefixes,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:lang}...
ltx:subsubsection{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,content,cssstyle,datatype,fragid,framecolor,framed,inlist,labels,prefix,property,rdf-prefixes,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:la...
ltx:subtitle{!xml:*,*:*,about,aboutidref,aboutlabelref,class,content,cssstyle,datatype,prefix,property,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:lang}(#PCDATA,ltx:ERROR,ltx:Math,ltx:anchor,ltx:bibref,ltx:break,ltx:cite,ltx:decl...
ltx:sup{!xml:*,*:*,about,aboutidref,aboutlabelref,class,content,cssstyle,datatype,fragid,prefix,property,rel,resource,resourceidref,resourcelabelref,rev,typeof,vocab,xml:id,xml:lang}(#PCDATA,ltx:ERROR,ltx:Math,ltx:anchor,ltx:bibref,ltx:break,ltx:cite...
ltx:surname{}(#PCDATA,ltx:ERROR,ltx:Math,ltx:anchor,ltx:bibref,ltx:break,ltx:cite,ltx:declare,ltx:del,ltx:emph,ltx:glossarydefinition,ltx:glossaryref,ltx:graphics,ltx:indexmark,ltx:inline-block,ltx:inline-description,ltx:inline-enumerate,ltx:inline-i...
ltx:table{!xml:*,*:*,about,aboutidref,aboutlabelref,align,angle,backgroundcolor,class,content,cssstyle,data,dataencoding,datamimetype,dataname,datatype,depth,float,fragid,framecolor,framed,height,inlist,innerdepth,innerheight,innerwidth,labels,placem...
ltx:tabular{!xml:*,*:*,about,aboutidref,aboutlabelref,backgroundcolor,class,colsep,content,cssstyle,datatype,fragid,framecolor,framed,prefix,property,rel,resource,resourceidref,resourcelabelref,rev,rowsep,typeof,vattach,vocab,width,xml:id,xml:lang}(l...
lib/LaTeXML/resources/RelaxNG/svg/svg-basic-filter.rnc view on Meta::CPAN
attlist.feBlend &=
SVG.Core.attrib,
SVG.FilterColor.attrib,
SVG.FilterPrimitiveWithIn.attrib,
attribute in2 { text },
[ a:defaultValue = "normal" ]
attribute mode {
string "normal"
| string "multiply"
| string "screen"
| string "overlay"
| string "darken"
| string "lighten"
| string "color-dodge"
| string "color-burn"
| string "hard-light"
| string "soft-light"
| string "difference"
| string "exclusion"
| string "hue"
| string "saturation"
lib/LaTeXML/resources/RelaxNG/svg/svg-basic-filter.rng view on Meta::CPAN
<ref name="SVG.Core.attrib"/>
<ref name="SVG.FilterColor.attrib"/>
<ref name="SVG.FilterPrimitiveWithIn.attrib"/>
<attribute name="in2"/>
<optional>
<attribute name="mode" a:defaultValue="normal">
<choice>
<value type="string" datatypeLibrary="">normal</value>
<value type="string" datatypeLibrary="">multiply</value>
<value type="string" datatypeLibrary="">screen</value>
<value type="string" datatypeLibrary="">overlay</value>
<value type="string" datatypeLibrary="">darken</value>
<value type="string" datatypeLibrary="">lighten</value>
<value type="string" datatypeLibrary="">color-dodge</value>
<value type="string" datatypeLibrary="">color-burn</value>
<value type="string" datatypeLibrary="">hard-light</value>
<value type="string" datatypeLibrary="">soft-light</value>
<value type="string" datatypeLibrary="">difference</value>
<value type="string" datatypeLibrary="">exclusion</value>
<value type="string" datatypeLibrary="">hue</value>
<value type="string" datatypeLibrary="">saturation</value>
t/slides/beamer.tex view on Meta::CPAN
\documentclass{beamer}
% This test case tests all the features currently supported by the beamer binding.
% It consists of mostly independent unit tests.
\usepackage{listings}
\def\spoof{\insertslidenumber,\insertpagenumber,\insertoverlaynumber,\insertframenumber}
\def\faketwoslides{\only<1>{Slide 1}\only<2>{Slide 2}\\}
\def\fakefourslides{\only<1>{Slide 1}\only<2>{Slide 2}\only<3>{Slide 3}\only<4>{Slide 4}\\}
\begin{document}
\section{Frames}
\begin{frame}
This frame has exactly one slide.
t/slides/beamer.xml view on Meta::CPAN
<resource src="ltx-listings.css" type="text/css"/>
<section inlist="toc" xml:id="S1">
<tags>
<tag>1</tag>
<tag role="autoref">section 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">§1</tag>
</tags>
<title><tag close=" ">1</tag>Frames</title>
<slidesequence xml:id="S1.frame1">
<slide overlay="1" xml:id="S1.frame1.slide1">
<para xml:id="S1.frame1.slide1.p1">
<p>This frame has exactly one slide.</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S1.frame2">
<slide overlay="1" xml:id="S1.frame2.slide1">
<para xml:id="S1.frame2.slide1.p1">
<listing class="ltx_lstlisting" data="ICAgICAgICBJIGNoYW5nZWQgc29tZSBjYXRjb2RlcyBhcm91bmQgYW5kIHN0aWxsIHdvcmsh" dataencoding="base64" datamimetype="text/plain">
<listingline xml:id="lstnumberx1"><text class="ltx_lst_space"> </text><text class="ltx_lst_identifier">I</text><text class="ltx_lst_space"> </text><text class="ltx_lst_identifier">changed</text><text class="ltx_lst_space"> </text><...
</listing>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S1.frame3">
<slide overlay="1" xml:id="S1.frame3.slide1">
<para xml:id="S1.frame3.slide1.p1">
<p>This is on every slide.</p>
</para>
</slide>
<slide overlay="2" xml:id="S1.frame3.slide2">
<para xml:id="S1.frame3.slide2.p1">
<p>This is on every slide.
This is on the second slide.</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S1.frame4">
<slide overlay="1" xml:id="S1.frame4.slide1">
<para xml:id="S1.frame4.slide1.p1">
<p>Before second slide</p>
</para>
<para xml:id="S1.frame4.slide1.p2">
<p>On slides 1 and 3</p>
</para>
</slide>
<slide overlay="2" xml:id="S1.frame4.slide2">
<para xml:id="S1.frame4.slide2.p1">
<p>on second slide</p>
</para>
<para xml:id="S1.frame4.slide2.p2">
<p>On slide 2 onwards</p>
</para>
</slide>
<slide overlay="3" xml:id="S1.frame4.slide3">
<para xml:id="S1.frame4.slide3.p1">
<p>after second slide</p>
</para>
<para xml:id="S1.frame4.slide3.p2">
<p>On slides 1 and 3</p>
</para>
<para xml:id="S1.frame4.slide3.p3">
<p>On slide 2 onwards</p>
</para>
</slide>
t/slides/beamer.xml view on Meta::CPAN
</section>
<section inlist="toc" xml:id="S2">
<tags>
<tag>2</tag>
<tag role="autoref">section 2</tag>
<tag role="refnum">2</tag>
<tag role="typerefnum">§2</tag>
</tags>
<title><tag close=" ">2</tag>Counting of Frames</title>
<slidesequence xml:id="S2.frame1">
<slide overlay="1" xml:id="S2.frame1.slide1">
<para xml:id="S2.frame1.slide1.p1">
<p>Slide 1<break/>1,8,1,5</p>
</para>
</slide>
<slide overlay="2" xml:id="S2.frame1.slide2">
<para xml:id="S2.frame1.slide2.p1">
<p>Slide 2<break/>2,9,2,5</p>
</para>
</slide>
<slide overlay="3" xml:id="S2.frame1.slide3">
<para xml:id="S2.frame1.slide3.p1">
<p>Slide 3<break/>3,10,3,5</p>
</para>
</slide>
<slide overlay="4" xml:id="S2.frame1.slide4">
<para xml:id="S2.frame1.slide4.p1">
<p>Slide 4<break/>4,11,4,5</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S2.frame2">
<slide overlay="1" xml:id="S2.frame2.slide1">
<para xml:id="S2.frame2.slide1.p1">
<p>Slide 1<break/>1,12,1,6</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S2.frame3">
<slide overlay="2" xml:id="S2.frame3.slide1">
<para xml:id="S2.frame3.slide1.p1">
<p>Slide 2<break/>1,13,2,7</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S2.frame4">
<slide overlay="3" xml:id="S2.frame4.slide1">
<para xml:id="S2.frame4.slide1.p1">
<p>Slide 3<break/>1,14,3,8</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S2.frame5">
<slide overlay="4" xml:id="S2.frame5.slide1">
<para xml:id="S2.frame5.slide1.p1">
<p>Slide 4<break/>1,15,4,9</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S2.frame6">
<slide overlay="2" xml:id="S2.frame6.slide1">
<para xml:id="S2.frame6.slide1.p1">
<p>Slide 2<break/>1,16,2,10</p>
</para>
</slide>
<slide overlay="3" xml:id="S2.frame6.slide2">
<para xml:id="S2.frame6.slide2.p1">
<p>Slide 3<break/>2,17,3,10</p>
</para>
</slide>
<slide overlay="4" xml:id="S2.frame6.slide3">
<para xml:id="S2.frame6.slide3.p1">
<p>Slide 4<break/>3,18,4,10</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S2.frame7">
<slide overlay="1" xml:id="S2.frame7.slide1">
<para xml:id="S2.frame7.slide1.p1">
<p>Slide 1<break/>1,19,1,11</p>
</para>
</slide>
<slide overlay="2" xml:id="S2.frame7.slide2">
<para xml:id="S2.frame7.slide2.p1">
<p>Slide 2<break/>2,20,2,11</p>
</para>
</slide>
</slidesequence>
</section>
<section inlist="toc" xml:id="S3">
<tags>
<tag>3</tag>
<tag role="autoref">section 3</tag>
<tag role="refnum">3</tag>
<tag role="typerefnum">§3</tag>
</tags>
<title><tag close=" ">3</tag>Overlays</title>
<slidesequence xml:id="S3.frame1">
<slide overlay="1" xml:id="S3.frame1.slide1">
<para xml:id="S3.frame1.slide1.p1">
<p>Always
<inline-block class="ltx_covered">
<p>Onslide 2</p>
</inline-block><inline-block class="ltx_uncovered">
<p>Always</p>
</inline-block></p>
</para>
</slide>
<slide overlay="2" xml:id="S3.frame1.slide2">
<para xml:id="S3.frame1.slide2.p1">
<p>Always
<inline-block class="ltx_uncovered">
<p>Onslide 2</p>
</inline-block><inline-block class="ltx_uncovered">
<p>Always</p>
</inline-block></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S3.frame2">
<slide overlay="1" xml:id="S3.frame2.slide1">
<para xml:id="S3.frame2.slide1.p1">
<p>Hello <inline-block class="ltx_covered">
<p>I am uncovered</p>
</inline-block><inline-block class="ltx_covered">
<p>One-by-one.</p>
</inline-block></p>
</para>
</slide>
<slide overlay="2" xml:id="S3.frame2.slide2">
<para xml:id="S3.frame2.slide2.p1">
<p>Hello <inline-block class="ltx_uncovered">
<p>I am uncovered</p>
</inline-block><inline-block class="ltx_covered">
<p>One-by-one.</p>
</inline-block></p>
</para>
</slide>
<slide overlay="3" xml:id="S3.frame2.slide3">
<para xml:id="S3.frame2.slide3.p1">
<p>Hello <inline-block class="ltx_uncovered">
<p>I am uncovered</p>
</inline-block><inline-block class="ltx_uncovered">
<p>One-by-one.</p>
</inline-block></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S3.frame3">
<slide overlay="1" xml:id="S3.frame3.slide1">
<para xml:id="S3.frame3.slide1.p1">
<inline-block class="ltx_invisible">
<p>Visible on Slide 2 onwards</p>
</inline-block>
<inline-block class="ltx_visible">
<p>Invisible on Slide 2 onwards</p>
</inline-block>
<inline-block class="ltx_covered">
<p>Uncovered on Slide 2</p>
</inline-block>
</para>
</slide>
<slide overlay="2" xml:id="S3.frame3.slide2">
<para xml:id="S3.frame3.slide2.p1">
<inline-block class="ltx_visible">
<p>Visible on Slide 2 onwards</p>
</inline-block>
<inline-block class="ltx_invisible">
<p>Invisible on Slide 2 onwards</p>
</inline-block>
<inline-block class="ltx_uncovered">
<p>Uncovered on Slide 2</p>
</inline-block>
t/slides/beamer.xml view on Meta::CPAN
</section>
<section inlist="toc" xml:id="S4">
<tags>
<tag>4</tag>
<tag role="autoref">section 4</tag>
<tag role="refnum">4</tag>
<tag role="typerefnum">§4</tag>
</tags>
<title><tag close=" ">4</tag>Overlay Environments</title>
<slidesequence xml:id="S4.frame1">
<slide overlay="1" xml:id="S4.frame1.slide1">
<para xml:id="S4.frame1.slide1.p1">
<p>This
[
word
]
is in round brackets on slide 2 and in square brackets on slide 1.</p>
</para>
</slide>
<slide overlay="2" xml:id="S4.frame1.slide2">
<para xml:id="S4.frame1.slide2.p1">
<p>This
(
word
)
is in round brackets on slide 2 and in square brackets on slide 1.</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S4.frame2">
<slide overlay="1" xml:id="S4.frame2.slide1">
<para xml:id="S4.frame2.slide1.p1">
<p>We are on slide 1 or 2.</p>
</para>
</slide>
<slide overlay="2" xml:id="S4.frame2.slide2">
<para xml:id="S4.frame2.slide2.p1">
<p>We are on slide 1 or 2.
We are on slide 2.</p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S4.frame3">
<slide overlay="1" xml:id="S4.frame3.slide1">
<para xml:id="S4.frame3.slide1.p1">
<inline-block class="ltx_covered">
<p>Iâm uncovered on slide 2</p>
</inline-block>
</para>
</slide>
<slide overlay="2" xml:id="S4.frame3.slide2">
<para xml:id="S4.frame3.slide2.p1">
<inline-block class="ltx_uncovered">
<p>Iâm uncovered on slide 2</p>
</inline-block>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S4.frame4">
<slide overlay="1" xml:id="S4.frame4.slide1">
<para xml:id="S4.frame4.slide1.p1">
<p>Iâm alerted on slide 2</p>
</para>
</slide>
<slide overlay="2" xml:id="S4.frame4.slide2">
<para xml:id="S4.frame4.slide2.p1">
<inline-block class="ltx_alert">
<p>Iâm alerted on slide 2</p>
</inline-block>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S4.frame5">
<slide overlay="1" xml:id="S4.frame5.slide1">
<para xml:id="S4.frame5.slide1.p1">
<inline-block class="ltx_covered">
<p>This text is shown the same way as the text above.</p>
</inline-block>
</para>
</slide>
<slide overlay="2" xml:id="S4.frame5.slide2">
<para xml:id="S4.frame5.slide2.p1">
<inline-block class="ltx_uncovered">
<p>This text is shown the same way as the text above.</p>
</inline-block>
</para>
</slide>
<slide overlay="3" xml:id="S4.frame5.slide3">
<para xml:id="S4.frame5.slide3.p1">
<inline-block class="ltx_uncovered">
<inline-block class="ltx_alert">
<p>This text is shown the same way as the text above.</p>
</inline-block>
</inline-block>
</para>
</slide>
<slide overlay="4" xml:id="S4.frame5.slide4">
<para xml:id="S4.frame5.slide4.p1">
<inline-block class="ltx_uncovered">
<inline-block class="ltx_alert">
<p>This text is shown the same way as the text above.</p>
</inline-block>
</inline-block>
</para>
</slide>
<slide overlay="5" xml:id="S4.frame5.slide5">
<para xml:id="S4.frame5.slide5.p1">
<inline-block class="ltx_uncovered">
<p>This text is shown the same way as the text above.</p>
</inline-block>
</para>
</slide>
<slide overlay="6" xml:id="S4.frame5.slide6">
<para xml:id="S4.frame5.slide6.p1">
<inline-block class="ltx_uncovered">
<inline-block class="ltx_alert">
<p>This text is shown the same way as the text above.</p>
</inline-block>
</inline-block>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S4.frame6">
<slide overlay="1" xml:id="S4.frame6.slide1">
<para xml:id="S4.frame6.slide1.p1">
<inline-block class="ltx_covered">
<p>This text is shown the same way as the text below.</p>
</inline-block>
</para>
</slide>
<slide overlay="2" xml:id="S4.frame6.slide2">
<para xml:id="S4.frame6.slide2.p1">
<inline-block class="ltx_covered">
<p>This text is shown the same way as the text below.</p>
</inline-block>
</para>
</slide>
<slide overlay="3" xml:id="S4.frame6.slide3">
<para xml:id="S4.frame6.slide3.p1">
<inline-block class="ltx_uncovered">
<inline-block class="ltx_alert">
<p>This text is shown the same way as the text below.</p>
</inline-block>
</inline-block>
</para>
</slide>
<slide overlay="4" xml:id="S4.frame6.slide4">
<para xml:id="S4.frame6.slide4.p1">
<inline-block class="ltx_uncovered">
<inline-block class="ltx_alert">
<p>This text is shown the same way as the text below.</p>
</inline-block>
</inline-block>
</para>
</slide>
<slide overlay="5" xml:id="S4.frame6.slide5">
<para xml:id="S4.frame6.slide5.p1">
<inline-block class="ltx_uncovered">
<p>This text is shown the same way as the text below.</p>
</inline-block>
</para>
</slide>
<slide overlay="6" xml:id="S4.frame6.slide6">
<para xml:id="S4.frame6.slide6.p1">
<inline-block class="ltx_uncovered">
<inline-block class="ltx_alert">
<p>This text is shown the same way as the text below.</p>
</inline-block>
</inline-block>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S4.frame7">
<slide overlay="1" xml:id="S4.frame7.slide1">
<para xml:id="S4.frame7.slide1.p1">
<itemize xml:id="S4.I1">
<item xml:id="S4.I1.i1">
<tags>
<tag>â¢</tag>
<tag role="autoref">item </tag>
<tag role="typerefnum">1st item</tag>
</tags>
<para xml:id="S4.I1.i1.p1">
<p>First</p>
t/slides/beamer.xml view on Meta::CPAN
<tag role="autoref">item </tag>
<tag role="typerefnum">3rd item</tag>
</tags>
<para xml:id="S4.I1.i3.p1">
<p>Third</p>
</para>
</item>
</itemize>
</para>
</slide>
<slide overlay="2" xml:id="S4.frame7.slide2">
<para xml:id="S4.frame7.slide2.p1">
<itemize xml:id="S4.I2">
<item xml:id="S4.I2.i1">
<tags>
<tag>â¢</tag>
<tag role="autoref">item </tag>
<tag role="typerefnum">1st item</tag>
</tags>
<para xml:id="S4.I2.i1.p1">
<p>First</p>
t/slides/beamer.xml view on Meta::CPAN
<tag role="autoref">item </tag>
<tag role="typerefnum">3rd item</tag>
</tags>
<para xml:id="S4.I2.i3.p1">
<p>Third</p>
</para>
</item>
</itemize>
</para>
</slide>
<slide overlay="3" xml:id="S4.frame7.slide3">
<para xml:id="S4.frame7.slide3.p1">
<itemize xml:id="S4.I3">
<item xml:id="S4.I3.i1">
<tags>
<tag>â¢</tag>
<tag role="autoref">item </tag>
<tag role="typerefnum">1st item</tag>
</tags>
<para xml:id="S4.I3.i1.p1">
<p>First</p>
t/slides/beamer.xml view on Meta::CPAN
</section>
<section inlist="toc" xml:id="S5">
<tags>
<tag>5</tag>
<tag role="autoref">section 5</tag>
<tag role="refnum">5</tag>
<tag role="typerefnum">§5</tag>
</tags>
<title><tag close=" ">5</tag>Titles</title>
<slidesequence xml:id="S5.frame1">
<slide overlay="1" xml:id="S5.frame1.slide1">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Subtitle</subtitle>
<para xml:id="S5.frame1.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame1.slide2">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Subtitle</subtitle>
<para xml:id="S5.frame1.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S5.frame2">
<slide overlay="1" xml:id="S5.frame2.slide1">
<title class="ltx_frame_title">Title</title>
<title class="ltx_frame_shorttitle">Short Title</title>
<para xml:id="S5.frame2.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame2.slide2">
<title class="ltx_frame_title">Title</title>
<title class="ltx_frame_shorttitle">Short Title</title>
<para xml:id="S5.frame2.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S5.frame3">
<slide overlay="1" xml:id="S5.frame3.slide1">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Subtitle</subtitle>
<para xml:id="S5.frame3.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame3.slide2">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Subtitle</subtitle>
<para xml:id="S5.frame3.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S5.frame4">
<slide overlay="1" xml:id="S5.frame4.slide1">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Subtitle</subtitle>
<para xml:id="S5.frame4.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame4.slide2">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Subtitle</subtitle>
<para xml:id="S5.frame4.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S5.frame5">
<slide overlay="1" xml:id="S5.frame5.slide1">
<para xml:id="S5.frame5.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame5.slide2">
<title class="ltx_frame_title">Title</title>
<para xml:id="S5.frame5.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S5.frame6">
<slide overlay="1" xml:id="S5.frame6.slide1">
<title class="ltx_frame_title">Title Default</title>
<para xml:id="S5.frame6.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame6.slide2">
<title class="ltx_frame_title">Second Title</title>
<para xml:id="S5.frame6.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S5.frame7">
<slide overlay="1" xml:id="S5.frame7.slide1">
<title class="ltx_frame_title">Title Default</title>
<para xml:id="S5.frame7.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame7.slide2">
<title class="ltx_frame_title">Second Title</title>
<para xml:id="S5.frame7.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S5.frame8">
<slide overlay="1" xml:id="S5.frame8.slide1">
<title class="ltx_frame_title">Title</title>
<para xml:id="S5.frame8.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame8.slide2">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Subtitle</subtitle>
<para xml:id="S5.frame8.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S5.frame9">
<slide overlay="1" xml:id="S5.frame9.slide1">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Subtitle</subtitle>
<para xml:id="S5.frame9.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame9.slide2">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Second Subtitle</subtitle>
<para xml:id="S5.frame9.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S5.frame10">
<slide overlay="1" xml:id="S5.frame10.slide1">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Subtitle Default</subtitle>
<para xml:id="S5.frame10.slide1.p1">
<p>Slide 1<break/></p>
</para>
</slide>
<slide overlay="2" xml:id="S5.frame10.slide2">
<title class="ltx_frame_title">Title</title>
<subtitle class="ltx_frame_subtitle">Second Subtitle</subtitle>
<para xml:id="S5.frame10.slide2.p1">
<p>Slide 2<break/></p>
</para>
</slide>
</slidesequence>
</section>
<section inlist="toc" xml:id="S6">
<tags>
<tag>6</tag>
<tag role="autoref">section 6</tag>
<tag role="refnum">6</tag>
<tag role="typerefnum">§6</tag>
</tags>
<title><tag close=" ">6</tag>Enumerate</title>
<slidesequence xml:id="S6.frame1">
<slide overlay="1" xml:id="S6.frame1.slide1">
<para xml:id="S6.frame1.slide1.p1">
<enumerate xml:id="S6.I1">
<item xml:id="S6.I1.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I1.i1.p1">
t/slides/beamer.xml view on Meta::CPAN
</tags>
<para xml:id="S6.I1.i3.p1">
<p>And another first</p>
</para>
</item>
</enumerate>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S6.frame2">
<slide overlay="1" xml:id="S6.frame2.slide1">
<para xml:id="S6.frame2.slide1.p1">
<enumerate xml:id="S6.I2">
<item xml:id="S6.I2.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I2.i1.p1">
t/slides/beamer.xml view on Meta::CPAN
</tags>
<para xml:id="S6.I2.i3.p1">
<inline-block class="ltx_covered">
<p>Third</p>
</inline-block>
</para>
</item>
</enumerate>
</para>
</slide>
<slide overlay="2" xml:id="S6.frame2.slide2">
<para xml:id="S6.frame2.slide2.p1">
<enumerate xml:id="S6.I3">
<item xml:id="S6.I3.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I3.i1.p1">
t/slides/beamer.xml view on Meta::CPAN
</tags>
<para xml:id="S6.I3.i3.p1">
<inline-block class="ltx_covered">
<p>Third</p>
</inline-block>
</para>
</item>
</enumerate>
</para>
</slide>
<slide overlay="3" xml:id="S6.frame2.slide3">
<para xml:id="S6.frame2.slide3.p1">
<enumerate xml:id="S6.I4">
<item xml:id="S6.I4.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I4.i1.p1">
t/slides/beamer.xml view on Meta::CPAN
<inline-block class="ltx_uncovered">
<p>Third</p>
</inline-block>
</para>
</item>
</enumerate>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S6.frame3">
<slide overlay="1" xml:id="S6.frame3.slide1">
<para xml:id="S6.frame3.slide1.p1">
<enumerate xml:id="S6.I5">
<item xml:id="S6.I5.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I5.i1.p1">
t/slides/beamer.xml view on Meta::CPAN
</tags>
<para xml:id="S6.I5.i3.p1">
<inline-block class="ltx_covered">
<p>Second</p>
</inline-block>
</para>
</item>
</enumerate>
</para>
</slide>
<slide overlay="2" xml:id="S6.frame3.slide2">
<para xml:id="S6.frame3.slide2.p1">
<enumerate xml:id="S6.I6">
<item xml:id="S6.I6.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I6.i1.p1">
t/slides/beamer.xml view on Meta::CPAN
<inline-block class="ltx_uncovered">
<p>Second</p>
</inline-block>
</para>
</item>
</enumerate>
</para>
</slide>
</slidesequence>
<slidesequence xml:id="S6.frame4">
<slide overlay="1" xml:id="S6.frame4.slide1">
<para xml:id="S6.frame4.slide1.p1">
<enumerate xml:id="S6.I7">
<item xml:id="S6.I7.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I7.i1.p1">
t/slides/beamer.xml view on Meta::CPAN
</tags>
<para xml:id="S6.I8.i3.p1">
<inline-block class="ltx_covered">
<p>Also Fouth</p>
</inline-block>
</para>
</item>
</enumerate>
</para>
</slide>
<slide overlay="2" xml:id="S6.frame4.slide2">
<para xml:id="S6.frame4.slide2.p1">
<enumerate xml:id="S6.I9">
<item xml:id="S6.I9.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I9.i1.p1">
t/slides/beamer.xml view on Meta::CPAN
</tags>
<para xml:id="S6.I10.i3.p1">
<inline-block class="ltx_covered">
<p>Also Fouth</p>
</inline-block>
</para>
</item>
</enumerate>
</para>
</slide>
<slide overlay="3" xml:id="S6.frame4.slide3">
<para xml:id="S6.frame4.slide3.p1">
<enumerate xml:id="S6.I11">
<item xml:id="S6.I11.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I11.i1.p1">
t/slides/beamer.xml view on Meta::CPAN
</tags>
<para xml:id="S6.I12.i3.p1">
<inline-block class="ltx_covered">
<p>Also Fouth</p>
</inline-block>
</para>
</item>
</enumerate>
</para>
</slide>
<slide overlay="4" xml:id="S6.frame4.slide4">
<para xml:id="S6.frame4.slide4.p1">
<enumerate xml:id="S6.I13">
<item xml:id="S6.I13.i1">
<tags>
<tag>1.</tag>
<tag role="autoref">item 1</tag>
<tag role="refnum">1</tag>
<tag role="typerefnum">item 1</tag>
</tags>
<para xml:id="S6.I13.i1.p1">
t/slides/slides.tex view on Meta::CPAN
This is the first slide.
\content
\end{slide}
\begin{slide}
This is the second slide.
\content
\end{slide}
\begin{overlay}
This is the first overlay.
\content
\end{overlay}
\begin{overlay}
This is the second overlay.
\content
\end{overlay}
\begin{note}
This is the first note.
\content
\end{note}
\begin{note}
This is the second note.
\content
t/slides/slides.xml view on Meta::CPAN
</item>
</itemize>
</para>
</slide>
<slide xml:id="s2.o1">
<tags>
<tag>2.1</tag>
<tag role="refnum">2.1</tag>
</tags>
<para xml:id="s2.o1.p1">
<p>This is the first overlay.
<text opacity="0">Invisible
</text>Visible</p>
<itemize xml:id="I3">
<item xml:id="I3.i1">
<tags>
<tag>â¢</tag>
<tag role="typerefnum">1st item</tag>
</tags>
<para xml:id="I3.i1.p1">
t/slides/slides.xml view on Meta::CPAN
</item>
</itemize>
</para>
</slide>
<slide xml:id="s2.o2">
<tags>
<tag>2.2</tag>
<tag role="refnum">2.2</tag>
</tags>
<para xml:id="s2.o2.p1">
<p>This is the second overlay.
<text opacity="0">Invisible
</text>Visible</p>
<itemize xml:id="I4">
<item xml:id="I4.i1">
<tags>
<tag>â¢</tag>
<tag role="typerefnum">1st item</tag>
</tags>
<para xml:id="I4.i1.p1">
t/tikz/unit_tests_by_silviu.tex view on Meta::CPAN
% TODO: transparency group
\begingroup % ------ pseudo document ---------
%
% Transparency groups
%
\begin{tikzpicture}
\draw [help lines] (0,0) grid (2,2);
% Stuff outside the picture, but still in a transparency group.
\node [left,overlay] at (0,1) {
\begin{tikzpicture}
\pgfsetfillopacity{0.5}
\pgftransparencygroup
\node at (2,0) [forbidden sign,line width=2ex,draw=red,fill=white]{Smoking};
\endpgftransparencygroup
\end{tikzpicture}
};
\end{tikzpicture}
\endgroup % ----------- end -----------------