File: //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/html.cpython-310.pyc
o
���a]M � @ s d Z ddlZddlmZmZmZmZmZmZ ddl m
Z
mZmZm
Z
mZmZmZ ddlmZmZ ddlmZ ddlmZ ddlmZmZmZ dd lmZ g d
�ZG dd� de�ZG d
d� de�Z G dd� de�Z!G dd� de!�Z"G dd� de�Z#G dd� de�Z$G dd� de�Z%e%Z&dS )z�
pygments.lexers.html
~~~~~~~~~~~~~~~~~~~~
Lexers for HTML, XML and related markup.
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� N)�
RegexLexer�ExtendedRegexLexer�include�bygroups�default�using)�Text�Comment�Operator�Keyword�Name�String�Punctuation)�looks_like_xml�html_doctype_matches)�JavascriptLexer)�
ScalaLexer)�CssLexer�_indentation�
_starts_block)� RubyLexer)� HtmlLexer�DtdLexer�XmlLexer� XsltLexer� HamlLexer�
ScamlLexer�PugLexerc @ s� e Zd ZdZdZdgZg d�ZddgZej ej
B Zdefde
jfd ejfd
ejfdejfdejfd
eeee
je�dfdeeee
je�dfdeeee
j�dfdeeeeee
jee�fg
defdee
jee�dfde
jfdeeee�dfgdeeeeee
jee�dfdee�fdee�dfdee�dfgdeeeeee
jee�dfdee�fdee�dfdee�dfgd edfd!edfd"edfgd#�Zd$d%� Zd&S )'r zo
For HTML 4 and XHTML 1 markup. Nested JavaScript and CSS is highlighted
by the appropriate lexer.
�HTML�html)z*.htmlz*.htmz*.xhtml�*.xsltz text/htmlzapplication/xhtml+xml�[^<&]+�&\S*?;�\<\!\[CDATA\[.*?\]\]\>�<!--(.|\n)*?-->� <\?.*?\?>�<![^>]*>z(<)(\s*)(script)(\s*))�script-content�tagz(<)(\s*)(style)(\s*))�
style-contentr( z(<)(\s*)([\w:.-]+)r( z"(<)(\s*)(/)(\s*)([\w:.-]+)(\s*)(>)�\s+z([\w:-]+\s*)(=)(\s*)�attr�[\w:-]+z(/?)(\s*)(>)�#popz (<)(\s*)(/)(\s*)(script)(\s*)(>)z.+?(?=<\s*/\s*script\s*>)z.+?\nz.+z(<)(\s*)(/)(\s*)(style)(\s*)(>)z.+?(?=<\s*/\s*style\s*>)�".*?"�'.*?'�[^\s>]+)�rootr( r'