HTML-Valid

 view release on metacpan or  search on metacpan

lib/HTML/Valid.pod  view on Meta::CPAN

    $htv->set_option ('enclose-text', <value>);

Type: true or false

Default: false

This option specifies if Tidy should enclose any text it finds in the body element within a C<< <p> >> element.

This is useful when you want to take existing HTML and use it with a style sheet.

=item escape-cdata

    $htv->set_option ('escape-cdata', <value>);

Type: true or false

Default: false

This option specifies if Tidy should convert C<< <![CDATA[]]> >> sections to normal text.

=item fix-backslash

    $htv->set_option ('fix-backslash', <value>);

lib/HTML/Valid.pod  view on Meta::CPAN

=item indent-attributes

    $htv->set_option ('indent-attributes', <value>);

Type: true or false

Default: false

This option specifies if Tidy should begin each attribute on a new line.

=item indent-cdata

    $htv->set_option ('indent-cdata', <value>);

Type: true or false

Default: false

This option specifies if Tidy should indent C<< <![CDATA[]]> >> sections.

=item indent-spaces

    $htv->set_option ('indent-spaces', <value>);

lib/HTML/Valid/Tagset.pm  view on Meta::CPAN


our @p_closure_barriers = ();

# %is_Possible_Strict_P_Content is just the inline elements, the
# content of HTML::Tagset makes absolutely no sense here and is
# contradictory to the specification it claims to be based on.

our %is_Possible_Strict_P_Content = %isInline;

