text/x-c02
*.c02
//
/*
*/
^\s*#\s*
\\( # leading backslash
[\\\"\'nrbtfav\?] | # escaped character
[0-7]{1,3} | # one, two, or three octal digits
x[0-9A-Fa-f]+ # 'x' followed by hex digits
)
\%\%|\%
(?:[1-9][0-9]*\$)? # argument
[#0\-\ \+\'I]* # flags
(?:[1-9][0-9]*|\*)? # width
(?:\.\-?(?:[0-9]+|\*))? # precision
(?:hh|ll|[hlLqjzt])? # length modifier
[diouxXeEfFgGaAcsCSpnm] # conversion specifier
\%{preproc-start}
(include|import)\s*
(".*?"|<.*>)
\%{preproc-start}
(define|undef|error|pragma|ident|if(n?def)?|else|elif|endif|line|warning)
\b
L?"
"
\%{escaped-character}
L?'(\%{escaped-character}|.)'
(?<![\w\.])
((\.[0-9]+ | [0-9]+\.[0-9]*) ([Ee][+-]?[0-9]*)? |
([0-9]+[Ee][+-]?[0-9]*))
[fFlL]?
(?![\w\.])
(?<![\w\.])
0[xX][a-fA-F0-9]+[uUlL]*
(?![\w\.])
(?<![\w\.])
0[xX][a-fA-F0-9]*[g-zG-Z][a-zA-Z0-9]*[uUlL]*
(?![\w\.])
(?<![\w\.])
0[0-7]+[uUlL]*
(?![\w\.])
(?<![\w\.])
0[0-7]*[89][0-9]*[uUlL]*
(?![\w\.])
(?<![\w\.])
(0|[1-9][0-9]*)[uUlL]*
(?![\w\.])
asm
break
case
continue
default
do
else
enum
for
fortran
goto
if
return
struct
switch
typedef
union
while
sizeof
_Bool
_Complex
_Imaginary
bool
char
double
float
int
(u)?int(8|16|32|64)_t
long
ptrdiff_t
off(64)?_t
short
signed
size_t
ssize_t
unsigned
void
wchar_t
wint_t
auto
const
extern
inline
register
restrict
static
volatile
true
false
NULL
MAX
MIN
TRUE
FALSE
__LINE__
__DATA__
__FILE__
__func__
__TIME__
__STDC__
stdin
stdout
stderr
SIGABRT
SIGALRM
SIGCHLD
SIGCONT
SIGFPE
SIGHUP
SIGILL
SIGINT
SIGKILL
SIGPIPE
SIGQUIT
SIGSEGV
SIGSTOP
SIGTERM
SIGTRAP
SIGTSTP
SIGTTIN
SIGTTOU
SIGUSR1
SIGUSR2