From 369438a058db919c217f87870f9eb6a35506ffce Mon Sep 17 00:00:00 2001 From: "Kenneth Benzie (Benie)" Date: Thu, 18 Feb 2016 14:38:05 +0000 Subject: [PATCH] Merge commit '5aaacb96c0a93d4f7a48c2fb7c80a65840810876' --- UltiSnips/c.snippets | 2 +- UltiSnips/cmake.snippets | 329 +++++++++++++++++++++++++++++++++++---- UltiSnips/cpp.snippets | 7 + UltiSnips/xml.snippets | 2 +- 4 files changed, 307 insertions(+), 33 deletions(-) diff --git a/UltiSnips/c.snippets b/UltiSnips/c.snippets index 893a7f2..a900226 100644 --- a/UltiSnips/c.snippets +++ b/UltiSnips/c.snippets @@ -114,7 +114,7 @@ else if (${1:condition}) { endsnippet snippet for "For loop, index or range" -for (${1:auto} ${2:index} ${3/(.*;.*)|(\w*)/(?1:=:\:)/} ${3:0; $2 < ${5:count}; $2${6:++}}) { +for (${1:int} ${2:index} = ${3:0}; $2 ${4:<} ${5:count}; $2${6:++}) { $0 } endsnippet diff --git a/UltiSnips/cmake.snippets b/UltiSnips/cmake.snippets index a9c408b..69658c2 100644 --- a/UltiSnips/cmake.snippets +++ b/UltiSnips/cmake.snippets @@ -14,11 +14,11 @@ add_compile_options($1) endsnippet snippet add_custom_command "add_custom_command OUTPUT" -add_custom_command(OUTPUT ${1:outputs...} +add_custom_command(OUTPUT ${1:outputs} COMMAND ${2:command}${3: COMMAND ${4:command}}${5: MAIN_DEPENDENCY ${6:depend}}${7: - DEPENDS ${8:depends...}}${9: + DEPENDS ${8:depends}}${9: IMPLICIT_DEPENDS ${10:lang} ${11:depend}}${12: WORKING_DIRECTORY ${13:dir}}${14: COMMENT "${15:comment}"}${16: VERBATIM}${17: APPEND}) @@ -36,7 +36,7 @@ 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: + DEPENDS ${7:depends}}${8: WORKING_DIRECTORY ${9:directory}}${10: COMMENT "${11:comment}"}${12: VERBATIM}${13: SOURCES ${14:sources}}) @@ -47,19 +47,19 @@ add_definitions(-D${1:MACRO}$2) endsnippet snippet add_dependencies "add_dependencies" -add_dependencies(${1:target} ${2: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...}) + ${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...}) + ${0:sources}) endsnippet snippet add_subdirectory "add_subdirectory" @@ -111,64 +111,331 @@ snippet cmake_policy "cmake_policy PUSH/POP" cmake_policy($1`!p snip.rv=complete(t[1], ['PUSH', 'POP'])`) endsnippet -# TODO: file() +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 ) +# 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 [] [UTC]) +# file(GENERATE OUTPUT output_file +# +# [CONDITION expression]) + # TODO: find_file() # TODO: find_package() # TODO: find_path() -# TODO: find_program() + +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}\}) +foreach(${1:item} \$\{${2:list}\}) $0 endforeach() endsnippet snippet function "function" -function(${1:NAME} ${2:...}) +function(${1:name} ${2:...}) $0 endfunction() endsnippet -global !p -def if_completion_list(): - return ['NOT', 'COMMAND', 'POLICY', 'TARGET', 'EXISTS', 'IS_DIRECTORY', 'IS_SYMLINK', 'IS_ABSOLUTE', 'DEFINED'] -endglobal +# 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`!p snip.rv=complete(t[1], if_completion_list()) + ' '`$2) +if(${1:condition}) $0 endif() endsnippet -snippet elseif "elseif" -elseif($1`!p snip.rv=complete(t[1], if_completion_list()) + ' '`$0) -endsnippet - snippet include_directories "include_directories" -include_directories(\$\{${1:CMAKE_CURRENT_SOURCE_DIR}\}/$0) +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 set "set" -set(${1:VARIABLE} ${2:VALUE}) -endsnippet - -# TODO: set_property() -# TODO: set_target_properties() -# TODO: string() - snippet option "option" -option(${1:OPTION} "${2:Description}." $3`!p snip.rv=complete(t[3], ['ON', 'OFF'])`) +option(${1:option} "${2:description}." $3`!p snip.rv=complete(t[3], ['ON', 'OFF'])`) endsnippet -# TODO: target_include_directories() +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 +# [...]) +#string(REGEX MATCHALL +# [...]) +#string(REGEX REPLACE +# +# [...]) +#string(REPLACE +# +# [...]) +#string(CONCAT [...]) +#string( +# ) +#string(COMPARE EQUAL ) +#string(COMPARE NOTEQUAL ) +#string(COMPARE LESS ) +#string(COMPARE GREATER ) +#string(ASCII [ ...] ) +#string(CONFIGURE +# [@ONLY] [ESCAPE_QUOTES]) +#string(TOUPPER ) +#string(TOLOWER ) +#string(LENGTH ) +#string(SUBSTRING ) +#string(STRIP ) +#string(RANDOM [LENGTH ] [ALPHABET ] +# [RANDOM_SEED ] ) +#string(FIND [REVERSE]) +#string(TIMESTAMP [] [UTC]) +#string(MAKE_C_IDENTIFIER ) + +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: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 diff --git a/UltiSnips/cpp.snippets b/UltiSnips/cpp.snippets index d6d73e6..a34d944 100644 --- a/UltiSnips/cpp.snippets +++ b/UltiSnips/cpp.snippets @@ -12,6 +12,12 @@ enum ${1:name} { }; endsnippet +snippet for "For loop, index or range" +for (${1:auto} ${2:index} ${3/(.*;.*)|(\w*)/(?1:=:\:)/} ${3:0; $2 < ${4:count}; $2${5:++}}) { + $0 +} +endsnippet + snippet struct "Structure" struct ${1:name} { $0 @@ -25,6 +31,7 @@ class ${1:name} { ~${1/(\w+)\s.*/$1/}(); + private: $0 }; endsnippet diff --git a/UltiSnips/xml.snippets b/UltiSnips/xml.snippets index 9996ea5..af32412 100644 --- a/UltiSnips/xml.snippets +++ b/UltiSnips/xml.snippets @@ -3,7 +3,7 @@ snippet t "XML inline tag" i endsnippet snippet a "XML attribute" i -${1:attrib}="${2:value}" +${1:attrib}="${0:value}" endsnippet snippet < "XML inline tag" i