mirror of
https://github.com/MidnightCommander/mc
synced 2024-12-22 20:36:50 +03:00
Ticket #3690: initial support of OpenCL syntax highlighting.
Based on opencl-mode from Emacs with some own tweaks. Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
This commit is contained in:
parent
97430c1fa4
commit
0fe1eca733
@ -53,6 +53,7 @@ SYNTAXFILES = \
|
|||||||
named.syntax \
|
named.syntax \
|
||||||
nemerle.syntax \
|
nemerle.syntax \
|
||||||
nroff.syntax \
|
nroff.syntax \
|
||||||
|
opencl.syntax \
|
||||||
octave.syntax \
|
octave.syntax \
|
||||||
pascal.syntax \
|
pascal.syntax \
|
||||||
perl.syntax \
|
perl.syntax \
|
||||||
|
@ -268,5 +268,8 @@ include glsl.syntax
|
|||||||
file .\*\\.(cu|cuh)$ CUDA\sProgram
|
file .\*\\.(cu|cuh)$ CUDA\sProgram
|
||||||
include cuda.syntax
|
include cuda.syntax
|
||||||
|
|
||||||
|
file .\*\\.(cl)$ OpenCL\sProgram
|
||||||
|
include opencl.syntax
|
||||||
|
|
||||||
file .\* unknown
|
file .\* unknown
|
||||||
include unknown.syntax
|
include unknown.syntax
|
||||||
|
178
misc/syntax/opencl.syntax
Normal file
178
misc/syntax/opencl.syntax
Normal file
@ -0,0 +1,178 @@
|
|||||||
|
# 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{|}~嵗╯丰戍貝物洎悖停眾斯須號獄播噶擱藏霰匸<E99CB0>帊昅恘倳眑婭笫崷窙嗲睧颬睼麧緗鴇膹擨闀貘覷鏷禴矙𡜍𦶠<F0A19C8D>\}' 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
|
Loading…
Reference in New Issue
Block a user