diff --git a/runtime/syntax/autodoc.vim b/runtime/syntax/autodoc.vim
new file mode 100644
index 0000000..67a627e
--- /dev/null
+++ b/runtime/syntax/autodoc.vim
@@ -0,0 +1,101 @@
+" Vim syntax file
+" Language:	Autodoc
+" Maintainer:	Stephen R. van den Berg <srb@cuci.nl>
+" Last Change:	2018 Jan 23
+" Version:	2.9
+" Remark:       Included by pike.vim, cmod.vim and optionally c.vim
+" Remark:       In order to make c.vim use it, set: c_autodoc
+
+" Quit when a (custom) syntax file was already loaded
+if exists("b:current_syntax")
+  finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn case match
+
+" A bunch of useful autodoc keywords
+syn keyword autodocStatement contained appears belongs global
+syn keyword autodocStatement contained decl directive inherit
+syn keyword autodocStatement contained deprecated obsolete bugs
+syn keyword autodocStatement contained copyright example fixme note param returns
+syn keyword autodocStatement contained seealso thanks throws constant
+syn keyword autodocStatement contained member index elem
+syn keyword autodocStatement contained value type item
+
+syn keyword autodocRegion contained enum mapping code multiset array
+syn keyword autodocRegion contained int string section mixed ol ul dl
+syn keyword autodocRegion contained class module namespace
+syn keyword autodocRegion contained endenum endmapping endcode endmultiset
+syn keyword autodocRegion contained endarray endint endstring endsection
+syn keyword autodocRegion contained endmixed endol endul enddl
+syn keyword autodocRegion contained endclass endmodule endnamespace
+
+syn keyword autodocIgnore contained ignore endignore
+
+syn keyword autodocStatAcc contained b i u tt url pre sub sup
+syn keyword autodocStatAcc contained ref rfc xml dl expr image
+
+syn keyword	autodocTodo		contained TODO FIXME XXX
+
+syn match autodocLineStart	display "\(//\|/\?\*\)\@2<=!"
+syn match autodocWords "[^!@{}[\]]\+" display contains=@Spell
+
+syn match autodocLink "@\[[^[\]]\+]"hs=s+2,he=e-1 display contains=autodocLead
+syn match autodocAtStmt "@[a-z]\+\%(\s\|$\)\@="hs=s+1 display contains=autodocStatement,autodocIgnore,autodocLead,autodocRegion
+
+" Due to limitations of the matching algorithm, we cannot highlight
+" nested autodocNStmtAcc structures correctly
+syn region autodocNStmtAcc start="@[a-z]\+{" end="@}" contains=autodocStatAcc,autodocLead keepend
+
+syn match autodocUrl contained display ".\+"
+syn region autodocAtUrlAcc start="{"ms=s+1 end="@}"he=e-1,me=e-2 contained display contains=autodocUrl,autodocLead keepend
+syn region autodocNUrlAcc start="@url{" end="@}" contains=autodocStatAcc,autodocAtUrlAcc,autodocLead transparent
+
+syn match autodocSpecial "@@" display
+syn match autodocLead "@" display contained
+
+"when wanted, highlight trailing white space
+if exists("c_space_errors")
+  if !exists("c_no_trail_space_error")
+    syn match	autodocSpaceError	display excludenl "\s\+$"
+  endif
+  if !exists("c_no_tab_space_error")
+    syn match	autodocSpaceError	display " \+\t"me=e-1
+  endif
+endif
+
+if exists("c_minlines")
+  let b:c_minlines = c_minlines
+else
+  if !exists("c_no_if0")
+    let b:c_minlines = 50	" #if 0 constructs can be long
+  else
+    let b:c_minlines = 15	" mostly for () constructs
+  endif
+endif
+exec "syn sync ccomment autodocComment minlines=" . b:c_minlines
+
+" Define the default highlighting.
+" Only used when an item doesn't have highlighting yet
+hi def link autodocStatement	Statement
+hi def link autodocStatAcc	Statement
+hi def link autodocRegion	Structure
+hi def link autodocAtStmt	Error
+hi def link autodocNStmtAcc	Identifier
+hi def link autodocLink		Type
+hi def link autodocTodo		Todo
+hi def link autodocSpaceError	Error
+hi def link autodocLineStart	SpecialComment
+hi def link autodocSpecial	SpecialChar
+hi def link autodocUrl		Underlined
+hi def link autodocLead		Statement
+hi def link autodocIgnore	Delimiter
+
+let b:current_syntax = "autodoc"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
+" vim: ts=8
diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim
index f659a87..1143ca7 100644
--- a/runtime/syntax/c.vim
+++ b/runtime/syntax/c.vim
@@ -13,6 +13,14 @@
 
 let s:ft = matchstr(&ft, '^\([^.]\)\+')
 
+" Optional embedded Autodoc parsing
+" To enable it add: let g:c_autodoc = 1
+" to your .vimrc
+if exists("c_autodoc")
+  syn include @cAutodoc <sfile>:p:h/autodoc.vim
+  unlet b:current_syntax
+endif
+
 " A bunch of useful C keywords
 syn keyword	cStatement	goto break return continue asm
 syn keyword	cLabel		case default
@@ -377,6 +385,13 @@
 syn region	cDefine		start="^\s*\zs\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
 syn region	cPreProc	start="^\s*\zs\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
 
+" Optional embedded Autodoc parsing
+if exists("c_autodoc")
+  syn match cAutodocReal display contained "\%(//\|[/ \t\v]\*\|^\*\)\@2<=!.*" contains=@cAutodoc containedin=cComment,cCommentL
+  syn cluster cCommentGroup add=cAutodocReal
+  syn cluster cPreProcGroup add=cAutodocReal
+endif
+
 " Highlight User Labels
 syn cluster	cMultiGroup	contains=cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cCppParen,cCppBracket,cCppString
 if s:ft ==# 'c' || exists("cpp_no_cpp11")
diff --git a/runtime/syntax/cmod.vim b/runtime/syntax/cmod.vim
new file mode 100644
index 0000000..ea37682
--- /dev/null
+++ b/runtime/syntax/cmod.vim
@@ -0,0 +1,144 @@
+" Vim syntax file
+" Language:		Cmod
+" Current Maintainer:	Stephen R. van den Berg <srb@cuci.nl>
+" Last Change:		2018 Jan 23
+" Version:      	2.9
+" Remark: Is used to edit Cmod files for Pike development.
+" Remark: Includes a highlighter for any embedded Autodoc format.
+
+" quit when a syntax file was already loaded
+if exists("b:current_syntax")
+  finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+" Read the C syntax to start with
+runtime! syntax/c.vim
+unlet b:current_syntax
+
+if !exists("c_autodoc")
+  " For embedded Autodoc documentation
+  syn include @cmodAutodoc <sfile>:p:h/autodoc.vim
+  unlet b:current_syntax
+endif
+
+" Supports rotating amongst several same-level preprocessor conditionals
+packadd! matchit
+let b:match_words = "({:}\\@1<=),^\s*#\s*\%(if\%(n\?def\)\|else\|el\%(se\)\?if\|endif\)\>"
+
+" Cmod extensions
+syn keyword cmodStatement	__INIT INIT EXIT GC_RECURSE GC_CHECK
+syn keyword cmodStatement	EXTRA OPTIMIZE RETURN
+syn keyword cmodStatement	ADD_EFUN ADD_EFUN2 ADD_FUNCTION
+syn keyword cmodStatement	MK_STRING MK_STRING_SVALUE CONSTANT_STRLEN
+
+syn keyword cmodStatement	SET_SVAL pop_n_elems pop_stack
+syn keyword cmodStatement	SIMPLE_ARG_TYPE_ERROR Pike_sp Pike_fp MKPCHARP
+syn keyword cmodStatement	SET_SVAL_TYPE REF_MAKE_CONST_STRING INC_PCHARP
+syn keyword cmodStatement	PTR_FROM_INT INHERIT_FROM_PTR
+syn keyword cmodStatement	DECLARE_CYCLIC BEGIN_CYCLIC END_CYCLIC
+syn keyword cmodStatement	UPDATE_LOCATION UNSAFE_IS_ZERO SAFE_IS_ZERO
+syn keyword cmodStatement	MKPCHARP_STR APPLY_MASTER current_storage
+syn keyword cmodStatement	PIKE_MAP_VARIABLE size_shift
+syn keyword cmodStatement	THREADS_ALLOW THREADS_DISALLOW
+
+syn keyword cmodStatement	add_integer_constant ref_push_object
+syn keyword cmodStatement	push_string apply_svalue free_svalue
+syn keyword cmodStatement	get_inherit_storage get_storage
+syn keyword cmodStatement	make_shared_binary_string push_int64
+syn keyword cmodStatement	begin_shared_string end_shared_string
+syn keyword cmodStatement	add_ref fast_clone_object clone_object
+syn keyword cmodStatement	push_undefined push_int ref_push_string
+syn keyword cmodStatement	free_string push_ulongest free_object
+syn keyword cmodStatement	convert_stack_top_to_bignum push_array
+syn keyword cmodStatement	push_object reduce_stack_top_bignum
+syn keyword cmodStatement	push_static_text apply_current
+syn keyword cmodStatement	assign_svalue free_program destruct_object
+syn keyword cmodStatement	start_new_program low_inherit stack_swap
+syn keyword cmodStatement	generic_error_program end_program
+syn keyword cmodStatement	free_array apply_external copy_mapping
+syn keyword cmodStatement	push_constant_text ref_push_mapping
+syn keyword cmodStatement	mapping_insert mapping_string_insert_string
+syn keyword cmodStatement	f_aggregate_mapping f_aggregate apply
+syn keyword cmodStatement	push_mapping push_svalue low_mapping_lookup
+syn keyword cmodStatement	assign_svalues_no_free f_add
+syn keyword cmodStatement	push_empty_string stack_dup assign_lvalue
+syn keyword cmodStatement	low_mapping_string_lookup allocate_mapping
+syn keyword cmodStatement	copy_shared_string make_shared_binary_string0
+syn keyword cmodStatement	f_call_function f_index f_utf8_to_string
+syn keyword cmodStatement	finish_string_builder init_string_builder
+syn keyword cmodStatement	reset_string_builder free_string_builder
+syn keyword cmodStatement	string_builder_putchar get_all_args
+syn keyword cmodStatement	add_shared_strings check_all_args
+syn keyword cmodStatement	do_inherit add_string_constant
+syn keyword cmodStatement	add_program_constant set_init_callback
+syn keyword cmodStatement	simple_mapping_string_lookup
+syn keyword cmodStatement	f_sprintf push_text string_has_null
+syn keyword cmodStatement	end_and_resize_shared_string
+
+syn keyword cmodStatement	args sp
+
+syn keyword cmodStatement	free
+
+syn keyword cmodConstant	ID_PROTECTED ID_FINAL PIKE_DEBUG
+syn keyword cmodConstant	NUMBER_NUMBER
+syn keyword cmodConstant	PIKE_T_INT PIKE_T_STRING PIKE_T_ARRAY
+syn keyword cmodConstant	PIKE_T_MULTISET PIKE_T_OBJECT PIKE_T_MAPPING
+syn keyword cmodConstant	NUMBER_UNDEFINED PIKE_T_PROGRAM PIKE_T_FUNCTION
+syn keyword cmodConstant	T_OBJECT T_STRING T_ARRAY T_MAPPING
+
+syn keyword cmodException	SET_ONERROR UNSET_ONERROR ONERROR
+syn keyword cmodException	CALL_AND_UNSET_ONERROR
+
+syn keyword cmodDebug		Pike_fatal Pike_error check_stack
+
+syn keyword cmodAccess		public protected private INHERIT
+syn keyword cmodAccess		CTYPE CVAR PIKEVAR PIKEFUN
+
+syn keyword cmodModifier	efun export flags optflags optfunc
+syn keyword cmodModifier	type rawtype errname name c_name prototype
+syn keyword cmodModifier	program_flags gc_trivial PMOD_EXPORT
+syn keyword cmodModifier	ATTRIBUTE noclone noinline
+syn keyword cmodModifier	tOr tFuncV tInt tMix tVoid tStr tMap tPrg
+syn keyword cmodModifier	tSetvar tArr tMult tMultiset
+syn keyword cmodModifier	tArray tMapping tString tSetvar tVar
+
+syn keyword cmodType		bool mapping string multiset array mixed
+syn keyword cmodType		object function program auto svalue
+syn keyword cmodType		bignum longest zero pike_string
+syn keyword cmodType		this this_program THIS INT_TYPE INT64 INT32
+syn keyword cmodType		p_wchar2 PCHARP p_wchar1 p_wchar0 MP_INT
+
+syn keyword cmodOperator	_destruct create __hash _sizeof _indices _values
+syn keyword cmodOperator	_is_type _sprintf _equal _m_delete _get_iterator
+syn keyword cmodOperator	_search _types _serialize _deserialize
+syn keyword cmodOperator	_size_object _random _sqrt TYPEOF SUBTYPEOF
+syn keyword cmodOperator	LIKELY UNLIKELY
+
+syn keyword cmodStructure	DECLARATIONS PIKECLASS DECLARE_STORAGE
+
+if !exists("c_autodoc")
+  syn match cmodAutodocReal display contained "\%(//\|[/ \t\v]\*\|^\*\)\@2<=!.*" contains=@cmodAutodoc containedin=cComment,cCommentL
+  syn cluster cCommentGroup add=cmodAutodocReal
+  syn cluster cPreProcGroup add=cmodAutodocReal
+endif
+
+" Default highlighting
+hi def link cmodAccess		Statement
+hi def link cmodOperator	Operator
+hi def link cmodStatement	Statement
+hi def link cmodConstant	Constant
+hi def link cmodModifier	Type
+hi def link cmodType		Type
+hi def link cmodStorageClass	StorageClass
+hi def link cmodStructure	Structure
+hi def link cmodException	Exception
+hi def link cmodDebug		Debug
+
+let b:current_syntax = "cmod"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
+" vim: ts=8
diff --git a/runtime/syntax/nsis.vim b/runtime/syntax/nsis.vim
index 3a343dd..461ffb4 100644
--- a/runtime/syntax/nsis.vim
+++ b/runtime/syntax/nsis.vim
@@ -1,52 +1,72 @@
 " Vim syntax file
