global !p def complete(t, opts): if t: opts = [m[len(t):] for m in opts if m.startswith(t)] if len(opts) == 1: return opts[0] elif len(opts) == 0: return "" return '|'.join(opts) endglobal snippet add_compile_options add_compile_options($1) endsnippet snippet add_custom_command "output" add_custom_command(OUTPUT ${1:outputs} COMMAND ${2:command}${3: COMMAND ${4:command}}${5: MAIN_DEPENDENCY ${6:depend}}${7: DEPENDS ${8:depends}}${9: IMPLICIT_DEPENDS ${10:lang} ${11:depend}}${12: WORKING_DIRECTORY ${13:dir}}${14: COMMENT "${15:comment}"}${16: VERBATIM}${17: APPEND}) endsnippet snippet add_custom_command "target" add_custom_command(TARGET ${1:target} $2`!p snip.rv=complete(t[2], ['PRE_BUILD', 'PRE_LINK', 'POST_BUILD'])` COMMAND ${3:command}${4: COMMAND ${5:command}}${6: WORKING_DIRECTORY ${7:directory}}${8: COMMENT "${9:comment}"}${10: VERBATIM}) endsnippet snippet add_custom_target add_custom_target(${1:target} ${2:ALL} ${3:command}${4: COMMAND ${5:command}}${6: DEPENDS ${7:depends}}${8: WORKING_DIRECTORY ${9:directory}}${10: COMMENT "${11:comment}"}${12: VERBATIM}${13: SOURCES ${14:sources}}) endsnippet snippet add_definitions add_definitions(-D${1:MACRO}$2) endsnippet snippet add_dependencies add_dependencies(${1:target} ${2:dependencies}) endsnippet snippet add_executable add_executable(${1:target}${2: WIN32}${3: MACOSX_BUNDLE}${4: EXCLUDE_FROM_ALL} ${0:sources}) endsnippet snippet add_library add_library(${1:target} $2`!p snip.rv=complete(t[2], ['STATIC', 'SHARED', 'MODULE'])`${4: EXCLUDE_FROM_ALL} ${0:sources}) endsnippet snippet add_subdirectory add_subdirectory(${1:source_dir} ${2:binary_dir}${3: EXCLUDE_FROM_ALL}) endsnippet snippet add_test add_test(NAME ${1:name} COMMAND ${2:command}${3: CONFIGURATIONS ${4:config}}${5: WORKING_DIRECTORY ${6:directory}}) endsnippet snippet aux_source_directory aux_source_directory(${1:directory} ${2:variable}) endsnippet snippet break break() endsnippet snippet build_command build_command(${1:variable}${2: CONFIGURATION ${3:config}}${4: TARGET ${6:target}}) endsnippet snippet cmake_host_system_information cmake_host_system_information(RESULT ${1:variable} QUERY $2`!p snip.rv=complete(t[2], ['NUMBER_OF_LOGICAL_CORES', 'NUMBER_OF_PHYSICAL_CORES', 'HOSTNAME', 'FQDN', 'TOTAL_VIRTUAL_MEMORY', 'AVAILABLE_VIRTUAL_MEMORY', 'TOTAL_PHYSICAL_MEMORY', 'AVAILABLE_PHYSICAL_MEMORY'])`) endsnippet snippet cmake_minimum_required cmake_minimum_required(VERSION ${1:version}${2: FATAL_ERROR}) endsnippet snippet cmake_policy "version" cmake_policy(VERSION ${1:version}) endsnippet snippet cmake_policy "set" cmake_policy(SET CMP${1:0000} $2`!p snip.rv=complete(t[2], ['OLD', 'NEW'])`) endsnippet snippet cmake_policy "get" cmake_policy(GET CMP${1:0000} ${2:variable}) endsnippet snippet cmake_policy "push/pop" cmake_policy($1`!p snip.rv=complete(t[1], ['PUSH', 'POP'])`) endsnippet snippet configure_file configure_file(${1:input} ${2:output}${3: COPYONLY}${4: ESCAPE_QUOTES}${5: @ONLY}${6: NEWLINE_STYLE $7`!p snip.rv=complete(t[7], ['UNIX','DOS','WIN32','LF','CRLF'])`}) endsnippet snippet create_test_sourcelist create_test_sourcelist( ${1:sourceListName} ${2:driverName} ${3:tests} EXTRA_INCLUDE ${4:include} FUNCTION ${5:function}) endsnippet snippet define_property define_property($1`!p snip.rv=complete(t[1], ['GLOBAL','DIRECTORY','TARGET','SOURCE','TEST','VARIABLE','CACHED_VARIABLE'])` PROPERTY ${2:name}${3: INHERITED} BRIEF_DOCS ${4:brief-docs} FULL_DOCS ${5:full-docs}) endsnippet snippet elseif elseif(${1:condition}) $0 endsnippet snippet enable_language enable_language($1`!p snip.rv=complete(t[1], ['C', 'CXX', 'FORTRAN'])`${2: OPTIONAL}) endsnippet snippet enable_testing enable_testing() endsnippet snippet execute_process execute_process( COMMAND ${1:commands}${2: WORKING_DIRECTORY ${3:directory}}${4: TIMEOUT ${5:seconds}}${6: RESULT_VARIABLE ${7:variable}}${8: OUTPUT_VARIABLE ${9:variable}}${10: ERROR_VARIABLE ${11:variable}}${12: INPUT_FILE ${13:file}}${14: OUTPUT_FILE ${15:file}}${16: ERROR_FILE ${17:file}}${18: OUTPUT_QUIET}${19: ERROR_QUIET}${20: OUTPUT_STRIP_TRAILING_WHITESPACE}${21: ERROR_STRIP_TRAILING_WHITESPACE}) endsnippet snippet export export(EXPORT ${1:export-name}${2: NAMESPACE ${3:namespace}}${4: FILE ${5:filename}}) endsnippet snippet file "write" file(WRITE ${1:filename} "${2:message to write}") endsnippet snippet file "append" file(APPEND ${1:filename} "${2:message to write}") endsnippet snippet file "read" file(READ ${1:filename} ${2:variable}${3: LIMIT ${4:numBytes}}${5: OFFSET ${6:offset}}${7: HEX}) endsnippet snippet file "hash" file($1`!p snip.rv=complete(t[1], ['MD5','SHA1','SHA224','SHA256','SHA384','SHA512'])` ${2:filename} ${3:variable}) endsnippet snippet file "strings" file(STRINGS ${1:filename} ${2:variable}${3: LIMIT_COUNT ${4:number}}${5: ${6:LIMIT_INPUT ${7:numBytes}}${8: LIMIT_OUTPUT ${9:numBytes}}}${10: ${11:LENGTH_MINIMUM ${12:numBytes}}${13: LENGTH_MAXIMUM ${14:numBytes}}}${15: NEWLINE_CONSUME}${16: REGEX "${17:regex}"}${18: NO_HEX_CONVERSION}) endsnippet snippet file "glob" file(GLOB ${1:variable}${2: RELATIVE ${3:path}}${4: ${5:globbing expressions}}) endsnippet snippet file "glob recursive" le(GLOB_RECURSE ${1:variable}${2: RELATIVE ${3:path}}${4: FOLLOW_SYMLINKS}${5: ${6:globbing expressions}}) endsnippet snippet file "rename" file(RENAME ${1:oldname} ${2:newname}) endsnippet snippet REMOVE "remove" file(REMOVE ${1:files}) endsnippet snippet file "remove recursive" file(REMOVE_RECURSE ${1:files}) endsnippet snippet file "make directory" file(MAKE_DIRECTORY ${1:directories}) endsnippet snippet file "relative path" file(RELATIVE_PATH ${1:variable} ${2:directory} ${3:file}) endsnippet snippet file "to cmake path" file(TO_CMAKE_PATH ${1:path} ${2:result}) endsnippet snippet file "to native path" file(TO_NATIVE_PATH ${1:path} ${2:result}) endsnippet snippet file "download" file(DOWNLOAD ${1:url} ${2:file}${3: INACTIVITY_TIMEOUT ${4:timeout}}${5: TIMEOUT ${6:timeout}}${7: STATUS ${8:status}}${9: LOG ${10:log}}${11: SHOW_PROGRESS}${12: EXPECTED_HASH ALGO=${13:value}}${14: EXPECTED_MD5 ${15:sum}}${16: TLS_VERIFY $17`!p snip.rv=complete(t[17], ['on', 'off'])`}${18: TLS_CAINFO ${19:file}}) endsnippet snippet file "upload" file(UPLOAD ${1:filename} ${2:url}${3: INACTIVITY_TIMEOUT ${4:timeout}}${5: TIMEOUT ${6:timeout}}${7: STATUS ${8:status}}${9: LOG ${10:log}}${11: SHOW_PROGRESS}) endsnippet snippet file "timestamp" file(TIMESTAMP ${1:filename} ${2:variable}${3: ${4:format string}}${5: ${6:UTC}}) endsnippet snippet file "generate output" file(GENERATE OUTPUT ${1:output_file} $2`!p snip.rv=complete(t[2], ['INPUT', 'CONTENT'])` ${3:input}${4: CONDITION ${5:expression}}) endsnippet snippet find_file "shorthand" find_file(${1:variable} ${2:paths}) endsnippet snippet find_file "general" find_file(${1:variable} NAMES ${2:names}${3: HINTS ${4:paths}${5: ENV ${6:variable}}}${7: PATHS ${8:paths}${9: ENV ${10:variable}}}${11: PATH_SUFFIXES ${12:suffixes}}${13: DOC "${14:doc string}"}${15:${16: NO_DEFAULT_PATH}${17: NO_CMAKE_ENVIRONMENT_PATH}${18: NO_CMAKE_PATH}${19: NO_SYSTEM_ENVIRONMENT_PATH}${20: NO_CMAKE_SYSTEM_PATH}${21: $22`!p snip.rv=complete(t[22], ['CMAKE_FIND_ROOT_PATH_BOTH', 'ONLY_CMAKE_FIND_ROOT_PATH', 'NO_CMAKE_FIND_ROOT_PATH'])`}}) endsnippet snippet find_package "simple" find_package(${1:package}${2: version}${3: EXACT}${4: QUIET}${5: MODULE}${6: REQUIRED}${7: COMPONENTS ${8:components}}${9: OPTIONAL_COMPONENTS ${10:components}}${11: NO_POLICY_SCOPE}) endsnippet snippet find_package "config" find_package(${1:package} ${2:version}${3: EXACT}${4: QUIET}${5: REQUIRED}${6: COMPONENTS ${7:components}}${8: $9`!p snip.rv=complete(t[9], ['CONFIG', 'NO_MODULE'])`}${10: NO_POLICY_SCOPE}${11: NAMES ${12:names}}${13: CONFIGS ${14:configs}}${15: HINTS ${16:paths}}${17: PATHS ${18:paths}}${19: PATH_SUFFIXES ${20:suffixs}}${21:${22: NO_DEFAULT_PATH}${23: NO_CMAKE_ENVIRONMENT_PATH}${24: NO_CMAKE_PATH}${25: NO_SYSTEM_ENVIRONMENT_PATH}${26: NO_CMAKE_PACKAGE_REGISTRY}${27: NO_CMAKE_BUILDS_PATH}${28: NO_CMAKE_SYSTEM_PATH}${29: NO_CMAKE_SYSTEM_PACKAGE_REGISTRY}}${30: $31`!p snip.rv=complete(t[31], ['CMAKE_FIND_ROOT_PATH_BOTH', 'ONLY_CMAKE_FIND_ROOT_PATH', 'NO_CMAKE_FIND_ROOT_PATH'])`}) endsnippet snippet find_path "shorthand" find_path(${1:variable} ${1:names}) endsnippet snippet find_path "general" find_path(${1:variable} NAMES ${2:names}${3: HINTS ${4:paths}${5: ENV ${6:variable}}}${7: PATHS ${8:paths}${9: ENV ${10:variable}}}${11: PATH_SUFFIXES ${12:suffixes}}${13: DOC "${14:doc string}"}${15:${16: NO_DEFAULT_PATH}${17: NO_CMAKE_ENVIRONMENT_PATH}${18: NO_CMAKE_PATH}${19: NO_SYSTEM_ENVIRONMENT_PATH}${20: NO_CMAKE_SYSTEM_PATH}${21: $22`!p snip.rv=complete(t[22], ['CMAKE_FIND_ROOT_PATH_BOTH', 'ONLY_CMAKE_FIND_ROOT_PATH', 'NO_CMAKE_FIND_ROOT_PATH'])`}}) endsnippet snippet find_program "shorthand" find_program(${1:variable} ${2:name}${3: ${4:paths}}) endsnippet snippet find_program "general" find_program(${1:variable} NAMES ${2:names}${3: HINTS ${4:paths}${5: ENV ${6:variable}}}${7: PATHS ${8:paths}${9: ENV ${10:variable}}}${11: PATH_SUFFIXES ${12:suffixes}}${13: DOC "${14:doc string}"}${15:${16: NO_DEFAULT_PATH}${17: NO_CMAKE_ENVIRONMENT_PATH}${18: NO_CMAKE_PATH}${19: NO_SYSTEM_ENVIRONMENT_PATH}${20: NO_CMAKE_SYSTEM_PATH}${21: $22`!p snip.rv=complete(t[22], ['CMAKE_FIND_ROOT_PATH_BOTH', 'ONLY_CMAKE_FIND_ROOT_PATH', 'NO_CMAKE_FIND_ROOT_PATH'])`}}) endsnippet snippet fltk_wrap_ui fltk_wrap_ui(${1:resulting_library_name} ${2:sources}) endsnippet snippet foreach foreach(${1:item} \$\{${2:list}\}) $0 endforeach() endsnippet snippet function function(${1:name} ${2:arguments}) $0 endfunction() endsnippet snippet get_cmake_property get_cmake_property(${1:variable} $2`!p snip.rv=complete(t[2], ['VARIABLES', 'CACHE_VARIABLES', 'COMMANDS', 'MACROS', 'COMPONENTS'])`) endsnippet global !p DIRECTORY_PROPERTIES=[ 'ADDITIONAL_MAKE_CLEAN_FILES', 'CACHE_VARIABLES', 'CLEAN_NO_CUSTOM', 'CMAKE_CONFIGURE_DEPENDS', 'COMPILE_DEFINITIONS_', 'COMPILE_DEFINITIONS', 'COMPILE_OPTIONS', 'DEFINITIONS', 'EXCLUDE_FROM_ALL', 'IMPLICIT_DEPENDS_INCLUDE_TRANSFORM', 'INCLUDE_DIRECTORIES', 'INCLUDE_REGULAR_EXPRESSION', 'INTERPROCEDURAL_OPTIMIZATION_', 'INTERPROCEDURAL_OPTIMIZATION', 'LINK_DIRECTORIES', 'LISTFILE_STACK', 'MACROS', 'PARENT_DIRECTORY', 'RULE_LAUNCH_COMPILE', 'RULE_LAUNCH_CUSTOM', 'RULE_LAUNCH_LINK', 'TEST_INCLUDE_FILE', 'VARIABLES', 'VS_GLOBAL_SECTION_POST_
', 'VS_GLOBAL_SECTION_PRE_
', ] endglobal snippet get_directory_property "property" get_directory_property(${1:variable}${2: DIRECTORY ${3:directory}} $4`!p snip.rv=complete(t[4], DIRECTORY_PROPERTIES)`) endsnippet snippet get_directory_property "definition" get_directory_property(${1:variable}${2: DIRECTORY ${3:directory}} DEFINITION ${4:name}) endsnippet snippet get_filename_component "full" get_filename_component(${1:variable} ${2:filename} $3`!p snip.rv=complete(t[3], ['DIRECTORY', 'NAME', 'EXT', 'NAME_WE', 'ABSOLUTE', 'REALPATH', 'PATH'])`${4: ${5:CACHE}}) endsnippet snippet get_filename_component "system" get_filename_component(${1:variable} ${2:filename} PROGRAM${3: PROGRAM_ARGS ${4:{arguments}}}${5: CACHE}) endsnippet global !p PROPERTY_OPTIONS=['SET', 'DEFINED', 'BRIEF_DOCS', 'FULL_DOCS'] GLOBAL_PROPERTIES=['ALLOW_DUPLICATE_CUSTOM_TARGETS', 'AUTOGEN_TARGETS_FOLDER', 'AUTOMOC_TARGETS_FOLDER', 'DEBUG_CONFIGURATIONS', 'DISABLED_FEATURES', 'ENABLED_FEATURES', 'ENABLED_LANGUAGES', 'FIND_LIBRARY_USE_LIB64_PATHS', 'FIND_LIBRARY_USE_OPENBSD_VERSIONING', 'GLOBAL_DEPENDS_DEBUG_MODE', 'GLOBAL_DEPENDS_NO_CYCLES', 'IN_TRY_COMPILE', 'PACKAGES_FOUND', 'PACKAGES_NOT_FOUND', 'JOB_POOLS', 'PREDEFINED_TARGETS_FOLDER', 'ECLIPSE_EXTRA_NATURES', 'REPORT_UNDEFINED_PROPERTIES', 'RULE_LAUNCH_COMPILE', 'RULE_LAUNCH_CUSTOM', 'RULE_LAUNCH_LINK', 'RULE_MESSAGES', 'TARGET_ARCHIVES_MAY_BE_SHARED_LIBS', 'TARGET_SUPPORTS_SHARED_LIBS', 'USE_FOLDERS'] endglobal snippet get_property "global" get_property(${1:variable} GLOBAL PROPERTY $2`!p snip.rv=complete(t[2], GLOBAL_PROPERTIES)` $3`!p snip.rv=complete(t[3], PROPERTY_OPTIONS)`) endsnippet snippet get_property "directory" get_property(${1:variable} DIRECTORY ${2:directory} PROPERTY $3`!p snip.rv=complete(t[3], DIRECTORY_PROPERTIES)` $4`!p snip.rv=complete(t[4], PROPERTY_OPTIONS)`) endsnippet snippet get_property "target" get_property(${1:variable} TARGET ${2:target} PROPERTY $3`!p snip.rv=complete(t[3], TARGET_PROPERTIES)` $4`!p snip.rv=complete(t[4], PROPERTY_OPTIONS)`) endsnippet snippet get_property "source" get_property(${1:variable} SOURCE ${2:source} PROPERTY $3`!p snip.rv=complete(t[3], SOURCE_FILE_PROPERTIES)` $4`!p snip.rv=complete(t[4], PROPERTY_OPTIONS)`) endsnippet global !p CACHE_PROPERTIES=[ 'ADVANCED', 'HELPSTRING', 'MODIFIED', 'STRINGS', 'TYPE', 'VALUE'] endglobal snippet get_property "cache" get_property(${1:variable} CACHE ${2:entry} PROPERTY $3`!p snip.rv=complete(t[3], CACHE_PROPERTIES)` $4`!p snip.rv=complete(t[4], PROPERTY_OPTIONS)`) endsnippet snippet get_property "variable" get_property(${1:variable} VARIABLE PROPERTY ${2:name} $3`!p snip.rv=complete(t[4], PROPERTY_OPTIONS)`) endsnippet global !p SOURCE_FILE_PROPERTIES=['ABSTRACT', 'AUTOUIC_OPTIONS', 'AUTORCC_OPTIONS', 'COMPILE_DEFINITIONS_', 'COMPILE_DEFINITIONS', 'COMPILE_FLAGS', 'EXTERNAL_OBJECT', 'Fortran_FORMAT', 'GENERATED', 'HEADER_FILE_ONLY', 'KEEP_EXTENSION', 'LABELS', 'LANGUAGE', 'LOCATION', 'MACOSX_PACKAGE_LOCATION', 'OBJECT_DEPENDS', 'OBJECT_OUTPUTS', 'SYMBOLIC', 'WRAP_EXCLUDE'] endglobal snippet get_source_file_property get_source_file_property(${1:variable} ${2:file} $3`!p snip.rv=complete(t[3], SOURCE_FILE_PROPERTIES)`) endsnippet global !p TARGET_PROPERTIES=['ALIASED_TARGET', 'ARCHIVE_OUTPUT_DIRECTORY_', 'ARCHIVE_OUTPUT_DIRECTORY', 'ARCHIVE_OUTPUT_NAME_', 'ARCHIVE_OUTPUT_NAME', 'AUTOGEN_TARGET_DEPENDS', 'AUTOMOC_MOC_OPTIONS', 'AUTOMOC', 'AUTOUIC', 'AUTOUIC_OPTIONS', 'AUTORCC', 'AUTORCC_OPTIONS', 'BUILD_WITH_INSTALL_RPATH', 'BUNDLE_EXTENSION', 'BUNDLE', 'COMPATIBLE_INTERFACE_BOOL', 'COMPATIBLE_INTERFACE_NUMBER_MAX', 'COMPATIBLE_INTERFACE_NUMBER_MIN', 'COMPATIBLE_INTERFACE_STRING', 'COMPILE_DEFINITIONS_', 'COMPILE_DEFINITIONS', 'COMPILE_FLAGS', 'COMPILE_OPTIONS', '_OUTPUT_NAME', '_POSTFIX', 'DEBUG_POSTFIX', 'DEFINE_SYMBOL', 'EchoString', 'ENABLE_EXPORTS', 'EXCLUDE_FROM_ALL', 'EXCLUDE_FROM_DEFAULT_BUILD_', 'EXCLUDE_FROM_DEFAULT_BUILD', 'EXPORT_NAME', 'FOLDER', 'Fortran_FORMAT', 'Fortran_MODULE_DIRECTORY', 'FRAMEWORK', 'GENERATOR_FILE_NAME', 'GNUtoMS', 'HAS_CXX', 'IMPLICIT_DEPENDS_INCLUDE_TRANSFORM', 'IMPORTED_CONFIGURATIONS', 'IMPORTED_IMPLIB_', 'IMPORTED_IMPLIB', 'IMPORTED_LINK_DEPENDENT_LIBRARIES_', 'IMPORTED_LINK_DEPENDENT_LIBRARIES', 'IMPORTED_LINK_INTERFACE_LANGUAGES_', 'IMPORTED_LINK_INTERFACE_LANGUAGES', 'IMPORTED_LINK_INTERFACE_LIBRARIES_', 'IMPORTED_LINK_INTERFACE_LIBRARIES', 'IMPORTED_LINK_INTERFACE_MULTIPLICITY_', 'IMPORTED_LINK_INTERFACE_MULTIPLICITY', 'IMPORTED_LOCATION_', 'IMPORTED_LOCATION', 'IMPORTED_NO_SONAME_', 'IMPORTED_NO_SONAME', 'IMPORTED', 'IMPORTED_SONAME_', 'IMPORTED_SONAME', 'IMPORT_PREFIX', 'IMPORT_SUFFIX', 'INCLUDE_DIRECTORIES', 'INSTALL_NAME_DIR', 'INSTALL_RPATH', 'INSTALL_RPATH_USE_LINK_PATH', 'INTERFACE_AUTOUIC_OPTIONS', 'INTERFACE_COMPILE_DEFINITIONS', 'INTERFACE_COMPILE_OPTIONS', 'INTERFACE_INCLUDE_DIRECTORIES', 'INTERFACE_LINK_LIBRARIES', 'INTERFACE_POSITION_INDEPENDENT_CODE', 'INTERFACE_SYSTEM_INCLUDE_DIRECTORIES', 'INTERPROCEDURAL_OPTIMIZATION_', 'INTERPROCEDURAL_OPTIMIZATION', 'JOB_POOL_COMPILE', 'JOB_POOL_LINK', 'LABELS', '_VISIBILITY_PRESET', 'LIBRARY_OUTPUT_DIRECTORY_', 'LIBRARY_OUTPUT_DIRECTORY', 'LIBRARY_OUTPUT_NAME_', 'LIBRARY_OUTPUT_NAME', 'LINK_DEPENDS_NO_SHARED', 'LINK_DEPENDS', 'LINKER_LANGUAGE', 'LINK_FLAGS_', 'LINK_FLAGS', 'LINK_INTERFACE_LIBRARIES_', 'LINK_INTERFACE_LIBRARIES', 'LINK_INTERFACE_MULTIPLICITY_', 'LINK_INTERFACE_MULTIPLICITY', 'LINK_LIBRARIES', 'LINK_SEARCH_END_STATIC', 'LINK_SEARCH_START_STATIC', 'LOCATION_', 'LOCATION', 'MACOSX_BUNDLE_INFO_PLIST', 'MACOSX_BUNDLE', 'MACOSX_FRAMEWORK_INFO_PLIST', 'MACOSX_RPATH', 'MAP_IMPORTED_CONFIG_', 'NAME', 'NO_SONAME', 'NO_SYSTEM_FROM_IMPORTED', 'OSX_ARCHITECTURES_', 'OSX_ARCHITECTURES', 'OUTPUT_NAME_', 'OUTPUT_NAME', 'PDB_NAME_', 'PDB_NAME', 'PDB_OUTPUT_DIRECTORY_', 'PDB_OUTPUT_DIRECTORY', 'POSITION_INDEPENDENT_CODE', 'POST_INSTALL_SCRIPT', 'PREFIX', 'PRE_INSTALL_SCRIPT', 'PRIVATE_HEADER', 'PROJECT_LABEL', 'PUBLIC_HEADER', 'RESOURCE', 'RULE_LAUNCH_COMPILE', 'RULE_LAUNCH_CUSTOM', 'RULE_LAUNCH_LINK', 'RUNTIME_OUTPUT_DIRECTORY_', 'RUNTIME_OUTPUT_DIRECTORY', 'RUNTIME_OUTPUT_NAME_', 'RUNTIME_OUTPUT_NAME', 'SKIP_BUILD_RPATH', 'SOURCES', 'SOVERSION', 'STATIC_LIBRARY_FLAGS_', 'STATIC_LIBRARY_FLAGS', 'SUFFIX', 'TYPE', 'VERSION', 'VISIBILITY_INLINES_HIDDEN', 'VS_DOTNET_REFERENCES', 'VS_DOTNET_TARGET_FRAMEWORK_VERSION', 'VS_GLOBAL_KEYWORD', 'VS_GLOBAL_PROJECT_TYPES', 'VS_GLOBAL_ROOTNAMESPACE', 'VS_GLOBAL_', 'VS_KEYWORD', 'VS_SCC_AUXPATH', 'VS_SCC_LOCALPATH', 'VS_SCC_PROJECTNAME', 'VS_SCC_PROVIDER', 'VS_WINRT_EXTENSIONS', 'VS_WINRT_REFERENCES', 'WIN32_EXECUTABLE', 'XCODE_ATTRIBUTE_'] endglobal snippet get_target_property get_target_property(${1:variable} ${2:target} $3`!p snip.rv=complete(t[3], TARGET_PROPERTIES)`) endsnippet global !p TEST_PROPERTIES=['ATTACHED_FILES_ON_FAIL', 'ATTACHED_FILES', 'COST', 'DEPENDS', 'ENVIRONMENT', 'FAIL_REGULAR_EXPRESSION', 'LABELS', 'MEASUREMENT', 'PASS_REGULAR_EXPRESSION', 'PROCESSORS', 'REQUIRED_FILES', 'RESOURCE_LOCK', 'RUN_SERIAL', 'SKIP_RETURN_CODE', 'TIMEOUT', 'WILL_FAIL', 'WORKING_DIRECTORY'] endglobal snippet get_test_property get_test_property(${1:test} ${2:property} $3`!p snip.rv=complete(t[3], TEST_PROPERTIES)`) endsnippet snippet if if(${1:condition}) $0 endif() endsnippet snippet include_directories include_directories(${1:SYSTEM }$3) endsnippet snippet include_external_msproject "include_external_msproject" include_external_msproject(${1:projectname} ${2:location}${3: TYPE ${4:projectTypeGUID}}${5: GUID ${6:projectGUID}}${7: PLATFORM ${8:platformName}} ${9:dependencies}) endsnippet snippet include_regular_expression "include_regular_expression" include_regular_expression(${1:regex_match}${2: ${3:regex_complain}}) endsnippet snippet include include(${1:file|module}${2: ${3:OPTIONAL}}${4: ${5:RESULT_VARIABLE} ${6:variable}}${7: NO_POLICY_SCOPE}) endsnippet snippet install "targets" install(TARGETS ${1:targets}${2: EXPORT ${3:export-name}}${4: $5`!p snip.rv=complete(t[5], ['ARCHIVE', 'LIBRARY', 'RUNTIME', 'FRAMEWORK', 'BUNDLE', 'PRIVATE_HEADER', 'PUBLIC_HEADER', 'RESOURCE'])` DESTINATION ${6:directory}${7: INCLUDES DESTINATION ${8:directory}}${9: PERMISSIONS ${10:permissions}}${11: CONFIGURATIONS $12`!p snip.rv=complete(t[12], ['Debug', 'Release', 'RelMinSize', 'RelWithDebInfo'])`}${13: COMPONENT ${14:component}}${15: OPTIONAL}${16: $17`!p snip.rv=complete(t[17], ['NAMELINK_ONLY', 'NAMELINK_SKIP'])`}}) endsnippet snippet install "files or programs" install($1`!p snip.rv=complete(t[1], ['FILES', 'PROGRAMS'])` DESTINATION ${2:directory}${3: PERMISSIONS ${4:permissions}}${5: CONFIGURATIONS $6`!p snip.rv=complete(t[6], ['Debug', 'Release', 'RelMinSize', 'RelWithDebInfo'])`}${7: COMPONENT ${8:component}}${9: RENAME ${10:name}}${11: OPTIONAL}) endsnippet snippet install "directories" install(DIRECTORY ${1:directories} DESTINATION ${2:directory}${3: FILE_PERMISSIONS ${4:permissions}}${5: DIRECTORY_PERMISSIONS ${6:permissions}}${7: USE_SOURCE_PERMISSIONS}${8: OPTIONAL}${9: CONFIGURATIONS $10`!p snip.rv=complete(t[10], ['Debug', 'Release', 'RelMinSize', 'RelWithDebInfo'])`}${11: COMPONENT ${12:component}}${13: FILES_MATCHING}${14:${15: $16`!p snip.rv=complete(t[16], ['PATTERN', 'REGEX'])` ${17:pattern|regex}}${18: EXCLUDE}${19: PERMISSIONS ${20:permissions}}}) endsnippet snippet install "script" install(SCRIPT ${1:file}) endsnippet snippet install "code" install(CODE ${1:code}) endsnippet snippet install "export" install(EXPORT ${1:export-name} DESTINATION ${2:directory}${3: NAMESPACE ${4:namespace}}${5: FILE ${6:name}.cmake}${7: PERMISSIONS ${8:permissions}}${9: CONFIGURATIONS $10`!p snip.rv=complete(t[10], ['Debug', 'Release', 'RelMinSize', 'RelWithDebInfo'])`}${11: EXPORT_LINK_INTERFACE_LIBRARIES}${12: COMPONENT ${13:component}}) endsnippet snippet link_directories link_directories(${1:directories}) endsnippet snippet list list(APPEND ${1:list} ${2:elements}) endsnippet snippet load_cache "prefix" load_cache(${1:path_to_cache_file} READ_WITH_PREFIX ${2:prefix} ${3:entries}) endsnippet snippet load_cache "internal" load_cache(${1:path_to_cache_file}${2: EXCLUDE ${3:entries}}${4: INCLUDE_INTERNALS ${5:entries}}) endsnippet snippet load_command load_command(COMMAND_NAME ${1:locations}) endsnippet snippet macro macro(${1:name} ${2:arguments}) $0 endmacro() endsnippet snippet mark_as_advanced mark_as_advanced($1`!p snip.rv=complete(t[1], ['CLEAR', 'FORCE'])` ${2:variables}) endsnippet snippet math math(EXPR ${1:output} ${2:expression}) endsnippet snippet message message($1`!p snip.rv=complete(t[1], ['STATUS', 'WARNING', 'AUTHOR_WARNING', 'SEND_ERROR', 'FATAL_ERROR', 'DEPRECATION'])` "$2") endsnippet snippet option option(${1:option} "${2:description}." $3`!p snip.rv=complete(t[3], ['ON', 'OFF'])`) endsnippet snippet project project(${1:name}${2: VERSION ${4:version}}${5: LANGUAGES ${6:languages}}) endsnippet snippet qt_wrap_cpp qt_wrap_cpp(${1:resulting_library_name} ${2:destination_name} ${3:source_lists}) endsnippet snippet qt_wrap_ui qt_wrap_ui(${1:resulting_library_name} ${2:header_destination_name} ${3:sources_destination_name} ${4:source_lists}) endsnippet snippet remove_definitions remove_definitions(${1:definitions}) endsnippet snippet return return() endsnippet snippet separate_arguments separate_arguments(${1:variable} $2`!p snip.rv=complete(t[2], ['UNIX_COMMAND', 'WINDOWS_COMMAND'])` "${3:arguments}") endsnippet snippet set_directory_properties set_directory_properties(PROPERTIES $1`!p snip.rv=complete(t[1], DIRECTORY_PROPERTIES)` ${2:value}) endsnippet snippet set_property "global" set_property(GLOBAL${1: ${2:APPEND}}${3: ${4:APPEND_STRING}} PROPERTY $5`!p snip.rv=complete(t[5], GLOBAL_PROPERTIES)`${6: ${7:values}}) endsnippet snippet set_property "directory" set_property(DIRECTORY ${1:directory}${2: ${3:APPEND}}${4: ${5:APPEND_STRING}} PROPERTY $6`!p snip.rv=complete(t[6], DIRECTORY_PROPERTIES)`${7: ${8:values}}) endsnippet snippet set_property "target" set_property(TARGET ${1:targets}${2: ${3:APPEND}}${4: ${5:APPEND_STRING}} PROPERTY $6`!p snip.rv=complete(t[6], TARGET_PROPERTIES)`${7: ${8:values}}) endsnippet snippet set_property "source" set_property(SOURCE ${1:sources}${2: ${3:APPEND}}${4: ${5:APPEND_STRING}} PROPERTY $6`!p snip.rv=complete(t[6], SOURCE_FILE_PROPERTIES)`${7: ${8:values}}) endsnippet snippet set_property "test" set_property(TEST ${1:tests}${2: ${3:APPEND}}${4: ${5:APPEND_STRING}} PROPERTY $6`!p snip.rv=complete(t[6], TEST_PROPERTIES)`${7: ${8:values}}) endsnippet snippet set_property "cache" set_property(CACHE ${1:entries}${2: ${3:APPEND}}${4: ${5:APPEND_STRING}} PROPERTY $6`!p snip.rv=complete(t[6], CACHE_PROPERTIES)`${7: ${8:values}}) endsnippet snippet set "simple" set(${1:variable} ${2:value}) endsnippet snippet set "cache" set(${1:variable} ${2:value} CACHE $3`!p snip.rv=complete(t[3], ['FILEPATH', 'PATH', 'STRING', 'BOOL', 'INTERNAL'])` "${4:description}"${5: FORCE}) endsnippet snippet set "parent scope" set(${1:variable} ${2:value} PARENT_SCOPE) endsnippet snippet set "environment" set(ENV{${1:variable}} ${2:value}) endsnippet snippet set_source_files_properties set_source_files_properties(${1:files} PROPERTIES $2`!p snip.rv=complete(t[2], SOURCE_FILE_PROPERTIES)` ${3:value}) endsnippet snippet set_target_properties set_target_properties(${1:targets} PROPERTIES $2`!p snip.rv=complete(t[2], TARGET_PROPERTIES)` ${3:value}) endsnippet snippet set_tests_properties set_tests_properties(${1:tests} PROPERTIES $2`!p snip.rv=complete(t[2], TEST_PROPERTIES)` ${3:value}) endsnippet snippet site_name site_name(${1:variable}) endsnippet snippet source_group source_group(${1:name}${2: FILES ${3:sources}}${4: REGULAR_EXPRESSION "${5:regex}"}) endsnippet snippet string "regex match" string(REGEX MATCH ${1:regex} ${2:output} ${3:inputs}) endsnippet snippet string "regex match all" string(REGEX MATCHALL ${1:regex} ${2:output} ${3:inputs}) endsnippet snippet string "regex replace" string(REGEX MATCHALL ${1:regex} ${2:replace} ${3:output} ${4:inputs}) endsnippet snippet string "replace" string(REPLACE ${1:match} ${2:replace} ${3:output} ${4:inputs}) endsnippet snippet string "concatinate" string(CONCAT ${1:output}${2: ${3:inputs}}) endsnippet snippet string "hash" string($1`!p snip.rv=complete(t[1], ['MD5', 'SHA1', 'SHA224', 'SHA256', 'SHA384', 'SHA512'])` ${2:output} ${3:input}) endsnippet snippet string "compare equal" string(COMPARE EQUAL ${1:string1} ${2:string2} ${3:output}) endsnippet snippet string "compare not equal" string(COMPARE NOTEQUAL ${1:string1} ${2:string2} ${3:output}) endsnippet snippet string "compare less" string(COMPARE LESS ${1:string1} ${2:string2} ${3:output}) endsnippet snippet string "compare greater" string(COMPARE GREATER ${1:string1} ${2:string2} ${3:output}) endsnippet snippet string "ASCII" string(ASCII ${1:number}${2: ${3:numbers}} ${4:output}) endsnippet snippet string "configure" string(CONFIGURE ${1:string} ${2:output}${3: @ONLY}${4: ESCAPE_QUOTES}) endsnippet snippet string "to upper" string(TOUPPER ${1:string} ${2:output}) endsnippet snippet string "to lower" string(TOLOWER ${1:string} ${2:output}) endsnippet snippet string "length" string(LENGTH ${1:string} ${2:output}) endsnippet snippet string "sub string" string(LENGTH ${1:string} ${2:begin} ${3:length} ${4:output}) endsnippet snippet string "strip" string(STRIP ${1:string} ${2:output}) endsnippet snippet string "random" string(RANDOM${1: LENGTH ${2:length}}${3: ALPHABET ${4:alphabet}}${5: RANDOM_SEED ${6:seed}} ${7:output}) endsnippet snippet string "find" string(FIND ${1:string} ${2:substring} ${3:output}${4: REVERSE}) endsnippet snippet string "timestamp" string(TIMESTAMP ${1:output}${2: ${3:format}}${4: UTC}) endsnippet snippet string "make C identifier" string(MAKE_C_IDENTIFIER ${1:input} ${2:output}) endsnippet snippet target_compile_definitions target_compile_definitions(${1:target} $2`!p snip.rv=complete(t[2], ['INTERFACE', 'PUBLIC', 'PRIVATE'])` ${4:definitions}) endsnippet snippet target_compile_options target_compile_options(${1:target}${2: BEFORE} $3`!p snip.rv=complete(t[3], ['INTERFACE', 'PUBLIC', 'PRIVATE'])` ${4:options}) endsnippet snippet target_include_directories target_include_directories(${1:target}${2: SYSTEM}${3: BEFORE} $4`!p snip.rv=complete(t[4], ['INTERFACE', 'PUBLIC', 'PRIVATE'])` ${5:includes}) endsnippet snippet target_link_libraries target_link_libraries(${1:target} $2`!p snip.rv=complete(t[2], ['PRIVATE', 'PUBLIC', 'INTERFACE'])` ${3:libraries}) endsnippet snippet try_compile "cmake" try_compile(${1:result} ${2:binary_dir} ${3:source_dir} ${4:project_name}${5: ${6:target_name}}${7: CMAKE_FLAGS ${8:flags}}${9: OUTPUT_VARIABLE ${10:variable}}) endsnippet snippet try_compile "raw" try_compile(${1:result} ${2:binary_dir}${3: SOURCES} ${4:source_files}${5: CMAKE_FLAGS ${6:flags}}${7: COMPILE_DEFINITIONS ${8:flags}}${9: LINK_LIBRARIES ${10:libs}}${11: OUTPUT_VARIABLE ${12:output}}${13: COPY_FILE ${14:file_name} COPY_FILE_ERROR ${15:copy_result}}) endsnippet snippet try_run try_run(${1:run_result} ${2:compile_result} ${3:binary_dir} ${4:source_file}${5: CMAKE_FLAGS ${6:flags}}${7: COMPILE_DEFINITIONS ${8:flags}}${9: COMPILE_OUTPUT_VARIABLE ${10:compile_output}}${11: RUN_OUTPUT_VARIABLE ${12:run_output}}${13: OUTPUT_VARIABLE ${14:output}}${15: ARGS ${16:arguments}}) endsnippet snippet unset unset(${1:variable}${2: $3`!p snip.rv=complete(t[3], ['CACHE', 'PARENT_SCOPE'])`}) endsnippet snippet variable_watch variable_watch(${1:variable}${2: ${3:command}}) endsnippet snippet while while(${1:condition}) $0 endwhile() endsnippet snippet $< "Generator expression" i $<$1:$0> endsnippet