focal (3) MojoMojo::Formatter::TOC.3pm.gz

Provided by: libmojomojo-perl_1.12+dfsg-1_all bug

NAME

       MojoMojo::Formatter::TOC - generate table of contents

DESCRIPTION

       This formatter will replace "{{toc}}" with a table of contents, using HTML::GenToc. If you don't want an
       element to be included in the TOC, make it have "class="notoc""

METHODS

   format_content_order
       The TOC formatter expects HTML input so it needs to run after the main formatter. Since comment-type
       formatters (order 91) could add a heading for the comment section, the TOC formatter will run with a
       priority of 95.

   format_content
       Calls the formatter. Takes a ref to the content as well as the context object.  The syntax for the TOC
       plugin invocation is:

         {{toc M- }}     # start from Header level M
         {{toc -N }}     # stop at Header level N
         {{toc M-N }}    # process only header levels M..N

       where M is the minimum heading level to include in the TOC, and N is the maximum level (depth). For
       example, suppose you only have one H1 on the page so it doesn't make sense to add it to the TOC; also,
       assume you and don't want to include any headers smaller than H3. The {{toc}} markup to achieve that
       would be:

         {{toc 2-3}}

       Defaults to 1-6.

   SEO-friendly anchors
       Anchors should be generated with SEO- (and human-) friendly names, i.e. out of the entire token text,
       instead of being numeric or reduced to the first word(s) of the token.  In the spirit of
       http://seo2.0.onreact.com/top-10-fatal-url-design-mistakes, compare:

         http://beachfashion.com/photos/Pamela_Anderson#In_red_swimsuit_in_Baywatch
           vs.
         http://beachfashion.com/photos/Pamela_Anderson#in

       "Which one speaks your language more, which one will you rather click?"

       The anchor names generated are compliant with XHTML1.0 Strict. Also, per the HTML 4.01 spec, anchor names
       should be restricted to ASCII characters and anchors that differ only in case may not appear in the same
       document. In particular, an anchor name may be defined only once in a document (logically, because
       otherwise the user agent wouldn't know which #foo to scroll to).  This is currently a problem with
       HTML::Toc v1.11, which doesn't have support for passing the already existing anchors to the
       "templateAnchorName" sub.

   assembleAnchorName
        http://search.cpan.org/dist/HTML-Toc/Toc.pod#templateAnchorName

SEE ALSO

       MojoMojo and Module::Pluggable::Ordered.

AUTHORS

       Dan Dascalescu, <http://dandascalescu.com>

LICENSE

       This library is free software. You can redistribute it and/or modify it under the same terms as Perl
       itself.