\ThisIsLanguage{py}
\input highlighting_common.tex

%%%%%%%%%%*******    Definition of colours and styles for each category    *******%%%%%%%%%%

% The definition of the different \Format's for all categories MUST be \protect'ed. See
% Ccode.sty towards the end for an explanation of why this is so.

\DefineColor{number}{0.16, 0.16, 0.36}
\DefineColor{comment}{0, .7, 0}
\DefineColor{punctuator}{0.5, 0, 0}
\DefineColor{blue}{0,0,1} % Keyword
\DefineColor{builtin}{0.3, 0.3, .68}
\DefineColor{function}{0.31, .22, 0.08}
\DefineColor{exception}{.4, 0, 0.6}
\DefineColor{red}{1,0,0} %Strings
\DefineColor{formatinstr}{0.8,0.3,0} %format in strings
\DefineColor{redgray}{0.8,0.2,0.2} %Raw strings
\DefineGray{removed}{0.33} %and splice char
\DefineColor{type}{0.7,0,0.5}

\TcodeEdefFormat{SpliceChar}{\ColFill{removed}} %A \ at end of line

%We use \color for comments and strings instead of \ColFill because they may contain handcrafted rules.
\TcodeEdefFormat{Comment}{\color{comment}}

\TcodeEdefFormat{Number}{\ColFill{number}}

\TcodeEdefFormat{String}{\color{red}}
\TcodeEdefFormat{FormattedPrefix}{\ColFill{red}}
\TcodeEdefFormat{StrPrefix}{\ColFill{red}}
\TcodeEdefFormat{StringWide}{\color{red}}
\TcodeEdefFormat{WidePrefix}{\ColFill{red}}
\TcodeEdefFormat{StringRaw}{\color{redgray}}
\TcodeEdefFormat{RawPrefix}{\ColFill{redgray}}
\TcodeEdefFormat{FormatInString}{\ColFill{formatinstr}}

\TcodeEdefFormat{Removed}{\ColFill{removed}}
\TcodeEdefFormat{Keyword}{\ColFill{blue}}

\TcodeEdefFormat{NamedConstant}{\ColFill{builtin}}
\TcodeEdefFormat{BuiltInMethod}{\ColFill{builtin}}
\TcodeEdefFormat{BuiltInAttribute}{\ColFill{builtin}}
\TcodeEdefFormat{BuiltInFunction}{\ColFill{function}}
\TcodeEdefFormat{BuiltInException}{\ColFill{exception}}
\TcodeEdefFormat{BuiltInType}{\ColFill{type}}
\TcodeEdefFormat{TopLevelEnvironment}{\ColFill{builtin}}

\TcodeEdefFormat{Function}{\ColFill{function}}
\TcodeEdefFormat{Method}{\ColFill{function}}
\TcodeEdefFormat{FunctionOrMethod}{\ColFill{function}} %The unregistered ones

\input py_subcategories.tex