mirror of https://github.com/MidnightCommander/mc
179 lines
5.6 KiB
YAML
179 lines
5.6 KiB
YAML
# Syntax rules for the C and the C++ programming languages
|
||
#
|
||
# List of keywords is based on opencl-mode.el from
|
||
# Salmane Bah <salmane.bah@u-bordeaux.fr>
|
||
|
||
context default
|
||
keyword whole auto yellow
|
||
keyword whole break yellow
|
||
keyword whole case yellow
|
||
keyword whole char yellow
|
||
keyword whole const yellow
|
||
keyword whole continue yellow
|
||
keyword whole do yellow
|
||
keyword whole double yellow
|
||
keyword whole else yellow
|
||
keyword whole enum yellow
|
||
keyword whole extern yellow
|
||
keyword whole float yellow
|
||
keyword whole for yellow
|
||
keyword whole goto yellow
|
||
keyword whole if yellow
|
||
keyword whole int yellow
|
||
keyword whole long yellow
|
||
keyword whole register yellow
|
||
keyword whole return yellow
|
||
keyword whole short yellow
|
||
keyword whole signed yellow
|
||
keyword whole sizeof yellow
|
||
keyword whole static yellow
|
||
keyword whole struct yellow
|
||
keyword whole switch yellow
|
||
keyword whole typedef yellow
|
||
keyword whole union yellow
|
||
keyword whole unsigned yellow
|
||
keyword whole void yellow
|
||
keyword whole volatile yellow
|
||
keyword whole while yellow
|
||
keyword whole asm yellow
|
||
keyword whole inline yellow
|
||
keyword whole wchar_t yellow
|
||
keyword whole ... yellow
|
||
keyword whole linestart \{\s\t\}\[\s\t\]#*\n brightmagenta
|
||
keyword whole \[\s\t\]default yellow
|
||
keyword whole linestart \[\s\t\]\{ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz\}\[0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz\]: cyan
|
||
|
||
# Function type qualifiers
|
||
keyword whole __kernel white
|
||
|
||
# Variable type qualifiers
|
||
keyword whole __global white
|
||
keyword whole __local white
|
||
keyword whole __constant white
|
||
keyword whole __private white
|
||
keyword whole __read_only white
|
||
keyword whole __write_only white
|
||
keyword whole __read_write white
|
||
keyword whole __enable white
|
||
keyword whole __disable white
|
||
keyword whole global white
|
||
keyword whole local white
|
||
keyword whole constant white
|
||
keyword whole private white
|
||
keyword whole read_only white
|
||
keyword whole write_only white
|
||
keyword whole read_write white
|
||
keyword whole enable white
|
||
keyword whole disable white
|
||
|
||
# Built-in functions
|
||
keyword whole get_group_id brightmagenta
|
||
keyword whole get_local_id brightmagenta
|
||
keyword whole get_global_id brightmagenta
|
||
keyword whole get_local_size brightmagenta
|
||
keyword whole get_global_size brightmagenta
|
||
keyword whole get_work_dim brightmagenta
|
||
keyword whole get_num_groups brightmagenta
|
||
keyword whole get_global_offset brightmagenta
|
||
keyword whole barrier brightmagenta
|
||
|
||
# Constants
|
||
keyword whole CLK_LOCAL_MEM_FENCE white
|
||
keyword whole CLK_GLOBAL_MEM_FENCE white
|
||
keyword whole MAXFLOAT white
|
||
keyword whole HUGE_VAL white
|
||
keyword whole HUGE_VALF white
|
||
keyword whole INFINITY white
|
||
keyword whole NAN white
|
||
|
||
# Built-in types
|
||
keyword whole half yellow
|
||
keyword whole uchar yellow
|
||
keyword whole ushort yellow
|
||
keyword whole uint yellow
|
||
keyword whole ulong yellow
|
||
keyword whole bool yellow
|
||
keyword whole size_t yellow
|
||
keyword whole ptrdiff_t yellow
|
||
keyword whole intptr_t yellow
|
||
keyword whole uintptr_t yellow
|
||
|
||
keyword whole image2d_t yellow
|
||
keyword whole image3d_t yellow
|
||
keyword whole image2d_array_t yellow
|
||
keyword whole image3d_array_t yellow
|
||
keyword whole image1d_array_t yellow
|
||
keyword whole image1d_t yellow
|
||
keyword whole image1d_buffer_t yellow
|
||
keyword whole sampler_t yellow
|
||
keyword whole event_t yellow
|
||
|
||
keyword whole cl_khr_\{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\}\{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_\}+ brightgreen
|
||
|
||
keyword /\* brown
|
||
keyword \*/ brown
|
||
keyword // brown
|
||
|
||
keyword '\\\{"abtnvfr\}' brightgreen
|
||
keyword '\\\{0123\}\{01234567\}\{01234567\}' brightgreen
|
||
keyword '\\'' brightgreen
|
||
keyword '\\\\' brightgreen
|
||
keyword '\\0' brightgreen
|
||
keyword '\{\s!"#$%&()\*\+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\}' brightgreen
|
||
|
||
# punctuation characters, sorted by ASCII code
|
||
keyword ! yellow
|
||
keyword % yellow
|
||
keyword && yellow
|
||
keyword & brightmagenta
|
||
keyword ( brightcyan
|
||
keyword ) brightcyan
|
||
keyword \* yellow
|
||
keyword \+ yellow
|
||
keyword , brightcyan
|
||
keyword - yellow
|
||
keyword / yellow
|
||
keyword : brightcyan
|
||
keyword ; brightmagenta
|
||
keyword < yellow
|
||
keyword = yellow
|
||
keyword > yellow
|
||
keyword ? brightcyan
|
||
keyword [ brightcyan
|
||
keyword ] brightcyan
|
||
keyword ^ brightmagenta
|
||
keyword { brightcyan
|
||
keyword || yellow
|
||
keyword | brightmagenta
|
||
keyword } brightcyan
|
||
keyword ~ brightmagenta
|
||
|
||
context exclusive /\* \*/ brown
|
||
spellcheck
|
||
|
||
context exclusive // \n brown
|
||
spellcheck
|
||
|
||
context linestart # \n brightred
|
||
keyword \\\n yellow
|
||
keyword /\**\*/ brown
|
||
keyword //*\n brown
|
||
keyword "+" red
|
||
keyword <+> red
|
||
|
||
context " " green
|
||
spellcheck
|
||
keyword \\" brightgreen
|
||
keyword %% brightgreen
|
||
keyword %\[#0\s-\+,\]\[0123456789\*\]\[.\]\[0123456789\*\]\[L\]\{eEfgGoxX\} brightgreen
|
||
keyword %\[0\s-\+,\]\[0123456789\*\]\[.\]\[0123456789\*\]\[hl\]\{diuxX\} brightgreen
|
||
keyword %\[hl\]n brightgreen
|
||
keyword %\[-\]\[0123456789\*\]\[.\]\[0123456789\*\]s brightgreen
|
||
keyword %[*] brightgreen
|
||
keyword %c brightgreen
|
||
keyword %p brightgreen
|
||
keyword \\\{0123\}\{01234567\}\{01234567\} brightgreen
|
||
keyword \\\\ brightgreen
|
||
keyword \\' brightgreen
|
||
keyword \\\{abtnvfr\} brightgreen
|