|edZddlmZmZmZddlmZddlmZm Z m Z m Z m Z m Z ddlmZdgZGddeZGd deZy ) z pygments.lexers.email ~~~~~~~~~~~~~~~~~~~~~ Lexer for the raw E-mail. :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. ) RegexLexerDelegatingLexerbygroups) MIMELexer)TextKeywordNameStringNumberComment) get_bool_opt EmailLexerc eZdZdZfdZdZdejdfdefgdejfdejd fd e fd e fd ejfd ejfdejfde jfde jfde jfde jfde jfde jfde jfde jfde jfde jfde jfde jfde jfdej fdeej&ej(ej&e j(ej&e jej&fdejfdefgd ZxZS)!EmailHeaderLexerzm Sub-lexer for raw E-mail. This lexer only process header part of e-mail. .. versionadded:: 2.5 c Ht|di|t|dd|_y)Nzhighlight-X-headerF)super__init__r highlight_xselfoptions __class__s 7/usr/lib/python3/dist-packages/pygments/lexers/email.pyrzEmailHeaderLexer.__init__s% #7#'1EuMc#K|jr`|jdtj|j df|j |j dd}|Ed{y|jdt j|j df|jdt j|j dfy7lw)Nrootheader)stack) rstartr Taggroupget_tokens_unprocessedr Special Multiline)rmatchdefault_actionss rget_x_header_tokensz$EmailHeaderLexer.get_x_header_tokenss   ++a.$((EKKN: :#99 A&8::O& & &++a.'//5;;q>A A++a.'"3"3U[[^C C 'sA'C)C*A-Cz^(?:[A-WYZ]|X400)[\w\-]*:r!z(^(X-(?:\w[\w\-]*:))([\s\S]*?\n)(?![ \t])z\n[ \t]z \n(?![ \t])z#popz \bE?SMTPS?\bz\b(?:HE|EH)LO\bz[\w\.\-\+=]+@[\w\.\-]+z<[\w\.\-\+=]+@[\w\.\-]+>z%\b(\w[\w\.-]*\.[\w\.-]*\w[a-zA-Z]+)\bz`(?<=\b)(?:(?:25[0-5]|2[0-4][0-9]|1?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|1?[0-9][0-9]?)(?=\b)z&(?<=\b)([0-9a-fA-F]{1,4}:){1,7}:(?!\b)z*(?<=\b):((:[0-9a-fA-F]{1,4}){1,7}|:)(?=\b)z5(?<=\b)([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}(?=\b)z6(?<=\b)([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}(?=\b)z8(?<=\b)[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})(?=\b)z:(?<=\b)fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}(?=\b)z=(?<=\b)([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}(?=\b)z=(?<=\b)([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}(?=\b)z=(?<=\b)([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}(?=\b)z=(?<=\b)([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}(?=\b)z(?<=\b)::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])(?=\b)z(?<=\b)([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])(?=\b)a'(?:(Sun|Mon|Tue|Wed|Thu|Fri|Sat),\s+)?(0[1-9]|[1-2]?[0-9]|3[01])\s+(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+(19[0-9]{2}|[2-9][0-9]{3})\s+(2[0-3]|[0-1][0-9]):([0-5][0-9])(?::(60|[0-5][0-9]))?(?:\.\d{1,5})?\s+([-\+][0-9]{2}[0-5][0-9]|\(?(?:UTC?|GMT|(?:E|C|M|P)(?:ST|ET|DT)|[A-IK-Z])\)?)zN(=\?)([\w-]+)(\?)([BbQq])(\?)([\[\w!\"#$%&\'()*+,-./:;<=>@[\\\]^_`{|}~]+)(\?=)z[\s]+z[\S]r)__name__ __module__ __qualname____doc__rr+r r$r WhitespacerLabelFunctionr IntegerHex Decoratorrr AffixConstanttokens __classcell__rs@rrrs N D *488X > 8:M N  ) T__f 5g &  )' 3 ($** 56t}} E5 ^^  7 C :FJJ G Evzz R F S H&** U JFJJ W Mvzz Z M ZZ  M ZZ  M ZZ ZZ R ZZ  H ^^  " fllDMM6<<AQAQllFJJ > ? t ' dOw< BFrrc:eZdZdZdZddgZdgZdgZfdZxZ S)rz Lexer for raw E-mail. Additional options accepted: `highlight-X-header` Highlight the fields of ``X-`` user-defined email header. (default: ``False``). .. versionadded:: 2.5 zE-mailemailemlz*.emlzmessage/rfc822c Bt|tttfi|y)N)rrrrr rs rrzEmailLexer.__init__s )9gIIr) r,r-r.r/namealiases filenames mimetypesrr9r:s@rrrqs4  DG I!"IJJrN)r/pygments.lexerrrrpygments.lexers.mimerpygments.tokenrrr r r r pygments.utilr __all__rrrrrrHsCA@*GG& .[z[|JJr