j= | S r SSKJr SSKJrJrJrJrJrJ r J
r
Jr SSKJ
r
SS/r " S S\5 r " S S\5 rg )
z
pygments.lexers.pawn
~~~~~~~~~~~~~~~~~~~~
Lexers for the Pawn languages.
:copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
)
RegexLexer)TextCommentOperatorKeywordNameStringNumberPunctuation)get_bool_optSourcePawnLexer PawnLexerc 6 \ rS rSrSrSrS/rS/rS/rSr Sr
S rS
rS\
R S4S
\
R S4S\- S- \
R S4S\- S- \
R S4S\4S\4S\4S\
R 4S\
R" 4S\4S\S4S\R( 4S\R, 4S\R, 4S\R. 4S\R0 4S\R2 4S \4S!\4S"\4S#\R8 4S$\R: 4S%\4/S&\S'4S(\R> 4S)\4S\4S*\4/S+\
R 4S,\
R" 4S-\
R S'4S.\
R 4S/\
R 4S\
R S'4/S0\
R S14S2\
R S'4S3\
4/S4.r 1 S5kr!S6 r"S7 r#S8r$g9):r
z:
For SourcePawn source code with preprocessor directives.
SourcePawnspz*.spztext/x-sourcepawnz+https://github.com/alliedmodders/sourcepawnz1.6z(?:\s|//.*?\n|/\*.*?\*/)+\s*(?:/[*].*?[*]/\s*)*^#if\s+0if0^#macro^#if\s+0#\n\s+\\\n/(\\\n)?/(\n|(.|\n)*?[^\\]\n)z/(\\\n)?\*(.|\n)*?\*(\\\n)?/[{}]L?"string4L?'(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,2}|[^\\\'\n])''(\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+[LlUu]*(\d+\.\d*|\.\d+|\d+[fF])[fF]?0x[0-9a-fA-F]+[LlUu]*0[0-7]+[LlUu]*
\d+[LlUu]*[~!%^&*+=|?:<>/-][()\[\],.;]zs(case|const|continue|native|default|else|enum|for|if|new|operator|public|return|sizeof|static|decl|struct|switch)\b(bool|Float)\b(true|false)\b[a-zA-Z_]\w*"#pop/\\([\\abfnrtv"\']|x[a-fA-F0-9]{2,4}|[0-7]{1,3}) [^\\"\n]+\\[^/\n]+/\*(.|\n)*?\*///.*?\n/ (?<=\\)\n^\s*#if.*?(?