-" Language:	NSIS script, for version of NSIS 1.91 and later
-" Maintainer:	Alex Jakushev <Alex.Jakushev@kemek.lt>
-" Last Change:	2004 May 12
+" Language:		NSIS script, for version of NSIS 3.02 and later
+" Maintainer:		Ken Takata
+" URL:			https://github.com/k-takata/vim-nsis
+" Previous Maintainer:	Alex Jakushev <Alex.Jakushev@kemek.lt>
+" Last Change:		2018-01-26
 
 " quit when a syntax file was already loaded
 if exists("b:current_syntax")
   finish
 endif
 
+let s:cpo_save = &cpo
+set cpo&vim
+
 syn case ignore
 
 
-"COMMENTS
+"Pseudo definitions
+syn match nsisLine nextgroup=@nsisPseudoStatement skipwhite "^"
+syn cluster nsisPseudoStatement	contains=nsisFirstComment,nsisLocalLabel,nsisGlobalLabel
+syn cluster nsisPseudoStatement add=nsisDefine,nsisPreCondit,nsisMacro,nsisInclude,nsisSystem
+syn cluster nsisPseudoStatement add=nsisAttribute,nsisCompiler,nsisVersionInfo,nsisInstruction,nsisStatement
+
+"COMMENTS (4.1)
 syn keyword nsisTodo	todo attention note fixme readme
-syn region nsisComment	start=";"  end="$" contains=nsisTodo
-syn region nsisComment	start="#"  end="$" contains=nsisTodo
+syn region nsisComment	start="[;#]" end="$" contains=nsisTodo,nsisLineContinuation,@Spell oneline
+syn region nsisComment	start=".\@1<=/\*" end="\*/" contains=nsisTodo,@Spell
+syn region nsisFirstComment  start="/\*" end="\*/" contained contains=nsisTodo,@Spell skipwhite
+			\ nextgroup=@nsisPseudoStatement
 
-"LABELS
-syn match nsisLocalLabel	"\a\S\{-}:"
-syn match nsisGlobalLabel	"\.\S\{-1,}:"
+syn match nsisLineContinuation	"\\$"
 
-"PREPROCESSOR
-syn match nsisPreprocSubst	"${.\{-}}"
-syn match nsisDefine		"!define\>"
-syn match nsisDefine		"!undef\>"
-syn match nsisPreCondit		"!ifdef\>"
-syn match nsisPreCondit		"!ifndef\>"
-syn match nsisPreCondit		"!endif\>"
-syn match nsisPreCondit		"!else\>"
-syn match nsisMacro		"!macro\>"
-syn match nsisMacro		"!macroend\>"
-syn match nsisMacro		"!insertmacro\>"
+"STRINGS (4.1)
+syn region nsisString	start=/"/ end=/"/ contains=@nsisStringItems,@Spell
+syn region nsisString	start=/'/ end=/'/ contains=@nsisStringItems,@Spell
+syn region nsisString	start=/`/ end=/`/ contains=@nsisStringItems,@Spell
 
-"COMPILER UTILITY
-syn match nsisInclude		"!include\>"
-syn match nsisSystem		"!cd\>"
-syn match nsisSystem		"!system\>"
-syn match nsisSystem		"!packhdr\>"
+syn cluster nsisStringItems	contains=nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar,nsisUserVar,nsisSysVar,nsisRegistry,nsisLineContinuation
 
-"VARIABLES
+"NUMBERS (4.1)
+syn match nsisNumber		"\<[1-9]\d*\>"
+syn match nsisNumber		"\<0x\x\+\>"
+syn match nsisNumber		"\<0\o*\>"
+
+"STRING REPLACEMENT (5.4, 4.9.15.2, 5.3.1)
+syn region nsisPreprocSubst	start="\${" end="}" contains=nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar
+syn region nsisPreprocLangStr	start="\$(" end=")" contains=nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar
+syn region nsisPreprocEnvVar	start="\$%" end="%" contains=nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar
+
+"VARIABLES (4.2.2)
 syn match nsisUserVar		"$\d"
 syn match nsisUserVar		"$R\d"
 syn match nsisSysVar		"$INSTDIR"
 syn match nsisSysVar		"$OUTDIR"
 syn match nsisSysVar		"$CMDLINE"
+syn match nsisSysVar		"$LANGUAGE"
+"CONSTANTS (4.2.3)
 syn match nsisSysVar		"$PROGRAMFILES"
+syn match nsisSysVar		"$PROGRAMFILES32"
+syn match nsisSysVar		"$PROGRAMFILES64"
+syn match nsisSysVar		"$COMMONFILES"
+syn match nsisSysVar		"$COMMONFILES32"
+syn match nsisSysVar		"$COMMONFILES64"
 syn match nsisSysVar		"$DESKTOP"
 syn match nsisSysVar		"$EXEDIR"
+syn match nsisSysVar		"$EXEFILE"
+syn match nsisSysVar		"$EXEPATH"
+syn match nsisSysVar		"${NSISDIR}"
 syn match nsisSysVar		"$WINDIR"
 syn match nsisSysVar		"$SYSDIR"
 syn match nsisSysVar		"$TEMP"
@@ -54,170 +74,513 @@
 syn match nsisSysVar		"$SMPROGRAMS"
 syn match nsisSysVar		"$SMSTARTUP"
 syn match nsisSysVar		"$QUICKLAUNCH"
+syn match nsisSysVar		"$DOCUMENTS"
+syn match nsisSysVar		"$SENDTO"
+syn match nsisSysVar		"$RECENT"
+syn match nsisSysVar		"$FAVORITES"
+syn match nsisSysVar		"$MUSIC"
+syn match nsisSysVar		"$PICTURES"
+syn match nsisSysVar		"$VIDEOS"
+syn match nsisSysVar		"$NETHOOD"
+syn match nsisSysVar		"$FONTS"
+syn match nsisSysVar		"$TEMPLATES"
+syn match nsisSysVar		"$APPDATA"
+syn match nsisSysVar		"$LOCALAPPDATA"
+syn match nsisSysVar		"$PRINTHOOD"
+syn match nsisSysVar		"$INTERNET_CACHE"
+syn match nsisSysVar		"$COOKIES"
+syn match nsisSysVar		"$HISTORY"
+syn match nsisSysVar		"$PROFILE"
+syn match nsisSysVar		"$ADMINTOOLS"
+syn match nsisSysVar		"$RESOURCES"
+syn match nsisSysVar		"$RESOURCES_LOCALIZED"
+syn match nsisSysVar		"$CDBURN_AREA"
 syn match nsisSysVar		"$HWNDPARENT"
+syn match nsisSysVar		"$PLUGINSDIR"
 syn match nsisSysVar		"$\\r"
 syn match nsisSysVar		"$\\n"
+syn match nsisSysVar		"$\\t"
 syn match nsisSysVar		"$\$"
+syn match nsisSysVar		"$\\["'`]"
 
-"STRINGS
-syn region nsisString	start=/"/ skip=/'\|`/ end=/"/ contains=nsisPreprocSubst,nsisUserVar,nsisSysVar,nsisRegistry
-syn region nsisString	start=/'/ skip=/"\|`/ end=/'/ contains=nsisPreprocSubst,nsisUserVar,nsisSysVar,nsisRegistry
-syn region nsisString	start=/`/ skip=/"\|'/ end=/`/ contains=nsisPreprocSubst,nsisUserVar,nsisSysVar,nsisRegistry
+"LABELS (4.3)
+syn match nsisLocalLabel	contained "[^-+!$0-9;#. \t/*][^ \t:;#]*:\ze\%($\|[ \t;#]\|\/\*\)"
+syn match nsisGlobalLabel	contained "\.[^-+!$0-9;# \t/*][^ \t:;#]*:\ze\%($\|[ \t;#]\|\/\*\)"
 
 "CONSTANTS
-syn keyword nsisBoolean		true false on off
+syn keyword nsisBoolean		contained true false
+syn keyword nsisOnOff		contained on off
 
-syn keyword nsisAttribOptions	hide show nevershow auto force try ifnewer normal silent silentlog
-syn keyword nsisAttribOptions	smooth colored SET CUR END RO none listonly textonly both current all
-syn keyword nsisAttribOptions	zlib bzip2 lzma
-
-syn match nsisAttribOptions	'\/NOCUSTOM'
-syn match nsisAttribOptions	'\/CUSTOMSTRING'
-syn match nsisAttribOptions	'\/COMPONENTSONLYONCUSTOM'
-syn match nsisAttribOptions	'\/windows'
-syn match nsisAttribOptions	'\/r'
-syn match nsisAttribOptions	'\/oname'
-syn match nsisAttribOptions	'\/REBOOTOK'
-syn match nsisAttribOptions	'\/SILENT'
-syn match nsisAttribOptions	'\/FILESONLY'
-syn match nsisAttribOptions	'\/SHORT'
-
-syn keyword nsisExecShell	SW_SHOWNORMAL SW_SHOWMAXIMIZED SW_SHOWMINIMIZED
-
-syn keyword nsisRegistry	HKCR HKLM HKCU HKU HKCC HKDD HKPD
-syn keyword nsisRegistry	HKEY_CLASSES_ROOT HKEY_LOCAL_MACHINE HKEY_CURRENT_USER HKEY_USERS
-syn keyword nsisRegistry	HKEY_CURRENT_CONFIG HKEY_DYN_DATA HKEY_PERFORMANCE_DATA
-
-syn keyword nsisFileAttrib	NORMAL ARCHIVE HIDDEN OFFLINE READONLY SYSTEM TEMPORARY
-syn keyword nsisFileAttrib	FILE_ATTRIBUTE_NORMAL FILE_ATTRIBUTE_ARCHIVE FILE_ATTRIBUTE_HIDDEN
-syn keyword nsisFileAttrib	FILE_ATTRIBUTE_OFFLINE FILE_ATTRIBUTE_READONLY FILE_ATTRIBUTE_SYSTEM
-syn keyword nsisFileAttrib	FILE_ATTRIBUTE_TEMPORARY
-
-syn keyword nsisMessageBox	MB_OK MB_OKCANCEL MB_ABORTRETRYIGNORE MB_RETRYCANCEL MB_YESNO MB_YESNOCANCEL
-syn keyword nsisMessageBox	MB_ICONEXCLAMATION MB_ICONINFORMATION MB_ICONQUESTION MB_ICONSTOP
-syn keyword nsisMessageBox	MB_TOPMOST MB_SETFOREGROUND MB_RIGHT
-syn keyword nsisMessageBox	MB_DEFBUTTON1 MB_DEFBUTTON2 MB_DEFBUTTON3 MB_DEFBUTTON4
-syn keyword nsisMessageBox	IDABORT IDCANCEL IDIGNORE IDNO IDOK IDRETRY IDYES
-
-syn match nsisNumber		"\<[^0]\d*\>"
-syn match nsisNumber		"\<0x\x\+\>"
-syn match nsisNumber		"\<0\o*\>"
+syn keyword nsisRegistry	contained HKCR HKLM HKCU HKU HKCC HKDD HKPD SHCTX
+syn keyword nsisRegistry	contained HKCR32 HKCR64 HKCU32 HKCU64 HKLM32 HKLM64
+syn keyword nsisRegistry	contained HKEY_CLASSES_ROOT HKEY_LOCAL_MACHINE HKEY_CURRENT_USER HKEY_USERS
+syn keyword nsisRegistry	contained HKEY_CLASSES_ROOT32 HKEY_CLASSES_ROOT64
+syn keyword nsisRegistry	contained HKEY_CURRENT_USER32 HKEY_CURRENT_USER64
+syn keyword nsisRegistry	contained HKEY_LOCAL_MACHINE32 HKEY_LOCAL_MACHINE64
+syn keyword nsisRegistry	contained HKEY_CURRENT_CONFIG HKEY_DYN_DATA HKEY_PERFORMANCE_DATA
+syn keyword nsisRegistry	contained SHELL_CONTEXT
 
 
-"INSTALLER ATTRIBUTES - General installer configuration
-syn keyword nsisAttribute	OutFile Name Caption SubCaption BrandingText Icon
-syn keyword nsisAttribute	WindowIcon BGGradient SilentInstall SilentUnInstall
-syn keyword nsisAttribute	CRCCheck MiscButtonText InstallButtonText FileErrorText
+" common options
+syn cluster nsisAnyOpt		contains=nsisComment,nsisLineContinuation,nsisPreprocSubst,nsisPreprocLangStr,nsisPreprocEnvVar,nsisUserVar,nsisSysVar,nsisString,nsisNumber
+syn region nsisBooleanOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisBoolean
+syn region nsisOnOffOpt		contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisOnOff
+syn region nsisLangOpt		contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLangKwd
+syn match nsisLangKwd		contained "/LANG\>"
+syn region nsisFontOpt		contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFontKwd
+syn match nsisFontKwd		contained "/\%(ITALIC\|UNDERLINE\|STRIKE\)\>"
 
