ó
eŢ`Tc           @   s   d  Z  d Z d Z d d d g Z d d l Z d d l m Z m Z d	   Z d d
  Z
 d d  Z e d k r d d l m Z e j e e j   n  d S(   s  
    Pygments
    ~~~~~~~~

    Pygments is a syntax highlighting package written in Python.

    It is a generic syntax highlighter for general use in all kinds of software
    such as forum systems, wikis or other applications that need to prettify
    source code. Highlights are:

    * a wide range of common languages and markup formats is supported
    * special attention is paid to details, increasing quality by a fair amount
    * support for new languages and formats are added easily
    * a number of output formats, presently HTML, LaTeX, RTF, SVG, all image
      formats that PIL supports, and ANSI sequences
    * it is usable as a command-line tool and as a library
    * ... and it highlights even Brainfuck!

    The `Pygments tip`_ is installable with ``easy_install Pygments==dev``.

    .. _Pygments tip:
       http://bitbucket.org/birkenfeld/pygments-main/get/tip.zip#egg=Pygments-dev

    :copyright: Copyright 2006-2014 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
s   2.0.1t   restructuredtextt   lext   formatt	   highlighti˙˙˙˙N(   t   StringIOt   BytesIOc         C   sf   y | j  |   SWnN t k
 ra } t | j d t  r[ d | j d k r[ t d   n    n Xd S(   sG   
    Lex ``code`` with ``lexer`` and return an iterable of tokens.
    i    s   unbound method get_tokenss4   lex() argument must be a lexer instance, not a classN(   t
   get_tokenst	   TypeErrort
   isinstancet   argst   str(   t   codet   lexert   err(    (    s5   /usr/lib/python2.7/dist-packages/pygments/__init__.pyR   (   s    c         C   s¤   yO | s> | j  r t   p! t   } | j |  |  | j   S| j |  |  WnN t k
 r } t | j d t  r d | j d k r t d   n    n Xd S(   só   
    Format a tokenlist ``tokens`` with the formatter ``formatter``.

    If ``outfile`` is given and a valid file object (an object
    with a ``write`` method), the result will be written to it, otherwise
    it is returned as a string.
    i    s   unbound method formats;   format() argument must be a formatter instance, not a classN(	   t   encodingR   R   R   t   getvalueR   R   R	   R
   (   t   tokenst	   formattert   outfilet   realoutfileR   (    (    s5   /usr/lib/python2.7/dist-packages/pygments/__init__.pyR   6   s    
c         C   s   t  t |  |  | |  S(   s˙   
    Lex ``code`` with ``lexer`` and format it with the formatter ``formatter``.

    If ``outfile`` is given and a valid file object (an object
    with a ``write`` method), the result will be written to it, otherwise
    it is returned as a string.
    (   R   R   (   R   R   R   R   (    (    s5   /usr/lib/python2.7/dist-packages/pygments/__init__.pyR   N   s    t   __main__(   t   main(   t   __doc__t   __version__t   __docformat__t   __all__t   syst   pygments.utilR   R   R   t   NoneR   R   t   __name__t   pygments.cmdlineR   t   exitt   argv(    (    (    s5   /usr/lib/python2.7/dist-packages/pygments/__init__.pyt   <module>   s   	