diff options
author | Matthäus G. Chajdas <dev@anteru.net> | 2022-12-04 16:25:25 +0100 |
---|---|---|
committer | Matthäus G. Chajdas <dev@anteru.net> | 2022-12-04 16:25:25 +0100 |
commit | f8a75279139ec4b62a220ba92690c066a2de9ee0 (patch) | |
tree | aa1858bd61083680bdf9e170d419d83ac721a48e /pygments/lexers/html.py | |
parent | cdfa8e0ad46c1f5c3d05276ba7130aeb1bfcde35 (diff) | |
download | pygments-git-f8a75279139ec4b62a220ba92690c066a2de9ee0.tar.gz |
Improve whitespace handling in XmlLexer.
Diffstat (limited to 'pygments/lexers/html.py')
-rw-r--r-- | pygments/lexers/html.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/pygments/lexers/html.py b/pygments/lexers/html.py index 1c465048..f2e0463b 100644 --- a/pygments/lexers/html.py +++ b/pygments/lexers/html.py @@ -13,7 +13,7 @@ import re from pygments.lexer import RegexLexer, ExtendedRegexLexer, include, bygroups, \ default, using from pygments.token import Text, Comment, Operator, Keyword, Name, String, \ - Punctuation + Punctuation, Whitespace from pygments.util import looks_like_xml, html_doctype_matches from pygments.lexers.javascript import JavascriptLexer @@ -207,7 +207,8 @@ class XmlLexer(RegexLexer): tokens = { 'root': [ - ('[^<&]+', Text), + (r'[^<&\s]+', Text), + (r'[^<&\S]+', Whitespace), (r'&\S*?;', Name.Entity), (r'\<\!\[CDATA\[.*?\]\]\>', Comment.Preproc), (r'<!--.*?-->', Comment.Multiline), @@ -217,12 +218,12 @@ class XmlLexer(RegexLexer): (r'<\s*/\s*[\w:.-]+\s*>', Name.Tag), ], 'tag': [ - (r'\s+', Text), + (r'\s+', Whitespace), (r'[\w.:-]+\s*=', Name.Attribute, 'attr'), (r'/?\s*>', Name.Tag, '#pop'), ], 'attr': [ - (r'\s+', Text), + (r'\s+', Whitespace), ('".*?"', String, '#pop'), ("'.*?'", String, '#pop'), (r'[^\s>]+', String, '#pop'), |