3 ��Xv � @ s^ d Z ddlZddlmZmZ ddlmZmZmZm Z m Z mZmZm Z dgZG dd� de�ZdS )z� pygments.lexers.urbi ~~~~~~~~~~~~~~~~~~~~ Lexers for UrbiScript language. :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. � N)�ExtendedRegexLexer�words)�Text�Comment�Operator�Keyword�Name�String�Number�Punctuation�UrbiscriptLexerc P @ s< e Zd ZdZdZdgZdgZdgZej Z dd� Zdefd e fd e jdfdefed�d*d+�efed�d*d+�ejfdPefdQefdRejfdSejfed�d*d+�ejfd�ejjfd�efd�ejfd�efd�efd�ejfd�ejfd�ejfd�ejd�fd�ej d�fgd�efd�ejd�fgd�efd�ej d�fgd�e jfd e jd�fd�e jd�fd�e jfgd��Z!d�S )�r z@ For UrbiScript source code. .. versionadded:: 1.5 Z UrbiScriptZ urbiscriptz*.uzapplication/x-urbiscriptc c s� |j d�}|j d�}|j d�}t|�}|j� t|fV | jt|�7 _|j|j� | dkr�d| d }|j� t|fV | jt|�7 _d S ||j|j� |j� | � d }|j� tj|fV |j� | d |_d S )N� � � �)z\B(z)() �group�int�startr �pos�len�text�endZEscape) Zlexer�matchZctxZtext_before_blobZ blob_startZ blob_size_strZ blob_size�resultZ blob_text� r �/usr/lib/python3.6/urbi.py� blob_callback'