1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3
4 This file is part of GtkSourceView
5
6 Author: Yevgen Muntyan <muntyan@tamu.edu>
7 Copyright (C) 2008 Yevgen Muntyan
8
9 GtkSourceView is free software; you can redistribute it and/or
10 modify it under the terms of the GNU Lesser General Public
11 License as published by the Free Software Foundation; either
12 version 2.1 of the License, or (at your option) any later version.
13
14 GtkSourceView is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17 Lesser General Public License for more details.
18
19 You should have received a copy of the GNU Lesser General Public License
20 along with this library; if not, see <http://www.gnu.org/licenses/>.
21
22-->
23<language id="cmake" name="CMake" version="2.0" _section="Other">
24  <metadata>
25    <property name="globs">CMakeLists.txt;*.cmake;*.cmake.in;*.ctest;*.ctest.in</property>
26    <property name="line-comment-start">#</property>
27    <property name="block-comment-start">#[[</property>
28    <property name="block-comment-end">]]</property>
29  </metadata>
30
31  <styles>
32    <style id="builtin-command" name="Builtin Command" map-to="def:function"/>
33    <style id="deprecated-builtin-command" name="Deprecated Builtin Command" map-to="def:warning"/>
34    <style id="builtin-variable" name="Builtin Variable" map-to="def:builtin"/>
35    <style id="constant" name="Constant" map-to="def:constant"/>
36    <style id="operator" name="Operator" map-to="def:operator"/>
37    <style id="control" name="Control Keyword" map-to="def:keyword"/>
38    <style id="variable" name="Variable" map-to="makefile:variable"/>
39    <style id="quoted-argument" name="Quoted Argument" map-to="def:string"/>
40    <style id="bracket-argument" name="Bracket Argument" map-to="def:string"/>
41    <style id="legacy-syntax" name="Legacy Syntax" map-to="def:warning"/>
42  </styles>
43
44  <definitions>
45
46    <context id="builtin-command" style-ref="builtin-command">
47      <prefix>(?i)\b</prefix> <!-- case insensitive -->
48      <keyword>ADD_COMPILE_OPTIONS</keyword>
49      <keyword>ADD_CUSTOM_COMMAND</keyword>
50      <keyword>ADD_CUSTOM_TARGET</keyword>
51      <keyword>ADD_DEFINITIONS</keyword>
52      <keyword>ADD_DEPENDENCIES</keyword>
53      <keyword>ADD_EXECUTABLE</keyword>
54      <keyword>ADD_LIBRARY</keyword>
55      <keyword>ADD_SUBDIRECTORY</keyword>
56      <keyword>ADD_TEST</keyword>
57      <keyword>AUX_SOURCE_DIRECTORY</keyword>
58      <keyword>BUILD_COMMAND</keyword>
59      <keyword>CMAKE_HOST_SYSTEM_INFORMATION</keyword>
60      <keyword>CMAKE_MINIMUM_REQUIRED</keyword>
61      <keyword>CMAKE_PARSE_ARGUMENTS</keyword>
62      <keyword>CMAKE_POLICY</keyword>
63      <keyword>CONFIGURE_FILE</keyword>
64      <keyword>CREATE_TEST_SOURCELIST</keyword>
65      <keyword>CTEST_BUILD</keyword>
66      <keyword>CTEST_CONFIGURE</keyword>
67      <keyword>CTEST_COVERAGE</keyword>
68      <keyword>CTEST_EMPTY_BINARY_DIRECTORY</keyword>
69      <keyword>CTEST_MEMCHECK</keyword>
70      <keyword>CTEST_READ_CUSTOM_FILES</keyword>
71      <keyword>CTEST_RUN_SCRIPT</keyword>
72      <keyword>CTEST_SLEEP</keyword>
73      <keyword>CTEST_START</keyword>
74      <keyword>CTEST_SUBMIT</keyword>
75      <keyword>CTEST_TEST</keyword>
76      <keyword>CTEST_UPDATE</keyword>
77      <keyword>CTEST_UPLOAD</keyword>
78      <keyword>DEFINE_PROPERTY</keyword>
79      <keyword>ENABLE_LANGUAGE</keyword>
80      <keyword>ENABLE_TESTING</keyword>
81      <keyword>EXECUTE_PROCESS</keyword>
82      <keyword>EXPORT</keyword>
83      <keyword>FILE</keyword>
84      <keyword>FIND_FILE</keyword>
85      <keyword>FIND_LIBRARY</keyword>
86      <keyword>FIND_PACKAGE</keyword>
87      <keyword>FIND_PATH</keyword>
88      <keyword>FIND_PROGRAM</keyword>
89      <keyword>FLTK_WRAP_UI</keyword>
90      <keyword>GET_CMAKE_PROPERTY</keyword>
91      <keyword>GET_DIRECTORY_PROPERTY</keyword>
92      <keyword>GET_FILENAME_COMPONENT</keyword>
93      <keyword>GET_PROPERTY</keyword>
94      <keyword>GET_SOURCE_FILE_PROPERTY</keyword>
95      <keyword>GET_TARGET_PROPERTY</keyword>
96      <keyword>GET_TEST_PROPERTY</keyword>
97      <keyword>INCLUDE</keyword>
98      <keyword>INCLUDE_DIRECTORIES</keyword>
99      <keyword>INCLUDE_EXTERNAL_MSPROJECT</keyword>
100      <keyword>INCLUDE_GUARD</keyword>
101      <keyword>INCLUDE_REGULAR_EXPRESSION</keyword>
102      <keyword>INSTALL</keyword>
103      <keyword>LINK_DIRECTORIES</keyword>
104      <keyword>LINK_LIBRARIES</keyword>
105      <keyword>LIST</keyword>
106      <keyword>LOAD_CACHE</keyword>
107      <keyword>MARK_AS_ADVANCED</keyword>
108      <keyword>MATH</keyword>
109      <keyword>MESSAGE</keyword>
110      <keyword>OPTION</keyword>
111      <keyword>PROJECT</keyword>
112      <keyword>QT_WRAP_CPP</keyword>
113      <keyword>QT_WRAP_UI</keyword>
114      <keyword>REMOVE_DEFINITIONS</keyword>
115      <keyword>SEPARATE_ARGUMENTS</keyword>
116      <keyword>SET</keyword>
117      <keyword>SET_DIRECTORY_PROPERTIES</keyword>
118      <keyword>SET_PROPERTY</keyword>
119      <keyword>SET_SOURCE_FILES_PROPERTIES</keyword>
120      <keyword>SET_TARGET_PROPERTIES</keyword>
121      <keyword>SET_TESTS_PROPERTIES</keyword>
122      <keyword>SITE_NAME</keyword>
123      <keyword>SOURCE_GROUP</keyword>
124      <keyword>STRING</keyword>
125      <keyword>TARGET_COMPILE_DEFINITIONS</keyword>
126      <keyword>TARGET_COMPILE_FEATURES</keyword>
127      <keyword>TARGET_COMPILE_OPTIONS</keyword>
128      <keyword>TARGET_INCLUDE_DIRECTORIES</keyword>
129      <keyword>TARGET_LINK_LIBRARIES</keyword>
130      <keyword>TARGET_SOURCES</keyword>
131      <keyword>TRY_COMPILE</keyword>
132      <keyword>TRY_RUN</keyword>
133      <keyword>UNSET</keyword>
134      <keyword>VARIABLE_WATCH</keyword>
135    </context>
136
137    <context id="deprecated-builtin-command" style-ref="deprecated-builtin-command">
138      <prefix>(?i)\b</prefix> <!-- case insensitive -->
139      <keyword>BUILD_NAME</keyword>
140      <keyword>EXEC_PROGRAM</keyword>
141      <keyword>EXPORT_LIBRARY_DEPENDENCIES</keyword>
142      <keyword>INSTALL_FILES</keyword>
143      <keyword>INSTALL_PROGRAMS</keyword>
144      <keyword>INSTALL_TARGETS</keyword>
145      <keyword>LOAD_COMMAND</keyword>
146      <keyword>MAKE_DIRECTORY</keyword>
147      <keyword>OUTPUT_REQUIRED_FILES</keyword>
148      <keyword>REMOVE</keyword>
149      <keyword>SUBDIR_DEPENDS</keyword>
150      <keyword>SUBDIRS</keyword>
151      <keyword>USE_MANGLED_MESA</keyword>
152      <keyword>UTILITY_SOURCE</keyword>
153      <keyword>VARIABLE_REQUIRES</keyword>
154      <keyword>WRITE_FILE</keyword>
155    </context>
156
157    <context id="constant" style-ref="constant">
158      <prefix>(?i)\b</prefix> <!-- case insensitive -->
159      <keyword>FALSE</keyword>
160      <keyword>IGNORE</keyword>
161      <keyword>N</keyword>
162      <keyword>NO</keyword>
163      <keyword>(\w+-)?NOTFOUND</keyword>
164      <keyword>OFF</keyword>
165      <keyword>ON</keyword>
166      <keyword>TRUE</keyword>
167      <keyword>Y</keyword>
168      <keyword>YES</keyword>
169    </context>
170
171    <context id="builtin-variable" style-ref="builtin-variable">
172      <keyword>\w+_BINARY_DIR</keyword>
173      <keyword>\w+_SOURCE_DIR</keyword>
174      <keyword>\w+_VERSION</keyword>
175      <keyword>\w+_VERSION_MAJOR</keyword>
176      <keyword>\w+_VERSION_MINOR</keyword>
177      <keyword>\w+_VERSION_PATCH</keyword>
178      <keyword>\w+_VERSION_TWEAK</keyword>
179      <keyword>ANDROID</keyword>
180      <keyword>APPLE</keyword>
181      <keyword>BORLAND</keyword>
182      <keyword>BUILD_SHARED_LIBS</keyword>
183      <keyword>CMAKE_\w+_POSTFIX</keyword>
184      <keyword>CMAKE_\w+_ANDROID_TOOLCHAIN_MACHINE</keyword>
185      <keyword>CMAKE_\w+_ANDROID_TOOLCHAIN_PREFIX</keyword>
186      <keyword>CMAKE_\w+_ANDROID_TOOLCHAIN_SUFFIX</keyword>
187      <keyword>CMAKE_\w+_ARCHIVE_APPEND</keyword>
188      <keyword>CMAKE_\w+_ARCHIVE_CREATE</keyword>
189      <keyword>CMAKE_\w+_ARCHIVE_FINISH</keyword>
190      <keyword>CMAKE_\w+_CLANG_TIDY</keyword>
191      <keyword>CMAKE_\w+_COMPILER</keyword>
192      <keyword>CMAKE_\w+_COMPILER_ABI</keyword>
193      <keyword>CMAKE_\w+_COMPILER_AR</keyword>
194      <keyword>CMAKE_\w+_COMPILER_ARCHITECTURE_ID</keyword>
195      <keyword>CMAKE_\w+_COMPILER_EXTERNAL_TOOLCHAIN</keyword>
196      <keyword>CMAKE_\w+_COMPILER_ID</keyword>
197      <keyword>CMAKE_\w+_COMPILER_LAUNCHER</keyword>
198      <keyword>CMAKE_\w+_COMPILER_LOADED</keyword>
199      <keyword>CMAKE_\w+_COMPILER_PREDEFINES_COMMAND</keyword>
200      <keyword>CMAKE_\w+_COMPILER_RANLIB</keyword>
201      <keyword>CMAKE_\w+_COMPILER_TARGET</keyword>
202      <keyword>CMAKE_\w+_COMPILER_VERSION</keyword>
203      <keyword>CMAKE_\w+_COMPILER_VERSION_INTERNAL</keyword>
204      <keyword>CMAKE_\w+_COMPILE_OBJECT</keyword>
205      <keyword>CMAKE_\w+_CPPCHECK</keyword>
206      <keyword>CMAKE_\w+_CPPLINT</keyword>
207      <keyword>CMAKE_\w+_CREATE_SHARED_LIBRARY</keyword>
208      <keyword>CMAKE_\w+_CREATE_SHARED_MODULE</keyword>
209      <keyword>CMAKE_\w+_CREATE_STATIC_LIBRARY</keyword>
210      <keyword>CMAKE_\w+_FLAGS</keyword>
211      <keyword>CMAKE_\w+_FLAGS_DEBUG</keyword>
212      <keyword>CMAKE_\w+_FLAGS_DEBUG_INIT</keyword>
213      <keyword>CMAKE_\w+_FLAGS_INIT</keyword>
214      <keyword>CMAKE_\w+_FLAGS_MINSIZEREL</keyword>
215      <keyword>CMAKE_\w+_FLAGS_MINSIZEREL_INIT</keyword>
216      <keyword>CMAKE_\w+_FLAGS_RELEASE</keyword>
217      <keyword>CMAKE_\w+_FLAGS_RELEASE_INIT</keyword>
218      <keyword>CMAKE_\w+_FLAGS_RELWITHDEBINFO</keyword>
219      <keyword>CMAKE_\w+_FLAGS_RELWITHDEBINFO_INIT</keyword>
220      <keyword>CMAKE_\w+_GHS_KERNEL_FLAGS_DEBUG</keyword>
221      <keyword>CMAKE_\w+_GHS_KERNEL_FLAGS_MINSIZEREL</keyword>
222      <keyword>CMAKE_\w+_GHS_KERNEL_FLAGS_RELEASE</keyword>
223      <keyword>CMAKE_\w+_GHS_KERNEL_FLAGS_RELWITHDEBINFO</keyword>
224      <keyword>CMAKE_\w+_IGNORE_EXTENSIONS</keyword>
225      <keyword>CMAKE_\w+_IMPLICIT_INCLUDE_DIRECTORIES</keyword>
226      <keyword>CMAKE_\w+_IMPLICIT_LINK_DIRECTORIES</keyword>
227      <keyword>CMAKE_\w+_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES</keyword>
228      <keyword>CMAKE_\w+_IMPLICIT_LINK_LIBRARIES</keyword>
229      <keyword>CMAKE_\w+_INCLUDE_WHAT_YOU_USE</keyword>
230      <keyword>CMAKE_\w+_LIBRARY_ARCHITECTURE</keyword>
231      <keyword>CMAKE_\w+_LINKER_PREFERENCE</keyword>
232      <keyword>CMAKE_\w+_LINKER_PREFERENCE_PROPAGATES</keyword>
233      <keyword>CMAKE_\w+_LINK_EXECUTABLE</keyword>
234      <keyword>CMAKE_\w+_OUTPUT_EXTENSION</keyword>
235      <keyword>CMAKE_\w+_PLATFORM_ID</keyword>
236      <keyword>CMAKE_\w+_SIMULATE_ID</keyword>
237      <keyword>CMAKE_\w+_SIMULATE_VERSION</keyword>
238      <keyword>CMAKE_\w+_SIZEOF_DATA_PTR</keyword>
239      <keyword>CMAKE_\w+_SOURCE_FILE_EXTENSIONS</keyword>
240      <keyword>CMAKE_\w+_STANDARD_INCLUDE_DIRECTORIES</keyword>
241      <keyword>CMAKE_\w+_STANDARD_LIBRARIES</keyword>
242      <keyword>CMAKE_\w+_VISIBILITY_PRESET</keyword>
243      <keyword>CMAKE_ABSOLUTE_DESTINATION_FILES</keyword>
244      <keyword>CMAKE_ANDROID_ANT_ADDITIONAL_OPTIONS</keyword>
245      <keyword>CMAKE_ANDROID_API</keyword>
246      <keyword>CMAKE_ANDROID_API_MIN</keyword>
247      <keyword>CMAKE_ANDROID_ARCH</keyword>
248      <keyword>CMAKE_ANDROID_ARCH_ABI</keyword>
249      <keyword>CMAKE_ANDROID_ARM_MODE</keyword>
250      <keyword>CMAKE_ANDROID_ARM_NEON</keyword>
251      <keyword>CMAKE_ANDROID_ASSETS_DIRECTORIES</keyword>
252      <keyword>CMAKE_ANDROID_GUI</keyword>
253      <keyword>CMAKE_ANDROID_JAR_DEPENDENCIES</keyword>
254      <keyword>CMAKE_ANDROID_JAR_DIRECTORIES</keyword>
255      <keyword>CMAKE_ANDROID_JAVA_SOURCE_DIR</keyword>
256      <keyword>CMAKE_ANDROID_NATIVE_LIB_DEPENDENCIES</keyword>
257      <keyword>CMAKE_ANDROID_NATIVE_LIB_DIRECTORIES</keyword>
258      <keyword>CMAKE_ANDROID_NDK</keyword>
259      <keyword>CMAKE_ANDROID_NDK_DEPRECATED_HEADERS</keyword>
260      <keyword>CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG</keyword>
261      <keyword>CMAKE_ANDROID_NDK_TOOLCHAIN_VERSION</keyword>
262      <keyword>CMAKE_ANDROID_PROCESS_MAX</keyword>
263      <keyword>CMAKE_ANDROID_PROGUARD</keyword>
264      <keyword>CMAKE_ANDROID_PROGUARD_CONFIG_PATH</keyword>
265      <keyword>CMAKE_ANDROID_SECURE_PROPS_PATH</keyword>
266      <keyword>CMAKE_ANDROID_SKIP_ANT_STEP</keyword>
267      <keyword>CMAKE_ANDROID_STANDALONE_TOOLCHAIN</keyword>
268      <keyword>CMAKE_ANDROID_STL_TYPE</keyword>
269      <keyword>CMAKE_APPBUNDLE_PATH</keyword>
270      <keyword>CMAKE_AR</keyword>
271      <keyword>CMAKE_ARCHIVE_OUTPUT_DIRECTORY</keyword>
272      <keyword>CMAKE_ARCHIVE_OUTPUT_DIRECTORY_\w+</keyword>
273      <keyword>CMAKE_ARGC</keyword>
274      <keyword>CMAKE_ARGV0</keyword>
275      <keyword>CMAKE_AUTOMOC</keyword>
276      <keyword>CMAKE_AUTOMOC_COMPILER_PREDEFINES</keyword>
277      <keyword>CMAKE_AUTOMOC_DEPEND_FILTERS</keyword>
278      <keyword>CMAKE_AUTOMOC_MACRO_NAMES</keyword>
279      <keyword>CMAKE_AUTOMOC_MOC_OPTIONS</keyword>
280      <keyword>CMAKE_AUTOMOC_RELAXED_MODE</keyword>
281      <keyword>CMAKE_AUTORCC</keyword>
282      <keyword>CMAKE_AUTORCC_OPTIONS</keyword>
283      <keyword>CMAKE_AUTOUIC</keyword>
284      <keyword>CMAKE_AUTOUIC_OPTIONS</keyword>
285      <keyword>CMAKE_AUTOUIC_SEARCH_PATHS</keyword>
286      <keyword>CMAKE_BACKWARDS_COMPATIBILITY</keyword>
287      <keyword>CMAKE_BINARY_DIR</keyword>
288      <keyword>CMAKE_BUILD_RPATH</keyword>
289      <keyword>CMAKE_BUILD_TOOL</keyword>
290      <keyword>CMAKE_BUILD_TYPE</keyword>
291      <keyword>CMAKE_BUILD_WITH_INSTALL_NAME_DIR</keyword>
292      <keyword>CMAKE_BUILD_WITH_INSTALL_RPATH</keyword>
293      <keyword>CMAKE_CACHEFILE_DIR</keyword>
294      <keyword>CMAKE_CACHE_MAJOR_VERSION</keyword>
295      <keyword>CMAKE_CACHE_MINOR_VERSION</keyword>
296      <keyword>CMAKE_CACHE_PATCH_VERSION</keyword>
297      <keyword>CMAKE_CFG_INTDIR</keyword>
298      <keyword>CMAKE_CL_64</keyword>
299      <keyword>CMAKE_CODEBLOCKS_EXCLUDE_EXTERNAL_FILES</keyword>
300      <keyword>CMAKE_CODELITE_USE_TARGETS</keyword>
301      <keyword>CMAKE_COLOR_MAKEFILE</keyword>
302      <keyword>CMAKE_COMMAND</keyword>
303      <keyword>CMAKE_COMPILER_2005</keyword>
304      <keyword>CMAKE_COMPILER_IS_GNUCC</keyword>
305      <keyword>CMAKE_COMPILER_IS_GNUCXX</keyword>
306      <keyword>CMAKE_COMPILER_IS_GNUG77</keyword>
307      <keyword>CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY</keyword>
308      <keyword>CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY_\w+</keyword>
309      <keyword>CMAKE_CONFIGURATION_TYPES</keyword>
310      <keyword>CMAKE_CROSSCOMPILING</keyword>
311      <keyword>CMAKE_CROSSCOMPILING_EMULATOR</keyword>
312      <keyword>CMAKE_CTEST_COMMAND</keyword>
313      <keyword>CMAKE_CUDA_EXTENSIONS</keyword>
314      <keyword>CMAKE_CUDA_HOST_COMPILER</keyword>
315      <keyword>CMAKE_CUDA_STANDARD</keyword>
316      <keyword>CMAKE_CUDA_STANDARD_REQUIRED</keyword>
317      <keyword>CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES</keyword>
318      <keyword>CMAKE_CURRENT_BINARY_DIR</keyword>
319      <keyword>CMAKE_CURRENT_LIST_DIR</keyword>
320      <keyword>CMAKE_CURRENT_LIST_FILE</keyword>
321      <keyword>CMAKE_CURRENT_LIST_LINE</keyword>
322      <keyword>CMAKE_CURRENT_SOURCE_DIR</keyword>
323      <keyword>CMAKE_CXX_COMPILE_FEATURES</keyword>
324      <keyword>CMAKE_CXX_EXTENSIONS</keyword>
325      <keyword>CMAKE_CXX_STANDARD</keyword>
326      <keyword>CMAKE_CXX_STANDARD_REQUIRED</keyword>
327      <keyword>CMAKE_C_COMPILE_FEATURES</keyword>
328      <keyword>CMAKE_C_EXTENSIONS</keyword>
329      <keyword>CMAKE_C_STANDARD</keyword>
330      <keyword>CMAKE_C_STANDARD_REQUIRED</keyword>
331      <keyword>CMAKE_DEBUG_POSTFIX</keyword>
332      <keyword>CMAKE_DEBUG_TARGET_PROPERTIES</keyword>
333      <keyword>CMAKE_DEPENDS_IN_PROJECT_ONLY</keyword>
334      <keyword>CMAKE_DIRECTORY_LABELS</keyword>
335      <keyword>CMAKE_DISABLE_FIND_PACKAGE_\w+</keyword>
336      <keyword>CMAKE_DL_LIBS</keyword>
337      <keyword>CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES</keyword>
338      <keyword>CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT</keyword>
339      <keyword>CMAKE_ECLIPSE_MAKE_ARGUMENTS</keyword>
340      <keyword>CMAKE_ECLIPSE_VERSION</keyword>
341      <keyword>CMAKE_EDIT_COMMAND</keyword>
342      <keyword>CMAKE_ENABLE_EXPORTS</keyword>
343      <keyword>CMAKE_ERROR_DEPRECATED</keyword>
344      <keyword>CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION</keyword>
345      <keyword>CMAKE_EXECUTABLE_SUFFIX</keyword>
346      <keyword>CMAKE_EXE_LINKER_FLAGS</keyword>
347      <keyword>CMAKE_EXE_LINKER_FLAGS_\w+</keyword>
348      <keyword>CMAKE_EXE_LINKER_FLAGS_\w+_INIT</keyword>
349      <keyword>CMAKE_EXE_LINKER_FLAGS_INIT</keyword>
350      <keyword>CMAKE_EXPORT_COMPILE_COMMANDS</keyword>
351      <keyword>CMAKE_EXPORT_NO_PACKAGE_REGISTRY</keyword>
352      <keyword>CMAKE_EXTRA_GENERATOR</keyword>
353      <keyword>CMAKE_EXTRA_SHARED_LIBRARY_SUFFIXES</keyword>
354      <keyword>CMAKE_FIND_APPBUNDLE</keyword>
355      <keyword>CMAKE_FIND_FRAMEWORK</keyword>
356      <keyword>CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX</keyword>
357      <keyword>CMAKE_FIND_LIBRARY_PREFIXES</keyword>
358      <keyword>CMAKE_FIND_LIBRARY_SUFFIXES</keyword>
359      <keyword>CMAKE_FIND_NO_INSTALL_PREFIX</keyword>
360      <keyword>CMAKE_FIND_PACKAGE_NAME</keyword>
361      <keyword>CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY</keyword>
362      <keyword>CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY</keyword>
363      <keyword>CMAKE_FIND_PACKAGE_SORT_DIRECTION</keyword>
364      <keyword>CMAKE_FIND_PACKAGE_SORT_ORDER</keyword>
365      <keyword>CMAKE_FIND_PACKAGE_WARN_NO_MODULE</keyword>
366      <keyword>CMAKE_FIND_ROOT_PATH</keyword>
367      <keyword>CMAKE_FIND_ROOT_PATH_MODE_INCLUDE</keyword>
368      <keyword>CMAKE_FIND_ROOT_PATH_MODE_LIBRARY</keyword>
369      <keyword>CMAKE_FIND_ROOT_PATH_MODE_PACKAGE</keyword>
370      <keyword>CMAKE_FIND_ROOT_PATH_MODE_PROGRAM</keyword>
371      <keyword>CMAKE_FRAMEWORK_PATH</keyword>
372      <keyword>CMAKE_Fortran_FORMAT</keyword>
373      <keyword>CMAKE_Fortran_MODDIR_DEFAULT</keyword>
374      <keyword>CMAKE_Fortran_MODDIR_FLAG</keyword>
375      <keyword>CMAKE_Fortran_MODOUT_FLAG</keyword>
376      <keyword>CMAKE_Fortran_MODULE_DIRECTORY</keyword>
377      <keyword>CMAKE_GENERATOR</keyword>
378      <keyword>CMAKE_GENERATOR_PLATFORM</keyword>
379      <keyword>CMAKE_GENERATOR_TOOLSET</keyword>
380      <keyword>CMAKE_GNUtoMS</keyword>
381      <keyword>CMAKE_HOME_DIRECTORY</keyword>
382      <keyword>CMAKE_HOST_APPLE</keyword>
383      <keyword>CMAKE_HOST_SOLARIS</keyword>
384      <keyword>CMAKE_HOST_SYSTEM</keyword>
385      <keyword>CMAKE_HOST_SYSTEM_NAME</keyword>
386      <keyword>CMAKE_HOST_SYSTEM_PROCESSOR</keyword>
387      <keyword>CMAKE_HOST_SYSTEM_VERSION</keyword>
388      <keyword>CMAKE_HOST_UNIX</keyword>
389      <keyword>CMAKE_HOST_WIN32</keyword>
390      <keyword>CMAKE_IGNORE_PATH</keyword>
391      <keyword>CMAKE_IMPORT_LIBRARY_PREFIX</keyword>
392      <keyword>CMAKE_IMPORT_LIBRARY_SUFFIX</keyword>
393      <keyword>CMAKE_INCLUDE_CURRENT_DIR</keyword>
394      <keyword>CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE</keyword>
395      <keyword>CMAKE_INCLUDE_DIRECTORIES_BEFORE</keyword>
396      <keyword>CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE</keyword>
397      <keyword>CMAKE_INCLUDE_PATH</keyword>
398      <keyword>CMAKE_INSTALL_DEFAULT_COMPONENT_NAME</keyword>
399      <keyword>CMAKE_INSTALL_MESSAGE</keyword>
400      <keyword>CMAKE_INSTALL_NAME_DIR</keyword>
401      <keyword>CMAKE_INSTALL_PREFIX</keyword>
402      <keyword>CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT</keyword>
403      <keyword>CMAKE_INSTALL_RPATH</keyword>
404      <keyword>CMAKE_INSTALL_RPATH_USE_LINK_PATH</keyword>
405      <keyword>CMAKE_INTERNAL_PLATFORM_ABI</keyword>
406      <keyword>CMAKE_INTERPROCEDURAL_OPTIMIZATION</keyword>
407      <keyword>CMAKE_INTERPROCEDURAL_OPTIMIZATION_\w+</keyword>
408      <keyword>CMAKE_IOS_INSTALL_COMBINED</keyword>
409      <keyword>CMAKE_JOB_POOL_COMPILE</keyword>
410      <keyword>CMAKE_JOB_POOL_LINK</keyword>
411      <keyword>CMAKE_LIBRARY_ARCHITECTURE</keyword>
412      <keyword>CMAKE_LIBRARY_ARCHITECTURE_REGEX</keyword>
413      <keyword>CMAKE_LIBRARY_OUTPUT_DIRECTORY</keyword>
414      <keyword>CMAKE_LIBRARY_OUTPUT_DIRECTORY_\w+</keyword>
415      <keyword>CMAKE_LIBRARY_PATH</keyword>
416      <keyword>CMAKE_LIBRARY_PATH_FLAG</keyword>
417      <keyword>CMAKE_LINK_DEF_FILE_FLAG</keyword>
418      <keyword>CMAKE_LINK_DEPENDS_NO_SHARED</keyword>
419      <keyword>CMAKE_LINK_INTERFACE_LIBRARIES</keyword>
420      <keyword>CMAKE_LINK_LIBRARY_FILE_FLAG</keyword>
421      <keyword>CMAKE_LINK_LIBRARY_FLAG</keyword>
422      <keyword>CMAKE_LINK_LIBRARY_SUFFIX</keyword>
423      <keyword>CMAKE_LINK_SEARCH_END_STATIC</keyword>
424      <keyword>CMAKE_LINK_SEARCH_START_STATIC</keyword>
425      <keyword>CMAKE_LINK_WHAT_YOU_USE</keyword>
426      <keyword>CMAKE_MACOSX_BUNDLE</keyword>
427      <keyword>CMAKE_MACOSX_RPATH</keyword>
428      <keyword>CMAKE_MAJOR_VERSION</keyword>
429      <keyword>CMAKE_MAKE_PROGRAM</keyword>
430      <keyword>CMAKE_MAP_IMPORTED_CONFIG_\w+</keyword>
431      <keyword>CMAKE_MATCH_\d+</keyword>
432      <keyword>CMAKE_MATCH_COUNT</keyword>
433      <keyword>CMAKE_MFC_FLAG</keyword>
434      <keyword>CMAKE_MINIMUM_REQUIRED_VERSION</keyword>
435      <keyword>CMAKE_MINOR_VERSION</keyword>
436      <keyword>CMAKE_MODULE_LINKER_FLAGS</keyword>
437      <keyword>CMAKE_MODULE_LINKER_FLAGS_\w+</keyword>
438      <keyword>CMAKE_MODULE_LINKER_FLAGS_\w+_INIT</keyword>
439      <keyword>CMAKE_MODULE_LINKER_FLAGS_INIT</keyword>
440      <keyword>CMAKE_MODULE_PATH</keyword>
441      <keyword>CMAKE_MSVCIDE_RUN_PATH</keyword>
442      <keyword>CMAKE_NINJA_OUTPUT_PATH_PREFIX</keyword>
443      <keyword>CMAKE_NOT_USING_CONFIG_FLAGS</keyword>
444      <keyword>CMAKE_NO_BUILTIN_CHRPATH</keyword>
445      <keyword>CMAKE_NO_SYSTEM_FROM_IMPORTED</keyword>
446      <keyword>CMAKE_OBJECT_PATH_MAX</keyword>
447      <keyword>CMAKE_OSX_ARCHITECTURES</keyword>
448      <keyword>CMAKE_OSX_DEPLOYMENT_TARGET</keyword>
449      <keyword>CMAKE_OSX_SYSROOT</keyword>
450      <keyword>CMAKE_PARENT_LIST_FILE</keyword>
451      <keyword>CMAKE_PATCH_VERSION</keyword>
452      <keyword>CMAKE_PDB_OUTPUT_DIRECTORY</keyword>
453      <keyword>CMAKE_PDB_OUTPUT_DIRECTORY_\w+</keyword>
454      <keyword>CMAKE_POLICY_DEFAULT_CMP\d{4}</keyword>
455      <keyword>CMAKE_POLICY_WARNING_CMP\d{4}</keyword>
456      <keyword>CMAKE_POSITION_INDEPENDENT_CODE</keyword>
457      <keyword>CMAKE_PREFIX_PATH</keyword>
458      <keyword>CMAKE_PROGRAM_PATH</keyword>
459      <keyword>CMAKE_PROJECT_\w+_INCLUDE</keyword>
460      <keyword>CMAKE_PROJECT_DESCRIPTION</keyword>
461      <keyword>CMAKE_PROJECT_NAME</keyword>
462      <keyword>CMAKE_RANLIB</keyword>
463      <keyword>CMAKE_ROOT</keyword>
464      <keyword>CMAKE_RUNTIME_OUTPUT_DIRECTORY</keyword>
465      <keyword>CMAKE_RUNTIME_OUTPUT_DIRECTORY_\w+</keyword>
466      <keyword>CMAKE_SCRIPT_MODE_FILE</keyword>
467      <keyword>CMAKE_SHARED_LIBRARY_PREFIX</keyword>
468      <keyword>CMAKE_SHARED_LIBRARY_SUFFIX</keyword>
469      <keyword>CMAKE_SHARED_LINKER_FLAGS</keyword>
470      <keyword>CMAKE_SHARED_LINKER_FLAGS_\w+</keyword>
471      <keyword>CMAKE_SHARED_LINKER_FLAGS_\w+_INIT</keyword>
472      <keyword>CMAKE_SHARED_LINKER_FLAGS_INIT</keyword>
473      <keyword>CMAKE_SHARED_MODULE_PREFIX</keyword>
474      <keyword>CMAKE_SHARED_MODULE_SUFFIX</keyword>
475      <keyword>CMAKE_SIZEOF_VOID_P</keyword>
476      <keyword>CMAKE_SKIP_BUILD_RPATH</keyword>
477      <keyword>CMAKE_SKIP_INSTALL_ALL_DEPENDENCY</keyword>
478      <keyword>CMAKE_SKIP_INSTALL_RPATH</keyword>
479      <keyword>CMAKE_SKIP_INSTALL_RULES</keyword>
480      <keyword>CMAKE_SKIP_RPATH</keyword>
481      <keyword>CMAKE_SOURCE_DIR</keyword>
482      <keyword>CMAKE_STAGING_PREFIX</keyword>
483      <keyword>CMAKE_STATIC_LIBRARY_PREFIX</keyword>
484      <keyword>CMAKE_STATIC_LIBRARY_SUFFIX</keyword>
485      <keyword>CMAKE_STATIC_LINKER_FLAGS</keyword>
486      <keyword>CMAKE_STATIC_LINKER_FLAGS_\w+</keyword>
487      <keyword>CMAKE_STATIC_LINKER_FLAGS_\w+_INIT</keyword>
488      <keyword>CMAKE_STATIC_LINKER_FLAGS_INIT</keyword>
489      <keyword>CMAKE_SUBLIME_TEXT_2_ENV_SETTINGS</keyword>
490      <keyword>CMAKE_SUBLIME_TEXT_2_EXCLUDE_BUILD_TREE</keyword>
491      <keyword>CMAKE_SYSROOT</keyword>
492      <keyword>CMAKE_SYSROOT_COMPILE</keyword>
493      <keyword>CMAKE_SYSROOT_LINK</keyword>
494      <keyword>CMAKE_SYSTEM</keyword>
495      <keyword>CMAKE_SYSTEM_APPBUNDLE_PATH</keyword>
496      <keyword>CMAKE_SYSTEM_FRAMEWORK_PATH</keyword>
497      <keyword>CMAKE_SYSTEM_IGNORE_PATH</keyword>
498      <keyword>CMAKE_SYSTEM_INCLUDE_PATH</keyword>
499      <keyword>CMAKE_SYSTEM_LIBRARY_PATH</keyword>
500      <keyword>CMAKE_SYSTEM_NAME</keyword>
501      <keyword>CMAKE_SYSTEM_PREFIX_PATH</keyword>
502      <keyword>CMAKE_SYSTEM_PROCESSOR</keyword>
503      <keyword>CMAKE_SYSTEM_PROGRAM_PATH</keyword>
504      <keyword>CMAKE_SYSTEM_VERSION</keyword>
505      <keyword>CMAKE_Swift_LANGUAGE_VERSION</keyword>
506      <keyword>CMAKE_TOOLCHAIN_FILE</keyword>
507      <keyword>CMAKE_TRY_COMPILE_CONFIGURATION</keyword>
508      <keyword>CMAKE_TRY_COMPILE_PLATFORM_VARIABLES</keyword>
509      <keyword>CMAKE_TRY_COMPILE_TARGET_TYPE</keyword>
510      <keyword>CMAKE_TWEAK_VERSION</keyword>
511      <keyword>CMAKE_USER_MAKE_RULES_OVERRIDE</keyword>
512      <keyword>CMAKE_USER_MAKE_RULES_OVERRIDE_\w+</keyword>
513      <keyword>CMAKE_USE_RELATIVE_PATHS</keyword>
514      <keyword>CMAKE_VERBOSE_MAKEFILE</keyword>
515      <keyword>CMAKE_VERSION</keyword>
516      <keyword>CMAKE_VISIBILITY_INLINES_HIDDEN</keyword>
517      <keyword>CMAKE_VS_DEVENV_COMMAND</keyword>
518      <keyword>CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD</keyword>
519      <keyword>CMAKE_VS_INCLUDE_PACKAGE_TO_DEFAULT_BUILD</keyword>
520      <keyword>CMAKE_VS_INTEL_Fortran_PROJECT_VERSION</keyword>
521      <keyword>CMAKE_VS_MSBUILD_COMMAND</keyword>
522      <keyword>CMAKE_VS_NsightTegra_VERSION</keyword>
523      <keyword>CMAKE_VS_PLATFORM_NAME</keyword>
524      <keyword>CMAKE_VS_PLATFORM_TOOLSET</keyword>
525      <keyword>CMAKE_VS_PLATFORM_TOOLSET_CUDA</keyword>
526      <keyword>CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE</keyword>
527      <keyword>CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION</keyword>
528      <keyword>CMAKE_WARN_DEPRECATED</keyword>
529      <keyword>CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION</keyword>
530      <keyword>CMAKE_WIN32_EXECUTABLE</keyword>
531      <keyword>CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS</keyword>
532      <keyword>CMAKE_XCODE_ATTRIBUTE_\w+</keyword>
533      <keyword>CMAKE_XCODE_GENERATE_SCHEME</keyword>
534      <keyword>CMAKE_XCODE_PLATFORM_TOOLSET</keyword>
535      <keyword>CPACK_ABSOLUTE_DESTINATION_FILES</keyword>
536      <keyword>CPACK_COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY</keyword>
537      <keyword>CPACK_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION</keyword>
538      <keyword>CPACK_INCLUDE_TOPLEVEL_DIRECTORY</keyword>
539      <keyword>CPACK_INSTALL_SCRIPT</keyword>
540      <keyword>CPACK_PACKAGING_INSTALL_PREFIX</keyword>
541      <keyword>CPACK_SET_DESTDIR</keyword>
542      <keyword>CPACK_WARN_ON_ABSOLUTE_INSTALL_DESTINATION</keyword>
543      <keyword>CTEST_BINARY_DIRECTORY</keyword>
544      <keyword>CTEST_BUILD_COMMAND</keyword>
545      <keyword>CTEST_BUILD_NAME</keyword>
546      <keyword>CTEST_BZR_COMMAND</keyword>
547      <keyword>CTEST_BZR_UPDATE_OPTIONS</keyword>
548      <keyword>CTEST_CHANGE_ID</keyword>
549      <keyword>CTEST_CHECKOUT_COMMAND</keyword>
550      <keyword>CTEST_CONFIGURATION_TYPE</keyword>
551      <keyword>CTEST_CONFIGURE_COMMAND</keyword>
552      <keyword>CTEST_COVERAGE_COMMAND</keyword>
553      <keyword>CTEST_COVERAGE_EXTRA_FLAGS</keyword>
554      <keyword>CTEST_CURL_OPTIONS</keyword>
555      <keyword>CTEST_CUSTOM_COVERAGE_EXCLUDE</keyword>
556      <keyword>CTEST_CUSTOM_ERROR_EXCEPTION</keyword>
557      <keyword>CTEST_CUSTOM_ERROR_MATCH</keyword>
558      <keyword>CTEST_CUSTOM_ERROR_POST_CONTEXT</keyword>
559      <keyword>CTEST_CUSTOM_ERROR_PRE_CONTEXT</keyword>
560      <keyword>CTEST_CUSTOM_MAXIMUM_FAILED_TEST_OUTPUT_SIZE</keyword>
561      <keyword>CTEST_CUSTOM_MAXIMUM_NUMBER_OF_ERRORS</keyword>
562      <keyword>CTEST_CUSTOM_MAXIMUM_NUMBER_OF_WARNINGS</keyword>
563      <keyword>CTEST_CUSTOM_MAXIMUM_PASSED_TEST_OUTPUT_SIZE</keyword>
564      <keyword>CTEST_CUSTOM_MEMCHECK_IGNORE</keyword>
565      <keyword>CTEST_CUSTOM_POST_MEMCHECK</keyword>
566      <keyword>CTEST_CUSTOM_POST_TEST</keyword>
567      <keyword>CTEST_CUSTOM_PRE_MEMCHECK</keyword>
568      <keyword>CTEST_CUSTOM_PRE_TEST</keyword>
569      <keyword>CTEST_CUSTOM_TEST_IGNORE</keyword>
570      <keyword>CTEST_CUSTOM_WARNING_EXCEPTION</keyword>
571      <keyword>CTEST_CUSTOM_WARNING_MATCH</keyword>
572      <keyword>CTEST_CVS_CHECKOUT</keyword>
573      <keyword>CTEST_CVS_COMMAND</keyword>
574      <keyword>CTEST_CVS_UPDATE_OPTIONS</keyword>
575      <keyword>CTEST_DROP_LOCATION</keyword>
576      <keyword>CTEST_DROP_METHOD</keyword>
577      <keyword>CTEST_DROP_SITE</keyword>
578      <keyword>CTEST_DROP_SITE_CDASH</keyword>
579      <keyword>CTEST_DROP_SITE_PASSWORD</keyword>
580      <keyword>CTEST_DROP_SITE_USER</keyword>
581      <keyword>CTEST_EXTRA_COVERAGE_GLOB</keyword>
582      <keyword>CTEST_GIT_COMMAND</keyword>
583      <keyword>CTEST_GIT_INIT_SUBMODULES</keyword>
584      <keyword>CTEST_GIT_UPDATE_CUSTOM</keyword>
585      <keyword>CTEST_GIT_UPDATE_OPTIONS</keyword>
586      <keyword>CTEST_HG_COMMAND</keyword>
587      <keyword>CTEST_HG_UPDATE_OPTIONS</keyword>
588      <keyword>CTEST_LABELS_FOR_SUBPROJECTS</keyword>
589      <keyword>CTEST_MEMORYCHECK_COMMAND</keyword>
590      <keyword>CTEST_MEMORYCHECK_COMMAND_OPTIONS</keyword>
591      <keyword>CTEST_MEMORYCHECK_SANITIZER_OPTIONS</keyword>
592      <keyword>CTEST_MEMORYCHECK_SUPPRESSIONS_FILE</keyword>
593      <keyword>CTEST_MEMORYCHECK_TYPE</keyword>
594      <keyword>CTEST_NIGHTLY_START_TIME</keyword>
595      <keyword>CTEST_P4_CLIENT</keyword>
596      <keyword>CTEST_P4_COMMAND</keyword>
597      <keyword>CTEST_P4_OPTIONS</keyword>
598      <keyword>CTEST_P4_UPDATE_OPTIONS</keyword>
599      <keyword>CTEST_SCP_COMMAND</keyword>
600      <keyword>CTEST_SITE</keyword>
601      <keyword>CTEST_SOURCE_DIRECTORY</keyword>
602      <keyword>CTEST_SVN_COMMAND</keyword>
603      <keyword>CTEST_SVN_OPTIONS</keyword>
604      <keyword>CTEST_SVN_UPDATE_OPTIONS</keyword>
605      <keyword>CTEST_TEST_LOAD</keyword>
606      <keyword>CTEST_TEST_TIMEOUT</keyword>
607      <keyword>CTEST_TRIGGER_SITE</keyword>
608      <keyword>CTEST_UPDATE_COMMAND</keyword>
609      <keyword>CTEST_UPDATE_OPTIONS</keyword>
610      <keyword>CTEST_UPDATE_VERSION_ONLY</keyword>
611      <keyword>CTEST_USE_LAUNCHERS</keyword>
612      <keyword>CYGWIN</keyword>
613      <keyword>EXECUTABLE_OUTPUT_PATH</keyword>
614      <keyword>GHS-MULTI</keyword>
615      <keyword>LIBRARY_OUTPUT_PATH</keyword>
616      <keyword>MINGW</keyword>
617      <keyword>MSVC</keyword>
618      <keyword>MSVC10</keyword>
619      <keyword>MSVC11</keyword>
620      <keyword>MSVC12</keyword>
621      <keyword>MSVC14</keyword>
622      <keyword>MSVC60</keyword>
623      <keyword>MSVC70</keyword>
624      <keyword>MSVC71</keyword>
625      <keyword>MSVC80</keyword>
626      <keyword>MSVC90</keyword>
627      <keyword>MSVC_IDE</keyword>
628      <keyword>MSVC_VERSION</keyword>
629      <keyword>PROJECT_BINARY_DIR</keyword>
630      <keyword>PROJECT_DESCRIPTION</keyword>
631      <keyword>PROJECT_NAME</keyword>
632      <keyword>PROJECT_SOURCE_DIR</keyword>
633      <keyword>PROJECT_VERSION</keyword>
634      <keyword>PROJECT_VERSION_MAJOR</keyword>
635      <keyword>PROJECT_VERSION_MINOR</keyword>
636      <keyword>PROJECT_VERSION_PATCH</keyword>
637      <keyword>PROJECT_VERSION_TWEAK</keyword>
638      <keyword>UNIX</keyword>
639      <keyword>WIN32</keyword>
640      <keyword>WINCE</keyword>
641      <keyword>WINDOWS_PHONE</keyword>
642      <keyword>WINDOWS_STORE</keyword>
643      <keyword>XCODE</keyword>
644      <keyword>XCODE_VERSION</keyword>
645    </context>
646
647    <context id="operator" style-ref="operator">
648      <keyword>AND</keyword>
649      <keyword>BOOL</keyword>
650      <keyword>CACHE</keyword>
651      <keyword>COMMAND</keyword>
652      <keyword>DEFINED</keyword>
653      <keyword>DOC</keyword>
654      <keyword>EQUAL</keyword>
655      <keyword>EXISTS</keyword>
656      <keyword>GREATER</keyword>
657      <keyword>INTERNAL</keyword>
658      <keyword>LESS</keyword>
659      <keyword>MATCHES</keyword>
660      <keyword>NAME</keyword>
661      <keyword>NAMES</keyword>
662      <keyword>NAME_WE</keyword>
663      <keyword>NOT</keyword>
664      <keyword>OR</keyword>
665      <keyword>PATH</keyword>
666      <keyword>PATHS</keyword>
667      <keyword>PROGRAM</keyword>
668      <keyword>STREQUAL</keyword>
669      <keyword>STRGREATER</keyword>
670      <keyword>STRING</keyword>
671      <keyword>STRLESS</keyword>
672    </context>
673
674    <context id="control" style-ref="control">
675      <prefix>(?i)\b</prefix> <!-- case insensitive -->
676      <keyword>BREAK</keyword>
677      <keyword>CONTINUE</keyword>
678      <keyword>ELSE</keyword>
679      <keyword>ELSEIF</keyword>
680      <keyword>ENDFOREACH</keyword>
681      <keyword>ENDFUNCTION</keyword>
682      <keyword>ENDIF</keyword>
683      <keyword>ENDMACRO</keyword>
684      <keyword>ENDWHILE</keyword>
685      <keyword>FOREACH</keyword>
686      <keyword>FUNCTION</keyword>
687      <keyword>IF</keyword>
688      <keyword>MACRO</keyword>
689      <keyword>RETURN</keyword>
690      <keyword>WHILE</keyword>
691    </context>
692
693    <context id="escape-sequence">
694      <match>(\\([trn;]|[^A-Za-z0-9;]))|(\\(.|$))</match>
695      <include>
696        <context sub-pattern="1" style-ref="def:special-char"/>
697        <context sub-pattern="3" style-ref="def:error"/>
698      </include>
699    </context>
700
701    <context id="disallowed-variable-reference-char" style-ref="def:error" extend-parent="false">
702      <match>[^A-Za-z0-9_./+-]</match>
703    </context>
704
705    <context id="variable-reference" style-ref="variable"
706             style-inside="true" end-at-line-end="true"
707    >
708      <start>\$\{</start>
709      <end>\}</end>
710      <include>
711        <context sub-pattern="0" where="start" style-ref="def:special-char"/>
712        <context sub-pattern="0" where="end" style-ref="def:special-char"/>
713        <context ref="builtin-variable"/>
714        <context ref="variable-reference"/>
715        <context ref="env-variable-reference"/>
716        <context ref="escape-sequence"/>
717        <context ref="disallowed-variable-reference-char"/>
718      </include>
719    </context>
720
721    <context id="env-variable-reference" style-ref="variable"
722             style-inside="true" end-at-line-end="true">
723      <start>\$ENV\{</start>
724      <end>\}</end>
725      <include>
726        <context sub-pattern="0" where="start" style-ref="def:special-char"/>
727        <context sub-pattern="0" where="end" style-ref="def:special-char"/>
728        <context ref="variable-reference"/>
729        <context ref="env-variable-reference"/>
730        <context ref="escape-sequence"/>
731        <context ref="disallowed-variable-reference-char"/>
732      </include>
733    </context>
734
735    <context id="quoted-argument" style-ref="quoted-argument">
736      <start>(?&lt;=[()"]|\s|^)"</start>
737      <end>"</end>
738      <include>
739        <context ref="variable-reference"/>
740        <context ref="env-variable-reference"/>
741        <context style-ref="def:special-char">
742          <match>\\$</match> <!-- quoted_continuation from the grammar -->
743        </context>
744        <context ref="escape-sequence"/>
745      </include>
746    </context>
747
748    <context id="bracket-argument" style-ref="bracket-argument">
749      <start>\[(=*)\[</start>
750      <end>\]\%{1@start}\]</end>
751    </context>
752
753    <context id="bracket-comment" style-ref="def:comment" class="comment" class-disabled="no-spell-check">
754      <start>#\[(=*)\[</start>
755      <end>\]\%{1@start}\]</end>
756      <include>
757        <context ref="def:in-comment"/>
758      </include>
759    </context>
760
761    <context id="in-unquoted-argument">
762      <include>
763        <context ref="constant"/>
764        <context ref="variable-reference"/>
765        <context ref="env-variable-reference"/>
766        <context ref="escape-sequence"/>
767        <context style-ref="legacy-syntax" end-at-line-end="true">
768          <start>"</start>
769          <end>"</end>
770          <include>
771            <context ref="escape-sequence"/>
772          </include>
773        </context>
774        <context style-ref="legacy-syntax">
775          <match>\$\(\w+\)</match>
776        </context>
777      </include>
778    </context>
779
780    <context id="arguments">
781      <start>\(</start>
782      <end>\)</end>
783      <include>
784        <context ref="quoted-argument"/>
785        <context ref="bracket-argument"/>
786        <context ref="in-unquoted-argument"/>
787        <context ref="operator"/>
788        <context ref="arguments"/>
789        <context ref="bracket-comment"/>
790        <context ref="def:shell-like-comment"/>
791      </include>
792    </context>
793
794    <context id="variable-assignment">
795      <start>\b((?i)SET|UNSET)\b\s*\(\s*([\w_][\w\d_]*)</start>
796      <end>\)</end>
797      <include>
798        <context sub-pattern="1" where="start" style-ref="builtin-command"/>
799        <context sub-pattern="2" where="start" style-ref="variable"/>
800        <context ref="arguments:*"/>
801      </include>
802    </context>
803
804    <context id="cmake">
805      <include>
806        <context ref="variable-assignment"/>
807        <context ref="builtin-command"/>
808        <context ref="deprecated-builtin-command"/>
809        <context ref="control"/>
810        <context ref="arguments"/>
811        <context ref="bracket-comment"/>
812        <context ref="def:shell-like-comment"/>
813      </include>
814    </context>
815
816  </definitions>
817</language>
818