=========
Regexlint
=========

Regexlint will examine all regular expressions in an importable Pygments
lexer, and report things that are probably not doing what you think they're
doing.  For example, patterns like::

    (elseif|else)

It can also warn about a few syntax problems, for example this has two
problems -- the \s+ outside the groups, and not enough actions in bygroups::

    (r'(foo)\s+(bar)', bygroups(Blah)),


Usage
=====

::

    make demo
        or
    python2 cmdline.py pygments.lexers.web
        or
    python2 cmdline.py pygments.lexers.web:HtmlLexer


Todo
====

* Figure out which phase should remove unnecessary backslashes
* Write the alternation expander, so that ([ax]|a[bc]) fails the alternation
  order checks
* Make more general than just for Pygments


License
=======

This project is licensed under the Apache Public License, see COPYING
