1<?php 2/************************************************************************************* 3 * cmake.php 4 * ------- 5 * Author: Daniel Nelson (danieln@eng.utah.edu) 6 * Copyright: (c) 2009 Daniel Nelson 7 * Release Version: 1.0.9.1 8 * Date Started: 2009/04/06 9 * 10 * CMake language file for GeSHi. 11 * 12 * Keyword list generated using CMake 2.6.3. 13 * 14 * CHANGES 15 * ------- 16 * <date-of-release> (<GeSHi release>) 17 * - First Release 18 * 19 * TODO (updated <date-of-release>) 20 * ------------------------- 21 * 22 ************************************************************************************* 23 * 24 * This file is part of GeSHi. 25 * 26 * GeSHi is free software; you can redistribute it and/or modify 27 * it under the terms of the GNU General Public License as published by 28 * the Free Software Foundation; either version 2 of the License, or 29 * (at your option) any later version. 30 * 31 * GeSHi is distributed in the hope that it will be useful, 32 * but WITHOUT ANY WARRANTY; without even the implied warranty of 33 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 34 * GNU General Public License for more details. 35 * 36 * You should have received a copy of the GNU General Public License 37 * along with GeSHi; if not, write to the Free Software 38 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 39 * 40 ************************************************************************************/ 41 42$language_data = array ( 43 'LANG_NAME' => 'CMake', 44 'COMMENT_SINGLE' => array(1 => '#'), 45 'COMMENT_MULTI' => array(), 46 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 47 'QUOTEMARKS' => array('"'), 48 'ESCAPE_CHAR' => '\\', 49 'ESCAPE_REGEXP' => array( 50 // Quoted variables ${...} 51 1 => "/\\$(ENV)?\\{[^\\n\\}]*?\\}/i", 52 // Quoted registry keys [...] 53 2 => "/\\[HKEY[^\n\\]]*?]/i" 54 ), 55 'KEYWORDS' => array( 56 1 => array( 57 'add_custom_command', 'add_custom_target', 'add_definitions', 58 'add_dependencies', 'add_executable', 'add_library', 59 'add_subdirectory', 'add_test', 'aux_source_directory', 'break', 60 'build_command', 'cmake_minimum_required', 'cmake_policy', 61 'configure_file', 'create_test_sourcelist', 'define_property', 62 'else', 'elseif', 'enable_language', 'enable_testing', 63 'endforeach', 'endfunction', 'endif', 'endmacro', 64 'endwhile', 'execute_process', 'export', 'file', 'find_file', 65 'find_library', 'find_package', 'find_path', 'find_program', 66 'fltk_wrap_ui', 'foreach', 'function', 'get_cmake_property', 67 'get_directory_property', 'get_filename_component', 'get_property', 68 'get_source_file_property', 'get_target_property', 69 'get_test_property', 'if', 'include', 'include_directories', 70 'include_external_msproject', 'include_regular_expression', 71 'install', 'link_directories', 'list', 'load_cache', 72 'load_command', 'macro', 'mark_as_advanced', 'math', 'message', 73 'option', 'output_required_files', 'project', 'qt_wrap_cpp', 74 'qt_wrap_ui', 'remove_definitions', 'return', 'separate_arguments', 75 'set', 'set_directory_properties', 'set_property', 76 'set_source_files_properties', 'set_target_properties', 77 'set_tests_properties', 'site_name', 'source_group', 'string', 78 'target_link_libraries', 'try_compile', 'try_run', 'unset', 79 'variable_watch', 'while' 80 ), 81 2 => array( 82 // Deprecated commands 83 'build_name', 'exec_program', 'export_library_dependencies', 84 'install_files', 'install_programs', 'install_targets', 85 'link_libraries', 'make_directory', 'remove', 'subdir_depends', 86 'subdirs', 'use_mangled_mesa', 'utility_source', 87 'variable_requires', 'write_file' 88 ), 89 3 => array( 90 // Special command arguments, this list is not comprehesive. 91 'AND', 'APPEND', 'ASCII', 'BOOL', 'CACHE', 'COMMAND', 'COMMENT', 92 'COMPARE', 'CONFIGURE', 'DEFINED', 'DEPENDS', 'DIRECTORY', 93 'EQUAL', 'EXCLUDE_FROM_ALL', 'EXISTS', 'FALSE', 'FATAL_ERROR', 94 'FILEPATH', 'FIND', 'FORCE', 'GET', 'GLOBAL', 'GREATER', 95 'IMPLICIT_DEPENDS', 'INSERT', 'INTERNAL', 'IS_ABSOLUTE', 96 'IS_DIRECTORY', 'IS_NEWER_THAN', 'LENGTH', 'LESS', 97 'MAIN_DEPENDENCY', 'MATCH', 'MATCHALL', 'MATCHES', 'MODULE', 'NOT', 98 'NOTFOUND', 'OFF', 'ON', 'OR', 'OUTPUT', 'PARENT_SCOPE', 'PATH', 99 'POLICY', 'POST_BUILD', 'PRE_BUILD', 'PRE_LINK', 'PROPERTY', 100 'RANDOM', 'REGEX', 'REMOVE_AT', 'REMOVE_DUPLICATES', 'REMOVE_ITEM', 101 'REPLACE', 'REVERSE', 'SEND_ERROR', 'SHARED', 'SORT', 'SOURCE', 102 'STATIC', 'STATUS', 'STREQUAL', 'STRGREATER', 'STRING', 'STRIP', 103 'STRLESS', 'SUBSTRING', 'TARGET', 'TEST', 'TOLOWER', 'TOUPPER', 104 'TRUE', 'VERBATIM', 'VERSION', 'VERSION_EQUAL', 'VERSION_GREATOR', 105 'VERSION_LESS', 'WORKING_DIRECTORY', 106 ) 107 ), 108 'CASE_SENSITIVE' => array( 109 GESHI_COMMENTS => false, 110 1 => false, 111 2 => false, 112 3 => true 113 ), 114 'SYMBOLS' => array( 115 0 => array('(', ')') 116 ), 117 'STYLES' => array( 118 'KEYWORDS' => array( 119 1 => 'color: #1f3f81; font-style: bold;', 120 2 => 'color: #1f3f81;', 121 3 => 'color: #077807; font-sytle: italic;' 122 ), 123 'BRACKETS' => array(), 124 'COMMENTS' => array( 125 1 => 'color: #666666; font-style: italic;' 126 ), 127 'ESCAPE_CHAR' => array( 128 0 => 'color: #000099; font-weight: bold;', 129 1 => 'color: #b08000;', 130 2 => 'color: #0000cd;' 131 ), 132 'STRINGS' => array( 133 0 => 'color: #912f11;', 134 ), 135 'SYMBOLS' => array( 136 0 => 'color: #197d8b;' 137 ), 138 'NUMBERS' => array(), 139 'METHODS' => array(), 140 'REGEXPS' => array( 141 0 => 'color: #b08000;', 142 1 => 'color: #0000cd;' 143 ), 144 'SCRIPT' => array() 145 ), 146 'URLS' => array( 147 1 => 'http://www.cmake.org/cmake/help/cmake2.6docs.html#command:{FNAMEL}', 148 2 => 'http://www.cmake.org/cmake/help/cmake2.6docs.html#command:{FNAMEL}', 149 3 => '', 150 ), 151 'OOLANG' => false, 152 'OBJECT_SPLITTERS' => array(), 153 'REGEXPS' => array( 154 // Unquoted variables 155 0 => "\\$(ENV)?\\{[^\\n}]*?\\}", 156 // Unquoted registry keys 157 1 => "\\[HKEY[^\n\\]]*?]" 158 ), 159 'STRICT_MODE_APPLIES' => GESHI_NEVER, 160 'SCRIPT_DELIMITERS' => array(), 161 'HIGHLIGHT_STRICT_BLOCK' => array(), 162 'TAB_WIDTH' => 4, 163 'PARSER_CONTROL' => array( 164 'KEYWORDS' => array( 165 // These keywords cannot come after a open paren 166 1 => array( 167 'DISALLOWED_AFTER' => '(?= *\()' 168 ), 169 2 => array( 170 'DISALLOWED_AFTER' => '(?= *\()' 171 ) 172 ), 173 'ENABLE_FLAGS' => array( 174 'BRACKETS' => GESHI_NEVER, 175 'METHODS' => GESHI_NEVER, 176 'NUMBERS' => GESHI_NEVER 177 ) 178 ) 179); 180