our %attr2type = (
    'abbr' => 'pcdata',
    'accept' => 'xtype',
    'accept-charset' => 'charset',
    'accesskey' => 'character',
    'action' => 'action',
    'add_date' => 'pcdata',
    'align' => 'align',
    'alink' => 'color',
    'alt' => 'pcdata',
    'archive' => 'urls',
    'aria-activedescendant' => 'pcdata',
    'aria-atomic' => 'pcdata',
    'aria-autocomplete' => 'pcdata',
    'aria-busy' => 'pcdata',
    'aria-checked' => 'pcdata',
    'aria-controls' => 'pcdata',
    'aria-describedby' => 'pcdata',
    'aria-disabled' => 'pcdata',
    'aria-dropeffect' => 'pcdata',
    'aria-expanded' => 'pcdata',
    'aria-flowto' => 'pcdata',
    'aria-grabbed' => 'pcdata',
    'aria-haspopup' => 'pcdata',
    'aria-hidden' => 'pcdata',
    'aria-invalid' => 'pcdata',
    'aria-label' => 'pcdata',
    'aria-labelledby' => 'pcdata',
    'aria-level' => 'pcdata',
    'aria-live' => 'pcdata',
    'aria-multiline' => 'pcdata',
    'aria-multiselectable' => 'pcdata',
    'aria-orientation' => 'pcdata',
    'aria-owns' => 'pcdata',
    'aria-posinset' => 'pcdata',
    'aria-pressed' => 'pcdata',
    'aria-readonly' => 'pcdata',
    'aria-relevant' => 'pcdata',
    'aria-required' => 'pcdata',
    'aria-selected' => 'pcdata',
    'aria-setsize' => 'pcdata',
    'aria-sort' => 'pcdata',
    'aria-valuemax' => 'pcdata',
    'aria-valuemin' => 'pcdata',
    'aria-valuenow' => 'pcdata',
    'aria-valuetext' => 'pcdata',
    'async' => 'bool',
    'autocomplete' => 'pcdata',
    'autofocus' => 'pcdata',
    'autoplay' => 'pcdata',
    'axis' => 'pcdata',
    'background' => 'url',
    'baseprofile' => 'pcdata',
    'bgcolor' => 'color',
    'bgproperties' => 'pcdata',
    'border' => 'border',
    'bordercolor' => 'color',
    'bottommargin' => 'number',
    'cellpadding' => 'length',
    'cellspacing' => 'length',
    'challenge' => 'pcdata',
    'char' => 'character',
    'charoff' => 'length',
    'charset' => 'charset',
    'checked' => 'bool',
    'cite' => 'url',
    'class' => 'pcdata',
    'classid' => 'url',
    'clear' => 'clear',
    'code' => 'pcdata',
    'codebase' => 'url',
    'codetype' => 'xtype',
    'color' => 'color',
    'cols' => 'cols',
    'colspan' => 'number',
    'compact' => 'bool',
    'content' => 'pcdata',
    'contenteditable' => 'pcdata',
    'contentscripttype' => 'pcdata',
    'contentstyletype' => 'pcdata',
    'contextmenu' => 'pcdata',
    'controls' => 'pcdata',
    'coords' => 'coords',
    'data' => 'url',
    'datafld' => 'pcdata',
    'dataformatas' => 'pcdata',
    'datapagesize' => 'number',
    'datasrc' => 'url',
    'datetime' => 'date',
    'declare' => 'bool',
    'default' => 'pcdata',
    'defer' => 'bool',
    'dir' => 'textdir',
    'dirname' => 'pcdata',
    'disabled' => 'bool',
    'display' => 'pcdata',
    'draggable' => 'pcdata',
    'dropzone' => 'pcdata',
    'encoding' => 'pcdata',
    'enctype' => 'xtype',
    'event' => 'pcdata',
    'face' => 'pcdata',
    'for' => 'idref',
    'form' => 'pcdata',
    'formaction' => 'pcdata',
    'formenctype' => 'pcdata',
    'formmethod' => 'pcdata',
    'formnovalidate' => 'pcdata',
    'formtarget' => 'pcdata',
    'frame' => 'tframe',
    'frameborder' => 'fborder',
    'framespacing' => 'number',
    'gridx' => 'number',
    'gridy' => 'number',
    'headers' => 'idrefs',
    'height' => 'length',
    'hidden' => 'pcdata',
    'high' => 'pcdata',
    'href' => 'url',
    'hreflang' => 'lang',
    'hspace' => 'number',
    'http-equiv' => 'pcdata',
    'icon' => 'pcdata',
    'id' => 'iddef',
    'ismap' => 'bool',
    'itemid' => 'pcdata',
    'itemprop' => 'pcdata',
    'itemref' => 'pcdata',
    'itemscope' => 'bool',
    'itemtype' => 'url',
    'keytype' => 'pcdata',
    'kind' => 'pcdata',
    'label' => 'pcdata',
    'lang' => 'lang',
    'language' => 'pcdata',
    'last_modified' => 'pcdata',
    'last_visit' => 'pcdata',
    'leftmargin' => 'number',
    'link' => 'color',
    'list' => 'pcdata',
    'longdesc' => 'url',
    'loop' => 'pcdata',
    'low' => 'pcdata',
    'lowsrc' => 'url',
    'manifest' => 'pcdata',
    'marginheight' => 'number',
    'marginwidth' => 'number',
    'max' => 'pcdata',
    'maxlength' => 'number',
    'media' => 'media',
    'mediagroup' => 'pcdata',
    'method' => 'fsubmit',
    'methods' => 'pcdata',
    'min' => 'pcdata',
    'multiple' => 'bool',
    'n' => 'pcdata',
    'name' => 'name',
    'nohref' => 'bool',
    'noresize' => 'bool',
    'noshade' => 'bool',
    'novalidate' => 'pcdata',
    'nowrap' => 'bool',
    'object' => 'pcdata',
    'onabort' => 'pcdata',
    'onafterprint' => 'pcdata',
    'onafterupdate' => 'script',
    'onbeforeprint' => 'pcdata',
    'onbeforeunload' => 'script',
    'onbeforeupdate' => 'script',
    'onblur' => 'script',
    'oncanplay' => 'pcdata',
    'oncanplaythrough' => 'pcdata',
    'onchange' => 'script',
    'onclick' => 'script',
    'oncontextmenu' => 'pcdata',
    'oncuechange' => 'pcdata',
    'ondataavailable' => 'script',
    'ondatasetchanged' => 'script',
    'ondatasetcomplete' => 'script',
    'ondblclick' => 'script',
    'ondrag' => 'pcdata',
    'ondragend' => 'pcdata',
    'ondragenter' => 'pcdata',
    'ondragleave' => 'pcdata',
    'ondragover' => 'pcdata',
    'ondragstart' => 'pcdata',
    'ondrop' => 'pcdata',
    'ondurationchange' => 'pcdata',
    'onemptied' => 'pcdata',
    'onended' => 'pcdata',
    'onerror' => 'pcdata',
    'onerrorupdate' => 'script',
    'onfocus' => 'script',
    'onhashchange' => 'pcdata',
    'oninput' => 'pcdata',
    'oninvalid' => 'pcdata',
    'onkeydown' => 'script',
    'onkeypress' => 'script',
    'onkeyup' => 'script',
    'onload' => 'script',
    'onloadeddata' => 'pcdata',
    'onloadedmetadata' => 'pcdata',
    'onloadstart' => 'pcdata',
    'onmessage' => 'pcdata',
    'onmousedown' => 'script',
    'onmousemove' => 'script',
    'onmouseout' => 'script',
    'onmouseover' => 'script',
    'onmouseup' => 'script',
    'onmousewheel' => 'pcdata',
    'onoffline' => 'pcdata',
    'ononline' => 'pcdata',
    'onpagehide' => 'pcdata',
    'onpageshow' => 'pcdata',
    'onpause' => 'pcdata',
    'onplay' => 'pcdata',
    'onplaying' => 'pcdata',
    'onpopstate' => 'pcdata',
    'onprogress' => 'pcdata',
    'onratechange' => 'pcdata',
    'onreadystatechange' => 'pcdata',
    'onredo' => 'pcdata',
    'onreset' => 'script',
    'onresize' => 'pcdata',
    'onrowenter' => 'script',
    'onrowexit' => 'script',
    'onscroll' => 'pcdata',
    'onseeked' => 'pcdata',
    'onseeking' => 'pcdata',
    'onselect' => 'script',
    'onshow' => 'pcdata',
    'onstalled' => 'pcdata',
    'onstorage' => 'pcdata',
    'onsubmit' => 'script',
    'onsuspend' => 'pcdata',
    'ontimeupdate' => 'pcdata',
    'onundo' => 'pcdata',
    'onunload' => 'script',
    'onvolumechange' => 'pcdata',
    'onwaiting' => 'pcdata',
    'open' => 'pcdata',
    'optimum' => 'pcdata',
    'pattern' => 'pcdata',
    'placeholder' => 'pcdata',
    'poster' => 'pcdata',
    'preload' => 'pcdata',
    'preserveaspectratio' => 'pcdata',
    'profile' => 'url',
    'prompt' => 'pcdata',
    'pubdate' => 'pcdata',
    'radiogroup' => 'pcdata',
    'rbspan' => 'number',
    'readonly' => 'bool',
    'rel' => 'linktypes',
    'required' => 'pcdata',
    'rev' => 'linktypes',
    'reversed' => 'pcdata',
    'rightmargin' => 'number',
    'role' => 'pcdata',
    'rows' => 'number',
    'rowspan' => 'number',
    'rules' => 'trules',
    'sandbox' => 'pcdata',
    'scheme' => 'pcdata',
    'scope' => 'scope',
    'scoped' => 'pcdata',
    'scrolling' => 'scroll',
    'sdaform' => 'pcdata',
    'sdapref' => 'pcdata',
    'sdasuff' => 'pcdata',
    'seamless' => 'pcdata',
    'selected' => 'bool',
    'shape' => 'shape',
    'showgrid' => 'bool',
    'showgridx' => 'bool',
    'showgridy' => 'bool',
    'size' => 'number',
    'sizes' => 'pcdata',
    'span' => 'number',
    'spellcheck' => 'pcdata',
    'src' => 'url',
    'srcdoc' => 'pcdata',
    'srclang' => 'pcdata',
    'srcset' => 'pcdata',
    'standby' => 'pcdata',
    'start' => 'number',
    'step' => 'pcdata',
    'style' => 'pcdata',
    'summary' => 'pcdata',
    'tabindex' => 'number',
    'target' => 'target',
    'text' => 'color',
    'title' => 'pcdata',
    'topmargin' => 'number',
    'type' => 'type',
    'urn' => 'pcdata',
    'usemap' => 'url',
    'valign' => 'valign',
    'value' => 'pcdata',
    'valuetype' => 'vtype',
    'version' => 'pcdata',
    'viewbox' => 'pcdata',
    'vlink' => 'color',
    'vspace' => 'number',
    'width' => 'length',
    'wrap' => 'pcdata',
    'x' => 'pcdata',
    'xml:lang' => 'lang',
    'xml:space' => 'pcdata',
    'xmlns' => 'pcdata',
    'y' => 'pcdata',
    'zoomandpan' => 'pcdata',
);



