File: highlight.cmake.ref

package info (click to toggle)
kf6-syntax-highlighting 6.18.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 49,060 kB
  • sloc: xml: 203,100; cpp: 12,878; python: 3,055; sh: 965; perl: 814; ruby: 494; pascal: 393; javascript: 161; php: 150; jsp: 132; lisp: 131; haskell: 124; ada: 119; ansic: 107; makefile: 96; f90: 94; ml: 85; cobol: 81; yacc: 71; csh: 62; exp: 61; erlang: 54; sql: 51; java: 47; sed: 45; objc: 37; tcl: 36; awk: 31; asm: 30; fortran: 18; cs: 10
file content (137 lines) | stat: -rw-r--r-- 15,197 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<Comment># This CMakeLists.txt doesn't do anything useful,</Comment><br/>
<Comment># but it shoudl demonstrate the cmake syntax highlighting</Comment><br/>
<Comment>#</Comment><br/>
<Comment># Alex Turbov <i.zaufi@gmail.com></Comment><br/>
<Comment>#</Comment><br/>
<Normal Text></Normal Text><br/>
<Region Marker>#[[.rst:</Region Marker><br/>
<Comment>Demo</Comment><br/>
<Comment>----</Comment><br/>
<Comment></Comment><br/>
<Comment>This is an </Comment><Bold>**RST**</Bold><Comment> documentation.</Comment><br/>
<Comment></Comment><br/>
<Code>::</Code><br/>
<Code></Code><br/>
<Code>    # Sample code block</Code><br/>
<Code>    blah-blah</Code><br/>
<Code></Code><br/>
<Comment>But we are about to test CMake here ;-)</Comment><br/>
<Comment></Comment><br/>
<Region Marker>#]]</Region Marker><br/>
<Normal Text></Normal Text><br/>
<Command>cmake_policy</Command><Normal Text>(</Normal Text><Named Args>VERSION</Named Args><Normal Text> </Normal Text><Version Arg>3.11</Version Arg><Normal Text>)</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Command>project</Command><Normal Text>(</Normal Text><br/>
<Normal Text>    Demo </Normal Text><Named Args>VERSION</Named Args><Normal Text> </Normal Text><Version Arg>1.0</Version Arg><br/>
<Normal Text>    </Normal Text><Named Args>DESCRIPTION</Named Args><Normal Text> </Normal Text><Strings>"For unit testing purposes"</Strings><br/>
<Normal Text>    </Normal Text><Comment># </Comment><Alert Level 3>NOTE</Alert Level 3><Comment> that particular languages is a separate style</Comment><br/>
<Normal Text>    </Normal Text><Comment># to highlight "special" (well known values)</Comment><br/>
<Normal Text>    </Normal Text><Named Args>LANGUAGES</Named Args><Normal Text> </Normal Text><Special Args>C</Special Args><Normal Text> </Normal Text><Special Args>CXX</Special Args><br/>
<Normal Text>  )</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Command>set</Command><Normal Text>(SOME_TRUE_OPTION </Normal Text><True Special Arg>TRUE</True Special Arg><Normal Text>)      </Normal Text><Comment># `true` value</Comment><br/>
<Comment># `false` value and "internal" variable</Comment><br/>
<Command>set</Command><Normal Text>(</Normal Text><Internal Name>_ANOTHER_FALSE_OPTION</Internal Name><Normal Text> </Normal Text><False Special Arg>OFF</False Special Arg><Normal Text> </Normal Text><Named Args>CACHE</Named Args><Normal Text> </Normal Text><Special Args>INTERNAL</Special Args><Normal Text> </Normal Text><Strings>"Internal option"</Strings><Normal Text>)</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Comment>#BEGIN Message block</Comment><br/>
<Command>message</Command><Normal Text>(</Normal Text><Named Args>FATAL_ERROR</Named Args><Normal Text> </Normal Text><Strings>"Ordinal message do </Strings><Variable Substitution>${VARIABLE_EXPANSION}</Variable Substitution><Strings>"</Strings><Normal Text>)</Normal Text><br/>
<Command>message</Command><Normal Text>(</Normal Text><Named Args>AUTHOR_WARNING</Named Args><Normal Text> </Normal Text><Strings>"... standard variables have a dedicated style"</Strings><Normal Text>)</Normal Text><br/>
<Command>message</Command><Normal Text>(</Normal Text><Named Args>SEND_ERROR</Named Args><Normal Text> </Normal Text><Strings>"e.g. </Strings><Variable Substitution>${</Variable Substitution><Builtin Variable>PROJECT_DESCRIPTION</Builtin Variable><Variable Substitution>}</Variable Substitution><Strings> or </Strings><Variable Substitution>${</Variable Substitution><Builtin Variable>CMAKE_COMMAND</Builtin Variable><Variable Substitution>}</Variable Substitution><Strings>"</Strings><Normal Text>)</Normal Text><br/>
<Command>message</Command><Normal Text>(</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>STATUS</Named Args><Normal Text> </Normal Text><Strings>[=[</Strings><br/>
<Strings>        Raw messages do not do ${VARIABLES_EXPANSION} or \n</Strings><br/>
<Strings>        escape symbols highlighting...</Strings><br/>
<Strings>    ]=]</Strings><br/>
<Normal Text>)</Normal Text><br/>
<Comment>#END Message block</Comment><br/>
<Normal Text></Normal Text><br/>
<Comment># </Comment><Alert Level 1>ATTENTION</Alert Level 1><Comment> Every command highlight only its own named keywords...</Comment><br/>
<Comment># Also, note aliased (most of the time imported) targets higlighted as well</Comment><br/>
<Command>add_library</Command><Normal Text>(</Normal Text><Aliased Targets>Foo::foo</Aliased Targets><Normal Text> </Normal Text><Named Args>IMPORTED</Named Args><Normal Text> </Normal Text><Named Args>GLOBAL</Named Args><Normal Text>)</Normal Text><br/>
<Command>set</Command><Normal Text>(KW_HL IMPORTED GLOBAL)      </Normal Text><Comment># `IMPORTED` and `GLOBAL` are not highlighted here!</Comment><br/>
<Normal Text></Normal Text><br/>
<Comment># Properties are separate ("special value") style</Comment><br/>
<Command>set_target_properties</Command><Normal Text>(</Normal Text><Aliased Targets>Foo::foo</Aliased Targets><Normal Text> </Normal Text><Named Args>PROPERTIES</Named Args><Normal Text> </Normal Text><Property>LOCATION</Property><Normal Text> </Normal Text><Strings>"</Strings><Variable Substitution>${FOO_LIBRARY}</Variable Substitution><Strings>"</Strings><Normal Text>)</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Comment># Generator expressions</Comment><br/>
<Command>target_compile_definitions</Command><Normal Text>(</Normal Text><br/>
<Normal Text>    </Normal Text><Comment># </Comment><Alert Level 3>NOTE</Alert Level 3><Comment> Ok w/ CMake >= 3.11</Comment><br/>
<Normal Text>    </Normal Text><Aliased Targets>Foo::foo</Aliased Targets><br/>
<Normal Text>    </Normal Text><Generator Expression>$<$<</Generator Expression><Generator Expression Keyword>PLATFORM_ID</Generator Expression Keyword><Generator Expression>:Windows>:WINDOWS_FOO></Generator Expression><br/>
<Normal Text>    </Normal Text><Generator Expression>$<$<</Generator Expression><Generator Expression Keyword>PLATFORM_ID</Generator Expression Keyword><Generator Expression>:Linux>:</Generator Expression><br/>
<Generator Expression>        LINUX_FOO</Generator Expression><br/>
<Generator Expression>        $<$<</Generator Expression><Generator Expression Keyword>BOOL</Generator Expression Keyword><Generator Expression>:</Generator Expression><Variable Substitution>${</Variable Substitution><Internal Name>_has_foo</Internal Name><Variable Substitution>}</Variable Substitution><Generator Expression>>:SOME_FOO_PATH=</Generator Expression><Variable Substitution>${</Variable Substitution><Builtin Variable>PROJECT_BINARY_DIR</Builtin Variable><Variable Substitution>}</Variable Substitution><Generator Expression>/foo></Generator Expression><br/>
<Generator Expression>    ></Generator Expression><br/>
<Normal Text>  )</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Region Marker>#[=======================================================================[.rst:</Region Marker><br/>
<Directive>.. cmake:command:: </Directive><Comment>my_fun</Comment><br/>
<Comment></Comment><br/>
<Italic>*RST*</Italic><Comment> documentation </Comment><InlineLiteral>``can``</InlineLiteral><Comment> refer to </Comment><Role>:cmake:command:</Role><InterpretedText>`any_commands`</InterpretedText><Comment> or</Comment><br/>
<Role>:cmake:variable:</Role><InterpretedText>`variables`</InterpretedText><Comment>...</Comment><br/>
<Comment></Comment><br/>
<Code>.. code-block:: cmake</Code><br/>
<Code>   :caption: **Synopsys**</Code><br/>
<Code></Code><br/>
<Code>    my_fun([ANYTHING...])</Code><br/>
<Code></Code><br/>
<Region Marker>#]=======================================================================]</Region Marker><br/>
<Command>function</Command><Normal Text>(my_fun)</Normal Text><br/>
<Normal Text>    </Normal Text><Comment># </Comment><Alert Level 2>TODO</Alert Level 2><Comment> Add implementation</Comment><br/>
<Command>endfunction</Command><Normal Text>()</Normal Text><br/>
<Normal Text></Normal Text><br/>
<User Function/Macro>my_fun</User Function/Macro><Normal Text>(</Normal Text><br/>
<Normal Text>    </Normal Text><Comment># Custom functions do not highlight "standard" named args ...</Comment><br/>
<Normal Text>    PUBLIC LOCATION PARENT_SCOPE</Normal Text><br/>
<Normal Text>    </Normal Text><Comment># only some well-known values ...</Comment><br/>
<Normal Text>    </Normal Text><False Special Arg>smth-NOTFOUND</False Special Arg><Normal Text> </Normal Text><True Special Arg>ON</True Special Arg><br/>
<Normal Text>    </Normal Text><Comment># and standard variables</Comment><br/>
<Normal Text>    </Normal Text><Builtin Variable>PROJECT_VERSION</Builtin Variable><br/>
<Normal Text>    </Normal Text><Comment># or substitutions</Comment><br/>
<Normal Text>    </Normal Text><Environment Variable Substitution>$ENV{HOME}</Environment Variable Substitution><Normal Text> OR </Normal Text><Variable Substitution>${</Variable Substitution><Internal Name>_internal_var_is_grey</Internal Name><Variable Substitution>}</Variable Substitution><br/>
<Normal Text>  )</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Comment># I dont'recall exactly, but there was some bug with `if`...</Comment><br/>
<Control Flow>if</Control Flow><Normal Text>((A </Normal Text><Named Args>AND</Named Args><Normal Text> </Normal Text><Strings>"</Strings><Variable Substitution>${B}</Variable Substitution><Strings>"</Strings><Normal Text>) </Normal Text><Named Args>OR</Named Args><Normal Text> C </Normal Text><Named Args>OR</Named Args><Normal Text> (var </Normal Text><Named Args>MATCHES</Named Args><Normal Text> </Normal Text><Strings>"regex"</Strings><Normal Text>))</Normal Text><br/>
<Normal Text>    </Normal Text><Comment># Anyway... it is Ok nowadays ;-)</Comment><br/>
<Normal Text></Normal Text><br/>
<Control Flow>elseif</Control Flow><Normal Text>(</Normal Text><Named Args>POLICY</Named Args><Normal Text> CMP066)</Normal Text><br/>
<Normal Text>    </Normal Text><Command>add_executable</Command><Normal Text>(</Normal Text><Variable Substitution>${</Variable Substitution><Builtin Variable>PROJECT_NAME</Builtin Variable><Variable Substitution>}</Variable Substitution><Normal Text> </Normal Text><Variable Substitution>${</Variable Substitution><Builtin Variable>PROJECT_NAME</Builtin Variable><Variable Substitution>}</Variable Substitution><Targets>.cc</Targets><Normal Text>)</Normal Text><br/>
<Normal Text>    </Normal Text><Command>target_link_libraries</Command><Normal Text>(</Normal Text><br/>
<Normal Text>        </Normal Text><Variable Substitution>${</Variable Substitution><Builtin Variable>PROJECT_NAME</Builtin Variable><Variable Substitution>}</Variable Substitution><br/>
<Normal Text>        </Normal Text><Targets>PRIVATE</Targets><br/>
<Normal Text>            </Normal Text><Aliased Targets>Qt5::Core</Aliased Targets><br/>
<Normal Text>            </Normal Text><Generator Expression>$<$<</Generator Expression><Generator Expression Keyword>BOOL</Generator Expression Keyword><Generator Expression>:</Generator Expression><Variable Substitution>${HAS_FOO}</Variable Substitution><Generator Expression>>:</Generator Expression><Aliased Targets>Foo::foo</Aliased Targets><Generator Expression>></Generator Expression><br/>
<Normal Text>      )</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Control Flow>endif</Control Flow><Normal Text>()</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Comment># In each function call below, all 3 named parameter lines should apply the same highlighting.</Comment><br/>
<Command>add_custom_command</Command><Normal Text>(</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> </Normal Text><True Special Arg>true</True Special Arg><br/>
<Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> (</Normal Text><True Special Arg>true</True Special Arg><Normal Text>)</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> </Normal Text><True Special Arg>true</True Special Arg><br/>
<Normal Text>)</Normal Text><br/>
<Command>add_custom_target</Command><Normal Text>(</Normal Text><Targets>TargetName</Targets><br/>
<Normal Text>    </Normal Text><Named Args>WORKING_DIRECTORY</Named Args><Normal Text> somedir</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> (</Normal Text><True Special Arg>true</True Special Arg><Normal Text>)</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>BYPRODUCTS</Named Args><Normal Text> somefile</Normal Text><br/>
<Normal Text>)</Normal Text><br/>
<Command>execute_process</Command><Normal Text>(</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> </Normal Text><True Special Arg>true</True Special Arg><br/>
<Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> (</Normal Text><True Special Arg>true</True Special Arg><Normal Text>)</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> </Normal Text><True Special Arg>true</True Special Arg><br/>
<Normal Text>)</Normal Text><br/>
<Command>add_test</Command><Normal Text>(</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>NAME</Named Args><Normal Text> sometest</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> (</Normal Text><True Special Arg>true</True Special Arg><Normal Text>)</Normal Text><br/>
<Normal Text>    </Normal Text><Named Args>WORKING_DIRECTORY</Named Args><Normal Text> somedir</Normal Text><br/>
<Normal Text>)</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Comment># nested parentheses</Comment><br/>
<Control Flow>if</Control Flow><Normal Text>( </Normal Text><True Special Arg>true</True Special Arg><Normal Text> </Normal Text><Named Args>AND</Named Args><Normal Text> ( </Normal Text><False Special Arg>false</False Special Arg><Normal Text> </Normal Text><Named Args>OR</Named Args><Normal Text> (</Normal Text><Strings>"</Strings><Variable Substitution>${</Variable Substitution><Builtin Variable>CMAKE_CXX_COMPILER_ID</Builtin Variable><Variable Substitution>}</Variable Substitution><Strings>"</Strings><Normal Text> </Normal Text><Named Args>STREQUAL</Named Args><Normal Text> </Normal Text><Strings>"Clang"</Strings><Normal Text>) ) )</Normal Text><br/>
<Control Flow>endif</Control Flow><Normal Text>()</Normal Text><br/>
<Normal Text></Normal Text><br/>
<Control Flow>if</Control Flow><Normal Text>(</Normal Text><Named Args>NOT</Named Args><Normal Text> </Normal Text><Named Args>TARGET</Named Args><Normal Text> </Normal Text><Targets>Boost</Targets><Normal Text>::</Normal Text><Variable Substitution>${lib}</Variable Substitution><Normal Text>)</Normal Text><br/>
<Normal Text>    </Normal Text><Command>add_library</Command><Normal Text>(</Normal Text><Targets>Boost</Targets><Normal Text>::</Normal Text><Variable Substitution>${lib}</Variable Substitution><Normal Text> </Normal Text><Named Args>INTERFACE</Named Args><Normal Text> </Normal Text><Named Args>IMPORTED</Named Args><Normal Text>)</Normal Text><br/>
<Control Flow>endif</Control Flow><Normal Text>()</Normal Text><br/>