summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjarrett <jarrett@jarrett-desktop>2012-07-02 16:42:02 -0700
committerjarrett <jarrett@jarrett-desktop>2012-07-02 16:42:02 -0700
commitd4c0b2f513a333f7672eafc662b6ed8e25e596c8 (patch)
tree475d25720e75a0e533150a609111e5a57ac1b9e3
parent3a1c374c00e9953856e88d51c5840bda4ad9b95a (diff)
downloadpygments-d4c0b2f513a333f7672eafc662b6ed8e25e596c8.tar.gz
Replacing MiniD lexer with Croc lexer (Language name change and small lexical changes).
-rw-r--r--pygments/lexers/_mapping.py2
-rw-r--r--pygments/lexers/agile.py47
2 files changed, 22 insertions, 27 deletions
diff --git a/pygments/lexers/_mapping.py b/pygments/lexers/_mapping.py
index 8bcc1744..4dc81e38 100644
--- a/pygments/lexers/_mapping.py
+++ b/pygments/lexers/_mapping.py
@@ -60,6 +60,7 @@ LEXERS = {
'CoqLexer': ('pygments.lexers.functional', 'Coq', ('coq',), ('*.v',), ('text/x-coq',)),
'CppLexer': ('pygments.lexers.compiled', 'C++', ('cpp', 'c++'), ('*.cpp', '*.hpp', '*.c++', '*.h++', '*.cc', '*.hh', '*.cxx', '*.hxx'), ('text/x-c++hdr', 'text/x-c++src')),
'CppObjdumpLexer': ('pygments.lexers.asm', 'cpp-objdump', ('cpp-objdump', 'c++-objdumb', 'cxx-objdump'), ('*.cpp-objdump', '*.c++-objdump', '*.cxx-objdump'), ('text/x-cpp-objdump',)),
+ 'CrocLexer': ('pygments.lexers.agile', 'Croc', ('croc',), ('*.croc',), ('text/x-crocsrc',)),
'CssDjangoLexer': ('pygments.lexers.templates', 'CSS+Django/Jinja', ('css+django', 'css+jinja'), (), ('text/css+django', 'text/css+jinja')),
'CssErbLexer': ('pygments.lexers.templates', 'CSS+Ruby', ('css+erb', 'css+ruby'), (), ('text/css+ruby',)),
'CssGenshiLexer': ('pygments.lexers.templates', 'CSS+Genshi Text', ('css+genshitext', 'css+genshi'), (), ('text/css+genshi',)),
@@ -150,7 +151,6 @@ LEXERS = {
'MasonLexer': ('pygments.lexers.templates', 'Mason', ('mason',), ('*.m', '*.mhtml', '*.mc', '*.mi', 'autohandler', 'dhandler'), ('application/x-mason',)),
'MatlabLexer': ('pygments.lexers.math', 'Matlab', ('matlab',), ('*.m',), ('text/matlab',)),
'MatlabSessionLexer': ('pygments.lexers.math', 'Matlab session', ('matlabsession',), (), ()),
- 'MiniDLexer': ('pygments.lexers.agile', 'MiniD', ('minid',), ('*.md',), ('text/x-minidsrc',)),
'ModelicaLexer': ('pygments.lexers.other', 'Modelica', ('modelica',), ('*.mo',), ('text/x-modelica',)),
'Modula2Lexer': ('pygments.lexers.compiled', 'Modula-2', ('modula2', 'm2'), ('*.def', '*.mod'), ('text/x-modula2',)),
'MoinWikiLexer': ('pygments.lexers.text', 'MoinMoin/Trac Wiki markup', ('trac-wiki', 'moin'), (), ('text/x-trac-wiki',)),
diff --git a/pygments/lexers/agile.py b/pygments/lexers/agile.py
index 024ab8d5..c78e86b1 100644
--- a/pygments/lexers/agile.py
+++ b/pygments/lexers/agile.py
@@ -22,7 +22,7 @@ from pygments import unistring as uni
__all__ = ['PythonLexer', 'PythonConsoleLexer', 'PythonTracebackLexer',
'Python3Lexer', 'Python3TracebackLexer', 'RubyLexer',
'RubyConsoleLexer', 'PerlLexer', 'LuaLexer', 'MoonScriptLexer',
- 'MiniDLexer', 'IoLexer', 'TclLexer', 'FactorLexer', 'FancyLexer']
+ 'CrocLexer', 'IoLexer', 'TclLexer', 'FactorLexer', 'FancyLexer']
# b/w compatibility
from pygments.lexers.functional import SchemeLexer
@@ -1189,16 +1189,14 @@ class MoonScriptLexer(LuaLexer):
yield index, token, value
-
-class MiniDLexer(RegexLexer):
+class CrocLexer(RegexLexer):
"""
- For `MiniD <http://www.dsource.org/projects/minid>`_ (a D-like scripting
- language) source.
+ For `Croc <http://jfbillingsley.com/croc>`_ source.
"""
- name = 'MiniD'
- filenames = ['*.md']
- aliases = ['minid']
- mimetypes = ['text/x-minidsrc']
+ name = 'Croc'
+ filenames = ['*.croc']
+ aliases = ['croc']
+ mimetypes = ['text/x-crocsrc']
tokens = {
'root': [
@@ -1206,35 +1204,32 @@ class MiniDLexer(RegexLexer):
(r'\s+', Text),
# Comments
(r'//(.*?)\n', Comment.Single),
- (r'/(\\\n)?[*](.|\n)*?[*](\\\n)?/', Comment.Multiline),
- (r'/\+', Comment.Multiline, 'nestedcomment'),
+ (r'/\*', Comment.Multiline, 'nestedcomment'),
# Keywords
- (r'(as|assert|break|case|catch|class|continue|coroutine|default'
+ (r'(as|assert|break|case|catch|class|continue|default'
r'|do|else|finally|for|foreach|function|global|namespace'
- r'|if|import|in|is|local|module|return|super|switch'
+ r'|if|import|in|is|local|module|return|scope|super|switch'
r'|this|throw|try|vararg|while|with|yield)\b', Keyword),
(r'(false|true|null)\b', Keyword.Constant),
# FloatLiteral
- (r'([0-9][0-9_]*)?\.[0-9_]+([eE][+\-]?[0-9_]+)?', Number.Float),
+ (r'([0-9][0-9_]*)(?=[.eE])(\.[0-9][0-9_]*)?([eE][+\-]?[0-9_]+)?', Number.Float),
# IntegerLiteral
# -- Binary
- (r'0[Bb][01_]+', Number),
- # -- Octal
- (r'0[Cc][0-7_]+', Number.Oct),
+ (r'0[bB][01][01_]*', Number),
# -- Hexadecimal
- (r'0[xX][0-9a-fA-F_]+', Number.Hex),
+ (r'0[xX][0-9a-fA-F][0-9a-fA-F_]*', Number.Hex),
# -- Decimal
- (r'(0|[1-9][0-9_]*)', Number.Integer),
+ (r'([0-9][0-9_]*)(?![.eE])', Number.Integer),
# CharacterLiteral
- (r"""'(\\['"?\\abfnrtv]|\\x[0-9a-fA-F]{2}|\\[0-9]{1,3}"""
+ (r"""'(\\['"\\nrt]|\\x[0-9a-fA-F]{2}|\\[0-9]{1,3}"""
r"""|\\u[0-9a-fA-F]{4}|\\U[0-9a-fA-F]{8}|.)'""",
String.Char
),
# StringLiteral
# -- WysiwygString
(r'@"(""|[^"])*"', String),
- # -- AlternateWysiwygString
- (r'`(``|.)*`', String),
+ (r'@`(``|[^`])*`', String),
+ (r"@'(''|[^'])*'", String),
# -- DoubleQuotedString
(r'"(\\\\|\\"|[^"])*"', String),
# Tokens
@@ -1247,10 +1242,10 @@ class MiniDLexer(RegexLexer):
(r'[a-zA-Z_]\w*', Name),
],
'nestedcomment': [
- (r'[^+/]+', Comment.Multiline),
- (r'/\+', Comment.Multiline, '#push'),
- (r'\+/', Comment.Multiline, '#pop'),
- (r'[+/]', Comment.Multiline),
+ (r'[^*/]+', Comment.Multiline),
+ (r'/\*', Comment.Multiline, '#push'),
+ (r'\*/', Comment.Multiline, '#pop'),
+ (r'[*/]', Comment.Multiline),
],
}