STYLE: apply patch from #6166, better cmake syntax highlighting in vim,

seems to fix the issues mentioned in the bug report and the rest also still
seems to be ok

Alex
This commit is contained in:
Alexander Neundorf 2007-12-17 16:15:26 -05:00
parent 4c108d2a24
commit d1f4fa6bb7

View File

@ -28,29 +28,32 @@ elseif exists("b:current_syntax")
endif
syn case ignore
syn match cmakeComment /#.*$/
syn match cmakeComment /#.*$/ contains=cmakeReminder
syn region cmakeRegistry start=/\[/ end=/\]/ skip=/\\[\[\]]/
\ contained
\ contained oneline contains=CONTAINED,cmakeReminder
syn match cmakeArgument /[^()"]+/
\ contained
syn match cmakeVariableValue /\${[^}]*}/
\ contained oneline
syn match cmakeEnvironment /\$ENV{.*}/
\ contained
syn region cmakeVariableValue start=/\${/ end=/}/
\ contained oneline contains=CONTAINED,cmakeReminder
syn region cmakeEnvironment start=/\$ENV{/ end=/}/
\ contained oneline contains=CONTAINED,cmakeReminder
syn keyword cmakeSystemVariables
\ WIN32 UNIX APPLE CYGWIN BORLAND MINGW MSVC MSVC_IDE MSVC60 MSVC70 MSVC71 MSVC80
syn keyword cmakeOperators
\ AND BOOL CACHE COMMAND DEFINED DOC EQUAL EXISTS FALSE GREATER INTERNAL LESS MATCHES NAME NAMES NAME_WE NOT OFF ON OR PATH PATHS PROGRAM STREQUAL STRGREATER STRING STRLESS TRUE
" \ contained
syn region cmakeString start=/"/ end=/"/ skip=/\\"/
\ contains=ALLBUT,cmakeString
\ contains=CONTAINED,cmakeReminder
syn region cmakeArguments start=/\s*(/ end=/)/
\ contains=ALLBUT,cmakeArguments
\ contains=ALLBUT,cmakeArguments,cmakeReminder
syn keyword cmakeDeprecated ABSTRACT_FILES BUILD_NAME SOURCE_FILES SOURCE_FILES_REMOVE VTK_MAKE_INSTANTIATOR VTK_WRAP_JAVA VTK_WRAP_PYTHON VTK_WRAP_TCL WRAP_EXCLUDE_FILES
\ nextgroup=cmakeArgument
syn keyword cmakeStatement
\ ADD_CUSTOM_COMMAND ADD_CUSTOM_TARGET ADD_DEFINITIONS ADD_DEPENDENCIES ADD_EXECUTABLE ADD_LIBRARY ADD_SUBDIRECTORY ADD_TEST AUX_SOURCE_DIRECTORY BUILD_COMMAND BUILD_NAME CMAKE_MINIMUM_REQUIRED CONFIGURE_FILE CREATE_TEST_SOURCELIST ELSE ELSEIF ENABLE_LANGUAGE ENABLE_TESTING ENDFOREACH ENDIF ENDWHILE EXEC_PROGRAM EXECUTE_PROCESS EXPORT_LIBRARY_DEPENDENCIES FILE FIND_FILE FIND_LIBRARY FIND_PACKAGE FIND_PATH FIND_PROGRAM FLTK_WRAP_UI FOREACH GET_CMAKE_PROPERTY GET_DIRECTORY_PROPERTY GET_FILENAME_COMPONENT GET_SOURCE_FILE_PROPERTY GET_TARGET_PROPERTY GET_TEST_PROPERTY IF INCLUDE INCLUDE_DIRECTORIES INCLUDE_EXTERNAL_MSPROJECT 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 SEPARATE_ARGUMENTS SET SET_DIRECTORY_PROPERTIES SET_SOURCE_FILES_PROPERTIES SET_TARGET_PROPERTIES SET_TESTS_PROPERTIES SITE_NAME SOURCE_GROUP STRING SUBDIR_DEPENDS SUBDIRS TARGET_LINK_LIBRARIES TRY_COMPILE TRY_RUN USE_MANGLED_MESA UTILITY_SOURCE VARIABLE_REQUIRES VTK_MAKE_INSTANTIATOR VTK_WRAP_JAVA VTK_WRAP_PYTHON VTK_WRAP_TCL WHILE WRITE_FILE ENDMACRO
\ nextgroup=cmakeArgumnts
syn keyword cmakeReminder
\ TODO FIXME
\ contained
"syn match cmakeMacro /^\s*[A-Z_]\+/ nextgroup=cmakeArgumnts
@ -76,6 +79,7 @@ if version >= 508 || !exists("did_cmake_syntax_inits")
HiLink cmakeOperators Operator
HiLink cmakeMacro PreProc
HiLink cmakeError Error
HiLink cmakeReminder TODO
delcommand HiLink
endif