Uploaded Test files
This commit is contained in:
parent
f584ad9d97
commit
2e81cb7d99
16627 changed files with 2065359 additions and 102444 deletions
69
venv/Lib/site-packages/pygments/lexers/sieve.py
Normal file
69
venv/Lib/site-packages/pygments/lexers/sieve.py
Normal file
|
@ -0,0 +1,69 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
pygments.lexers.sieve
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Lexer for Sieve file format.
|
||||
|
||||
https://tools.ietf.org/html/rfc5228
|
||||
https://tools.ietf.org/html/rfc5173
|
||||
https://tools.ietf.org/html/rfc5229
|
||||
https://tools.ietf.org/html/rfc5230
|
||||
https://tools.ietf.org/html/rfc5232
|
||||
https://tools.ietf.org/html/rfc5235
|
||||
https://tools.ietf.org/html/rfc5429
|
||||
https://tools.ietf.org/html/rfc8580
|
||||
|
||||
:copyright: Copyright 2006-2020 by the Pygments team, see AUTHORS.
|
||||
:license: BSD, see LICENSE for details.
|
||||
"""
|
||||
|
||||
from pygments.lexer import RegexLexer, bygroups
|
||||
from pygments.token import Comment, Name, Literal, String, Text, Punctuation, Keyword
|
||||
|
||||
__all__ = ["SieveLexer"]
|
||||
|
||||
|
||||
class SieveLexer(RegexLexer):
|
||||
"""
|
||||
Lexer for sieve format.
|
||||
"""
|
||||
name = 'Sieve'
|
||||
filenames = ['*.siv', '*.sieve']
|
||||
aliases = ['sieve']
|
||||
|
||||
tokens = {
|
||||
'root': [
|
||||
(r'\s+', Text),
|
||||
(r'[();,{}\[\]]', Punctuation),
|
||||
# import:
|
||||
(r'(?i)require',
|
||||
Keyword.Namespace),
|
||||
# tags:
|
||||
(r'(?i)(:)(addresses|all|contains|content|create|copy|comparator|count|days|detail|domain|fcc|flags|from|handle|importance|is|localpart|length|lowerfirst|lower|matches|message|mime|options|over|percent|quotewildcard|raw|regex|specialuse|subject|text|under|upperfirst|upper|value)',
|
||||
bygroups(Name.Tag, Name.Tag)),
|
||||
# tokens:
|
||||
(r'(?i)(address|addflag|allof|anyof|body|discard|elsif|else|envelope|ereject|exists|false|fileinto|if|hasflag|header|keep|notify_method_capability|notify|not|redirect|reject|removeflag|setflag|size|spamtest|stop|string|true|vacation|virustest)',
|
||||
Name.Builtin),
|
||||
(r'(?i)set',
|
||||
Keyword.Declaration),
|
||||
# number:
|
||||
(r'([0-9.]+)([kmgKMG])?',
|
||||
bygroups(Literal.Number, Literal.Number)),
|
||||
# comment:
|
||||
(r'#.*$',
|
||||
Comment.Single),
|
||||
(r'/\*.*\*/',
|
||||
Comment.Multiline),
|
||||
# string:
|
||||
(r'"[^"]*?"',
|
||||
String),
|
||||
# text block:
|
||||
(r'text:',
|
||||
Name.Tag, 'text'),
|
||||
],
|
||||
'text': [
|
||||
(r'[^.].*?\n', String),
|
||||
(r'^\.', Punctuation, "#pop"),
|
||||
]
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue