second commit
This commit is contained in:
57
env/lib/python3.11/site-packages/pygments/lexers/bdd.py
vendored
Normal file
57
env/lib/python3.11/site-packages/pygments/lexers/bdd.py
vendored
Normal file
@ -0,0 +1,57 @@
|
||||
"""
|
||||
pygments.lexers.bdd
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Lexer for BDD(Behavior-driven development).
|
||||
|
||||
:copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
|
||||
:license: BSD, see LICENSE for details.
|
||||
"""
|
||||
|
||||
from pygments.lexer import RegexLexer, include
|
||||
from pygments.token import Comment, Keyword, Name, String, Number, Text, \
|
||||
Punctuation, Whitespace
|
||||
|
||||
__all__ = ['BddLexer']
|
||||
|
||||
class BddLexer(RegexLexer):
|
||||
"""
|
||||
Lexer for BDD(Behavior-driven development), which highlights not only
|
||||
keywords, but also comments, punctuations, strings, numbers, and variables.
|
||||
"""
|
||||
|
||||
name = 'Bdd'
|
||||
aliases = ['bdd']
|
||||
filenames = ['*.feature']
|
||||
mimetypes = ['text/x-bdd']
|
||||
url = 'https://en.wikipedia.org/wiki/Behavior-driven_development'
|
||||
version_added = '2.11'
|
||||
|
||||
step_keywords = (r'Given|When|Then|Add|And|Feature|Scenario Outline|'
|
||||
r'Scenario|Background|Examples|But')
|
||||
|
||||
tokens = {
|
||||
'comments': [
|
||||
(r'^\s*#.*$', Comment),
|
||||
],
|
||||
'miscellaneous': [
|
||||
(r'(<|>|\[|\]|=|\||:|\(|\)|\{|\}|,|\.|;|-|_|\$)', Punctuation),
|
||||
(r'((?<=\<)[^\\>]+(?=\>))', Name.Variable),
|
||||
(r'"([^\"]*)"', String),
|
||||
(r'^@\S+', Name.Label),
|
||||
],
|
||||
'numbers': [
|
||||
(r'(\d+\.?\d*|\d*\.\d+)([eE][+-]?[0-9]+)?', Number),
|
||||
],
|
||||
'root': [
|
||||
(r'\n|\s+', Whitespace),
|
||||
(step_keywords, Keyword),
|
||||
include('comments'),
|
||||
include('miscellaneous'),
|
||||
include('numbers'),
|
||||
(r'\S+', Text),
|
||||
]
|
||||
}
|
||||
|
||||
def analyse_text(self, text):
|
||||
return
|
Reference in New Issue
Block a user