Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
iolang.py62 linesDownload Raw Back to lexers
1"""2    pygments.lexers.iolang3    ~~~~~~~~~~~~~~~~~~~~~~4 5    Lexers for the Io language.6 7    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.8    :license: BSD, see LICENSE for details.9"""10 11from pygments.lexer import RegexLexer12from pygments.token import Comment, Operator, Keyword, Name, String, Number, \13    Whitespace14 15__all__ = ['IoLexer']16 17 18class IoLexer(RegexLexer):19    """20    For Io (a small, prototype-based programming language) source.21    """22    name = 'Io'23    url = 'http://iolanguage.com/'24    filenames = ['*.io']25    aliases = ['io']26    mimetypes = ['text/x-iosrc']27    version_added = '0.10'28    tokens = {29        'root': [30            (r'\n', Whitespace),31            (r'\s+', Whitespace),32            # Comments33            (r'//(.*?)$', Comment.Single),34            (r'#(.*?)$', Comment.Single),35            (r'/(\\\n)?[*](.|\n)*?[*](\\\n)?/', Comment.Multiline),36            (r'/\+', Comment.Multiline, 'nestedcomment'),37            # DoubleQuotedString38            (r'"(\\\\|\\[^\\]|[^"\\])*"', String),39            # Operators40            (r'::=|:=|=|\(|\)|;|,|\*|-|\+|>|<|@|!|/|\||\^|\.|%|&|\[|\]|\{|\}',41             Operator),42            # keywords43            (r'(clone|do|doFile|doString|method|for|if|else|elseif|then)\b',44             Keyword),45            # constants46            (r'(nil|false|true)\b', Name.Constant),47            # names48            (r'(Object|list|List|Map|args|Sequence|Coroutine|File)\b',49             Name.Builtin),50            (r'[a-zA-Z_]\w*', Name),51            # numbers52            (r'(\d+\.?\d*|\d*\.\d+)([eE][+-]?[0-9]+)?', Number.Float),53            (r'\d+', Number.Integer)54        ],55        'nestedcomment': [56            (r'[^+/]+', Comment.Multiline),57            (r'/\+', Comment.Multiline, '#push'),58            (r'\+/', Comment.Multiline, '#pop'),59            (r'[+/]', Comment.Multiline),60        ]61    }62 
codekingpro/portable-devtools · Team Ai