ó
    Û&…gÆ  ã                   óÆ   • S r SSKrSSKJrJrJrJr  SSKJrJ	r	J
r
JrJrJrJrJrJrJr  / SQr\R&                  " S5      r " S S\5      r " S	 S
\5      r " S S\5      rg)z°
pygments.lexers.r
~~~~~~~~~~~~~~~~~

Lexers for the R/S languages.

:copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
é    N)ÚLexerÚ
RegexLexerÚincludeÚdo_insertions)
ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚGenericÚ
Whitespace)ÚRConsoleLexerÚSLexerÚRdLexerz.*?
c                   ó8   • \ rS rSrSrSrSS/rS/rSrSr	S	 r
S
rg)r   é   z8
For R console transcripts or R CMD BATCH output files.
ÚRConsoleÚrconsoleÚroutz*.Routúhttps://www.r-project.orgÚ c           	   #   ó^  #   • [        S0 U R                  D6nSn/ n[        R                  U5       HÉ  nUR	                  5       nUR                  S5      (       d  UR                  S5      (       a:  UR                  [        U5      S[        R                  US S 4/45        X6SS  -  nMy  U(       a&  [        XBR                  U5      5       S h  v•N   Sn/ nUR                  5       [        R                  U4v •  MË     U(       a#  [        XBR                  U5      5       S h  v•N   g g  NZ N7f)Nr   Ú>Ú+r   é   © )r   ÚoptionsÚline_reÚfinditerÚgroupÚ
startswithÚappendÚlenr   ÚPromptr   Úget_tokens_unprocessedÚstartÚOutput)ÚselfÚtextÚslexerÚcurrent_code_blockÚ
insertionsÚmatchÚlines          Ú3/usr/lib/python3/dist-packages/pygments/lexers/r.pyr(   Ú$RConsoleLexer.get_tokens_unprocessed"   s*  é € ÜÑ'˜$Ÿ,™,Ñ'ˆàÐØˆ
ä×%Ñ% dÖ+ˆEØ—;‘;“=ˆDØ�‰˜s×#Ñ# t§¡°s×';Ñ';ð ×!Ñ!¤3Ð'9Ó#:Ø%&¬¯©¸¸R¸a¸Ð$AÐ#Bð#Dô Eà"¨1¨2 hÑ.Ò"ö &ä,Ø"×$AÑ$AÐBTÓ$Uó W÷ Wð Wð *,Ð&Ø!#�Jà—k‘k“m¤W§^¡^°TÐ9Ô9ñ' ,ö0 Ü$Ø×9Ñ9Ð:LÓMóO÷ Oñ Oð ñWñOùs%   ‚CD-ÃD)ÃAD-Ä"D+Ä#D-Ä+D-r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚnameÚaliasesÚ	filenamesÚurlÚversion_addedr(   Ú__static_attributes__r   ó    r2   r   r      s/   † ñð €DØ˜6Ð"€GØ�
€IØ
%€CØ€Mõ Or?   r   c                   óÚ  • \ rS rSrSrSr/ SQr/ SQr/ SQrSr	Sr
S	rS
\R                  4/\\4/S\4/S\R"                  4/S\4S\4/S\R&                  4S\R(                  R*                  4/S\R.                  4S\4/\" S5      S\4S\S4S\S4\" S5      \" S5      \" S5      \" S5      \" S5      \" S5      /
S\ S 3\R6                  4\" S!5      S"\4S#\4/S$\S%4/S&\S%4/S'.rS( rS)rg*)+r   éE   z#
For S, S-plus, and R source code.
ÚS)ÚsplusÚsÚr)z*.Sz*.Rz	.Rhistoryz	.Rprofilez	.Renviron)ztext/S-plusztext/Sztext/x-r-sourceztext/x-rztext/x-Rztext/x-r-historyztext/x-r-profiler   z0.10z;`[^`\\]*(?:\\.[^`\\]*)*`|(?:[a-zA-Z]|\.[A-Za-z_.])[\w.]*|\.z#.*$z\[{1,2}|\]{1,2}|\(|\)|;|,zH(if|else|for|while|repeat|in|next|break|return|switch|function)(?![\w.])z(<<?-|->>?|-|==|<=|>=|<|>|&&?|!=|\|\|?|\?z$\*|\+|\^|/|!|%[^%]*%|=|~|\$|@|:{1,3}zm(NULL|NA(_(integer|real|complex|character)_)?|letters|LETTERS|Inf|TRUE|FALSE|NaN|pi|\.\.(\.|[0-9]+))(?![\w.])z(T|F)\bz#0[xX][a-fA-F0-9]+([pP][0-9]+)?[Li]?z;[+-]?([0-9]+(\.[0-9]+)?|\.[0-9]+|\.)([eE][+-]?[0-9]+)?[Li]?Úcommentsz\s+z\'Ústring_squotez\"Ústring_dquoteÚbuiltin_symbolsÚ
valid_nameÚnumbersÚkeywordsÚpunctuationÚ	operatorsÚ(z
)\s*(?=\()Ú
statementsz\{|\}Ú.z([^\'\\]|\\.)*\'z#popz([^"\\]|\\.)*")rF   rJ   rM   rL   rN   rI   rK   rP   ÚrootrG   rH   c                 ó>   • [         R                  " SU 5      (       a  gg )Nz[a-z0-9_\])\s]<-(?!-)g)\�Âõ(¼?)ÚreÚsearch)r,   s    r2   Úanalyse_textÚSLexer.analyse_text—   s   € Ü�9Š9Ð-¨t×4Ñ4Øð 5r?   r   N) r4   r5   r6   r7   r8   r9   r:   r;   Ú	mimetypesr<   r=   rJ   r   ÚSingler   r   r
   ÚReservedr	   ÚConstantÚBuiltinÚPseudor   ÚHexr   r   r   ÚFunctionr   ÚtokensrV   r>   r   r?   r2   r   r   E   s›  † ñð €DÚ!€GÚE€IòE€Ià
%€CØ€MàO€Jð �g—n‘nÐ%ð
ð ˜Ðð
ð *¨;Ð7ð
ðà×Ñðð
ð 9¸(ÐCØ4°hÐ?ð
ð
ð ×Ñðð ˜Ÿ™×,Ñ,Ð-ð
ð 4°V·Z±ZÐ@àKØðð	
ñ �JÓà�ZÐ Ø�F˜OÐ,Ø�F˜OÐ,ÙÐ%Ó&Ù�LÓ!Ù�IÓÙ�JÓÙ�MÓ"Ù�KÓ ð
ð �*�˜ZÐ(¨$¯-©-Ð8Ù�LÓ!à�{Ð#à�4ˆLð
ð ! &¨&Ð1ð
ð  ¨Ð/ð
ñB€FõHr?   r   c            
       ó¾   • \ rS rSrSrSrS/rS/rS/rSr	Sr
S	S
\R                  4S\4S\R                  4S\4S\R                   4S\R$                  4S\4S\4/0rSrg)r   éœ   a:  
Pygments Lexer for R documentation (Rd) files

This is a very minimal implementation, highlighting little more
than the macros. A description of Rd syntax is found in `Writing R
Extensions <http://cran.r-project.org/doc/manuals/R-exts.html>`_
and `Parsing Rd files <http://developer.r-project.org/parseRd.pdf>`_.
ÚRdÚrdz*.Rdztext/x-r-docz1http://cran.r-project.org/doc/manuals/R-exts.htmlz1.6rR   z	\\[\\{}%]z%.*$z\\(?:cr|l?dots|R|tab)\bz\\[a-zA-Z]+\bz^\s*#(?:ifn?def|endif).*\bz[{}]z[^\\%\n{}]+rQ   r   N)r4   r5   r6   r7   r8   r9   r:   r;   rX   r<   r=   r   ÚEscaper   r
   r[   ÚPreprocr   r\   r   r`   r>   r   r?   r2   r   r   œ   s�   † ñð €DØˆf€GØ�€IØÐ €IØ
=€CØ€Mð
 	à˜6Ÿ=™=Ð)à�gÐà'¨×)9Ñ)9Ð:à˜wÐ'à*¨G¯O©OÐ<à�d—l‘lÐ#à˜TÐ"Ø�4ˆLð
ðƒFr?   r   )r8   rT   Úpygments.lexerr   r   r   r   Úpygments.tokenr   r   r	   r
   r   r   r   r   r   r   Ú__all__Úcompiler!   r   r   r   r   r?   r2   Ú<module>rk      se   ðñó 
ç DÓ D÷-÷ -÷ -ò 1€ð �:Š:�gÓ€ô+O�Eô +Oô\TˆZô Tôn$ˆjõ $r?   