# Private routine, for testing we got the tag info.

sub test_taginfo
{
    my ($tag) = @_;
    return $taginfo->{$tag};

lib/HTML/Valid/ok-options.json  view on Meta::CPAN

{"add-xml-decl":true,"indent":true,"merge-divs":true,"uppercase-tags":true,"show-body-only":true,"quote-marks":true,"css-prefix":true,"drop-proprietary-attributes":true,"drop-empty-elements":true,"quiet":true,"merge-spans":true,"join-styles":true,"sh...

tidy-html5.c  view on Meta::CPAN

    { TidyDropPropAttrs,           MC, "drop-proprietary-attributes", BL, no,              ParsePickList,     &boolPicks          },
    { TidyDuplicateAttrs,          MR, "repeated-attributes",         IN, TidyKeepLast,    ParsePickList,     &repeatAttrPicks    },
    { TidyEmacs,                   DD, "gnu-emacs",                   BL, no,              ParsePickList,     &boolPicks          },
#ifndef DOXYGEN_SHOULD_SKIP_THIS
    { TidyEmacsFile,               IR, "gnu-emacs-file",              ST, 0,               ParseString,       NULL                },
#endif
    { TidyEmptyTags,               MT, "new-empty-tags",              ST, 0,               ParseList,         NULL                },
    { TidyEncloseBlockText,        MR, "enclose-block-text",          BL, no,              ParsePickList,     &boolPicks          },
    { TidyEncloseBodyText,         MR, "enclose-text",                BL, no,              ParsePickList,     &boolPicks          },
    { TidyErrFile,                 IO, "error-file",                  ST, 0,               ParseString,       NULL                },
    { TidyEscapeCdata,             MX, "escape-cdata",                BL, no,              ParsePickList,     &boolPicks          },
    { TidyEscapeScripts,           MR, "escape-scripts",              BL, yes,             ParsePickList,     &boolPicks          }, /* 20160227 - Issue #348 */
    { TidyFixBackslash,            MR, "fix-backslash",               BL, yes,             ParsePickList,     &boolPicks          },
    { TidyFixComments,             MR, "fix-bad-comments",            IN, TidyAutoState,   ParsePickList,     &autoBoolPicks      },
    { TidyFixUri,                  MR, "fix-uri",                     BL, yes,             ParsePickList,     &boolPicks          },
    { TidyForceOutput,             DG, "force-output",                BL, no,              ParsePickList,     &boolPicks          },
    { TidyGDocClean,               MC, "gdoc",                        BL, no,              ParsePickList,     &boolPicks          },
    { TidyHideComments,            MX, "hide-comments",               BL, no,              ParsePickList,     &boolPicks          },
    { TidyHtmlOut,                 DT, "output-html",                 BL, no,              ParsePickList,     &boolPicks          },
    { TidyInCharEncoding,          CE, "input-encoding",              IN, UTF8,            ParseCharEnc,      &charEncPicks       },
    { TidyIndentAttributes,        PP, "indent-attributes",           BL, no,              ParsePickList,     &boolPicks          },
    { TidyIndentCdata,             PP, "indent-cdata",                BL, no,              ParsePickList,     &boolPicks          },
    { TidyIndentContent,           PP, "indent",                      IN, TidyNoState,     ParsePickList,     &autoBoolPicks      },
    { TidyIndentSpaces,            PP, "indent-spaces",               IN, 2,               ParseInt,          NULL                },
    { TidyInlineTags,              MT, "new-inline-tags",             ST, 0,               ParseList,         NULL                },
    { TidyJoinClasses,             MX, "join-classes",                BL, no,              ParsePickList,     &boolPicks          },
    { TidyJoinStyles,              MX, "join-styles",                 BL, yes,             ParsePickList,     &boolPicks          },
    { TidyKeepFileTimes,           IO, "keep-time",                   BL, no,              ParsePickList,     &boolPicks          },
    { TidyKeepTabs,                PP, "keep-tabs",                   BL, no,              ParsePickList,     &boolPicks          }, /* 20171103 - Issue #403 */
    { TidyLiteralAttribs,          MR, "literal-attributes",          BL, no,              ParsePickList,     &boolPicks          },
    { TidyLogicalEmphasis,         MC, "logical-emphasis",            BL, no,              ParsePickList,     &boolPicks          },
    { TidyLowerLiterals,           MR, "lower-literals",              BL, yes,             ParsePickList,     &boolPicks          },

tidy-html5.c  view on Meta::CPAN

        lexer->token = TY_(InsertedToken)( doc );
        node = lexer->token;
        GTDBG(doc,"lex-inserted2", node);
        return node;
    }

    if (mode == CdataContent)
    {
        assert( lexer->parent != NULL );
        node = GetCDATA(doc, lexer->parent);
        GTDBG(doc,"lex-cdata", node);
        return node;
    }

    return GetTokenFromStream( doc, mode );
}

#if defined(ENABLE_DEBUG_LOG)
static void check_me(char *name)
{
    SPRTF("Have node %s\n", name);



( run in 0.724 second using v1.01-cache-2.11-cpan-454fe037f31 )