vim/UltiSnips/cmake.snippets

442 lines
13 KiB
Plaintext

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"
add_compile_options($1)
endsnippet
snippet add_custom_command "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 "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"
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"
add_definitions(-D${1:MACRO}$2)
endsnippet
snippet add_dependencies "add_dependencies"
add_dependencies(${1:target} ${2:dependencies})
endsnippet
snippet add_executable "add_executable"
add_executable(${1:target}${2: WIN32}${3: MACOSX_BUNDLE}${4:
EXCLUDE_FROM_ALL}
${0:sources})
endsnippet
snippet add_library "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"
add_subdirectory(${1:source_dir} ${2:binary_dir}${3: EXCLUDE_FROM_ALL})
endsnippet
snippet add_test "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"
aux_source_directory(${1:directory} ${2:variable})
endsnippet
snippet break "break"
break()
endsnippet
snippet build_command "build_command"
build_command(${1:variable}${2:
CONFIGURATION ${3:config}}${4:
TARGET ${6:target}})
endsnippet
snippet cmake_host_system_information "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"
cmake_minimum_required(VERSION $1${2: FATAL_ERROR})
endsnippet
snippet cmake_policy "cmake_policy VERSION"
cmake_policy(VERSION ${1:version})
endsnippet
snippet cmake_policy "cmake_policy SET"
cmake_policy(SET CMP${1:0000} $2`!p snip.rv=complete(t[2], ['OLD', 'NEW'])`)
endsnippet
snippet cmake_policy "cmake_policy GET"
cmake_policy(GET CMP${1:0000} ${2:variable})
endsnippet
snippet cmake_policy "cmake_policy PUSH/POP"
cmake_policy($1`!p snip.rv=complete(t[1], ['PUSH', 'POP'])`)
endsnippet
snippet configure_file "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"
create_test_sourcelist(
${1:sourceListName}
${2:driverName}
${3:tests}
EXTRA_INCLUDE ${4:include}
FUNCTION ${5:function})
endsnippet
snippet define_property "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"
elseif(${1:condition})
$0
endsnippet
snippet enable_language "enable_language"
enable_language($1`!p snip.rv=complete(t[1], ['C', 'CXX', 'FORTRAN'])`${2: OPTIONAL})
endsnippet
snippet enable_testing "enable_testing"
enable_testing()
endsnippet
snippet execute_process "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(EXPORT ${1:export-name}${2: NAMESPACE ${3:namespace}}${4: FILE ${5:filename}})
endsnippet
snippet file "file WRITE"
file(WRITE ${1:filename} "${2:message to write}")
endsnippet
snippet file "file APPEND"
file(APPEND ${1:filename} "${2:message to write}")
endsnippet
snippet file "file READ"
file(READ ${1:filename} ${2:variable}${3: LIMIT ${4:numBytes}}${5: OFFSET ${6:offset}}${7: HEX})
endsnippet
snippet file "file HASH"
file($1`!p snip.rv=complete(t[1], ['MD5','SHA1','SHA224','SHA256','SHA384','SHA512'])` ${2:filename} ${3:variable})
endsnippet
# file(STRINGS filename variable [LIMIT_COUNT num]
# [LIMIT_INPUT numBytes] [LIMIT_OUTPUT numBytes]
# [LENGTH_MINIMUM numBytes] [LENGTH_MAXIMUM numBytes]
# [NEWLINE_CONSUME] [REGEX regex]
# [NO_HEX_CONVERSION])
# file(GLOB variable [RELATIVE path] [globbing expressions]...)
# file(GLOB_RECURSE variable [RELATIVE path]
# [FOLLOW_SYMLINKS] [globbing expressions]...)
# file(RENAME <oldname> <newname>)
# file(REMOVE [file1 ...])
# file(REMOVE_RECURSE [file1 ...])
# file(MAKE_DIRECTORY [directory1 directory2 ...])
# file(RELATIVE_PATH variable directory file)
# file(TO_CMAKE_PATH path result)
# file(TO_NATIVE_PATH path result)
# file(DOWNLOAD url file [INACTIVITY_TIMEOUT timeout]
# [TIMEOUT timeout] [STATUS status] [LOG log] [SHOW_PROGRESS]
# [EXPECTED_HASH ALGO=value] [EXPECTED_MD5 sum]
# [TLS_VERIFY on|off] [TLS_CAINFO file])
# file(UPLOAD filename url [INACTIVITY_TIMEOUT timeout]
# [TIMEOUT timeout] [STATUS status] [LOG log] [SHOW_PROGRESS])
# file(TIMESTAMP filename variable [<format string>] [UTC])
# file(GENERATE OUTPUT output_file
# <INPUT input_file|CONTENT input_content>
# [CONDITION expression])
# TODO: find_file()
# TODO: find_package()
# TODO: find_path()
snippet find_program "find_program"
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
# TODO: fltk_wrap_ui()
snippet foreach "foreach"
foreach(${1:item} \$\{${2:list}\})
$0
endforeach()
endsnippet
snippet function "function"
function(${1:name} ${2:...})
$0
endfunction()
endsnippet
# TODO: get_cmake_property()
# TODO: get_directory_property()
# TODO: get_filename_property()
# TODO: get_property()
# TODO: get_source_file_property()
# TODO: get_target_property()
# TODO: get_test_property()
snippet if "if"
if(${1:condition})
$0
endif()
endsnippet
snippet include_directories "include_directories"
include_directories($1)
endsnippet
# TODO: include_external_msproject()
# TODO: include_regular_expression()
# TODO: include()
# TODO: install()
# TODO: link_directories()
# TODO: list()
# TODO: load_cache()
# TODO: load_command()
# TODO: macro()
# TODO: mark_as_advanced()
# TODO: math()
snippet message "message"
message($1`!p snip.rv=complete(t[1], ['STATUS', 'WARNING', 'AUTHOR_WARNING', 'SEND_ERROR', 'FATAL_ERROR', 'DEPRECATION'])` "$2")
endsnippet
snippet option "option"
option(${1:option} "${2:description}." $3`!p snip.rv=complete(t[3], ['ON', 'OFF'])`)
endsnippet
snippet project "project"
project(${1:name}${2: VERSION ${4:version}}${5: LANGUAGES ${6:languages}})
endsnippet
# TODO: qt_wrap_cpp()
# TODO: qt_wrap_ui()
# TODO: remove_definitions()
snippet return "return"
return()
endsnippet
snippet separate_arguments "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"
set_directory_properties(PROPERTIES ${1:property} ${2:value})
endsnippet
snippet set_property "set_property"
set_property($1`!p
scopes=['GLOBAL', 'DIRECTORY', 'TARGET', 'SOURCE', 'TEST', 'CACHE']
snip.rv=complete(t[1], scopes)`${2/(.*)/(?1: :)/}${2:`!p
if 0 == len(t[1]):
snip.rv=''
elif 'DIRECTORY'.startswith(t[1]):
snip.rv='directory'
elif 2 <= len(t[1]) and 'TARGET'.startswith(t[1]):
snip.rv='targets'
elif 'SOURCE'.startswith(t[1]):
snip.rv='sources'
elif 2 <= len(t[1]) and 'TEST'.startswith(t[1]):
snip.rv='tests'
elif 'CACHE'.startswith(t[1]):
snip.rv='entries'
else:
snip.rv=''`}${3:
APPEND}${4:
APPEND_STRING}
PROPERTY ${5:name}${6: ${7:values}})
endsnippet
snippet set "set"
set(${1:variable} ${2:value})
endsnippet
snippet set_source_files_properties "set_source_files_properties"
set_source_files_properties(${1:files}
PROPERTIES ${property} ${value})
endsnippet
snippet set_target_properties "set_target_properties"
set_target_properties(${1:targets}
PROPERTIES ${2:property} ${3:value})
endsnippet
snippet set_tests_properties "set_tests_properties"
set_tests_properties(${1:tests}
PROPERTIES ${2:property} ${3:value})
endsnippet
snippet site_name "site_name"
site_name(${1:variable})
endsnippet
snippet source_group "source_group"
source_group(${1:name}${2:
FILES ${3:sources}}${4:
REGULAR_EXPRESSION "${5:regex}"})
endsnippet
#string(REGEX MATCH <regular_expression>
# <output variable> <input> [<input>...])
#string(REGEX MATCHALL <regular_expression>
# <output variable> <input> [<input>...])
#string(REGEX REPLACE <regular_expression>
# <replace_expression> <output variable>
# <input> [<input>...])
#string(REPLACE <match_string>
# <replace_string> <output variable>
# <input> [<input>...])
#string(CONCAT <output variable> [<input>...])
#string(<MD5|SHA1|SHA224|SHA256|SHA384|SHA512>
# <output variable> <input>)
#string(COMPARE EQUAL <string1> <string2> <output variable>)
#string(COMPARE NOTEQUAL <string1> <string2> <output variable>)
#string(COMPARE LESS <string1> <string2> <output variable>)
#string(COMPARE GREATER <string1> <string2> <output variable>)
#string(ASCII <number> [<number> ...] <output variable>)
#string(CONFIGURE <string1> <output variable>
# [@ONLY] [ESCAPE_QUOTES])
#string(TOUPPER <string1> <output variable>)
#string(TOLOWER <string1> <output variable>)
#string(LENGTH <string> <output variable>)
#string(SUBSTRING <string> <begin> <length> <output variable>)
#string(STRIP <string> <output variable>)
#string(RANDOM [LENGTH <length>] [ALPHABET <alphabet>]
# [RANDOM_SEED <seed>] <output variable>)
#string(FIND <string> <substring> <output variable> [REVERSE])
#string(TIMESTAMP <output variable> [<format string>] [UTC])
#string(MAKE_C_IDENTIFIER <input string> <output variable>)
snippet target_compile_definitions "target_compile_options"
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"
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"
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"
target_link_libraries(${1:target}
$2`!p snip.rv=complete(t[2], ['PRIVATE', 'PUBLIC', 'INTERFACE'])` ${3:libraries})
endsnippet
snippet try_compile "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 "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"
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"
unset(${1:variable}${2: $3`!p snip.rv=complete(t[3], ['CACHE', 'PARENT_SCOPE'])`})
endsnippet
snippet variable_watch "variable_watch"
variable_watch(${1:variable}${2: ${3:command}})
endsnippet
snippet while "while"
while(${1:condition})
$0
endwhile()
endsnippet