diff --git a/Languages/Resources/Jamfile b/Languages/Resources/Jamfile index a1c4207..4c3cdf9 100644 --- a/Languages/Resources/Jamfile +++ b/Languages/Resources/Jamfile @@ -3,6 +3,7 @@ SubDir TOP Languages Resources ; # RezObjects keywords.asm.r + keywords.cmake.r keywords.cpp.r keywords.d.r keywords.diff.r diff --git a/Languages/Resources/keywords.cmake b/Languages/Resources/keywords.cmake new file mode 100644 index 0000000..f8f0e37 --- /dev/null +++ b/Languages/Resources/keywords.cmake @@ -0,0 +1,1134 @@ +-Pe-Keywords-Language- # cmake --help-command-list +add_compile_definitions +add_compile_options +add_custom_command +add_custom_target +add_definitions +add_dependencies +add_executable +add_library +add_link_options +add_subdirectory +add_test +aux_source_directory +block +break +build_command +build_name +cmake_file_api +cmake_host_system_information +cmake_language +cmake_minimum_required +cmake_parse_arguments +cmake_path +cmake_policy +configure_file +continue +create_test_sourcelist +ctest_build +ctest_configure +ctest_coverage +ctest_empty_binary_directory +ctest_memcheck +ctest_read_custom_files +ctest_run_script +ctest_sleep +ctest_start +ctest_submit +ctest_test +ctest_update +ctest_upload +define_property +else +elseif +enable_language +enable_testing +endblock +endforeach +endfunction +endif +endmacro +endwhile +exec_program +execute_process +export +export_library_dependencies +file +find_file +find_library +find_package +find_path +find_program +fltk_wrap_ui +foreach +function +get_cmake_property +get_directory_property +get_filename_component +get_property +get_source_file_property +get_target_property +get_test_property +if +include +include_directories +include_external_msproject +include_guard +include_regular_expression +install +install_files +install_programs +install_targets +link_directories +link_libraries +list +load_cache +load_command +macro +make_directory +mark_as_advanced +math +message +option +output_required_files +project +qt_wrap_cpp +qt_wrap_ui +remove +remove_definitions +return +separate_arguments +set +set_directory_properties +set_property +set_source_files_properties +set_target_properties +set_tests_properties +site_name +source_group +string +subdir_depends +subdirs +target_compile_definitions +target_compile_features +target_compile_options +target_include_directories +target_link_directories +target_link_libraries +target_link_options +target_precompile_headers +target_sources +try_compile +try_run +unset +use_mangled_mesa +utility_source +variable_requires +variable_watch +while +write_file + +-Pe-Keywords-User1- # cmake --help-variable-list +_BINARY_DIR +_DESCRIPTION +_HOMEPAGE_URL +_IS_TOP_LEVEL +_SOURCE_DIR +_VERSION +_VERSION_MAJOR +_VERSION_MINOR +_VERSION_PATCH +_VERSION_TWEAK +_ROOT +ANDROID +APPLE +BORLAND +BSD +BUILD_SHARED_LIBS +CACHE +CMAKE__POSTFIX +CMAKE__ANDROID_TOOLCHAIN_MACHINE +CMAKE__ANDROID_TOOLCHAIN_PREFIX +CMAKE__ANDROID_TOOLCHAIN_SUFFIX +CMAKE__ARCHIVE_APPEND +CMAKE__ARCHIVE_CREATE +CMAKE__ARCHIVE_FINISH +CMAKE__BYTE_ORDER +CMAKE__CLANG_TIDY +CMAKE__CLANG_TIDY_EXPORT_FIXES_DIR +CMAKE__COMPILER +CMAKE__COMPILER_ABI +CMAKE__COMPILER_AR +CMAKE__COMPILER_ARCHITECTURE_ID +CMAKE__COMPILER_EXTERNAL_TOOLCHAIN +CMAKE__COMPILER_FRONTEND_VARIANT +CMAKE__COMPILER_ID +CMAKE__COMPILER_LAUNCHER +CMAKE__COMPILER_LINKER +CMAKE__COMPILER_LINKER_FRONTEND_VARIANT +CMAKE__COMPILER_LINKER_ID +CMAKE__COMPILER_LINKER_VERSION +CMAKE__COMPILER_LOADED +CMAKE__COMPILER_PREDEFINES_COMMAND +CMAKE__COMPILER_RANLIB +CMAKE__COMPILER_TARGET +CMAKE__COMPILER_VERSION +CMAKE__COMPILER_VERSION_INTERNAL +CMAKE__COMPILE_OBJECT +CMAKE__CPPCHECK +CMAKE__CPPLINT +CMAKE__CREATE_SHARED_LIBRARY +CMAKE__CREATE_SHARED_MODULE +CMAKE__CREATE_STATIC_LIBRARY +CMAKE__EXTENSIONS +CMAKE__EXTENSIONS_DEFAULT +CMAKE__FLAGS +CMAKE__FLAGS_ +CMAKE__FLAGS__INIT +CMAKE__FLAGS_DEBUG +CMAKE__FLAGS_DEBUG_INIT +CMAKE__FLAGS_INIT +CMAKE__FLAGS_MINSIZEREL +CMAKE__FLAGS_MINSIZEREL_INIT +CMAKE__FLAGS_RELEASE +CMAKE__FLAGS_RELEASE_INIT +CMAKE__FLAGS_RELWITHDEBINFO +CMAKE__FLAGS_RELWITHDEBINFO_INIT +CMAKE__HOST_COMPILER +CMAKE__IGNORE_EXTENSIONS +CMAKE__IMPLICIT_INCLUDE_DIRECTORIES +CMAKE__IMPLICIT_LINK_DIRECTORIES +CMAKE__IMPLICIT_LINK_FRAMEWORK_DIRECTORIES +CMAKE__IMPLICIT_LINK_LIBRARIES +CMAKE__INCLUDE_WHAT_YOU_USE +CMAKE__LIBRARY_ARCHITECTURE +CMAKE__LINKER_LAUNCHER +CMAKE__LINKER_PREFERENCE +CMAKE__LINKER_PREFERENCE_PROPAGATES +CMAKE__LINKER_WRAPPER_FLAG +CMAKE__LINKER_WRAPPER_FLAG_SEP +CMAKE__LINK_EXECUTABLE +CMAKE__LINK_GROUP_USING_ +CMAKE__LINK_GROUP_USING__SUPPORTED +CMAKE__LINK_LIBRARY__ATTRIBUTES +CMAKE__LINK_LIBRARY_FILE_FLAG +CMAKE__LINK_LIBRARY_FLAG +CMAKE__LINK_LIBRARY_SUFFIX +CMAKE__LINK_LIBRARY_USING_ +CMAKE__LINK_LIBRARY_USING__SUPPORTED +CMAKE__LINK_WHAT_YOU_USE_FLAG +CMAKE__OUTPUT_EXTENSION +CMAKE__PLATFORM_ID +CMAKE__SIMULATE_ID +CMAKE__SIMULATE_VERSION +CMAKE__SIZEOF_DATA_PTR +CMAKE__SOURCE_FILE_EXTENSIONS +CMAKE__STANDARD +CMAKE__STANDARD_DEFAULT +CMAKE__STANDARD_INCLUDE_DIRECTORIES +CMAKE__STANDARD_LATEST +CMAKE__STANDARD_LIBRARIES +CMAKE__STANDARD_REQUIRED +CMAKE__USING_LINKER_ +CMAKE__USING_LINKER_MODE +CMAKE__VISIBILITY_PRESET +CMAKE_ABSOLUTE_DESTINATION_FILES +CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLY +CMAKE_ADSP_ROOT +CMAKE_AIX_EXPORT_ALL_SYMBOLS +CMAKE_ANDROID_ANT_ADDITIONAL_OPTIONS +CMAKE_ANDROID_API +CMAKE_ANDROID_API_MIN +CMAKE_ANDROID_ARCH +CMAKE_ANDROID_ARCH_ABI +CMAKE_ANDROID_ARM_MODE +CMAKE_ANDROID_ARM_NEON +CMAKE_ANDROID_ASSETS_DIRECTORIES +CMAKE_ANDROID_EXCEPTIONS +CMAKE_ANDROID_GUI +CMAKE_ANDROID_JAR_DEPENDENCIES +CMAKE_ANDROID_JAR_DIRECTORIES +CMAKE_ANDROID_JAVA_SOURCE_DIR +CMAKE_ANDROID_NATIVE_LIB_DEPENDENCIES +CMAKE_ANDROID_NATIVE_LIB_DIRECTORIES +CMAKE_ANDROID_NDK +CMAKE_ANDROID_NDK_DEPRECATED_HEADERS +CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG +CMAKE_ANDROID_NDK_TOOLCHAIN_VERSION +CMAKE_ANDROID_NDK_VERSION +CMAKE_ANDROID_PROCESS_MAX +CMAKE_ANDROID_PROGUARD +CMAKE_ANDROID_PROGUARD_CONFIG_PATH +CMAKE_ANDROID_RTTI +CMAKE_ANDROID_SECURE_PROPS_PATH +CMAKE_ANDROID_SKIP_ANT_STEP +CMAKE_ANDROID_STANDALONE_TOOLCHAIN +CMAKE_ANDROID_STL_TYPE +CMAKE_APPBUNDLE_PATH +CMAKE_APPLE_SILICON_PROCESSOR +CMAKE_AR +CMAKE_ARCHIVE_OUTPUT_DIRECTORY +CMAKE_ARCHIVE_OUTPUT_DIRECTORY_ +CMAKE_ARGC +CMAKE_ARGV0 +CMAKE_AUTOGEN_BETTER_GRAPH_MULTI_CONFIG +CMAKE_AUTOGEN_COMMAND_LINE_LENGTH_MAX +CMAKE_AUTOGEN_ORIGIN_DEPENDS +CMAKE_AUTOGEN_PARALLEL +CMAKE_AUTOGEN_USE_SYSTEM_INCLUDE +CMAKE_AUTOGEN_VERBOSE +CMAKE_AUTOMOC +CMAKE_AUTOMOC_COMPILER_PREDEFINES +CMAKE_AUTOMOC_DEPEND_FILTERS +CMAKE_AUTOMOC_EXECUTABLE +CMAKE_AUTOMOC_MACRO_NAMES +CMAKE_AUTOMOC_MOC_OPTIONS +CMAKE_AUTOMOC_PATH_PREFIX +CMAKE_AUTOMOC_RELAXED_MODE +CMAKE_AUTORCC +CMAKE_AUTORCC_EXECUTABLE +CMAKE_AUTORCC_OPTIONS +CMAKE_AUTOUIC +CMAKE_AUTOUIC_EXECUTABLE +CMAKE_AUTOUIC_OPTIONS +CMAKE_AUTOUIC_SEARCH_PATHS +CMAKE_BACKWARDS_COMPATIBILITY +CMAKE_BINARY_DIR +CMAKE_BUILD_RPATH +CMAKE_BUILD_RPATH_USE_ORIGIN +CMAKE_BUILD_TOOL +CMAKE_BUILD_TYPE +CMAKE_BUILD_WITH_INSTALL_NAME_DIR +CMAKE_BUILD_WITH_INSTALL_RPATH +CMAKE_CACHEFILE_DIR +CMAKE_CACHE_MAJOR_VERSION +CMAKE_CACHE_MINOR_VERSION +CMAKE_CACHE_PATCH_VERSION +CMAKE_CFG_INTDIR +CMAKE_CLANG_VFS_OVERLAY +CMAKE_CL_64 +CMAKE_CODEBLOCKS_COMPILER_ID +CMAKE_CODEBLOCKS_EXCLUDE_EXTERNAL_FILES +CMAKE_CODELITE_USE_TARGETS +CMAKE_COLOR_DIAGNOSTICS +CMAKE_COLOR_MAKEFILE +CMAKE_COMMAND +CMAKE_COMPILER_2005 +CMAKE_COMPILER_IS_GNUCC +CMAKE_COMPILER_IS_GNUCXX +CMAKE_COMPILER_IS_GNUG77 +CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY +CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY_ +CMAKE_COMPILE_WARNING_AS_ERROR +CMAKE_CONFIGURATION_TYPES +CMAKE_CPACK_COMMAND +CMAKE_CROSSCOMPILING +CMAKE_CROSSCOMPILING_EMULATOR +CMAKE_CROSS_CONFIGS +CMAKE_CTEST_ARGUMENTS +CMAKE_CTEST_COMMAND +CMAKE_CUDA_ARCHITECTURES +CMAKE_CUDA_COMPILE_FEATURES +CMAKE_CUDA_EXTENSIONS +CMAKE_CUDA_HOST_COMPILER +CMAKE_CUDA_RESOLVE_DEVICE_SYMBOLS +CMAKE_CUDA_RUNTIME_LIBRARY +CMAKE_CUDA_SEPARABLE_COMPILATION +CMAKE_CUDA_STANDARD +CMAKE_CUDA_STANDARD_REQUIRED +CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES +CMAKE_CURRENT_BINARY_DIR +CMAKE_CURRENT_FUNCTION +CMAKE_CURRENT_FUNCTION_LIST_DIR +CMAKE_CURRENT_FUNCTION_LIST_FILE +CMAKE_CURRENT_FUNCTION_LIST_LINE +CMAKE_CURRENT_LIST_DIR +CMAKE_CURRENT_LIST_FILE +CMAKE_CURRENT_LIST_LINE +CMAKE_CURRENT_SOURCE_DIR +CMAKE_CXX_COMPILER_IMPORT_STD +CMAKE_CXX_COMPILE_FEATURES +CMAKE_CXX_EXTENSIONS +CMAKE_CXX_MODULE_STD +CMAKE_CXX_SCAN_FOR_MODULES +CMAKE_CXX_STANDARD +CMAKE_CXX_STANDARD_REQUIRED +CMAKE_C_COMPILE_FEATURES +CMAKE_C_EXTENSIONS +CMAKE_C_STANDARD +CMAKE_C_STANDARD_REQUIRED +CMAKE_DEBUG_POSTFIX +CMAKE_DEBUG_TARGET_PROPERTIES +CMAKE_DEFAULT_BUILD_TYPE +CMAKE_DEFAULT_CONFIGS +CMAKE_DEPENDS_IN_PROJECT_ONLY +CMAKE_DEPENDS_USE_COMPILER +CMAKE_DIRECTORY_LABELS +CMAKE_DISABLE_FIND_PACKAGE_ +CMAKE_DISABLE_PRECOMPILE_HEADERS +CMAKE_DLL_NAME_WITH_SOVERSION +CMAKE_DL_LIBS +CMAKE_DOTNET_SDK +CMAKE_DOTNET_TARGET_FRAMEWORK +CMAKE_DOTNET_TARGET_FRAMEWORK_VERSION +CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES +CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT +CMAKE_ECLIPSE_MAKE_ARGUMENTS +CMAKE_ECLIPSE_RESOURCE_ENCODING +CMAKE_ECLIPSE_VERSION +CMAKE_EDIT_COMMAND +CMAKE_ENABLE_EXPORTS +CMAKE_ERROR_DEPRECATED +CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION +CMAKE_EXECUTABLE_ENABLE_EXPORTS +CMAKE_EXECUTABLE_SUFFIX +CMAKE_EXECUTABLE_SUFFIX_ +CMAKE_EXECUTE_PROCESS_COMMAND_ECHO +CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS_ +CMAKE_EXE_LINKER_FLAGS__INIT +CMAKE_EXE_LINKER_FLAGS_INIT +CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_FIND_PACKAGE_NAME +CMAKE_EXPORT_NO_PACKAGE_REGISTRY +CMAKE_EXPORT_PACKAGE_REGISTRY +CMAKE_EXTRA_GENERATOR +CMAKE_EXTRA_SHARED_LIBRARY_SUFFIXES +CMAKE_FIND_APPBUNDLE +CMAKE_FIND_DEBUG_MODE +CMAKE_FIND_FRAMEWORK +CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX +CMAKE_FIND_LIBRARY_PREFIXES +CMAKE_FIND_LIBRARY_SUFFIXES +CMAKE_FIND_NO_INSTALL_PREFIX +CMAKE_FIND_PACKAGE_NAME +CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY +CMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY +CMAKE_FIND_PACKAGE_PREFER_CONFIG +CMAKE_FIND_PACKAGE_REDIRECTS_DIR +CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS +CMAKE_FIND_PACKAGE_SORT_DIRECTION +CMAKE_FIND_PACKAGE_SORT_ORDER +CMAKE_FIND_PACKAGE_TARGETS_GLOBAL +CMAKE_FIND_PACKAGE_WARN_NO_MODULE +CMAKE_FIND_ROOT_PATH +CMAKE_FIND_ROOT_PATH_MODE_INCLUDE +CMAKE_FIND_ROOT_PATH_MODE_LIBRARY +CMAKE_FIND_ROOT_PATH_MODE_PACKAGE +CMAKE_FIND_ROOT_PATH_MODE_PROGRAM +CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH +CMAKE_FIND_USE_CMAKE_PATH +CMAKE_FIND_USE_CMAKE_SYSTEM_PATH +CMAKE_FIND_USE_INSTALL_PREFIX +CMAKE_FIND_USE_PACKAGE_REGISTRY +CMAKE_FIND_USE_PACKAGE_ROOT_PATH +CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH +CMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY +CMAKE_FOLDER +CMAKE_FRAMEWORK +CMAKE_FRAMEWORK_MULTI_CONFIG_POSTFIX_ +CMAKE_FRAMEWORK_PATH +CMAKE_Fortran_FORMAT +CMAKE_Fortran_MODDIR_DEFAULT +CMAKE_Fortran_MODDIR_FLAG +CMAKE_Fortran_MODOUT_FLAG +CMAKE_Fortran_MODULE_DIRECTORY +CMAKE_Fortran_PREPROCESS +CMAKE_GENERATOR +CMAKE_GENERATOR_INSTANCE +CMAKE_GENERATOR_PLATFORM +CMAKE_GENERATOR_TOOLSET +CMAKE_GHS_NO_SOURCE_GROUP_FILE +CMAKE_GLOBAL_AUTOGEN_TARGET +CMAKE_GLOBAL_AUTOGEN_TARGET_NAME +CMAKE_GLOBAL_AUTORCC_TARGET +CMAKE_GLOBAL_AUTORCC_TARGET_NAME +CMAKE_GNUtoMS +CMAKE_HIP_ARCHITECTURES +CMAKE_HIP_COMPILE_FEATURES +CMAKE_HIP_EXTENSIONS +CMAKE_HIP_PLATFORM +CMAKE_HIP_STANDARD +CMAKE_HIP_STANDARD_REQUIRED +CMAKE_HOME_DIRECTORY +CMAKE_HOST_APPLE +CMAKE_HOST_BSD +CMAKE_HOST_LINUX +CMAKE_HOST_SOLARIS +CMAKE_HOST_SYSTEM +CMAKE_HOST_SYSTEM_NAME +CMAKE_HOST_SYSTEM_PROCESSOR +CMAKE_HOST_SYSTEM_VERSION +CMAKE_HOST_UNIX +CMAKE_HOST_WIN32 +CMAKE_IGNORE_PATH +CMAKE_IGNORE_PREFIX_PATH +CMAKE_IMPORT_LIBRARY_PREFIX +CMAKE_IMPORT_LIBRARY_SUFFIX +CMAKE_INCLUDE_CURRENT_DIR +CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE +CMAKE_INCLUDE_DIRECTORIES_BEFORE +CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE +CMAKE_INCLUDE_PATH +CMAKE_INSTALL_DEFAULT_COMPONENT_NAME +CMAKE_INSTALL_DEFAULT_DIRECTORY_PERMISSIONS +CMAKE_INSTALL_MESSAGE +CMAKE_INSTALL_NAME_DIR +CMAKE_INSTALL_PREFIX +CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT +CMAKE_INSTALL_REMOVE_ENVIRONMENT_RPATH +CMAKE_INSTALL_RPATH +CMAKE_INSTALL_RPATH_USE_LINK_PATH +CMAKE_INTERNAL_PLATFORM_ABI +CMAKE_INTERPROCEDURAL_OPTIMIZATION +CMAKE_INTERPROCEDURAL_OPTIMIZATION_ +CMAKE_IOS_INSTALL_COMBINED +CMAKE_ISPC_HEADER_DIRECTORY +CMAKE_ISPC_HEADER_SUFFIX +CMAKE_ISPC_INSTRUCTION_SETS +CMAKE_JOB_POOLS +CMAKE_JOB_POOL_COMPILE +CMAKE_JOB_POOL_LINK +CMAKE_JOB_POOL_PRECOMPILE_HEADER +CMAKE_KATE_FILES_MODE +CMAKE_KATE_MAKE_ARGUMENTS +CMAKE_LIBRARY_ARCHITECTURE +CMAKE_LIBRARY_ARCHITECTURE_REGEX +CMAKE_LIBRARY_OUTPUT_DIRECTORY +CMAKE_LIBRARY_OUTPUT_DIRECTORY_ +CMAKE_LIBRARY_PATH +CMAKE_LIBRARY_PATH_FLAG +CMAKE_LINKER_TYPE +CMAKE_LINK_DEF_FILE_FLAG +CMAKE_LINK_DEPENDS_NO_SHARED +CMAKE_LINK_DEPENDS_USE_LINKER +CMAKE_LINK_DIRECTORIES_BEFORE +CMAKE_LINK_GROUP_USING_ +CMAKE_LINK_GROUP_USING__SUPPORTED +CMAKE_LINK_INTERFACE_LIBRARIES +CMAKE_LINK_LIBRARIES_ONLY_TARGETS +CMAKE_LINK_LIBRARY__ATTRIBUTES +CMAKE_LINK_LIBRARY_FILE_FLAG +CMAKE_LINK_LIBRARY_FLAG +CMAKE_LINK_LIBRARY_SUFFIX +CMAKE_LINK_LIBRARY_USING_ +CMAKE_LINK_LIBRARY_USING__SUPPORTED +CMAKE_LINK_SEARCH_END_STATIC +CMAKE_LINK_SEARCH_START_STATIC +CMAKE_LINK_WHAT_YOU_USE +CMAKE_LINK_WHAT_YOU_USE_CHECK +CMAKE_MACOSX_BUNDLE +CMAKE_MACOSX_RPATH +CMAKE_MAJOR_VERSION +CMAKE_MAKE_PROGRAM +CMAKE_MAP_IMPORTED_CONFIG_ +CMAKE_MATCH_ +CMAKE_MATCH_COUNT +CMAKE_MAXIMUM_RECURSION_DEPTH +CMAKE_MESSAGE_CONTEXT +CMAKE_MESSAGE_CONTEXT_SHOW +CMAKE_MESSAGE_INDENT +CMAKE_MESSAGE_LOG_LEVEL +CMAKE_MFC_FLAG +CMAKE_MINIMUM_REQUIRED_VERSION +CMAKE_MINOR_VERSION +CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS_ +CMAKE_MODULE_LINKER_FLAGS__INIT +CMAKE_MODULE_LINKER_FLAGS_INIT +CMAKE_MODULE_PATH +CMAKE_MSVCIDE_RUN_PATH +CMAKE_MSVC_DEBUG_INFORMATION_FORMAT +CMAKE_MSVC_RUNTIME_LIBRARY +CMAKE_NETRC +CMAKE_NETRC_FILE +CMAKE_NINJA_OUTPUT_PATH_PREFIX +CMAKE_NOT_USING_CONFIG_FLAGS +CMAKE_NO_BUILTIN_CHRPATH +CMAKE_NO_SYSTEM_FROM_IMPORTED +CMAKE_OBJCXX_EXTENSIONS +CMAKE_OBJCXX_STANDARD +CMAKE_OBJCXX_STANDARD_REQUIRED +CMAKE_OBJC_EXTENSIONS +CMAKE_OBJC_STANDARD +CMAKE_OBJC_STANDARD_REQUIRED +CMAKE_OBJECT_PATH_MAX +CMAKE_OPTIMIZE_DEPENDENCIES +CMAKE_OSX_ARCHITECTURES +CMAKE_OSX_DEPLOYMENT_TARGET +CMAKE_OSX_SYSROOT +CMAKE_PARENT_LIST_FILE +CMAKE_PATCH_VERSION +CMAKE_PCH_INSTANTIATE_TEMPLATES +CMAKE_PCH_WARN_INVALID +CMAKE_PDB_OUTPUT_DIRECTORY +CMAKE_PDB_OUTPUT_DIRECTORY_ +CMAKE_PLATFORM_NO_VERSIONED_SONAME +CMAKE_POLICY_DEFAULT_CMP +CMAKE_POLICY_WARNING_CMP +CMAKE_POSITION_INDEPENDENT_CODE +CMAKE_PREFIX_PATH +CMAKE_PROGRAM_PATH +CMAKE_PROJECT__INCLUDE +CMAKE_PROJECT__INCLUDE_BEFORE +CMAKE_PROJECT_DESCRIPTION +CMAKE_PROJECT_HOMEPAGE_URL +CMAKE_PROJECT_INCLUDE +CMAKE_PROJECT_INCLUDE_BEFORE +CMAKE_PROJECT_NAME +CMAKE_PROJECT_TOP_LEVEL_INCLUDES +CMAKE_PROJECT_VERSION +CMAKE_PROJECT_VERSION_MAJOR +CMAKE_PROJECT_VERSION_MINOR +CMAKE_PROJECT_VERSION_PATCH +CMAKE_PROJECT_VERSION_TWEAK +CMAKE_RANLIB +CMAKE_REQUIRE_FIND_PACKAGE_ +CMAKE_ROOT +CMAKE_RULE_MESSAGES +CMAKE_RUNTIME_OUTPUT_DIRECTORY +CMAKE_RUNTIME_OUTPUT_DIRECTORY_ +CMAKE_SCRIPT_MODE_FILE +CMAKE_SHARED_LIBRARY_ENABLE_EXPORTS +CMAKE_SHARED_LIBRARY_PREFIX +CMAKE_SHARED_LIBRARY_SUFFIX +CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS_ +CMAKE_SHARED_LINKER_FLAGS__INIT +CMAKE_SHARED_LINKER_FLAGS_INIT +CMAKE_SHARED_MODULE_PREFIX +CMAKE_SHARED_MODULE_SUFFIX +CMAKE_SIZEOF_VOID_P +CMAKE_SKIP_BUILD_RPATH +CMAKE_SKIP_INSTALL_ALL_DEPENDENCY +CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RULES +CMAKE_SKIP_RPATH +CMAKE_SKIP_TEST_ALL_DEPENDENCY +CMAKE_SOURCE_DIR +CMAKE_STAGING_PREFIX +CMAKE_STATIC_LIBRARY_PREFIX +CMAKE_STATIC_LIBRARY_SUFFIX +CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS_ +CMAKE_STATIC_LINKER_FLAGS__INIT +CMAKE_STATIC_LINKER_FLAGS_INIT +CMAKE_SUBLIME_TEXT_2_ENV_SETTINGS +CMAKE_SUBLIME_TEXT_2_EXCLUDE_BUILD_TREE +CMAKE_SUPPRESS_REGENERATION +CMAKE_SYSROOT +CMAKE_SYSROOT_COMPILE +CMAKE_SYSROOT_LINK +CMAKE_SYSTEM +CMAKE_SYSTEM_APPBUNDLE_PATH +CMAKE_SYSTEM_FRAMEWORK_PATH +CMAKE_SYSTEM_IGNORE_PATH +CMAKE_SYSTEM_IGNORE_PREFIX_PATH +CMAKE_SYSTEM_INCLUDE_PATH +CMAKE_SYSTEM_LIBRARY_PATH +CMAKE_SYSTEM_NAME +CMAKE_SYSTEM_PREFIX_PATH +CMAKE_SYSTEM_PROCESSOR +CMAKE_SYSTEM_PROGRAM_PATH +CMAKE_SYSTEM_VERSION +CMAKE_Swift_COMPILATION_MODE +CMAKE_Swift_LANGUAGE_VERSION +CMAKE_Swift_MODULE_DIRECTORY +CMAKE_Swift_NUM_THREADS +CMAKE_TASKING_TOOLSET +CMAKE_TEST_LAUNCHER +CMAKE_TLS_CAINFO +CMAKE_TLS_VERIFY +CMAKE_TLS_VERSION +CMAKE_TOOLCHAIN_FILE +CMAKE_TRY_COMPILE_CONFIGURATION +CMAKE_TRY_COMPILE_NO_PLATFORM_VARIABLES +CMAKE_TRY_COMPILE_PLATFORM_VARIABLES +CMAKE_TRY_COMPILE_TARGET_TYPE +CMAKE_TWEAK_VERSION +CMAKE_UNITY_BUILD +CMAKE_UNITY_BUILD_BATCH_SIZE +CMAKE_UNITY_BUILD_UNIQUE_ID +CMAKE_USER_MAKE_RULES_OVERRIDE +CMAKE_USER_MAKE_RULES_OVERRIDE_ +CMAKE_USE_RELATIVE_PATHS +CMAKE_VERBOSE_MAKEFILE +CMAKE_VERIFY_INTERFACE_HEADER_SETS +CMAKE_VERSION +CMAKE_VISIBILITY_INLINES_HIDDEN +CMAKE_VS_DEBUGGER_COMMAND +CMAKE_VS_DEBUGGER_COMMAND_ARGUMENTS +CMAKE_VS_DEBUGGER_ENVIRONMENT +CMAKE_VS_DEBUGGER_WORKING_DIRECTORY +CMAKE_VS_DEVENV_COMMAND +CMAKE_VS_GLOBALS +CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD +CMAKE_VS_INCLUDE_PACKAGE_TO_DEFAULT_BUILD +CMAKE_VS_INTEL_Fortran_PROJECT_VERSION +CMAKE_VS_JUST_MY_CODE_DEBUGGING +CMAKE_VS_MSBUILD_COMMAND +CMAKE_VS_NO_COMPILE_BATCHING +CMAKE_VS_NUGET_PACKAGE_RESTORE +CMAKE_VS_NsightTegra_VERSION +CMAKE_VS_PLATFORM_NAME +CMAKE_VS_PLATFORM_NAME_DEFAULT +CMAKE_VS_PLATFORM_TOOLSET +CMAKE_VS_PLATFORM_TOOLSET_CUDA +CMAKE_VS_PLATFORM_TOOLSET_CUDA_CUSTOM_DIR +CMAKE_VS_PLATFORM_TOOLSET_FORTRAN +CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE +CMAKE_VS_PLATFORM_TOOLSET_VERSION +CMAKE_VS_SDK_EXCLUDE_DIRECTORIES +CMAKE_VS_SDK_EXECUTABLE_DIRECTORIES +CMAKE_VS_SDK_INCLUDE_DIRECTORIES +CMAKE_VS_SDK_LIBRARY_DIRECTORIES +CMAKE_VS_SDK_LIBRARY_WINRT_DIRECTORIES +CMAKE_VS_SDK_REFERENCE_DIRECTORIES +CMAKE_VS_SDK_SOURCE_DIRECTORIES +CMAKE_VS_TARGET_FRAMEWORK_IDENTIFIER +CMAKE_VS_TARGET_FRAMEWORK_TARGETS_VERSION +CMAKE_VS_TARGET_FRAMEWORK_VERSION +CMAKE_VS_USE_DEBUG_LIBRARIES +CMAKE_VS_VERSION_BUILD_NUMBER +CMAKE_VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION +CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION +CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM +CMAKE_VS_WINRT_BY_DEFAULT +CMAKE_WARN_DEPRECATED +CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION +CMAKE_WATCOM_RUNTIME_LIBRARY +CMAKE_WIN32_EXECUTABLE +CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS +CMAKE_XCODE_ATTRIBUTE_ +CMAKE_XCODE_BUILD_SYSTEM +CMAKE_XCODE_GENERATE_SCHEME +CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY +CMAKE_XCODE_LINK_BUILD_PHASE_MODE +CMAKE_XCODE_PLATFORM_TOOLSET +CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER +CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN +CMAKE_XCODE_SCHEME_DEBUG_DOCUMENT_VERSIONING +CMAKE_XCODE_SCHEME_DISABLE_MAIN_THREAD_CHECKER +CMAKE_XCODE_SCHEME_DYNAMIC_LIBRARY_LOADS +CMAKE_XCODE_SCHEME_DYNAMIC_LINKER_API_USAGE +CMAKE_XCODE_SCHEME_ENABLE_GPU_API_VALIDATION +CMAKE_XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE +CMAKE_XCODE_SCHEME_ENABLE_GPU_SHADER_VALIDATION +CMAKE_XCODE_SCHEME_ENVIRONMENT +CMAKE_XCODE_SCHEME_GUARD_MALLOC +CMAKE_XCODE_SCHEME_LAUNCH_CONFIGURATION +CMAKE_XCODE_SCHEME_LAUNCH_MODE +CMAKE_XCODE_SCHEME_MAIN_THREAD_CHECKER_STOP +CMAKE_XCODE_SCHEME_MALLOC_GUARD_EDGES +CMAKE_XCODE_SCHEME_MALLOC_SCRIBBLE +CMAKE_XCODE_SCHEME_MALLOC_STACK +CMAKE_XCODE_SCHEME_THREAD_SANITIZER +CMAKE_XCODE_SCHEME_THREAD_SANITIZER_STOP +CMAKE_XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER +CMAKE_XCODE_SCHEME_UNDEFINED_BEHAVIOUR_SANITIZER_STOP +CMAKE_XCODE_SCHEME_WORKING_DIRECTORY +CMAKE_XCODE_SCHEME_ZOMBIE_OBJECTS +CMAKE_XCODE_XCCONFIG +CPACK_ABSOLUTE_DESTINATION_FILES +CPACK_COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY +CPACK_CUSTOM_INSTALL_VARIABLES +CPACK_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION +CPACK_INCLUDE_TOPLEVEL_DIRECTORY +CPACK_INSTALL_DEFAULT_DIRECTORY_PERMISSIONS +CPACK_PACKAGING_INSTALL_PREFIX +CPACK_SET_DESTDIR +CPACK_WARN_ON_ABSOLUTE_INSTALL_DESTINATION +CTEST_BINARY_DIRECTORY +CTEST_BUILD_COMMAND +CTEST_BUILD_NAME +CTEST_BZR_COMMAND +CTEST_BZR_UPDATE_OPTIONS +CTEST_CHANGE_ID +CTEST_CHECKOUT_COMMAND +CTEST_CONFIGURATION_TYPE +CTEST_CONFIGURE_COMMAND +CTEST_COVERAGE_COMMAND +CTEST_COVERAGE_EXTRA_FLAGS +CTEST_CURL_OPTIONS +CTEST_CUSTOM_COVERAGE_EXCLUDE +CTEST_CUSTOM_ERROR_EXCEPTION +CTEST_CUSTOM_ERROR_MATCH +CTEST_CUSTOM_ERROR_POST_CONTEXT +CTEST_CUSTOM_ERROR_PRE_CONTEXT +CTEST_CUSTOM_MAXIMUM_FAILED_TEST_OUTPUT_SIZE +CTEST_CUSTOM_MAXIMUM_NUMBER_OF_ERRORS +CTEST_CUSTOM_MAXIMUM_NUMBER_OF_WARNINGS +CTEST_CUSTOM_MAXIMUM_PASSED_TEST_OUTPUT_SIZE +CTEST_CUSTOM_MEMCHECK_IGNORE +CTEST_CUSTOM_POST_MEMCHECK +CTEST_CUSTOM_POST_TEST +CTEST_CUSTOM_PRE_MEMCHECK +CTEST_CUSTOM_PRE_TEST +CTEST_CUSTOM_TESTS_IGNORE +CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION +CTEST_CUSTOM_WARNING_EXCEPTION +CTEST_CUSTOM_WARNING_MATCH +CTEST_CVS_CHECKOUT +CTEST_CVS_COMMAND +CTEST_CVS_UPDATE_OPTIONS +CTEST_DROP_LOCATION +CTEST_DROP_METHOD +CTEST_DROP_SITE +CTEST_DROP_SITE_CDASH +CTEST_DROP_SITE_PASSWORD +CTEST_DROP_SITE_USER +CTEST_EXTRA_COVERAGE_GLOB +CTEST_GIT_COMMAND +CTEST_GIT_INIT_SUBMODULES +CTEST_GIT_UPDATE_CUSTOM +CTEST_GIT_UPDATE_OPTIONS +CTEST_HG_COMMAND +CTEST_HG_UPDATE_OPTIONS +CTEST_LABELS_FOR_SUBPROJECTS +CTEST_MEMORYCHECK_COMMAND +CTEST_MEMORYCHECK_COMMAND_OPTIONS +CTEST_MEMORYCHECK_SANITIZER_OPTIONS +CTEST_MEMORYCHECK_SUPPRESSIONS_FILE +CTEST_MEMORYCHECK_TYPE +CTEST_NIGHTLY_START_TIME +CTEST_P4_CLIENT +CTEST_P4_COMMAND +CTEST_P4_OPTIONS +CTEST_P4_UPDATE_OPTIONS +CTEST_RESOURCE_SPEC_FILE +CTEST_RUN_CURRENT_SCRIPT +CTEST_SCP_COMMAND +CTEST_SCRIPT_DIRECTORY +CTEST_SITE +CTEST_SOURCE_DIRECTORY +CTEST_SUBMIT_INACTIVITY_TIMEOUT +CTEST_SUBMIT_URL +CTEST_SVN_COMMAND +CTEST_SVN_OPTIONS +CTEST_SVN_UPDATE_OPTIONS +CTEST_TEST_LOAD +CTEST_TEST_TIMEOUT +CTEST_TLS_VERIFY +CTEST_TLS_VERSION +CTEST_TRIGGER_SITE +CTEST_UPDATE_COMMAND +CTEST_UPDATE_OPTIONS +CTEST_UPDATE_VERSION_ONLY +CTEST_UPDATE_VERSION_OVERRIDE +CTEST_USE_LAUNCHERS +CYGWIN +ENV +EXECUTABLE_OUTPUT_PATH +GHSMULTI +IOS +LIBRARY_OUTPUT_PATH +LINUX +MINGW +MSVC +MSVC10 +MSVC11 +MSVC12 +MSVC14 +MSVC60 +MSVC70 +MSVC71 +MSVC80 +MSVC90 +MSVC_IDE +MSVC_TOOLSET_VERSION +MSVC_VERSION +MSYS +PROJECT_BINARY_DIR +PROJECT_DESCRIPTION +PROJECT_HOMEPAGE_URL +PROJECT_IS_TOP_LEVEL +PROJECT_NAME +PROJECT_SOURCE_DIR +PROJECT_VERSION +PROJECT_VERSION_MAJOR +PROJECT_VERSION_MINOR +PROJECT_VERSION_PATCH +PROJECT_VERSION_TWEAK +UNIX +WIN32 +WINCE +WINDOWS_PHONE +WINDOWS_STORE +XCODE +XCODE_VERSION + +-Pe-Keywords-User2- # cmake --help-module-list +AddFileDependencies +AndroidTestUtilities +BundleUtilities +CMakeAddFortranSubdirectory +CMakeBackwardCompatibilityCXX +CMakeDependentOption +CMakeDetermineVSServicePack +CMakeExpandImportedTargets +CMakeFindDependencyMacro +CMakeFindFrameworks +CMakeFindPackageMode +CMakeForceCompiler +CMakeGraphVizOptions +CMakePackageConfigHelpers +CMakeParseArguments +CMakePrintHelpers +CMakePrintSystemInformation +CMakePushCheckState +CMakeVerifyManifest +CPack +CPackArchive +CPackBundle +CPackComponent +CPackCygwin +CPackDMG +CPackDeb +CPackFreeBSD +CPackIFW +CPackIFWConfigureFile +CPackNSIS +CPackNuGet +CPackProductBuild +CPackRPM +CPackWIX +CSharpUtilities +CTest +CTestCoverageCollectGCOV +CTestScriptMode +CTestUseLaunchers +CheckCCompilerFlag +CheckCSourceCompiles +CheckCSourceRuns +CheckCXXCompilerFlag +CheckCXXSourceCompiles +CheckCXXSourceRuns +CheckCXXSymbolExists +CheckCompilerFlag +CheckFortranCompilerFlag +CheckFortranFunctionExists +CheckFortranSourceCompiles +CheckFortranSourceRuns +CheckFunctionExists +CheckIPOSupported +CheckIncludeFile +CheckIncludeFileCXX +CheckIncludeFiles +CheckLanguage +CheckLibraryExists +CheckLinkerFlag +CheckOBJCCompilerFlag +CheckOBJCSourceCompiles +CheckOBJCSourceRuns +CheckOBJCXXCompilerFlag +CheckOBJCXXSourceCompiles +CheckOBJCXXSourceRuns +CheckPIESupported +CheckPrototypeDefinition +CheckSourceCompiles +CheckSourceRuns +CheckStructHasMember +CheckSymbolExists +CheckTypeSize +CheckVariableExists +Dart +DeployQt4 +Documentation +ExternalData +ExternalProject +FeatureSummary +FetchContent +FindALSA +FindASPELL +FindAVIFile +FindArmadillo +FindBISON +FindBLAS +FindBZip2 +FindBacktrace +FindBoost +FindBullet +FindCABLE +FindCUDA +FindCUDAToolkit +FindCURL +FindCVS +FindCoin3D +FindCups +FindCurses +FindCxxTest +FindCygwin +FindDCMTK +FindDart +FindDevIL +FindDoxygen +FindEXPAT +FindEnvModules +FindFLEX +FindFLTK +FindFLTK2 +FindFontconfig +FindFreetype +FindGCCXML +FindGDAL +FindGIF +FindGLEW +FindGLUT +FindGSL +FindGTK +FindGTK2 +FindGTest +FindGettext +FindGit +FindGnuTLS +FindGnuplot +FindHDF5 +FindHSPELL +FindHTMLHelp +FindHg +FindICU +FindITK +FindIce +FindIconv +FindIcotool +FindImageMagick +FindIntl +FindJNI +FindJPEG +FindJasper +FindJava +FindKDE3 +FindKDE4 +FindLAPACK +FindLATEX +FindLTTngUST +FindLibArchive +FindLibLZMA +FindLibXml2 +FindLibXslt +FindLibinput +FindLua +FindLua50 +FindLua51 +FindMFC +FindMPEG +FindMPEG2 +FindMPI +FindMatlab +FindMotif +FindMsys +FindODBC +FindOpenACC +FindOpenAL +FindOpenCL +FindOpenGL +FindOpenMP +FindOpenSP +FindOpenSSL +FindOpenSceneGraph +FindOpenThreads +FindPHP4 +FindPNG +FindPackageHandleStandardArgs +FindPackageMessage +FindPatch +FindPerl +FindPerlLibs +FindPhysFS +FindPike +FindPkgConfig +FindPostgreSQL +FindProducer +FindProtobuf +FindPython +FindPython2 +FindPython3 +FindPythonInterp +FindPythonLibs +FindQt +FindQt3 +FindQt4 +FindQuickTime +FindRTI +FindRuby +FindSDL +FindSDL_gfx +FindSDL_image +FindSDL_mixer +FindSDL_net +FindSDL_sound +FindSDL_ttf +FindSQLite3 +FindSWIG +FindSelfPackers +FindSquish +FindSubversion +FindTCL +FindTIFF +FindTclStub +FindTclsh +FindThreads +FindUnixCommands +FindVTK +FindVulkan +FindWget +FindWish +FindX11 +FindXCTest +FindXMLRPC +FindXalanC +FindXercesC +FindZLIB +Findosg +FindosgAnimation +FindosgDB +FindosgFX +FindosgGA +FindosgIntrospection +FindosgManipulator +FindosgParticle +FindosgPresentation +FindosgProducer +FindosgQt +FindosgShadow +FindosgSim +FindosgTerrain +FindosgText +FindosgUtil +FindosgViewer +FindosgVolume +FindosgWidget +Findosg_functions +FindwxWidgets +FindwxWindows +FortranCInterface +GNUInstallDirs +GenerateExportHeader +GetPrerequisites +GoogleTest +InstallRequiredSystemLibraries +MacroAddFileDependencies +ProcessorCount +SelectLibraryConfigurations +SquishTestScript +TestBigEndian +TestCXXAcceptsFlag +TestForANSIForScope +TestForANSIStreamHeaders +TestForSSTREAM +TestForSTDNamespace +UseEcos +UseJava +UseJavaClassFilelist +UseJavaSymlinks +UsePkgConfig +UseSWIG +Use_wxWindows +UsewxWidgets +WriteBasicConfigVersionFile +WriteCompilerDetectionHeader + +-Pe-Keywords-User3- + +-Pe-Keywords-User4- +# Add your own symbols here if you like diff --git a/Languages/Resources/keywords.cmake.r b/Languages/Resources/keywords.cmake.r new file mode 100644 index 0000000..2444eb9 --- /dev/null +++ b/Languages/Resources/keywords.cmake.r @@ -0,0 +1,2 @@ +read 'KeyW' (0, "keywords.cmake") + "keywords.cmake"; diff --git a/Languages/Sources/CMake_Language.cpp b/Languages/Sources/CMake_Language.cpp new file mode 100644 index 0000000..b7a934f --- /dev/null +++ b/Languages/Sources/CMake_Language.cpp @@ -0,0 +1,165 @@ +/* + * Copyright 2024, Team Pe. All rights reserved. + * + * Same license as for most of Pe applies (BSD-style), as this is based on + * pretty old code that keeps getting re-hashed over and over. + * + * Author(s): + * Oscar Lesta + */ + +#include "CLanguageAddOn.h" +#include "HColorUtils.h" + +const char kLanguageName[] = "CMake"; +const char kLanguageExtensions[] = "cmake"; +const char kLanguageCommentStart[] = "#"; +const char kLanguageCommentEnd[] = ""; +const char kLanguageKeywordFile[] = "keywords.cmake"; +const int16 kInterfaceVersion = 2; + +enum { + START, + IDENTIFIER, + COMMENT, + STRING, + SYMBOL, + NUMBER +}; + +static inline bool +isSymbol(char c) +{ + switch (c) { + case '$': + return true; + case ':': + return true; + case '(': + return true; + case ')': + return true; + case '{': + return true; + case '}': + return true; + default: + return false; + } +} + +_EXPORT void +ColorLine(CLanguageProxy& proxy, int32& state) +{ + int32 size = proxy.Size(); + + if (size <= 0) + return; + + if (state == COMMENT) + proxy.SetColor(0, kColorComment1); + else + proxy.SetColor(0, kColorText); + + const char* text = proxy.Text(); + + int32 i = 0, s = 0, kws = 0, esc = 0; + char c; + + bool leave = false; + + while (!leave) + { + c = (i++ < size) ? text[i - 1] : 0; + + switch (state) { + case START: + s = i - 1; + proxy.SetColor(s, kColorText); + + if (isalpha(c)) { + kws = proxy.Move(c, 1); + state = IDENTIFIER; + } + else if (c == '#') + state = COMMENT; + else if (c == '"') + state = STRING; + else if (isdigit(c)) + state = NUMBER; + else if (isSymbol(c)) + state = SYMBOL; + else if (c == '\n' || c == 0) + leave = true; + break; + + case COMMENT: + proxy.SetColor(s, kColorComment1); + leave = true; + if (text[size - 1] == '\n') + state = START; + break; + + case IDENTIFIER: + if (!isalnum(c) && c != '_') { + int kwc; + + if (i > s + 1 && (kwc = proxy.IsKeyword(kws)) != 0) { + switch (kwc) { + case 1: proxy.SetColor(s, kColorKeyword1); break; + case 2: proxy.SetColor(s, kColorUserSet1); break; + case 3: proxy.SetColor(s, kColorUserSet2); break; + case 4: proxy.SetColor(s, kColorUserSet3); break; + case 5: proxy.SetColor(s, kColorUserSet4); break; + } + } + else { + // kColorIdentifierUser would be good, but gets over used. + proxy.SetColor(s, kColorText); + } + s = --i; + state = START; + } + else if (kws) + kws = proxy.Move(c, kws); + break; + + case STRING: + if (c == '"' && !esc) { + proxy.SetColor(s, kColorString1); + state = START; + } else if (c == '\n' || c == 0) { + if (text[i - 2] == '\\' && text[i - 3] != '\\') { + proxy.SetColor(s, kColorString1); + } else { + proxy.SetColor(s, kColorText); + state = START; + } + leave = true; + } + else + esc = !esc && (c == '\\'); + break; + + case SYMBOL: + proxy.SetColor(s, kColorOperator1); + if (!isSymbol(text[i - 1])) { + i--; + state = START; + } + break; + + case NUMBER: + proxy.SetColor(s, kColorNumber1); + if (!(isdigit(text[i - 1]))) { + i--; + state = START; + } + break; + + default: + leave = true; + break; + } + } +} diff --git a/Languages/Sources/Jamfile b/Languages/Sources/Jamfile index f67076d..ac3702b 100644 --- a/Languages/Sources/Jamfile +++ b/Languages/Sources/Jamfile @@ -25,6 +25,14 @@ PeLanguage AsmExt ; # +# +PeLanguage CMakeExt + : CMake_Language.cpp + : be + : keywords.cmake.rsrc + ; +# + # PeLanguage CppExt : Cpp_Language.cpp Cpp_Popup.cpp