-"INSTALLER ATTRIBUTES - Install directory configuration
-syn keyword nsisAttribute	InstallDir InstallDirRegKey
+"STATEMENTS - pages (4.5)
+syn keyword nsisStatement	contained Page UninstPage nextgroup=nsisPageOpt skipwhite
+syn region nsisPageOpt		contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPageKwd
+syn keyword nsisPageKwd		contained custom license components directory instfiles uninstConfirm
+syn match nsisPageKwd		contained "/ENABLECANCEL\>"
 
-"INSTALLER ATTRIBUTES - License page configuration
-syn keyword nsisAttribute	LicenseText LicenseData
+syn keyword nsisStatement	contained PageEx nextgroup=nsisPageExOpt skipwhite
+syn region nsisPageExOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPageExKwd
+syn match nsisPageExKwd		contained "\<\%(un\.\)\?\%(custom\|license\|components\|directory\|instfiles\|uninstConfirm\)\>"
 
-"INSTALLER ATTRIBUTES - Component page configuration
-syn keyword nsisAttribute	ComponentText InstType EnabledBitmap DisabledBitmap SpaceTexts
+syn keyword nsisStatement	contained PageExEnd PageCallbacks
 
-"INSTALLER ATTRIBUTES - Directory page configuration
-syn keyword nsisAttribute	DirShow DirText AllowRootDirInstall
+"STATEMENTS - sections (4.6.1)
+syn keyword nsisStatement	contained AddSize SectionEnd SectionGroupEnd
 
-"INSTALLER ATTRIBUTES - Install page configuration
-syn keyword nsisAttribute	InstallColors InstProgressFlags AutoCloseWindow
-syn keyword nsisAttribute	ShowInstDetails DetailsButtonText CompletedText
+syn keyword nsisStatement	contained Section nextgroup=nsisSectionOpt skipwhite
+syn region nsisSectionOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSectionKwd
+syn match nsisSectionKwd	contained "/o\>"
 
-"INSTALLER ATTRIBUTES - Uninstall configuration
-syn keyword nsisAttribute	UninstallText UninstallIcon UninstallCaption
-syn keyword nsisAttribute	UninstallSubCaption ShowUninstDetails UninstallButtonText
+syn keyword nsisStatement	contained SectionIn nextgroup=nsisSectionInOpt skipwhite
+syn region nsisSectionInOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSectionInKwd
+syn keyword nsisSectionInKwd	contained RO
 
-"COMPILER ATTRIBUTES
-syn keyword nsisCompiler	SetOverwrite SetCompress SetCompressor SetDatablockOptimize SetDateSave
+syn keyword nsisStatement	contained SectionGroup nextgroup=nsisSectionGroupOpt skipwhite
+syn region nsisSectionGroupOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSectionGroupKwd
+syn match nsisSectionGroupKwd	contained "/e\>"
+
+"STATEMENTS - functions (4.7.1)
+syn keyword nsisStatement	contained Function FunctionEnd
 
 
-"FUNCTIONS - general purpose
-syn keyword nsisInstruction	SetOutPath File Exec ExecWait ExecShell
-syn keyword nsisInstruction	Rename Delete RMDir
-
-"FUNCTIONS - registry & ini
-syn keyword nsisInstruction	WriteRegStr WriteRegExpandStr WriteRegDWORD WriteRegBin
-syn keyword nsisInstruction	WriteINIStr ReadRegStr ReadRegDWORD ReadINIStr ReadEnvStr
-syn keyword nsisInstruction	ExpandEnvStrings DeleteRegValue DeleteRegKey EnumRegKey
-syn keyword nsisInstruction	EnumRegValue DeleteINISec DeleteINIStr
-
-"FUNCTIONS - general purpose, advanced
-syn keyword nsisInstruction	CreateDirectory CopyFiles SetFileAttributes CreateShortCut
-syn keyword nsisInstruction	GetFullPathName SearchPath GetTempFileName CallInstDLL
-syn keyword nsisInstruction	RegDLL UnRegDLL GetDLLVersion GetDLLVersionLocal
-syn keyword nsisInstruction	GetFileTime GetFileTimeLocal
-
-"FUNCTIONS - Branching, flow control, error checking, user interaction, etc instructions
-syn keyword nsisInstruction	Goto Call Return IfErrors ClearErrors SetErrors FindWindow
-syn keyword nsisInstruction	SendMessage IsWindow IfFileExists MessageBox StrCmp
-syn keyword nsisInstruction	IntCmp IntCmpU Abort Quit GetFunctionAddress GetLabelAddress
-syn keyword nsisInstruction	GetCurrentAddress
-
-"FUNCTIONS - File and directory i/o instructions
-syn keyword nsisInstruction	FindFirst FindNext FindClose FileOpen FileClose FileRead
-syn keyword nsisInstruction	FileWrite FileReadByte FileWriteByte FileSeek
-
-"FUNCTIONS - Misc instructions
-syn keyword nsisInstruction	SetDetailsView SetDetailsPrint SetAutoClose DetailPrint
-syn keyword nsisInstruction	Sleep BringToFront HideWindow SetShellVarContext
-
-"FUNCTIONS - String manipulation support
-syn keyword nsisInstruction	StrCpy StrLen
-
-"FUNCTIONS - Stack support
-syn keyword nsisInstruction	Push Pop Exch
-
-"FUNCTIONS - Integer manipulation support
-syn keyword nsisInstruction	IntOp IntFmt
-
-"FUNCTIONS - Rebooting support
-syn keyword nsisInstruction	Reboot IfRebootFlag SetRebootFlag
-
-"FUNCTIONS - Uninstaller instructions
-syn keyword nsisInstruction	WriteUninstaller
-
-"FUNCTIONS - Install logging instructions
-syn keyword nsisInstruction	LogSet LogText
-
-"FUNCTIONS - Section management instructions
-syn keyword nsisInstruction	SectionSetFlags SectionGetFlags SectionSetText
-syn keyword nsisInstruction	SectionGetText
+"STATEMENTS - LogicLib.nsh
+syn match nsisStatement		"${If}"
+syn match nsisStatement		"${IfNot}"
+syn match nsisStatement		"${Unless}"
+syn match nsisStatement		"${ElseIf}"
+syn match nsisStatement		"${ElseIfNot}"
+syn match nsisStatement		"${ElseUnless}"
+syn match nsisStatement		"${Else}"
+syn match nsisStatement		"${EndIf}"
+syn match nsisStatement		"${EndUnless}"
+syn match nsisStatement		"${AndIf}"
+syn match nsisStatement		"${AndIfNot}"
+syn match nsisStatement		"${AndUnless}"
+syn match nsisStatement		"${OrIf}"
+syn match nsisStatement		"${OrIfNot}"
+syn match nsisStatement		"${OrUnless}"
+syn match nsisStatement		"${IfThen}"
+syn match nsisStatement		"${IfNotThen}"
+syn match nsisStatement		"${||\?}" nextgroup=@nsisPseudoStatement skipwhite
+syn match nsisStatement		"${IfCmd}" nextgroup=@nsisPseudoStatement skipwhite
+syn match nsisStatement		"${Select}"
+syn match nsisStatement		"${Case}"
+syn match nsisStatement		"${Case[2-5]}"
+syn match nsisStatement		"${CaseElse}"
+syn match nsisStatement		"${Default}"
+syn match nsisStatement		"${EndSelect}"
+syn match nsisStatement		"${Switch}"
+syn match nsisStatement		"${EndSwitch}"
+syn match nsisStatement		"${Break}"
+syn match nsisStatement		"${Do}"
+syn match nsisStatement		"${DoWhile}"
+syn match nsisStatement		"${DoUntil}"
+syn match nsisStatement		"${ExitDo}"
+syn match nsisStatement		"${Continue}"
+syn match nsisStatement		"${Loop}"
+syn match nsisStatement		"${LoopWhile}"
+syn match nsisStatement		"${LoopUntil}"
+syn match nsisStatement		"${For}"
+syn match nsisStatement		"${ForEach}"
+syn match nsisStatement		"${ExitFor}"
+syn match nsisStatement		"${Next}"
+"STATEMENTS - Memento.nsh
+syn match nsisStatement		"${MementoSection}"
+syn match nsisStatement		"${MementoSectionEnd}"
 
 
-"SPECIAL FUNCTIONS - install
+"USER VARIABLES (4.2.1)
+syn keyword nsisInstruction	contained Var nextgroup=nsisVarOpt skipwhite
+syn region nsisVarOpt		contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisVarKwd
+syn match nsisVarKwd		contained "/GLOBAL\>"
+
+"INSTALLER ATTRIBUTES (4.8.1)
+syn keyword nsisAttribute	contained Caption ChangeUI CheckBitmap CompletedText ComponentText
+syn keyword nsisAttribute	contained DetailsButtonText DirText DirVar
+syn keyword nsisAttribute	contained FileErrorText Icon InstallButtonText
+syn keyword nsisAttribute	contained InstallDir InstProgressFlags
+syn keyword nsisAttribute	contained LicenseData LicenseText
+syn keyword nsisAttribute	contained MiscButtonText Name OutFile
+syn keyword nsisAttribute	contained SpaceTexts SubCaption UninstallButtonText UninstallCaption
+syn keyword nsisAttribute	contained UninstallIcon UninstallSubCaption UninstallText
+
+syn keyword nsisAttribute	contained AddBrandingImage nextgroup=nsisAddBrandingImageOpt skipwhite
+syn region nsisAddBrandingImageOpt  contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisAddBrandingImageKwd
+syn keyword nsisAddBrandingImageKwd contained left right top bottom width height
+
+syn keyword nsisAttribute	contained nextgroup=nsisBooleanOpt skipwhite
+			\ AllowRootDirInstall AutoCloseWindow
+
+syn keyword nsisAttribute	contained BGFont nextgroup=nsisFontOpt skipwhite
+
+syn keyword nsisAttribute	contained BGGradient nextgroup=nsisBGGradientOpt skipwhite
+syn region nsisBGGradientOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisBGGradientKwd
+syn keyword nsisBGGradientKwd	contained off
+
+syn keyword nsisAttribute	contained BrandingText nextgroup=nsisBrandingTextOpt skipwhite
+syn region nsisBrandingTextOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisBrandingTextKwd
+syn match nsisBrandingTextKwd	contained "/TRIM\%(LEFT\|RIGHT\|CENTER\)\>"
+
+syn keyword nsisAttribute	contained CRCCheck nextgroup=nsisCRCCheckOpt skipwhite
+syn region nsisCRCCheckOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisCRCCheckKwd
+syn keyword nsisCRCCheckKwd	contained on off force
+
+syn keyword nsisAttribute	contained DirVerify nextgroup=nsisDirVerifyOpt skipwhite
+syn region nsisDirVerifyOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDirVerifyKwd
+syn keyword nsisDirVerifyKwd	contained auto leave
+
+syn keyword nsisAttribute	contained InstallColors nextgroup=nsisInstallColorsOpt skipwhite
+syn region nsisInstallColorsOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisInstallColorsKwd
+syn match nsisInstallColorsKwd	contained "/windows\>"
+
+syn keyword nsisAttribute	contained InstallDirRegKey nextgroup=nsisRegistryOpt skipwhite
+
+syn keyword nsisAttribute	contained InstType nextgroup=nsisInstTypeOpt skipwhite
+syn region nsisInstTypeOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisInstTypeKwd
+syn match nsisInstTypeKwd	contained "/\%(NOCUSTOM\|CUSTOMSTRING\|COMPONENTSONLYONCUSTOM\)\>"
+
+syn keyword nsisAttribute	contained LicenseBkColor nextgroup=nsisLicenseBkColorOpt skipwhite
+syn region nsisLicenseBkColorOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLicenseBkColorKwd
+syn match nsisLicenseBkColorKwd  contained "/\%(gray\|windows\)\>"
+
+syn keyword nsisAttribute	contained LicenseForceSelection nextgroup=nsisLicenseForceSelectionOpt skipwhite
+syn region nsisLicenseForceSelectionOpt  contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisLicenseForceSelectionKwd
+syn keyword nsisLicenseForceSelectionKwd contained checkbox radiobuttons off
+
+syn keyword nsisAttribute	contained ManifestDPIAware nextgroup=nsisManifestDPIAwareOpt skipwhite
+syn region nsisManifestDPIAwareOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisManifestDPIAwareKwd
+syn keyword nsisManifestDPIAwareKwd	contained notset true false
+
+syn keyword nsisAttribute	contained ManifestSupportedOS nextgroup=nsisManifestSupportedOSOpt skipwhite
+syn region nsisManifestSupportedOSOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisManifestSupportedOSKwd
+syn match nsisManifestSupportedOSKwd	contained "\<\%(none\|all\|WinVista\|Win7\|Win8\|Win8\.1\|Win10\)\>"
+
+syn keyword nsisAttribute	contained RequestExecutionLevel nextgroup=nsisRequestExecutionLevelOpt skipwhite
+syn region nsisRequestExecutionLevelOpt  contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRequestExecutionLevelKwd
+syn keyword nsisRequestExecutionLevelKwd contained none user highest admin
+
+syn keyword nsisAttribute	contained SetFont nextgroup=nsisLangOpt skipwhite
+
+syn keyword nsisAttribute	contained nextgroup=nsisShowInstDetailsOpt skipwhite
+			\ ShowInstDetails ShowUninstDetails
+syn region nsisShowInstDetailsOpt  contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisShowInstDetailsKwd
+syn keyword nsisShowInstDetailsKwd contained hide show nevershow
+
+syn keyword nsisAttribute	contained SilentInstall nextgroup=nsisSilentInstallOpt skipwhite
+syn region nsisSilentInstallOpt	 contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSilentInstallKwd
+syn keyword nsisSilentInstallKwd contained normal silent silentlog
+
+syn keyword nsisAttribute	contained SilentUnInstall nextgroup=nsisSilentUnInstallOpt skipwhite
+syn region nsisSilentUnInstallOpt  contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSilentUnInstallKwd
+syn keyword nsisSilentUnInstallKwd contained normal silent
+
+syn keyword nsisAttribute	contained nextgroup=nsisOnOffOpt skipwhite
+			\ WindowIcon XPStyle
+
+"COMPILER FLAGS (4.8.2)
+syn keyword nsisCompiler	contained nextgroup=nsisOnOffOpt skipwhite
+			\ AllowSkipFiles SetDatablockOptimize SetDateSave
+
+syn keyword nsisCompiler	contained FileBufSize SetCompressorDictSize
+
+syn keyword nsisCompiler	contained SetCompress nextgroup=nsisSetCompressOpt skipwhite
+syn region nsisSetCompressOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetCompressKwd
+syn keyword nsisSetCompressKwd  contained auto force off
+
+syn keyword nsisCompiler	contained SetCompressor nextgroup=nsisSetCompressorOpt skipwhite
+syn region nsisSetCompressorOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetCompressorKwd
+syn keyword nsisSetCompressorKwd  contained zlib bzip2 lzma
+syn match nsisSetCompressorKwd	contained "/\%(SOLID\|FINAL\)"
+
+syn keyword nsisCompiler	contained SetOverwrite nextgroup=nsisSetOverwriteOpt skipwhite
+syn region nsisSetOverwriteOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetOverwriteKwd
+syn keyword nsisSetOverwriteKwd	contained on off try ifnewer ifdiff lastused
+
+syn keyword nsisCompiler	contained Unicode nextgroup=nsisBooleanOpt skipwhite
+
+"VERSION INFORMATION (4.8.3)
+syn keyword nsisVersionInfo	contained VIAddVersionKey nextgroup=nsisLangOpt skipwhite
+
+syn keyword nsisVersionInfo	contained VIProductVersion VIFileVersion
+
+
+"FUNCTIONS - basic (4.9.1)
+syn keyword nsisInstruction	contained Delete Rename nextgroup=nsisDeleteOpt skipwhite
+syn region nsisDeleteOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDeleteKwd
+syn match nsisDeleteKwd		contained "/REBOOTOK\>"
+
+syn keyword nsisInstruction	contained Exec ExecWait SetOutPath
+
+syn keyword nsisInstruction	contained ExecShell ExecShellWait nextgroup=nsisExecShellOpt skipwhite
+syn region nsisExecShellOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisExecShellKwd
+syn keyword nsisExecShellKwd	contained SW_SHOWDEFAULT SW_SHOWNORMAL SW_SHOWMAXIMIZED SW_SHOWMINIMIZED SW_HIDE
+syn match nsisExecShellKwd	contained "/INVOKEIDLIST\>"
+
+syn keyword nsisInstruction	contained File nextgroup=nsisFileOpt skipwhite
+syn region nsisFileOpt		contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFileKwd
+syn match nsisFileKwd		contained "/\%(nonfatal\|[arx]\|oname\)\>"
+
+syn keyword nsisInstruction	contained ReserveFile nextgroup=nsisReserveFileOpt skipwhite
+syn region nsisReserveFileOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisReserveFileKwd
+syn match nsisReserveFileKwd	contained "/\%(nonfatal\|[rx]\|plugin\)\>"
+
+syn keyword nsisInstruction	contained RMDir nextgroup=nsisRMDirOpt skipwhite
+syn region nsisRMDirOpt		contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRMDirKwd
+syn match nsisRMDirKwd		contained "/\%(REBOOTOK\|r\)\>"
+
+
+"FUNCTIONS - registry & ini (4.9.2)
+syn keyword nsisInstruction	contained DeleteINISec DeleteINIStr FlushINI ReadINIStr WriteINIStr
+syn keyword nsisInstruction	contained ExpandEnvStrings ReadEnvStr
+
+syn keyword nsisInstruction	contained DeleteRegKey nextgroup=nsisDeleteRegKeyOpt skipwhite
+syn region nsisDeleteRegKeyOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDeleteRegKeyKwd,nsisRegistry
+syn match nsisDeleteRegKeyKwd	contained "/ifempty\>"
+
+syn keyword nsisInstruction	contained nextgroup=nsisRegistryOpt skipwhite
+			\ DeleteRegValue EnumRegKey EnumRegValue ReadRegDWORD ReadRegStr WriteRegBin WriteRegDWORD WriteRegExpandStr WriteRegStr
+syn region nsisRegistryOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRegistry
+
+syn keyword nsisInstruction	contained WriteRegMultiStr nextgroup=nsisWriteRegMultiStrOpt skipwhite
+syn region nsisWriteRegMultiStrOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisRegistry,nsisWriteRegMultiStrKwd
+syn match nsisWriteRegMultiStrKwd  contained "/REGEDIT5\>"
+
+syn keyword nsisInstruction	contained SetRegView nextgroup=nsisSetRegViewOpt skipwhite
+syn region nsisSetRegViewOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetRegViewKwd
+syn keyword nsisSetRegViewKwd	contained default lastused
+
+"FUNCTIONS - general purpose (4.9.3)
+syn keyword nsisInstruction	contained CallInstDLL CreateDirectory GetDLLVersion
+syn keyword nsisInstruction	contained GetDLLVersionLocal GetFileTime GetFileTimeLocal
+syn keyword nsisInstruction	contained GetTempFileName SearchPath RegDLL UnRegDLL
+
+syn keyword nsisInstruction	contained CopyFiles nextgroup=nsisCopyFilesOpt skipwhite
+syn region nsisCopyFilesOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisCopyFilesKwd
+syn match nsisCopyFilesKwd	contained "/\%(SILENT\|FILESONLY\)\>"
+
+syn keyword nsisInstruction	contained CreateShortcut nextgroup=nsisCreateShortcutOpt skipwhite
+syn region nsisCreateShortcutOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisCreateShortcutKwd
+syn match nsisCreateShortcutKwd	 contained "/NoWorkingDir\>"
+
+syn keyword nsisInstruction	contained GetFullPathName nextgroup=nsisGetFullPathNameOpt skipwhite
+syn region nsisGetFullPathNameOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisGetFullPathNameKwd
+syn match nsisGetFullPathNameKwd  contained "/SHORT\>"
+
+syn keyword nsisInstruction	contained SetFileAttributes nextgroup=nsisSetFileAttributesOpt skipwhite
+syn region nsisSetFileAttributesOpt  contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFileAttrib
+syn keyword nsisFileAttrib	contained NORMAL ARCHIVE HIDDEN OFFLINE READONLY SYSTEM TEMPORARY
+syn keyword nsisFileAttrib	contained FILE_ATTRIBUTE_NORMAL FILE_ATTRIBUTE_ARCHIVE FILE_ATTRIBUTE_HIDDEN
+syn keyword nsisFileAttrib	contained FILE_ATTRIBUTE_OFFLINE FILE_ATTRIBUTE_READONLY FILE_ATTRIBUTE_SYSTEM
+syn keyword nsisFileAttrib	contained FILE_ATTRIBUTE_TEMPORARY
+
+"FUNCTIONS - Flow Control (4.9.4)
+syn keyword nsisInstruction	contained Abort Call ClearErrors GetCurrentAddress
+syn keyword nsisInstruction	contained GetFunctionAddress GetLabelAddress Goto
+syn keyword nsisInstruction	contained IfAbort IfErrors IfFileExists IfRebootFlag IfSilent
+syn keyword nsisInstruction	contained IntCmp IntCmpU Return Quit SetErrors StrCmp StrCmpS
+
+syn keyword nsisInstruction	contained MessageBox nextgroup=nsisMessageBoxOpt skipwhite
+syn region nsisMessageBoxOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisMessageBox
+syn keyword nsisMessageBox	contained MB_OK MB_OKCANCEL MB_ABORTRETRYIGNORE MB_RETRYCANCEL MB_YESNO MB_YESNOCANCEL
+syn keyword nsisMessageBox	contained MB_ICONEXCLAMATION MB_ICONINFORMATION MB_ICONQUESTION MB_ICONSTOP MB_USERICON
+syn keyword nsisMessageBox	contained MB_TOPMOST MB_SETFOREGROUND MB_RIGHT MB_RTLREADING
+syn keyword nsisMessageBox	contained MB_DEFBUTTON1 MB_DEFBUTTON2 MB_DEFBUTTON3 MB_DEFBUTTON4
+syn keyword nsisMessageBox	contained IDABORT IDCANCEL IDIGNORE IDNO IDOK IDRETRY IDYES
+syn match nsisMessageBox	contained "/SD\>"
+
+"FUNCTIONS - File and directory i/o instructions (4.9.5)
+syn keyword nsisInstruction	contained FileClose FileOpen FileRead FileReadUTF16LE
+syn keyword nsisInstruction	contained FileReadByte FileReadWord FileSeek FileWrite
+syn keyword nsisInstruction	contained FileWriteByte FileWriteWord
+syn keyword nsisInstruction	contained FindClose FindFirst FindNext
+
+syn keyword nsisInstruction	contained FileWriteUTF16LE nextgroup=nsisFileWriteUTF16LEOpt skipwhite
+syn region nsisFileWriteUTF16LEOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisFileWriteUTF16LEKwd
+syn match nsisFileWriteUTF16LEKwd  contained "/BOM\>"
+
+"FUNCTIONS - Uninstaller instructions (4.9.6)
+syn keyword nsisInstruction	contained WriteUninstaller
+
+"FUNCTIONS - Misc instructions (4.9.7)
+syn keyword nsisInstruction	contained GetErrorLevel GetInstDirError InitPluginsDir Nop
+syn keyword nsisInstruction	contained SetErrorLevel Sleep
+
+syn keyword nsisInstruction	contained SetShellVarContext nextgroup=nsisSetShellVarContextOpt skipwhite
+syn region nsisSetShellVarContextOpt  contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetShellVarContextKwd
+syn keyword nsisSetShellVarContextKwd contained current all
+
+"FUNCTIONS - String manipulation support (4.9.8)
+syn keyword nsisInstruction	contained StrCpy StrLen
+
+"FUNCTIONS - Stack support (4.9.9)
+syn keyword nsisInstruction	contained Exch Push Pop
+
+"FUNCTIONS - Integer manipulation support (4.9.10)
+syn keyword nsisInstruction	contained IntOp IntFmt
+
+"FUNCTIONS - Rebooting support (4.9.11)
+syn keyword nsisInstruction	contained Reboot SetRebootFlag
+
+"FUNCTIONS - Install logging instructions (4.9.12)
+syn keyword nsisInstruction	contained LogSet nextgroup=nsisOnOffOpt skipwhite
+syn keyword nsisInstruction	contained LogText
+
+"FUNCTIONS - Section management instructions (4.9.13)
+syn keyword nsisInstruction	contained SectionSetFlags SectionGetFlags SectionSetText
+syn keyword nsisInstruction	contained SectionGetText SectionSetInstTypes SectionGetInstTypes
+syn keyword nsisInstruction	contained SectionSetSize SectionGetSize SetCurInstType GetCurInstType
+syn keyword nsisInstruction	contained InstTypeSetText InstTypeGetText
+
+"FUNCTIONS - User Interface Instructions (4.9.14)
+syn keyword nsisInstruction	contained BringToFront DetailPrint EnableWindow
+syn keyword nsisInstruction	contained FindWindow GetDlgItem HideWindow IsWindow
+syn keyword nsisInstruction	contained ShowWindow
+
+syn keyword nsisInstruction	contained CreateFont nextgroup=nsisFontOpt skipwhite
+
+syn keyword nsisInstruction	contained nextgroup=nsisBooleanOpt skipwhite
+			\ LockWindow SetAutoClose
+
+syn keyword nsisInstruction	contained SendMessage nextgroup=nsisSendMessageOpt skipwhite
+syn region nsisSendMessageOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSendMessageKwd
+syn match nsisSendMessageKwd	contained "/TIMEOUT\>"
+
+syn keyword nsisInstruction	contained SetBrandingImage nextgroup=nsisSetBrandingImageOpt skipwhite
+syn region nsisSetBrandingImageOpt contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetBrandingImageKwd
+syn match nsisSetBrandingImageKwd  contained "/\%(IMGID\|RESIZETOFIT\)\>"
+
+syn keyword nsisInstruction	contained SetDetailsView nextgroup=nsisSetDetailsViewOpt skipwhite
+syn region nsisSetDetailsViewOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetDetailsViewKwd
+syn keyword nsisSetDetailsViewKwd	contained show hide
+
+syn keyword nsisInstruction	contained SetDetailsPrint nextgroup=nsisSetDetailsPrintOpt skipwhite
+syn region nsisSetDetailsPrintOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetDetailsPrintKwd
+syn keyword nsisSetDetailsPrintKwd	contained none listonly textonly both lastused
+
+syn keyword nsisInstruction	contained SetCtlColors nextgroup=nsisSetCtlColorsOpt skipwhite
+syn region nsisSetCtlColorsOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetCtlColorsKwd
+syn match nsisSetCtlColorsKwd	contained "/BRANDING\>"
+
+syn keyword nsisInstruction	contained SetSilent nextgroup=nsisSetSilentOpt skipwhite
+syn region nsisSetSilentOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSetSilentKwd
+syn keyword nsisSetSilentKwd	contained silent normal
+
+
+"FUNCTIONS - Multiple Languages Instructions (4.9.15)
+syn keyword nsisInstruction	contained LoadLanguageFile LangString LicenseLangString
+
+
+"SPECIAL FUNCTIONS - install (4.7.2.1)
+syn match nsisCallback		"\.onGUIInit"
 syn match nsisCallback		"\.onInit"
-syn match nsisCallback		"\.onUserAbort"
-syn match nsisCallback		"\.onInstSuccess"
 syn match nsisCallback		"\.onInstFailed"
-syn match nsisCallback		"\.onVerifyInstDir"
-syn match nsisCallback		"\.onNextPage"
-syn match nsisCallback		"\.onPrevPage"
+syn match nsisCallback		"\.onInstSuccess"
+syn match nsisCallback		"\.onGUIEnd"
+syn match nsisCallback		"\.onMouseOverSection"
+syn match nsisCallback		"\.onRebootFailed"
 syn match nsisCallback		"\.onSelChange"
+syn match nsisCallback		"\.onUserAbort"
+syn match nsisCallback		"\.onVerifyInstDir"
 
-"SPECIAL FUNCTIONS - uninstall
+"SPECIAL FUNCTIONS - uninstall (4.7.2.2)
+syn match nsisCallback		"un\.onGUIInit"
 syn match nsisCallback		"un\.onInit"
+syn match nsisCallback		"un\.onUninstFailed"
+syn match nsisCallback		"un\.onUninstSuccess"
+syn match nsisCallback		"un\.onGUIEnd"
+syn match nsisCallback		"un\.onRebootFailed"
+syn match nsisCallback		"un\.onSelChange"
 syn match nsisCallback		"un\.onUserAbort"
-syn match nsisCallback		"un\.onInstSuccess"
-syn match nsisCallback		"un\.onInstFailed"
-syn match nsisCallback		"un\.onVerifyInstDir"
-syn match nsisCallback		"un\.onNextPage"
 
 
-"STATEMENTS - sections
-syn keyword nsisStatement	Section SectionIn SectionEnd SectionDivider
-syn keyword nsisStatement	AddSize
+"COMPILER UTILITY (5.1)
+syn match nsisInclude		contained "!include\>" nextgroup=nsisIncludeOpt skipwhite
+syn region nsisIncludeOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisIncludeKwd
+syn match nsisIncludeKwd	contained "/\%(NONFATAL\|CHARSET\)\>"
 
-"STATEMENTS - functions
-syn keyword nsisStatement	Function FunctionEnd
+syn match nsisSystem		contained "!addincludedir\>"
 
-"STATEMENTS - pages
-syn keyword nsisStatement	Page UninstPage PageEx PageExEnc PageCallbacks
+syn match nsisSystem		contained "!addplugindir\>" nextgroup=nsisAddplugindirOpt skipwhite
+syn region nsisAddplugindirOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisAddplugindirKwd
+syn match nsisAddplugindirKwd	contained "/\%(x86-ansi\|x86-unicode\)\>"
 
+syn match nsisSystem		contained "!appendfile\>" nextgroup=nsisAppendfileOpt skipwhite
+syn region nsisAppendfileOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisAppendfileKwd
+syn match nsisAppendfileKwd	contained "/\%(CHARSET\|RawNL\)\>"
 
-"ERROR
-syn keyword nsisError		UninstallExeName
+syn match nsisSystem		contained "!cd\>"
+
+syn match nsisSystem		contained "!delfile\>" nextgroup=nsisDelfileOpt skipwhite
+syn region nsisDelfileOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDelfileKwd
+syn match nsisDelfileKwd	contained "/nonfatal\>"
+
+syn match nsisSystem		contained "!echo\>"
+syn match nsisSystem		contained "!error\>"
+syn match nsisSystem		contained "!execute\>"
+syn match nsisSystem		contained "!makensis\>"
+syn match nsisSystem		contained "!packhdr\>"
+syn match nsisSystem		contained "!finalize\>"
+syn match nsisSystem		contained "!system\>"
+syn match nsisSystem		contained "!tempfile\>"
+syn match nsisSystem		contained "!getdllversion\>"
+syn match nsisSystem		contained "!warning\>"
+
+syn match nsisSystem		contained "!pragma\>" nextgroup=nsisPragmaOpt skipwhite
+syn region nsisPragmaOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisPragmaKwd
+syn keyword nsisPragmaKwd	contained enable disable default push pop
+
+syn match nsisSystem		contained "!verbose\>" nextgroup=nsisVerboseOpt skipwhite
+syn region nsisVerboseOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisVerboseKwd
+syn keyword nsisVerboseKwd	contained push pop
+
+"PREPROCESSOR (5.4)
+syn match nsisDefine		contained "!define\>" nextgroup=nsisDefineOpt skipwhite
+syn region nsisDefineOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisDefineKwd
+syn match nsisDefineKwd		contained "/\%(ifndef\|redef\|date\|utcdate\|math\|file\)\>"
+
+syn match nsisDefine		contained "!undef\>"
+syn match nsisPreCondit		contained "!ifdef\>"
+syn match nsisPreCondit		contained "!ifndef\>"
+
+syn match nsisPreCondit		contained "!if\>" nextgroup=nsisIfOpt skipwhite
+syn region nsisIfOpt		contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisIfKwd
+syn match nsisIfKwd		contained "/FileExists\>"
+
+syn match nsisPreCondit		contained "!ifmacrodef\>"
+syn match nsisPreCondit		contained "!ifmacrondef\>"
+syn match nsisPreCondit		contained "!else\>"
+syn match nsisPreCondit		contained "!endif\>"
+syn match nsisMacro		contained "!insertmacro\>"
+syn match nsisMacro		contained "!macro\>"
+syn match nsisMacro		contained "!macroend\>"
+syn match nsisMacro		contained "!macroundef\>"
+
+syn match nsisMacro		contained "!searchparse\>" nextgroup=nsisSearchparseOpt skipwhite
+syn region nsisSearchparseOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSearchparseKwd
+syn match nsisSearchparseKwd	contained "/\%(ignorecase\|noerrors\|file\)\>"
+
+syn match nsisMacro		contained "!searchreplace\>" nextgroup=nsisSearchreplaceOpt skipwhite
+syn region nsisSearchreplaceOpt	contained start="" end="$" transparent keepend contains=@nsisAnyOpt,nsisSearchreplaceKwd
+syn match nsisSearchreplaceKwd	contained "/ignorecase\>"
+
 
 
 " Define the default highlighting.
@@ -225,32 +588,93 @@
 
 hi def link nsisInstruction		Function
 hi def link nsisComment			Comment
-hi def link nsisLocalLabel			Label
+hi def link nsisFirstComment		Comment
+hi def link nsisLocalLabel		Label
 hi def link nsisGlobalLabel		Label
-hi def link nsisStatement			Statement
+hi def link nsisStatement		Statement
 hi def link nsisString			String
 hi def link nsisBoolean			Boolean
-hi def link nsisAttribOptions		Constant
-hi def link nsisExecShell			Constant
-hi def link nsisFileAttrib			Constant
-hi def link nsisMessageBox			Constant
-hi def link nsisRegistry			Identifier
+hi def link nsisOnOff			Boolean
+hi def link nsisFontKwd			Constant
+hi def link nsisLangKwd			Constant
+hi def link nsisPageKwd			Constant
+hi def link nsisPageExKwd		Constant
+hi def link nsisSectionKwd		Constant
+hi def link nsisSectionInKwd		Constant
+hi def link nsisSectionGroupKwd		Constant
+hi def link nsisVarKwd			Constant
+hi def link nsisAddBrandingImageKwd	Constant
+hi def link nsisBGGradientKwd		Constant
+hi def link nsisBrandingTextKwd		Constant
+hi def link nsisCRCCheckKwd		Constant
+hi def link nsisDirVerifyKwd		Constant
+hi def link nsisInstallColorsKwd	Constant
+hi def link nsisInstTypeKwd		Constant
+hi def link nsisLicenseBkColorKwd	Constant
+hi def link nsisLicenseForceSelectionKwd Constant
+hi def link nsisManifestDPIAwareKwd	Constant
+hi def link nsisManifestSupportedOSKwd	Constant
+hi def link nsisRequestExecutionLevelKwd Constant
+hi def link nsisShowInstDetailsKwd	Constant
+hi def link nsisSilentInstallKwd	Constant
+hi def link nsisSilentUnInstallKwd	Constant
+hi def link nsisSetCompressKwd		Constant
+hi def link nsisSetCompressorKwd	Constant
+hi def link nsisSetOverwriteKwd		Constant
+hi def link nsisDeleteKwd		Constant
+hi def link nsisExecShellKwd		Constant
+hi def link nsisFileKwd			Constant
+hi def link nsisReserveFileKwd		Constant
+hi def link nsisRMDirKwd		Constant
+hi def link nsisDeleteRegKeyKwd		Constant
+hi def link nsisWriteRegMultiStrKwd	Constant
+hi def link nsisSetRegViewKwd		Constant
+hi def link nsisCopyFilesKwd		Constant
+hi def link nsisCreateShortcutKwd	Constant
+hi def link nsisGetFullPathNameKwd	Constant
+hi def link nsisFileAttrib		Constant
+hi def link nsisMessageBox		Constant
+hi def link nsisFileWriteUTF16LEKwd	Constant
+hi def link nsisSetShellVarContextKwd	Constant
+hi def link nsisSendMessageKwd		Constant
+hi def link nsisSetBrandingImageKwd	Constant
+hi def link nsisSetDetailsViewKwd	Constant
+hi def link nsisSetDetailsPrintKwd	Constant
+hi def link nsisSetCtlColorsKwd		Constant
+hi def link nsisSetSilentKwd		Constant
+hi def link nsisRegistry		Identifier
 hi def link nsisNumber			Number
 hi def link nsisError			Error
 hi def link nsisUserVar			Identifier
 hi def link nsisSysVar			Identifier
-hi def link nsisAttribute			Type
-hi def link nsisCompiler			Type
+hi def link nsisAttribute		Type
+hi def link nsisCompiler		Type
+hi def link nsisVersionInfo		Type
 hi def link nsisTodo			Todo
-hi def link nsisCallback			Operator
+hi def link nsisCallback		Identifier
 " preprocessor commands
 hi def link nsisPreprocSubst		PreProc
+hi def link nsisPreprocLangStr		PreProc
+hi def link nsisPreprocEnvVar		PreProc
 hi def link nsisDefine			Define
 hi def link nsisMacro			Macro
-hi def link nsisPreCondit			PreCondit
+hi def link nsisPreCondit		PreCondit
 hi def link nsisInclude			Include
 hi def link nsisSystem			PreProc
+hi def link nsisLineContinuation	Special
+hi def link nsisIncludeKwd		Constant
+hi def link nsisAddplugindirKwd		Constant
+hi def link nsisAppendfileKwd		Constant
+hi def link nsisDelfileKwd		Constant
+hi def link nsisPragmaKwd		Constant
+hi def link nsisVerboseKwd		Constant
+hi def link nsisDefineKwd		Constant
+hi def link nsisIfKwd			Constant
+hi def link nsisSearchparseKwd		Constant
+hi def link nsisSearchreplaceKwd	Constant
 
 
 let b:current_syntax = "nsis"
 
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/syntax/pike.vim b/runtime/syntax/pike.vim
index ccd122c..2c34cb4 100644
--- a/runtime/syntax/pike.vim
+++ b/runtime/syntax/pike.vim
@@ -1,59 +1,184 @@
 " Vim syntax file
-" Language:	Pike
-" Maintainer:	Francesco Chemolli <kinkie@kame.usr.dsi.unimi.it>
-" Last Change:	2001 May 10
+" Language:		Pike
+" Maintainer:		Stephen R. van den Berg <srb@cuci.nl>
+" Maintainer of previous implementation: Francesco Chemolli <kinkie@kame.usr.dsi.unimi.it>
+" Last Change:		2018 Jan 28
+" Version:		2.9
+" Remark: Derived from the C-syntax; fixed several bugs in the C-syntax
+" Remark: and extended it with the Pike syntax.
+" Remark: Includes a highlighter for all Pike types of parenthesis errors.
+" Remark: Includes a highlighter for SQL on multiline strings.
+" Remark: Includes a highlighter for any embedded Autodoc format.
 
-" quit when a syntax file was already loaded
+" Quit when a (custom) syntax file was already loaded
 if exists("b:current_syntax")
   finish
 endif
 
-" A bunch of useful C keywords
-syn keyword pikeStatement	goto break return continue
-syn keyword pikeLabel		case default
-syn keyword pikeConditional	if else switch
-syn keyword pikeRepeat		while for foreach do
-syn keyword pikeStatement	gauge destruct lambda inherit import typeof
-syn keyword pikeException	catch
-syn keyword pikeType		inline nomask private protected public static
+let s:cpo_save = &cpo
+set cpo&vim
 
+" For multiline strings, try formatting them as SQL
+syn include @pikeSQL <sfile>:p:h/sqloracle.vim
+unlet b:current_syntax
 
