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/>