3
V'íc?0 ã @ sp d Z ddlZddlmZmZ ddlmZmZmZm Z m
Z
mZmZm
Z
ddgZG dd deZG dd deZdS ) zÝ
pygments.lexers.prolog
~~~~~~~~~~~~~~~~~~~~~~
Lexers for Prolog and Prolog-like languages.
:copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
é N)Ú
RegexLexerÚbygroups)ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚPrologLexerÚLogtalkLexerc @ s, e Zd ZdZdZdgZddddgZdgZd ej d
fdej
fdejfd
e
jfde
jfde
jfde
jfde
jfde
jfdefdefdejfdejfdefdefdefdefdeejefdeejeefdeejeefdejfdejfd ejfd!efgd"ej d#fd ej d$fd%ej fd&ej fgd'Zd(d) Zd*S )+r z!
Lexer for Prolog files.
ZPrologZprologz*.eclz*.prologz*.proz*.plz
text/x-prologz/\*znested-commentz%.*z0\'.z0b[01]+z0o[0-7]+z0x[0-9a-fA-F]+z\d\d?\'[a-zA-Z0-9]+z%(\d+\.\d*|\d*\.\d+)([eE][+-]?[0-9]+)?z\d+z[\[\](){}|.,;!]z:-|-->z`"(?:\\x[0-9a-fA-F]+\\|\\u[0-9a-fA-F]{4}|\\U[0-9a-fA-F]{8}|\\[0-7]+\\|\\["\\abcefnrstv]|[^\\"])*"z'(?:''|[^'])*'zis\bz5(<|>|=<|>=|==|=:=|=|/|//|\*|\+|-)(?=\s|[a-zA-Z0-9\[])z(mod|div|not)\bÚ_z([a-z]+)(:)zh([a-z\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef][\w$\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef]*)(\s*)(:-|-->)zd([a-z\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef][\w$\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef]*)(\s*)(\()zY[a-z\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef][\w$\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef]*z/[#&*+\-./:<=>?@\\^~\u00a1-\u00bf\u2010-\u303f]+z [A-Z_]\w*z&\s+|[\u2000-\u200f\ufff0-\ufffe\uffef]z\*/z#popz#pushz[^*/]+z[*/])Úrootznested-commentc C s d| kS )Nz:-© )Útextr r ú:/tmp/pip-build-gk9425m9/Pygments/pygments/lexers/prolog.pyÚanalyse_textP s zPrologLexer.analyse_textN) Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚaliasesÚ filenamesÚ mimetypesr Z MultilineÚSingler ZCharr