-syn keyword pikeTodo contained	TODO FIXME XXX
+" For embedded Autodoc documentation (WIP)
+syn include @pikeAutodoc <sfile>:p:h/autodoc.vim
+unlet b:current_syntax
+
+syn case match
+
+" Supports array, multiset, mapping multi-character delimiter matching
+" Supports rotating amongst several same-level preprocessor conditionals
+packadd! matchit
+let b:match_words = "({:}\\@1<=),(\\[:]\\@1<=),(<:>\\@1<=),^\s*#\s*\%(if\%(n\?def\)\|else\|el\%(se\)\?if\|endif\)\>"
+
+" A bunch of useful Pike keywords
+syn keyword	pikeDebug	gauge backtrace describe_backtrace werror _Static_assert static_assert
+syn keyword	pikeException	error catch throw
+syn keyword	pikeLabel	case default break return continue
+syn keyword	pikeConditional	if else switch
+syn keyword	pikeRepeat	while for foreach do
+
+syn keyword pikePredef RegGetKeyNames RegGetValue RegGetValues
+syn keyword pikePredef __automap__ __empty_program
+syn keyword pikePredef __handle_sprintf_format __parse_pike_type _disable_threads
+syn keyword pikePredef _do_call_outs _exit _gdb_breakpoint
+syn keyword pikePredef abs access acos acosh add_constant alarm all_constants
+syn keyword pikePredef array_sscanf asin asinh atan atan2 atanh atexit
+syn keyword pikePredef basetype call_function call_out call_out_info cd ceil
+syn keyword pikePredef combine_path combine_path_nt
+syn keyword pikePredef combine_path_unix compile copy_value cos cosh cpp crypt
+syn keyword pikePredef ctime decode_value delay encode_value encode_value_canonic
+syn keyword pikePredef enumerate errno exece exit exp file_stat file_truncate
+syn keyword pikePredef filesystem_stat find_call_out floor fork function_name
+syn keyword pikePredef function_object function_program gc
+syn keyword pikePredef get_active_compilation_handler get_active_error_handler
+syn keyword pikePredef get_all_groups get_all_users get_dir get_groups_for_user
+syn keyword pikePredef get_iterator get_profiling_info get_weak_flag getcwd
+syn keyword pikePredef getgrgid getgrnam gethrdtime gethrtime gethrvtime getpid
+syn keyword pikePredef getpwnam getpwuid getxattr glob gmtime has_index has_prefix
+syn keyword pikePredef has_suffix has_value hash hash_7_0 hash_7_4 hash_8_0
+syn keyword pikePredef hash_value kill limit listxattr load_module localtime
+syn keyword pikePredef log lower_case master max min mkdir mktime mv
+syn keyword pikePredef object_program pow query_num_arg random_seed
+syn keyword pikePredef remove_call_out removexattr replace_master rm round
+syn keyword pikePredef set_priority set_weak_flag setxattr sgn signal signame
+syn keyword pikePredef signum sin sinh sleep sort sprintf sqrt sscanf strerror
+syn keyword pikePredef string_filter_non_unicode string_to_unicode string_to_utf8
+syn keyword pikePredef tan tanh time trace types ualarm unicode_to_string
+syn keyword pikePredef upper_case utf8_to_string version
+
+syn keyword pikePredef write lock try_lock
+syn keyword pikePredef MutexKey Timestamp Date Time TimeTZ Interval Inet Range
+syn keyword pikePredef Null null inf nan
+
+syn keyword	pikeTodo		contained TODO FIXME XXX
+
+" Match parengroups: allows for highlighting indices of mappings and
+" highlighting semicolons that are out of place due to a paren imbalance
+syn cluster	pikePreShort	contains=pikeDefine,pikePreProc,pikeCppOutWrapper,pikeCppInWrapper,pikePreCondit,pikePreConditMatch
+syn cluster	pikeExprGroup	contains=pikeMappIndex,@pikeStmt,pikeNest,@pikeBadGroup,pikeSoftCast
+syn match	pikeWord	transparent contained /[^()'"[\]{},;:]\+/ contains=ALLBUT,@pikePreProcGroup,@pikeExprGroup
+syn match	pikeFirstWord	transparent display contained /^\s*#[^()'"[\]{},;:]\+/ contains=@pikePreShort
+syn cluster	pikeMappElm	contains=pikeMappIndex,@pikeStmt
+syn cluster	pikeStmt	contains=pikeFirstWord,pikeCharacter,pikeString,pikeMlString,pikeWord,pikeNest
+syn cluster     pikeBadGroup	contains=pikeBadPClose,pikeBadAClose,pikeBadBClose,pikeBadSPClose,pikeBadSAClose,pikeBadSBClose,pikeBadSClose,pikeBadSPAClose,pikeBadSBAClose
+syn match	pikeBadPClose	display contained "[}\]]"
+syn match	pikeBadAClose	display contained "[)\]]"
+syn match	pikeBadBClose	display contained "[)}]"
+syn match	pikeBadSPClose	display contained "[;}\]]"
+syn match	pikeBadSAClose	display contained "[;)\]]"
+syn match	pikeBadSPAClose	display contained "[;\]]"
+syn match	pikeBadSBAClose	display contained "[;}]"
+syn match	pikeBadSClose	display contained "[;)}\]]"
+syn region	pikeNest	transparent start="(\@1<!{" end="}" contains=@pikeStmt,pikeUserLabel,pikeBadAClose
+syn region	pikeNest	transparent start="\%(\<for\%(each\)\?\s\?\)\@8<!([[{<]\@!" end=")" contains=@pikeStmt,pikeBadSPClose
+syn region	pikeNest	transparent start="\%(\<for\%(each\)\?\s\?\)\@8<=(" end=")" contains=@pikeStmt,pikeBadPClose
+syn region	pikeNest	transparent start="(\@1<!\[" end="]" contains=@pikeStmt,pikeBadSBClose
+syn region	pikeNest	transparent start="(\zs\[" end="])" contains=@pikeMappElm,pikeBadSBAClose
+" For some reason specifying a matchgroup on the pikeNest below makes it
+" override the shorter variant; consider it a kludge, no idea why it works
+syn region	pikeNest	transparent matchgroup=pikeSoftCast start=%(\zs\[[ \t\v\r\n.a-zA-Z0-9_():,|]\+])\@!% end=")" contains=@pikeStmt
+syn region	pikeNest	transparent start="(\zs{" end="})" contains=@pikeStmt,pikeBadSPAClose
+syn region	pikeNest	transparent start="(\zs<" end=">)" contains=@pikeStmt,pikeBadSPClose keepend
+
+" It's easy to accidentally add a space after a backslash that was intended
+" for line continuation.  Some compilers allow it, which makes it
+" unpredictable and should be avoided.
+syn match	pikeBadContinuation contained "\\\s\+$"
+
+" pikeCommentGroup allows adding matches for special things in comments
+syn cluster	pikeCommentGroup	contains=pikeTodo,pikeBadContinuation
 
 " String and Character constants
 " Highlight special characters (those which have a backslash) differently
-syn match pikeSpecial contained	"\\[0-7][0-7][0-7]\=\|\\."
-syn region pikeString		start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=pikeSpecial
-syn match pikeCharacter		"'[^\\]'"
-syn match pikeSpecialCharacter	"'\\.'"
-syn match pikeSpecialCharacter	"'\\[0-7][0-7]'"
-syn match pikeSpecialCharacter	"'\\[0-7][0-7][0-7]'"
+syn match	pikeSpecial	display contained "\\\%(x\x*\|d\d*\|\o\+\|u\x\{4}\|U\x\{8}\|[abefnrtv]\|$\)"
 
-" Compound data types
-syn region pikeCompoundType start='({' contains=pikeString,pikeCompoundType,pikeNumber,pikeFloat end='})'
-syn region pikeCompoundType start='(\[' contains=pikeString,pikeCompoundType,pikeNumber,pikeFloat end='\])'
-syn region pikeCompoundType start='(<' contains=pikeString,pikeCompoundType,pikeNumber,pikeFloat end='>)'
+" ISO C11 or ISO C++ 11
+if !exists("c_no_cformat")
+  " Highlight % items in strings.
+  syn match	pikeFormat		display "%\%(\d\+\$\)\=[-+' #0*]*\%(\d*\|\*\|\*\d\+\$\)\%(\.\%(\d*\|\*\|\*\d\+\$\)\)\=\%([hlLjzt]\|ll\|hh\)\=\%([aAbdiuoxXDOUfFeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained
+  syn match	pikeFormat		display "%%" contained
+  syn region 	pikeString		start=+"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=pikeSpecial,pikeDelimiterDQ,pikeFormat,@Spell keepend
+  syn region	pikeMlString	start=+#"+ skip=+\\\\\|\\"+ end=+"+ contains=pikeSpecial,pikeFormat,pikeDelimiterDQ,@Spell,pikeEmbeddedString keepend
+else
+  syn region 	pikeString		start=+"+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"+ end='$' contains=pikeSpecial,pikeDelimiterDQ,@Spell
+  syn region	pikeMlString	transparent start=+#"+ skip=+\\\\\|\\"+ end=+"+ contains=pikeSpecial,pikeDelimiterDQ,@Spell,pikeEmbeddedString keepend
+endif
 
-"catch errors caused by wrong parenthesis
-syn region pikeParen		transparent start='([^{[<(]' end=')' contains=ALLBUT,pikeParenError,pikeIncluded,pikeSpecial,pikeTodo,pikeUserLabel,pikeBitField
-syn match pikeParenError		")"
-syn match pikeInParen contained	"[^(][{}][^)]"
+" Use SQL-syntax highlighting in multiline string if it starts with
+" a standard SQL keyword
+syn case ignore
+" FIXME Use explicit newline match to cover up a bug in the regexp engine
+" If the kludge is not used, the match will only start unless at least a space
+" follows the initial doublequote on the first line (or the keyword is on
+" the first line).
+syn region	pikeEmbeddedString	contained start=+\%(#"\n\?\)\@2<=\_s*\%(SELECT\|INSERT\|UPDATE\|DELETE\|WITH\|CREATE\|DROP\|ALTER\)\>+ skip=+\\\\\|\\"+ end=+[\\#]\@1<!"+ contains=@pikeSQL,pikeBindings keepend
+syn case match
+
+syn match	pikeBindings	display contained ":\@1<!:\I\i*"
+
+syn match	pikeCharacter	"'[^\\']'" contains=pikeDelimiterSQ
+syn match	pikeCharacter	"'[^']*'" contains=pikeSpecial,pikeDelimiterSQ
+syn match	pikeSpecialError	"'\\[^'\"?\\abefnrtv]'"
+syn match	pikeDelimiterDQ	display +"+ contained
+syn match	pikeDelimiterSQ	display +'+ contained
+
+"when wanted, highlight trailing white space
+if exists("c_space_errors")
+  if !exists("c_no_trail_space_error")
+    syn match	pikeSpaceError	display excludenl "\s\+$"
+  endif
+  if !exists("c_no_tab_space_error")
+    syn match	pikeSpaceError	display " \+\ze\t"
+  endif
+endif
 
 "integer number, or floating point number without a dot and with "f".
 syn case ignore
-syn match pikeNumber		"\<\d\+\(u\=l\=\|lu\|f\)\>"
-"floating point number, with dot, optional exponent
-syn match pikeFloat		"\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
-"floating point number, starting with a dot, optional exponent
-syn match pikeFloat		"\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
-"floating point number, without dot, with exponent
-syn match pikeFloat		"\<\d\+e[-+]\=\d\+[fl]\=\>"
+syn match	pikeNumbers	display transparent "\<\d\|\.\d" contains=pikeNumber,pikeFloat,pikeOctalError,pikeOctal
+" Same, but without octal error (for comments)
+syn match	pikeNumbersCom	display contained transparent "\<\d\|\.\d" contains=pikeNumber,pikeFloat,pikeOctal
+syn match	pikeNumber		display contained "\<\d\+\%(u\=l\{0,2}\|ll\=u\)\>"
 "hex number
-syn match pikeNumber		"\<0x[0-9a-f]\+\(u\=l\=\|lu\)\>"
-"syn match pikeIdentifier	"\<[a-z_][a-z0-9_]*\>"
-syn case match
+syn match	pikeNumber		display contained "\<0x\x\+\%(u\=l\{0,2}\|ll\=u\)\>"
+" Flag the first zero of an octal number as something special
+syn match	pikeOctal		display contained "\<0\o\+\%(u\=l\{0,2}\|ll\=u\)\>" contains=pikeOctalZero
+syn match	pikeOctalZero	display contained "\<0"
+"floating point number, with dot, optional exponent
+syn match	pikeFloat		display contained "\<\d\+\%(f\|\.[0-9.]\@!\d*\%(e[-+]\=\d\+\)\=[fl]\=\)"
+"floating point number, starting with a dot, optional exponent
+syn match	pikeFloat		display contained "[0-9.]\@1<!\.\d\+\%(e[-+]\=\d\+\)\=[fl]\=\>"
+"floating point number, without dot, with exponent
+syn match	pikeFloat		display contained "\<\d\+e[-+]\=\d\+[fl]\=\>"
+
+"hexadecimal floating point number, two variants, with exponent
+syn match	pikeFloat		display contained "\<0x\%(\x\+\.\?\|\x*\.\x\+\)p[-+]\=\d\+[fl]\=\>"
+
 " flag an octal number with wrong digits
-syn match pikeOctalError		"\<0[0-7]*[89]"
+syn match	pikeOctalError	display contained "\<0\o*[89]\d*"
+syn case match
 
 if exists("c_comment_strings")
   " A comment can contain pikeString, pikeCharacter and pikeNumber.
@@ -61,82 +186,201 @@
   " need to use a special type of pikeString: pikeCommentString, which also ends on
   " "*/", and sees a "*" at the start of the line as comment again.
   " Unfortunately this doesn't very well work for // type of comments :-(
-  syntax match pikeCommentSkip	contained "^\s*\*\($\|\s\+\)"
-  syntax region pikeCommentString	contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=pikeSpecial,pikeCommentSkip
-  syntax region pikeComment2String	contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=pikeSpecial
-  syntax region pikeComment	start="/\*" end="\*/" contains=pikeTodo,pikeCommentString,pikeCharacter,pikeNumber,pikeFloat
-  syntax match  pikeComment	"//.*" contains=pikeTodo,pikeComment2String,pikeCharacter,pikeNumber
-  syntax match  pikeComment	"#\!.*" contains=pikeTodo,pikeComment2String,pikeCharacter,pikeNumber
+  syn match	pikeCommentSkip	contained "^\s*\*\%($\|\s\+\)"
+  syn region pikeCommentString	contained start=+\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end=+\ze\*/+ contains=pikeSpecial,pikeCommentSkip
+  syn region pikeComment2String	contained start=+\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=pikeSpecial
+  syn region  pikeCommentL	start="//" skip="\\$" end="$" keepend contains=@pikeCommentGroup,pikeComment2String,pikeCharacter,pikeNumbersCom,pikeSpaceError,@Spell containedin=pikeWord,pikeFirstWord
+  if exists("c_no_comment_fold")
+    " Use "extend" here to have preprocessor lines not terminate halfway a
+    " comment.
+    syn region pikeComment	matchgroup=pikeCommentStart start="/\*" end="\*/" contains=@pikeCommentGroup,pikeCommentStartError,pikeCommentString,pikeCharacter,pikeNumbersCom,pikeSpaceError,@Spell extend containedin=pikeWord,pikeFirstWord
+  else
+    syn region pikeComment	matchgroup=pikeCommentStart start="/\*" end="\*/" contains=@pikeCommentGroup,pikeCommentStartError,pikeCommentString,pikeCharacter,pikeNumbersCom,pikeSpaceError,@Spell fold extend containedin=pikeWord,pikeFirstWord
+  endif
 else
-  syn region pikeComment		start="/\*" end="\*/" contains=pikeTodo
-  syn match pikeComment		"//.*" contains=pikeTodo
-  syn match pikeComment		"#!.*" contains=pikeTodo
+  syn region	pikeCommentL	start="//" skip="\\$" end="$" keepend contains=@pikeCommentGroup,pikeSpaceError,@Spell containedin=pikeWord,pikeFirstWord
+  if exists("c_no_comment_fold")
+    syn region	pikeComment	matchgroup=pikeCommentStart start="/\*" end="\*/" contains=@pikeCommentGroup,pikeCommentStartError,pikeSpaceError,@Spell extend containedin=pikeWord,pikeFirstWord
+  else
+    syn region	pikeComment	matchgroup=pikeCommentStart start="/\*" end="\*/" contains=@pikeCommentGroup,pikeCommentStartError,pikeSpaceError,@Spell fold extend containedin=pikeWord,pikeFirstWord
+  endif
 endif
-syntax match pikeCommentError	"\*/"
+" keep a // comment separately, it terminates a preproc. conditional
+syn match	pikeCommentError	display "\*/"
+syn match	pikeCommentStartError display "/\ze\*" contained
 
-syn keyword pikeOperator	sizeof
-syn keyword pikeType		int string void float mapping array multiset mixed
-syn keyword pikeType		program object function
+syn keyword	pikeOperator	sizeof
+syn keyword	pikeOperator	typeof _typeof _refs
+syn keyword	pikeOperator	zero_type intp stringp arrayp mappingp multisetp
+syn keyword	pikeOperator	objectp functionp programp callablep destructedp
+syn keyword	pikeOperator	object_variablep undefinedp
+syn keyword	pikeOperator	allocate equal
+syn keyword	pikeOperator	aggregate aggregate_mapping aggregate_multiset
+syn keyword	pikeOperator	map filter search replace reverse column rows
+syn keyword	pikeOperator	indices values mkmapping mkmultiset m_delete sort
+syn keyword	pikeOperator	m_delete destruct
+syn keyword	pikeOperator	create _destruct _sprintf cast _encode _decode
+syn keyword     pikeOperator    __hash _sizeof _values _indices __INIT _equal
+syn keyword     pikeOperator    _is_type _m_delete _get_iterator _search
+syn keyword     pikeOperator    _serialize _deserialize _sqrt _types _random
+syn keyword     pikeOperator    _size_object
 
-syn region pikePreCondit	start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=pikeComment,pikeString,pikeCharacter,pikeNumber,pikeCommentError
-syn region pikeIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+
-syn match pikeIncluded contained "<[^>]*>"
-syn match pikeInclude		"^\s*#\s*include\>\s*["<]" contains=pikeIncluded
-"syn match pikeLineSkip	"\\$"
-syn region pikeDefine		start="^\s*#\s*\(define\>\|undef\>\)" skip="\\$" end="$" contains=ALLBUT,pikePreCondit,pikeIncluded,pikeInclude,pikeDefine,pikeInParen
-syn region pikePreProc		start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" contains=ALLBUT,pikePreCondit,pikeIncluded,pikeInclude,pikeDefine,pikeInParen
+syn keyword	pikeType		int void
+syn keyword	pikeType		float
+syn keyword	pikeType		bool string array mapping multiset mixed
+syn keyword	pikeType		object function program auto
+
+syn keyword	pikeType		this this_object this_program
+syn keyword	pikeType		sprintf_args sprintf_format sprintf_result
+syn keyword	pikeType		strict_sprintf_format
+
+syn keyword	pikeStructure		class enum typedef inherit import
+syn keyword	pikeTypedef		typedef
+syn keyword	pikeStorageClass	private protected public constant final variant
+syn keyword	pikeStorageClass	optional inline extern static __deprecated__ lambda
+
+syn keyword pikeConstant __LINE__ __FILE__ __DIR__ __DATE__ __TIME__
+syn keyword pikeConstant __AUTO_BIGNUM__ __NT__
+syn keyword pikeConstant __BUILD__ __COUNTER__ _MAJOR__ __MINOR__ __VERSION__
+syn keyword pikeConstant __REAL_BUILD__ _REAL_MAJOR__ __REAL_MINOR__
+syn keyword pikeConstant __REAL_VERSION__ __PIKE__ UNDEFINED
+
+" These should actually only be parsed in preprocessor conditionals
+syn keyword pikeCppOperator contained defined constant efun _Pragma
+
+syn keyword pikeBoolean true false
+
+syn match       pikeCppPrefix	display "^\s*\zs#\s*[a-z]\+" contained
+syn region	pikePreCondit	start="^\s*#\s*\%(if\%(n\?def\)\?\|el\%(se\)\?if\)\>" skip="\\$" end="$" transparent keepend contains=pikeString,pikeCharacter,pikeNumbers,pikeCommentError,pikeSpaceError,pikeCppOperator,pikeCppPrefix
+syn match	pikePreConditMatch	display "^\s*\zs#\s*\%(else\|endif\)\>"
+if !exists("c_no_if0")
+  syn cluster	pikeCppOutInGroup	contains=pikeCppInIf,pikeCppInElse,pikeCppInElse2,pikeCppOutIf,pikeCppOutIf2,pikeCppOutElse,pikeCppInSkip,pikeCppOutSkip
+  syn region	pikeCppOutWrapper	start="^\s*\zs#\s*if\s\+0\+\s*\%($\|//\|/\*\|&\)" end=".\@=\|$" contains=pikeCppOutIf,pikeCppOutElse,@NoSpell fold
+  syn region	pikeCppOutIf	contained start="0\+" matchgroup=pikeCppOutWrapper end="^\s*#\s*endif\>" contains=pikeCppOutIf2,pikeCppOutElse
+  if !exists("c_no_if0_fold")
+    syn region	pikeCppOutIf2	contained matchgroup=pikeCppOutWrapper start="0\+" end="^\ze\s*#\s*\%(else\>\|el\%(se\)\?if\s\+\%(0\+\s*\%($\|//\|/\*\|&\)\)\@!\|endif\>\)" contains=pikeSpaceError,pikeCppOutSkip,@Spell fold
+  else
+    syn region	pikeCppOutIf2	contained matchgroup=pikeCppOutWrapper start="0\+" end="^\ze\s*#\s*\%(else\>\|el\%(se\)\?if\s\+\%(0\+\s*\%($\|//\|/\*\|&\)\)\@!\|endif\>\)" contains=pikeSpaceError,pikeCppOutSkip,@Spell
+  endif
+  syn region	pikeCppOutElse	contained matchgroup=pikeCppOutWrapper start="^\s*#\s*\%(else\|el\%(se\)\?if\)" end="^\s*#\s*endif\>" contains=TOP,pikePreCondit
+  syn region	pikeCppInWrapper	start="^\s*\zs#\s*if\s\+0*[1-9]\d*\s*\%($\|//\|/\*\||\)" end=".\@=\|$" contains=pikeCppInIf,pikeCppInElse fold
+  syn region	pikeCppInIf	contained matchgroup=pikeCppInWrapper start="\d\+" end="^\s*#\s*endif\>" contains=TOP,pikePreCondit
+  if !exists("c_no_if0_fold")
+    syn region	pikeCppInElse	contained start="^\s*#\s*\%(else\>\|el\%(se\)\?if\s\+\%(0*[1-9]\d*\s*\%($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=pikeCppInIf contains=pikeCppInElse2 fold
+  else
+    syn region	pikeCppInElse	contained start="^\s*#\s*\%(else\>\|el\%(se\)\?if\s\+\%(0*[1-9]\d*\s*\%($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=pikeCppInIf contains=pikeCppInElse2
+  endif
+  syn region	pikeCppInElse2	contained matchgroup=pikeCppInWrapper start="^\s*#\s*\%(else\|el\%(se\)\?if\)\%([^/]\|/[^/*]\)*" end="^\ze\s*#\s*endif\>" contains=pikeSpaceError,pikeCppOutSkip,@Spell
+  syn region	pikeCppOutSkip	contained start="^\s*#\s*if\%(n\?def\)\?\>" skip="\\$" end="^\s*#\s*endif\>" contains=pikeSpaceError,pikeCppOutSkip
+  syn region	pikeCppInSkip	contained matchgroup=pikeCppInWrapper start="^\s*#\s*\%(if\s\+\%(\d\+\s*\%($\|//\|/\*\||\|&\)\)\@!\|ifn\?def\>\)" skip="\\$" end="^\s*#\s*endif\>" containedin=pikeCppOutElse,pikeCppInIf,pikeCppInSkip contains=TOP,pikePreProc
+endif
+syn region	pikeIncluded	display contained start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=pikeDelimiterDQ keepend
+syn match	pikeIncluded	display contained "<[^>]*>"
+syn match	pikeInclude	display "^\s*\zs#\s*include\>\s*["<]" contains=pikeIncluded
+syn cluster	pikePreProcGroup	contains=pikeIncluded,pikeInclude,pikeEmbeddedString,pikeCppOutWrapper,pikeCppInWrapper,@pikeCppOutInGroup,pikeFormat,pikeMlString,pikeCommentStartError,@pikeBadGroup,pikeWord
+syn region	pikeDefine		start="^\s*\zs#\s*\%(define\|undef\)\>" skip="\\$" end="$" keepend contains=@pikeStmt,@pikeBadGroup
+syn region	pikePreProc	start="^\s*\zs#\s*\%(pragma\|charset\|pike\|require\|string\|line\|warning\|error\)\>" skip="\\$" end="$" transparent keepend contains=pikeString,pikeCharacter,pikeNumbers,pikeCommentError,pikeSpaceError,pikeCppOperator,pikeCppPrefix,@Spell,pikeConstant
+
+syn match	pikeAutodocReal	display contained "\%(//\|[/ \t\v]\*\|^\*\)\@2<=!.*" contains=@pikeAutodoc containedin=pikeComment,pikeCommentL
+syn cluster pikeCommentGroup add=pikeAutodocReal
+syn cluster pikePreProcGroup add=pikeAutodocReal
 
 " Highlight User Labels
