aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/python/Pygments/py3/pygments/lexers/typoscript.py
diff options
context:
space:
mode:
authororivej <orivej@yandex-team.ru>2022-02-10 16:45:01 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:45:01 +0300
commit2d37894b1b037cf24231090eda8589bbb44fb6fc (patch)
treebe835aa92c6248212e705f25388ebafcf84bc7a1 /contrib/python/Pygments/py3/pygments/lexers/typoscript.py
parent718c552901d703c502ccbefdfc3c9028d608b947 (diff)
downloadydb-2d37894b1b037cf24231090eda8589bbb44fb6fc.tar.gz
Restoring authorship annotation for <orivej@yandex-team.ru>. Commit 2 of 2.
Diffstat (limited to 'contrib/python/Pygments/py3/pygments/lexers/typoscript.py')
-rw-r--r--contrib/python/Pygments/py3/pygments/lexers/typoscript.py434
1 files changed, 217 insertions, 217 deletions
diff --git a/contrib/python/Pygments/py3/pygments/lexers/typoscript.py b/contrib/python/Pygments/py3/pygments/lexers/typoscript.py
index df4e928167..b2e4299beb 100644
--- a/contrib/python/Pygments/py3/pygments/lexers/typoscript.py
+++ b/contrib/python/Pygments/py3/pygments/lexers/typoscript.py
@@ -1,218 +1,218 @@
-"""
- pygments.lexers.typoscript
- ~~~~~~~~~~~~~~~~~~~~~~~~~~
-
- Lexers for TypoScript
-
- `TypoScriptLexer`
- A TypoScript lexer.
-
- `TypoScriptCssDataLexer`
- Lexer that highlights markers, constants and registers within css.
-
- `TypoScriptHtmlDataLexer`
- Lexer that highlights markers, constants and registers within html tags.
-
+"""
+ pygments.lexers.typoscript
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ Lexers for TypoScript
+
+ `TypoScriptLexer`
+ A TypoScript lexer.
+
+ `TypoScriptCssDataLexer`
+ Lexer that highlights markers, constants and registers within css.
+
+ `TypoScriptHtmlDataLexer`
+ Lexer that highlights markers, constants and registers within html tags.
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
- :license: BSD, see LICENSE for details.
-"""
-
-import re
-
-from pygments.lexer import RegexLexer, include, bygroups, using
-from pygments.token import Text, Comment, Name, String, Number, \
- Operator, Punctuation
-
-__all__ = ['TypoScriptLexer', 'TypoScriptCssDataLexer', 'TypoScriptHtmlDataLexer']
-
-
-class TypoScriptCssDataLexer(RegexLexer):
- """
- Lexer that highlights markers, constants and registers within css blocks.
-
- .. versionadded:: 2.2
- """
-
- name = 'TypoScriptCssData'
- aliases = ['typoscriptcssdata']
-
- tokens = {
- 'root': [
- # marker: ###MARK###
- (r'(.*)(###\w+###)(.*)', bygroups(String, Name.Constant, String)),
- # constant: {$some.constant}
- (r'(\{)(\$)((?:[\w\-]+\.)*)([\w\-]+)(\})',
- bygroups(String.Symbol, Operator, Name.Constant,
- Name.Constant, String.Symbol)), # constant
- # constant: {register:somevalue}
- (r'(.*)(\{)([\w\-]+)(\s*:\s*)([\w\-]+)(\})(.*)',
- bygroups(String, String.Symbol, Name.Constant, Operator,
- Name.Constant, String.Symbol, String)), # constant
- # whitespace
- (r'\s+', Text),
- # comments
- (r'/\*(?:(?!\*/).)*\*/', Comment),
- (r'(?<!(#|\'|"))(?:#(?!(?:[a-fA-F0-9]{6}|[a-fA-F0-9]{3}))[^\n#]+|//[^\n]*)',
- Comment),
- # other
- (r'[<>,:=.*%+|]', String),
- (r'[\w"\-!/&;(){}]+', String),
- ]
- }
-
-
-class TypoScriptHtmlDataLexer(RegexLexer):
- """
- Lexer that highlights markers, constants and registers within html tags.
-
- .. versionadded:: 2.2
- """
-
- name = 'TypoScriptHtmlData'
- aliases = ['typoscripthtmldata']
-
- tokens = {
- 'root': [
- # INCLUDE_TYPOSCRIPT
- (r'(INCLUDE_TYPOSCRIPT)', Name.Class),
- # Language label or extension resource FILE:... or LLL:... or EXT:...
- (r'(EXT|FILE|LLL):[^}\n"]*', String),
- # marker: ###MARK###
- (r'(.*)(###\w+###)(.*)', bygroups(String, Name.Constant, String)),
- # constant: {$some.constant}
- (r'(\{)(\$)((?:[\w\-]+\.)*)([\w\-]+)(\})',
- bygroups(String.Symbol, Operator, Name.Constant,
- Name.Constant, String.Symbol)), # constant
- # constant: {register:somevalue}
- (r'(.*)(\{)([\w\-]+)(\s*:\s*)([\w\-]+)(\})(.*)',
- bygroups(String, String.Symbol, Name.Constant, Operator,
- Name.Constant, String.Symbol, String)), # constant
- # whitespace
- (r'\s+', Text),
- # other
- (r'[<>,:=.*%+|]', String),
- (r'[\w"\-!/&;(){}#]+', String),
- ]
- }
-
-
-class TypoScriptLexer(RegexLexer):
- """
- Lexer for TypoScript code.
-
- http://docs.typo3.org/typo3cms/TyposcriptReference/
-
- .. versionadded:: 2.2
- """
-
- name = 'TypoScript'
- aliases = ['typoscript']
- filenames = ['*.typoscript']
- mimetypes = ['text/x-typoscript']
-
- flags = re.DOTALL | re.MULTILINE
-
- tokens = {
- 'root': [
- include('comment'),
- include('constant'),
- include('html'),
- include('label'),
- include('whitespace'),
- include('keywords'),
- include('punctuation'),
- include('operator'),
- include('structure'),
- include('literal'),
- include('other'),
- ],
- 'keywords': [
- # Conditions
- (r'(?i)(\[)(browser|compatVersion|dayofmonth|dayofweek|dayofyear|'
- r'device|ELSE|END|GLOBAL|globalString|globalVar|hostname|hour|IP|'
- r'language|loginUser|loginuser|minute|month|page|PIDinRootline|'
- r'PIDupinRootline|system|treeLevel|useragent|userFunc|usergroup|'
- r'version)([^\]]*)(\])',
- bygroups(String.Symbol, Name.Constant, Text, String.Symbol)),
- # Functions
- (r'(?=[\w\-])(HTMLparser|HTMLparser_tags|addParams|cache|encapsLines|'
- r'filelink|if|imageLinkWrap|imgResource|makelinks|numRows|numberFormat|'
- r'parseFunc|replacement|round|select|split|stdWrap|strPad|tableStyle|'
- r'tags|textStyle|typolink)(?![\w\-])', Name.Function),
- # Toplevel objects and _*
- (r'(?:(=?\s*<?\s+|^\s*))(cObj|field|config|content|constants|FEData|'
- r'file|frameset|includeLibs|lib|page|plugin|register|resources|sitemap|'
- r'sitetitle|styles|temp|tt_[^:.\s]*|types|xmlnews|INCLUDE_TYPOSCRIPT|'
- r'_CSS_DEFAULT_STYLE|_DEFAULT_PI_VARS|_LOCAL_LANG)(?![\w\-])',
- bygroups(Operator, Name.Builtin)),
- # Content objects
- (r'(?=[\w\-])(CASE|CLEARGIF|COA|COA_INT|COBJ_ARRAY|COLUMNS|CONTENT|'
- r'CTABLE|EDITPANEL|FILE|FILES|FLUIDTEMPLATE|FORM|HMENU|HRULER|HTML|'
- r'IMAGE|IMGTEXT|IMG_RESOURCE|LOAD_REGISTER|MEDIA|MULTIMEDIA|OTABLE|'
- r'PAGE|QTOBJECT|RECORDS|RESTORE_REGISTER|SEARCHRESULT|SVG|SWFOBJECT|'
- r'TEMPLATE|TEXT|USER|USER_INT)(?![\w\-])', Name.Class),
- # Menu states
- (r'(?=[\w\-])(ACTIFSUBRO|ACTIFSUB|ACTRO|ACT|CURIFSUBRO|CURIFSUB|CURRO|'
- r'CUR|IFSUBRO|IFSUB|NO|SPC|USERDEF1RO|USERDEF1|USERDEF2RO|USERDEF2|'
- r'USRRO|USR)', Name.Class),
- # Menu objects
- (r'(?=[\w\-])(GMENU_FOLDOUT|GMENU_LAYERS|GMENU|IMGMENUITEM|IMGMENU|'
- r'JSMENUITEM|JSMENU|TMENUITEM|TMENU_LAYERS|TMENU)', Name.Class),
- # PHP objects
- (r'(?=[\w\-])(PHP_SCRIPT(_EXT|_INT)?)', Name.Class),
- (r'(?=[\w\-])(userFunc)(?![\w\-])', Name.Function),
- ],
- 'whitespace': [
- (r'\s+', Text),
- ],
- 'html': [
- (r'<\S[^\n>]*>', using(TypoScriptHtmlDataLexer)),
- (r'&[^;\n]*;', String),
- (r'(?s)(_CSS_DEFAULT_STYLE)(\s*)(\()(.*(?=\n\)))',
- bygroups(Name.Class, Text, String.Symbol, using(TypoScriptCssDataLexer))),
- ],
- 'literal': [
- (r'0x[0-9A-Fa-f]+t?', Number.Hex),
- # (r'[0-9]*\.[0-9]+([eE][0-9]+)?[fd]?\s*(?:[^=])', Number.Float),
- (r'[0-9]+', Number.Integer),
- (r'(###\w+###)', Name.Constant),
- ],
- 'label': [
- # Language label or extension resource FILE:... or LLL:... or EXT:...
- (r'(EXT|FILE|LLL):[^}\n"]*', String),
- # Path to a resource
- (r'(?![^\w\-])([\w\-]+(?:/[\w\-]+)+/?)(\S*\n)',
- bygroups(String, String)),
- ],
- 'punctuation': [
- (r'[,.]', Punctuation),
- ],
- 'operator': [
- (r'[<>,:=.*%+|]', Operator),
- ],
- 'structure': [
- # Brackets and braces
- (r'[{}()\[\]\\]', String.Symbol),
- ],
- 'constant': [
- # Constant: {$some.constant}
- (r'(\{)(\$)((?:[\w\-]+\.)*)([\w\-]+)(\})',
- bygroups(String.Symbol, Operator, Name.Constant,
- Name.Constant, String.Symbol)), # constant
- # Constant: {register:somevalue}
- (r'(\{)([\w\-]+)(\s*:\s*)([\w\-]+)(\})',
- bygroups(String.Symbol, Name.Constant, Operator,
- Name.Constant, String.Symbol)), # constant
- # Hex color: #ff0077
- (r'(#[a-fA-F0-9]{6}\b|#[a-fA-F0-9]{3}\b)', String.Char)
- ],
- 'comment': [
- (r'(?<!(#|\'|"))(?:#(?!(?:[a-fA-F0-9]{6}|[a-fA-F0-9]{3}))[^\n#]+|//[^\n]*)',
- Comment),
- (r'/\*(?:(?!\*/).)*\*/', Comment),
- (r'(\s*#\s*\n)', Comment),
- ],
- 'other': [
- (r'[\w"\-!/&;]+', Text),
- ],
- }
+ :license: BSD, see LICENSE for details.
+"""
+
+import re
+
+from pygments.lexer import RegexLexer, include, bygroups, using
+from pygments.token import Text, Comment, Name, String, Number, \
+ Operator, Punctuation
+
+__all__ = ['TypoScriptLexer', 'TypoScriptCssDataLexer', 'TypoScriptHtmlDataLexer']
+
+
+class TypoScriptCssDataLexer(RegexLexer):
+ """
+ Lexer that highlights markers, constants and registers within css blocks.
+
+ .. versionadded:: 2.2
+ """
+
+ name = 'TypoScriptCssData'
+ aliases = ['typoscriptcssdata']
+
+ tokens = {
+ 'root': [
+ # marker: ###MARK###
+ (r'(.*)(###\w+###)(.*)', bygroups(String, Name.Constant, String)),
+ # constant: {$some.constant}
+ (r'(\{)(\$)((?:[\w\-]+\.)*)([\w\-]+)(\})',
+ bygroups(String.Symbol, Operator, Name.Constant,
+ Name.Constant, String.Symbol)), # constant
+ # constant: {register:somevalue}
+ (r'(.*)(\{)([\w\-]+)(\s*:\s*)([\w\-]+)(\})(.*)',
+ bygroups(String, String.Symbol, Name.Constant, Operator,
+ Name.Constant, String.Symbol, String)), # constant
+ # whitespace
+ (r'\s+', Text),
+ # comments
+ (r'/\*(?:(?!\*/).)*\*/', Comment),
+ (r'(?<!(#|\'|"))(?:#(?!(?:[a-fA-F0-9]{6}|[a-fA-F0-9]{3}))[^\n#]+|//[^\n]*)',
+ Comment),
+ # other
+ (r'[<>,:=.*%+|]', String),
+ (r'[\w"\-!/&;(){}]+', String),
+ ]
+ }
+
+
+class TypoScriptHtmlDataLexer(RegexLexer):
+ """
+ Lexer that highlights markers, constants and registers within html tags.
+
+ .. versionadded:: 2.2
+ """
+
+ name = 'TypoScriptHtmlData'
+ aliases = ['typoscripthtmldata']
+
+ tokens = {
+ 'root': [
+ # INCLUDE_TYPOSCRIPT
+ (r'(INCLUDE_TYPOSCRIPT)', Name.Class),
+ # Language label or extension resource FILE:... or LLL:... or EXT:...
+ (r'(EXT|FILE|LLL):[^}\n"]*', String),
+ # marker: ###MARK###
+ (r'(.*)(###\w+###)(.*)', bygroups(String, Name.Constant, String)),
+ # constant: {$some.constant}
+ (r'(\{)(\$)((?:[\w\-]+\.)*)([\w\-]+)(\})',
+ bygroups(String.Symbol, Operator, Name.Constant,
+ Name.Constant, String.Symbol)), # constant
+ # constant: {register:somevalue}
+ (r'(.*)(\{)([\w\-]+)(\s*:\s*)([\w\-]+)(\})(.*)',
+ bygroups(String, String.Symbol, Name.Constant, Operator,
+ Name.Constant, String.Symbol, String)), # constant
+ # whitespace
+ (r'\s+', Text),
+ # other
+ (r'[<>,:=.*%+|]', String),
+ (r'[\w"\-!/&;(){}#]+', String),
+ ]
+ }
+
+
+class TypoScriptLexer(RegexLexer):
+ """
+ Lexer for TypoScript code.
+
+ http://docs.typo3.org/typo3cms/TyposcriptReference/
+
+ .. versionadded:: 2.2
+ """
+
+ name = 'TypoScript'
+ aliases = ['typoscript']
+ filenames = ['*.typoscript']
+ mimetypes = ['text/x-typoscript']
+
+ flags = re.DOTALL | re.MULTILINE
+
+ tokens = {
+ 'root': [
+ include('comment'),
+ include('constant'),
+ include('html'),
+ include('label'),
+ include('whitespace'),
+ include('keywords'),
+ include('punctuation'),
+ include('operator'),
+ include('structure'),
+ include('literal'),
+ include('other'),
+ ],
+ 'keywords': [
+ # Conditions
+ (r'(?i)(\[)(browser|compatVersion|dayofmonth|dayofweek|dayofyear|'
+ r'device|ELSE|END|GLOBAL|globalString|globalVar|hostname|hour|IP|'
+ r'language|loginUser|loginuser|minute|month|page|PIDinRootline|'
+ r'PIDupinRootline|system|treeLevel|useragent|userFunc|usergroup|'
+ r'version)([^\]]*)(\])',
+ bygroups(String.Symbol, Name.Constant, Text, String.Symbol)),
+ # Functions
+ (r'(?=[\w\-])(HTMLparser|HTMLparser_tags|addParams|cache|encapsLines|'
+ r'filelink|if|imageLinkWrap|imgResource|makelinks|numRows|numberFormat|'
+ r'parseFunc|replacement|round|select|split|stdWrap|strPad|tableStyle|'
+ r'tags|textStyle|typolink)(?![\w\-])', Name.Function),
+ # Toplevel objects and _*
+ (r'(?:(=?\s*<?\s+|^\s*))(cObj|field|config|content|constants|FEData|'
+ r'file|frameset|includeLibs|lib|page|plugin|register|resources|sitemap|'
+ r'sitetitle|styles|temp|tt_[^:.\s]*|types|xmlnews|INCLUDE_TYPOSCRIPT|'
+ r'_CSS_DEFAULT_STYLE|_DEFAULT_PI_VARS|_LOCAL_LANG)(?![\w\-])',
+ bygroups(Operator, Name.Builtin)),
+ # Content objects
+ (r'(?=[\w\-])(CASE|CLEARGIF|COA|COA_INT|COBJ_ARRAY|COLUMNS|CONTENT|'
+ r'CTABLE|EDITPANEL|FILE|FILES|FLUIDTEMPLATE|FORM|HMENU|HRULER|HTML|'
+ r'IMAGE|IMGTEXT|IMG_RESOURCE|LOAD_REGISTER|MEDIA|MULTIMEDIA|OTABLE|'
+ r'PAGE|QTOBJECT|RECORDS|RESTORE_REGISTER|SEARCHRESULT|SVG|SWFOBJECT|'
+ r'TEMPLATE|TEXT|USER|USER_INT)(?![\w\-])', Name.Class),
+ # Menu states
+ (r'(?=[\w\-])(ACTIFSUBRO|ACTIFSUB|ACTRO|ACT|CURIFSUBRO|CURIFSUB|CURRO|'
+ r'CUR|IFSUBRO|IFSUB|NO|SPC|USERDEF1RO|USERDEF1|USERDEF2RO|USERDEF2|'
+ r'USRRO|USR)', Name.Class),
+ # Menu objects
+ (r'(?=[\w\-])(GMENU_FOLDOUT|GMENU_LAYERS|GMENU|IMGMENUITEM|IMGMENU|'
+ r'JSMENUITEM|JSMENU|TMENUITEM|TMENU_LAYERS|TMENU)', Name.Class),
+ # PHP objects
+ (r'(?=[\w\-])(PHP_SCRIPT(_EXT|_INT)?)', Name.Class),
+ (r'(?=[\w\-])(userFunc)(?![\w\-])', Name.Function),
+ ],
+ 'whitespace': [
+ (r'\s+', Text),
+ ],
+ 'html': [
+ (r'<\S[^\n>]*>', using(TypoScriptHtmlDataLexer)),
+ (r'&[^;\n]*;', String),
+ (r'(?s)(_CSS_DEFAULT_STYLE)(\s*)(\()(.*(?=\n\)))',
+ bygroups(Name.Class, Text, String.Symbol, using(TypoScriptCssDataLexer))),
+ ],
+ 'literal': [
+ (r'0x[0-9A-Fa-f]+t?', Number.Hex),
+ # (r'[0-9]*\.[0-9]+([eE][0-9]+)?[fd]?\s*(?:[^=])', Number.Float),
+ (r'[0-9]+', Number.Integer),
+ (r'(###\w+###)', Name.Constant),
+ ],
+ 'label': [
+ # Language label or extension resource FILE:... or LLL:... or EXT:...
+ (r'(EXT|FILE|LLL):[^}\n"]*', String),
+ # Path to a resource
+ (r'(?![^\w\-])([\w\-]+(?:/[\w\-]+)+/?)(\S*\n)',
+ bygroups(String, String)),
+ ],
+ 'punctuation': [
+ (r'[,.]', Punctuation),
+ ],
+ 'operator': [
+ (r'[<>,:=.*%+|]', Operator),
+ ],
+ 'structure': [
+ # Brackets and braces
+ (r'[{}()\[\]\\]', String.Symbol),
+ ],
+ 'constant': [
+ # Constant: {$some.constant}
+ (r'(\{)(\$)((?:[\w\-]+\.)*)([\w\-]+)(\})',
+ bygroups(String.Symbol, Operator, Name.Constant,
+ Name.Constant, String.Symbol)), # constant
+ # Constant: {register:somevalue}
+ (r'(\{)([\w\-]+)(\s*:\s*)([\w\-]+)(\})',
+ bygroups(String.Symbol, Name.Constant, Operator,
+ Name.Constant, String.Symbol)), # constant
+ # Hex color: #ff0077
+ (r'(#[a-fA-F0-9]{6}\b|#[a-fA-F0-9]{3}\b)', String.Char)
+ ],
+ 'comment': [
+ (r'(?<!(#|\'|"))(?:#(?!(?:[a-fA-F0-9]{6}|[a-fA-F0-9]{3}))[^\n#]+|//[^\n]*)',
+ Comment),
+ (r'/\*(?:(?!\*/).)*\*/', Comment),
+ (r'(\s*#\s*\n)', Comment),
+ ],
+ 'other': [
+ (r'[\w"\-!/&;]+', Text),
+ ],
+ }