TagSoup - v3.1.0
    Preparing search index...

    Interface TokenizerOptions

    Options of the createTokenizer.

    interface TokenizerOptions {
        implicitlyClosedTags?: Record<string, string[]>;
        implicitlyOpenedTags?: string[];
        isCaseInsensitiveTags?: boolean;
        isCDATARecognized?: boolean;
        isProcessingInstructionRecognized?: boolean;
        isSelfClosingTagsRecognized?: boolean;
        isStrict?: boolean;
        isUnbalancedEndTagsIgnored?: boolean;
        isUnbalancedStartTagsImplicitlyClosed?: boolean;
        rawTextTags?: string[];
        voidTags?: string[];
    }

    Hierarchy (View Summary)

    Index

    Properties

    implicitlyClosedTags?: Record<string, string[]>

    The map from a tag (A) to a list of tags that must be closed if tag (A) is opened.

    For example, in HTML p and h1 tags have the following semantics:

    <p><h1><p></p><h1></h1>
    ^^^^ p is implicitly closed by h1

    To achieve this behavior, set this option to:

    // h1 implicitly closes p
    { h1: ['p'] }

    Use in conjunctions with isUnbalancedStartTagsImplicitlyClosed.

    implicitlyOpenedTags?: string[]

    The list of tags for which a start tag is inserted if an unbalanced end tag is met. Otherwise, a ParserError is thrown.

    You can ignore unbalanced end tags with isUnbalancedEndTagsIgnored.

    For example, in HTML p and br tags follow this semantics:

    </p><p></p>
    ^^^ p is implicitly opened

    </br><br/>
    ^ br is implicitly opened

    To achieve this behavior, set this option to:

    ['p', 'br']
    
    isCaseInsensitiveTags?: boolean

    If true then ASCII alpha characters are case-insensitive in tag names.

    false
    
    isCDATARecognized?: boolean

    If true then CDATA sections are recognized.

    false
    
    isProcessingInstructionRecognized?: boolean

    If true then processing instructions are recognized.

    false
    
    isSelfClosingTagsRecognized?: boolean

    If true then self-closing tags are recognized, otherwise they are treated as start tags.

    false
    
    isStrict?: boolean

    If true then tag names and attributes are processed with XML constraints.

    false
    
    isUnbalancedEndTagsIgnored?: boolean

    If true then end tags that don't have a corresponding start tag are ignored. Otherwise, a ParserError is thrown.

    Use in conjunctions with isUnbalancedStartTagsImplicitlyClosed.

    <a></b></a><a></a>
    ^^^^ b is ignored
    false
    
    isUnbalancedStartTagsImplicitlyClosed?: boolean

    If true then unbalanced start tags are forcefully closed. Otherwise, a ParserError is thrown.

    Use in conjunctions with isUnbalancedEndTagsIgnored.

    <a><b></a><a><b></b></a>
    ^^^^ b is implicitly closed
    false
    
    rawTextTags?: string[]

    The list of tags which content is interpreted as plain text.

    ['script', 'style']
    
    voidTags?: string[]

    The list of tags that can't have any contents (since there's no end tag, no content can be put between the start tag and the end tag).

    ['link', 'meta']