-syn region	pikeMulti		transparent start='?' end=':' contains=ALLBUT,pikeIncluded,pikeSpecial,pikeTodo,pikeUserLabel,pikeBitField
 " Avoid matching foo::bar() in C++ by requiring that the next char is not ':'
-syn match	pikeUserLabel	"^\s*\I\i*\s*:$"
-syn match	pikeUserLabel	";\s*\I\i*\s*:$"ms=s+1
-syn match	pikeUserLabel	"^\s*\I\i*\s*:[^:]"me=e-1
-syn match	pikeUserLabel	";\s*\I\i*\s*:[^:]"ms=s+1,me=e-1
+syn match	pikeUserLabel	display "\%(^\|[{};]\)\zs\I\i*\s*\ze:\%([^:]\|$\)" contained contains=NONE
+syn match	pikeUserLabel	display "\%(\<\%(break\|continue\)\_s\+\)\@10<=\I\i*" contained contains=NONE
+syn match	pikeUserLabel	display "\%(\<case\)\@5<=\s\+[^<()[\]{},;:]\+\ze::\@!" contained contains=pikeDelimiterDQ,pikeDelimiterSQ
 
-" Avoid recognizing most bitfields as labels
-syn match	pikeBitField	"^\s*\I\i*\s*:\s*[1-9]"me=e-1
-syn match	pikeBitField	";\s*\I\i*\s*:\s*[1-9]"me=e-1
+syn match	pikeMappIndex	display contained "[^<()[\]{},;:]\+\ze::\@!" contains=pikeDelimiterDQ,pikeDelimiterSQ
+syn match	pikeSoftCast	display contained "\[[ \t\v\r\n.a-zA-Z0-9_():,|\+]" contains=NONE
 
-syn sync ccomment pikeComment minlines=10
+if exists("c_minlines")
+  let b:c_minlines = c_minlines
+else
+  if !exists("c_no_if0")
+    let b:c_minlines = 400	" #if 0 constructs can be long
+  else
+    let b:c_minlines = 200	" mostly for multiline strings
+  endif
+endif
+exec "syn sync ccomment pikeComment minlines=" . b:c_minlines
+syn sync match pikeMlStringSync grouphere pikeMlString +^[^"#]\+#\"+
+syn sync match pikeAutodocSync grouphere pikeCommentL "^\s*//!"
 
 " Define the default highlighting.
-" Only when an item doesn't have highlighting yet
-
+" Only used when an item doesn't have highlighting yet
+hi def link pikeFormat		SpecialChar
+hi def link pikeMlString	String
+hi def link pikeCommentL	Comment
+hi def link pikeCommentStart	Comment
 hi def link pikeLabel		Label
-hi def link pikeUserLabel		Label
+hi def link pikeUserLabel	Identifier
 hi def link pikeConditional	Conditional
 hi def link pikeRepeat		Repeat
-hi def link pikeCharacter		Character
-hi def link pikeSpecialCharacter pikeSpecial
+hi def link pikeCharacter	Character
+hi def link pikeDelimiterDQ	Delimiter
+hi def link pikeDelimiterSQ	Delimiter
 hi def link pikeNumber		Number
+hi def link pikeOctal		Number
+hi def link pikeOctalZero	PreProc	 " link this to Error if you want
 hi def link pikeFloat		Float
-hi def link pikeOctalError		pikeError
-hi def link pikeParenError		pikeError
-hi def link pikeInParen		pikeError
-hi def link pikeCommentError	pikeError
-hi def link pikeOperator		Operator
+hi def link pikeOctalError	Error
+hi def link pikeCommentError	Error
+hi def link pikeCommentStartError	Error
+hi def link pikeSpaceError	Error
+hi def link pikeSpecialError	Error
+hi def link pikeOperator	Operator
+hi def link pikeCppOperator	Operator
+hi def link pikeStructure	Structure
+hi def link pikeTypedef		Typedef
+hi def link pikeStorageClass	StorageClass
 hi def link pikeInclude		Include
+hi def link pikeCppPrefix	PreCondit
 hi def link pikePreProc		PreProc
 hi def link pikeDefine		Macro
-hi def link pikeIncluded		pikeString
+hi def link pikeIncluded	String
 hi def link pikeError		Error
-hi def link pikeStatement		Statement
-hi def link pikePreCondit		PreCondit
+hi def link pikeDebug		Debug
+hi def link pikeException	Exception
+hi def link pikeStatement	Statement
 hi def link pikeType		Type
-hi def link pikeCommentError	pikeError
-hi def link pikeCommentString	pikeString
-hi def link pikeComment2String	pikeString
-hi def link pikeCommentSkip	pikeComment
+hi def link pikeConstant	Constant
+hi def link pikeBoolean		Boolean
+hi def link pikeCommentString	String
+hi def link pikeComment2String	String
+hi def link pikeCommentSkip	Comment
 hi def link pikeString		String
 hi def link pikeComment		Comment
 hi def link pikeSpecial		SpecialChar
 hi def link pikeTodo		Todo
-hi def link pikeException		pikeStatement
-hi def link pikeCompoundType	Constant
-"hi def link pikeIdentifier	Identifier
+hi def link pikeBadContinuation	Error
 
+hi def link pikeCppInWrapper	PreCondit
+hi def link pikeCppOutWrapper	PreCondit
+hi def link pikePreConditMatch	PreCondit
+
+hi def link pikeCppOutSkip	Comment
+hi def link pikeCppInElse2	Comment
+hi def link pikeCppOutIf2	Comment
+hi def link pikeCppOut		Comment
+
+hi def link pikePredef		Statement
+hi def link pikeBindings	Identifier
+hi def link pikeMappIndex	Identifier
+hi def link pikeSoftCast	Type
+hi def link pikeBadGroup	Error
+hi def link pikeBadPClose	Error
+hi def link pikeBadAClose	Error
+hi def link pikeBadBClose	Error
+hi def link pikeBadSPClose	Error
+hi def link pikeBadSAClose	Error
+hi def link pikeBadSBClose	Error
+hi def link pikeBadSPAClose	Error
+hi def link pikeBadSBAClose	Error
+hi def link pikeBadSClose	Error
 
 let b:current_syntax = "pike"
 
+let &cpo = s:cpo_save
+unlet s:cpo_save
 " vim: ts=8
diff --git a/runtime/syntax/readline.vim b/runtime/syntax/readline.vim
index b50b9c6..78472cd 100644
--- a/runtime/syntax/readline.vim
+++ b/runtime/syntax/readline.vim
@@ -1,7 +1,8 @@
 " Vim syntax file
 " Language:             readline(3) configuration file
+" Maintainer:           Daniel Moch <daniel@danielmoch.com>
 " Previous Maintainer:  Nikolai Weibull <now@bitwi.se>
-" Latest Revision:      2017-06-25
+" Latest Revision:      2017-12-25
 "   readline_has_bash - if defined add support for bash specific
 "                       settings/functions
 
@@ -152,6 +153,9 @@
                               \ skipwhite
                               \ comment-begin
                               \ isearch-terminators
+                              \ vi-cmd-mode-string
+                              \ vi-ins-mode-string
+                              \ emacs-mode-string
 
 syn keyword readlineVariable    contained
                               \ nextgroup=readlineNumber
diff --git a/runtime/syntax/snobol4.vim b/runtime/syntax/snobol4.vim
index a14f15e..11ce2e0 100644
--- a/runtime/syntax/snobol4.vim
+++ b/runtime/syntax/snobol4.vim
@@ -2,15 +2,16 @@
 " Language:     SNOBOL4
 " Maintainer:   Rafal Sulejman <rms@poczta.onet.pl>
 " Site: http://rms.republika.pl/vim/syntax/snobol4.vim
-" Last change:  2006 may 10
+" Last change:  : Thu, 25 Jan 2018 14:21:24 +0100
 " Changes: 
+" - system variables updated for SNOBOL4 2.0+
 " - strict snobol4 mode (set snobol4_strict_mode to activate)
 " - incorrect HL of dots in strings corrected
 " - incorrect HL of dot-variables in parens corrected 
 " - one character labels weren't displayed correctly.
 " - nonexistent Snobol4 keywords displayed as errors.
 
-" quit when a syntax file was already loaded
+" Quit when a syntax file was already loaded
 if exists("b:current_syntax")
   finish
 endif
@@ -59,7 +60,7 @@
 syn region      snobol4Goto         start=":[sf]\{0,1}(" end=")\|$\|;" contains=ALLBUT,snobol4ParenError
 syn match       snobol4Number       "\<\d*\(\.\d\d*\)*\>" 
 syn match       snobol4BogusSysVar  "&\w\{1,}"
-syn match       snobol4SysVar       "&\(abort\|alphabet\|anchor\|arb\|bal\|case\|code\|dump\|errlimit\|errtext\|errtype\|fail\|fence\|fnclevel\|ftrace\|fullscan\|input\|lastno\|lcase\|maxlngth\|output\|parm\|rem\|rtntype\|stcount\|stfcount\|stlimit\|stno\|succeed\|trace\|trim\|ucase\)"
+syn match       snobol4SysVar       "&\<\(abort\|alphabet\|anchor\|arb\|bal\|case\|code\|digits\|dump\|errlimit\|errtext\|errtype\|fail\|fence\|fnclevel\|ftrace\|fullscan\|input\|lastno\|lcase\|maxlngth\|output\|parm\|rem\|rtntype\|stcount\|stfcount\|stlimit\|stno\|succeed\|trace\|trim\|ucase\)\>"
 syn match       snobol4ExtSysVar    "&\(gtrace\|line\|file\|lastline\|lastfile\)"
 syn match       snobol4Label        "\(^\|;\)[^-\.\+ \t\*\.]\{1,}[^ \t\*\;]*"
 syn match       snobol4Comment      "\(^\|;\)\([\*\|!;#].*$\)"
@@ -100,11 +101,11 @@
 hi def link snobol4SysVar          Keyword
 hi def link snobol4BogusSysVar     snobol4Error
 if exists("snobol4_strict_mode")
-hi def link snobol4ExtSysVar       WarningMsg
-hi def link snobol4ExtKeyword      WarningMsg
+  hi def link snobol4ExtSysVar       WarningMsg
+  hi def link snobol4ExtKeyword      WarningMsg
 else
-hi def link snobol4ExtSysVar       snobol4SysVar
-hi def link snobol4ExtKeyword      snobol4Keyword
+  hi def link snobol4ExtSysVar       snobol4SysVar
+  hi def link snobol4ExtKeyword      snobol4Keyword
 endif
 
 
