Warning, /frameworks/syntax-highlighting/autotests/reference/highlight.cmake.ref is written in an unsupported language. File is not indexed.

0001 <Comment># This CMakeLists.txt doesn't do anything useful,</Comment><br/>
0002 <Comment># but it shoudl demonstrate the cmake syntax highlighting</Comment><br/>
0003 <Comment>#</Comment><br/>
0004 <Comment># Alex Turbov <i.zaufi@gmail.com></Comment><br/>
0005 <Comment>#</Comment><br/>
0006 <Normal Text></Normal Text><br/>
0007 <Region Marker>#[[.rst:</Region Marker><br/>
0008 <Comment>Demo</Comment><br/>
0009 <Comment>----</Comment><br/>
0010 <Comment></Comment><br/>
0011 <Comment>This is an </Comment><Bold>**RST**</Bold><Comment> documentation.</Comment><br/>
0012 <Comment></Comment><br/>
0013 <Code>::</Code><br/>
0014 <Code></Code><br/>
0015 <Code>    # Sample code block</Code><br/>
0016 <Code>    blah-blah</Code><br/>
0017 <Code></Code><br/>
0018 <Comment>But we are about to test CMake here ;-)</Comment><br/>
0019 <Comment></Comment><br/>
0020 <Region Marker>#]]</Region Marker><br/>
0021 <Normal Text></Normal Text><br/>
0022 <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/>
0023 <Normal Text></Normal Text><br/>
0024 <Command>project</Command><Normal Text>(</Normal Text><br/>
0025 <Normal Text>    Demo </Normal Text><Named Args>VERSION</Named Args><Normal Text> </Normal Text><Version Arg>1.0</Version Arg><br/>
0026 <Normal Text>    </Normal Text><Named Args>DESCRIPTION</Named Args><Normal Text> </Normal Text><Strings>"For unit testing purposes"</Strings><br/>
0027 <Normal Text>    </Normal Text><Comment># </Comment><Alert Level 3>NOTE</Alert Level 3><Comment> that particular languages is a separate style</Comment><br/>
0028 <Normal Text>    </Normal Text><Comment># to highlight "special" (well known values)</Comment><br/>
0029 <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/>
0030 <Normal Text>  )</Normal Text><br/>
0031 <Normal Text></Normal Text><br/>
0032 <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/>
0033 <Comment># `false` value and "internal" variable</Comment><br/>
0034 <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/>
0035 <Normal Text></Normal Text><br/>
0036 <Comment>#BEGIN Message block</Comment><br/>
0037 <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/>
0038 <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/>
0039 <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/>
0040 <Command>message</Command><Normal Text>(</Normal Text><br/>
0041 <Normal Text>    </Normal Text><Named Args>STATUS</Named Args><Normal Text> </Normal Text><Strings>[=[</Strings><br/>
0042 <Strings>        Raw messages do not do ${VARIABLES_EXPANSION} or \n</Strings><br/>
0043 <Strings>        escape symbols highlighting...</Strings><br/>
0044 <Strings>    ]=]</Strings><br/>
0045 <Normal Text>)</Normal Text><br/>
0046 <Comment>#END Message block</Comment><br/>
0047 <Normal Text></Normal Text><br/>
0048 <Comment># </Comment><Alert Level 1>ATTENTION</Alert Level 1><Comment> Every command highlight only its own named keywords...</Comment><br/>
0049 <Comment># Also, note aliased (most of the time imported) targets higlighted as well</Comment><br/>
0050 <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/>
0051 <Command>set</Command><Normal Text>(KW_HL IMPORTED GLOBAL)      </Normal Text><Comment># `IMPORTED` and `GLOBAL` are not highlighted here!</Comment><br/>
0052 <Normal Text></Normal Text><br/>
0053 <Comment># Properties are separate ("special value") style</Comment><br/>
0054 <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/>
0055 <Normal Text></Normal Text><br/>
0056 <Comment># Generator expressions</Comment><br/>
0057 <Command>target_compile_definitions</Command><Normal Text>(</Normal Text><br/>
0058 <Normal Text>    </Normal Text><Comment># </Comment><Alert Level 3>NOTE</Alert Level 3><Comment> Ok w/ CMake >= 3.11</Comment><br/>
0059 <Normal Text>    </Normal Text><Aliased Targets>Foo::foo</Aliased Targets><br/>
0060 <Normal Text>    </Normal Text><Generator Expression>$<$<</Generator Expression><Generator Expression Keyword>PLATFORM_ID</Generator Expression Keyword><Generator Expression>:Windows>:WINDOWS_FOO></Generator Expression><br/>
0061 <Normal Text>    </Normal Text><Generator Expression>$<$<</Generator Expression><Generator Expression Keyword>PLATFORM_ID</Generator Expression Keyword><Generator Expression>:Linux>:</Generator Expression><br/>
0062 <Generator Expression>        LINUX_FOO</Generator Expression><br/>
0063 <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/>
0064 <Generator Expression>    ></Generator Expression><br/>
0065 <Normal Text>  )</Normal Text><br/>
0066 <Normal Text></Normal Text><br/>
0067 <Region Marker>#[=======================================================================[.rst:</Region Marker><br/>
0068 <Directive>.. cmake:command:: </Directive><Comment>my_fun</Comment><br/>
0069 <Comment></Comment><br/>
0070 <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/>
0071 <Role>:cmake:variable:</Role><InterpretedText>`variables`</InterpretedText><Comment>...</Comment><br/>
0072 <Comment></Comment><br/>
0073 <Code>.. code-block:: cmake</Code><br/>
0074 <Code>   :caption: **Synopsys**</Code><br/>
0075 <Code></Code><br/>
0076 <Code>    my_fun([ANYTHING...])</Code><br/>
0077 <Code></Code><br/>
0078 <Region Marker>#]=======================================================================]</Region Marker><br/>
0079 <Command>function</Command><Normal Text>(my_fun)</Normal Text><br/>
0080 <Normal Text>    </Normal Text><Comment># </Comment><Alert Level 2>TODO</Alert Level 2><Comment> Add implementation</Comment><br/>
0081 <Command>endfunction</Command><Normal Text>()</Normal Text><br/>
0082 <Normal Text></Normal Text><br/>
0083 <User Function/Macro>my_fun</User Function/Macro><Normal Text>(</Normal Text><br/>
0084 <Normal Text>    </Normal Text><Comment># Custom functions do not highlight "standard" named args ...</Comment><br/>
0085 <Normal Text>    PUBLIC LOCATION PARENT_SCOPE</Normal Text><br/>
0086 <Normal Text>    </Normal Text><Comment># only some well-known values ...</Comment><br/>
0087 <Normal Text>    </Normal Text><False Special Arg>smth-NOTFOUND</False Special Arg><Normal Text> </Normal Text><True Special Arg>ON</True Special Arg><br/>
0088 <Normal Text>    </Normal Text><Comment># and standard variables</Comment><br/>
0089 <Normal Text>    </Normal Text><Builtin Variable>PROJECT_VERSION</Builtin Variable><br/>
0090 <Normal Text>    </Normal Text><Comment># or substitutions</Comment><br/>
0091 <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/>
0092 <Normal Text>  )</Normal Text><br/>
0093 <Normal Text></Normal Text><br/>
0094 <Comment># I dont'recall exactly, but there was some bug with `if`...</Comment><br/>
0095 <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/>
0096 <Normal Text>    </Normal Text><Comment># Anyway... it is Ok nowadays ;-)</Comment><br/>
0097 <Normal Text></Normal Text><br/>
0098 <Control Flow>elseif</Control Flow><Normal Text>(</Normal Text><Named Args>POLICY</Named Args><Normal Text> CMP066)</Normal Text><br/>
0099 <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/>
0100 <Normal Text>    </Normal Text><Command>target_link_libraries</Command><Normal Text>(</Normal Text><br/>
0101 <Normal Text>        </Normal Text><Variable Substitution>${</Variable Substitution><Builtin Variable>PROJECT_NAME</Builtin Variable><Variable Substitution>}</Variable Substitution><br/>
0102 <Normal Text>        </Normal Text><Targets>PRIVATE</Targets><br/>
0103 <Normal Text>            </Normal Text><Aliased Targets>Qt5::Core</Aliased Targets><br/>
0104 <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/>
0105 <Normal Text>      )</Normal Text><br/>
0106 <Normal Text></Normal Text><br/>
0107 <Control Flow>endif</Control Flow><Normal Text>()</Normal Text><br/>
0108 <Normal Text></Normal Text><br/>
0109 <Comment># In each function call below, all 3 named parameter lines should apply the same highlighting.</Comment><br/>
0110 <Command>add_custom_command</Command><Normal Text>(</Normal Text><br/>
0111 <Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> </Normal Text><True Special Arg>true</True Special Arg><br/>
0112 <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/>
0113 <Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> </Normal Text><True Special Arg>true</True Special Arg><br/>
0114 <Normal Text>)</Normal Text><br/>
0115 <Command>add_custom_target</Command><Normal Text>(</Normal Text><Targets>TargetName</Targets><br/>
0116 <Normal Text>    </Normal Text><Named Args>WORKING_DIRECTORY</Named Args><Normal Text> somedir</Normal Text><br/>
0117 <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/>
0118 <Normal Text>    </Normal Text><Named Args>BYPRODUCTS</Named Args><Normal Text> somefile</Normal Text><br/>
0119 <Normal Text>)</Normal Text><br/>
0120 <Command>execute_process</Command><Normal Text>(</Normal Text><br/>
0121 <Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> </Normal Text><True Special Arg>true</True Special Arg><br/>
0122 <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/>
0123 <Normal Text>    </Normal Text><Named Args>COMMAND</Named Args><Normal Text> </Normal Text><True Special Arg>true</True Special Arg><br/>
0124 <Normal Text>)</Normal Text><br/>
0125 <Command>add_test</Command><Normal Text>(</Normal Text><br/>
0126 <Normal Text>    </Normal Text><Named Args>NAME</Named Args><Normal Text> sometest</Normal Text><br/>
0127 <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/>
0128 <Normal Text>    </Normal Text><Named Args>WORKING_DIRECTORY</Named Args><Normal Text> somedir</Normal Text><br/>
0129 <Normal Text>)</Normal Text><br/>
0130 <Normal Text></Normal Text><br/>
0131 <Comment># nested parentheses</Comment><br/>
0132 <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/>
0133 <Control Flow>endif</Control Flow><Normal Text>()</Normal Text><br/>