wml::std::case(3) EN Tools wml::std::case(3)NAME
wml::std::case - Convert Tags to Upper or Lower Case
SYNOPSIS
#use wml::std::case [global={upper,lower}]
<case:upper>
...
</case:upper>
<case:lower>
...
</case:lower>
DESCRIPTION
The "<case:upper>" and "<case:lower>" container tags convert all HTML tags in their body either to upper or lower case. Alternatively
there is a useful variant: Adding the "global" attribute while loading this include file leads to a global case conversion, i.e. "#use
wml::std::case global=upper" just converts all HTML tags of the finally generated page to upper case.
Internally this include file uses the "<tagconv>" container tag provided by HTMLfix (pass 7).
AUTHOR
Ralf S. Engelschall
rse@engelschall.com
www.engelschall.com
REQUIRES
Internal: P1, P5, P6
External: --
SEE ALSO wml_p7_htmlfix(3).
EN Tools 2014-04-16 wml::std::case(3)
Check Out this Related Man Page
wml::std::toc(3) EN Tools wml::std::toc(3)
=LT=define-tag toc_section endtag=required> =LT=set-var __i=0 /> =LT=while =LT=lt =LT=get-var __i /> %0 />> =LT=<get-var toc_style
/>*=LT=toc_style_type =LT=get-var __i /> />> =LT=increment __i />=LT=/while> <li*> %body =LT=set-var __i=0 /> =LT=while =LT=lt =LT=get-var __i
/> %0 />> =LT=/<get-var toc_style />> =LT=increment __i />=LT=/while> =LT=/define-tag> "
"=LT=" "<"
/> </when>
# Define the <HX> and <TOC_HX> container tags (X = 1...6) <set-var __i=1 /> <set-var __pad= /> <while <lt <get-var __i /> 7 />>
<subst-in-string " =LT=define-tag h<get-var __i /> endtag=required> =LT=h<get-var __i />* %attributes> =LT=toc_h<get-var __i />>
%body =LT=/toc_h<get-var __i />> =LT=/h<get-var __i />*> =LT=/define-tag> "
"=LT=" "<"
/>
<subst-in-string " =LT=define-tag toc_h<get-var __i/> endtag=required> =LT=preserve alt/> =LT=set-var alt=/> =LT=set-var
%attributes/> =LT=a name="ToC=LT=get-var __TOCCNT/>">%body</a> {#ToC#: =LT=toc_section <get-var __i/>> <get-var __pad/> =LT=a
href="#ToC=LT=get-var __TOCCNT/>"><strong> =LT=or =LT=get-var alt/> %body/> </strong></a> =LT=/toc_section> <get-var toc_eol/>
:#ToC#} =LT=increment __TOCCNT/> =LT=restore alt/> =LT=/define-tag> "
"=LT=" "<"
/>
<set-var __pad="<get-var __pad /><get-var toc_pad />" />
<increment __i /> </while>
##EOF## __END__
NAME
wml::std::toc - Table of Contents Generation
SYNOPSIS
#use wml::std::toc [style={pre,nbsp,hspace,ul,ol} [type=...]]
<toc>
<hN>...</hN>
<toc_hN ...>...</toc_hN>
DESCRIPTION
This creates a table of contents which can be inserted at any point (even more than once) by the "<toc>" tag. The contents gets created out
of all header tags ``"<hN>"'' where ``N'' also controls the indention in the table of contents.
Alternatively you can use the "<toc_hN>" tags to insert its body (can be empty!) at the current location and into the Table Of Contents. If
specified, the "alt" attribute is included into the ToC instead of the body.
STYLES
You may specify any of the five styles "pre", "nbsp", "hspace", "ul" and "ol". The last two accept special options to render HTML lists.
With "style=ol", you may choose types 1, "A", "a", "i" and "I" whereas "style=ul" provides "d", "c" and "s" for respectively discs, circles
and squares.
EXAMPLE
Below is an example to render the Table of Contents with HTML "<pre>" tag.
#use wml::std::toc style=pre
#use wml::std::page
<page>
<h1>Chapter 1</h1>
<h2>Section 1</h2>
<h2>Section 2</h2>
<h1>Chapter 2</h1>
<h2>Section 1</h2>
<h2>Section 2</h2>
<toc>
Play and choose your favorite!
#use wml::std::toc style=ol type=A1ai
or
#use wml::std::toc style=ul type=dssccc
AUTHORS
Ralf S. Engelschall
rse@engelschall.com
www.engelschall.com
Denis Barbier
barbier@engelschall.com
REQUIRES
Internal: P1, P2, P5, P6
SEE ALSO
HTML "<Hx>" "<UL>" "<OL>" tags.
EN Tools 2014-04-16 wml::std::toc(3)