view runtime/syntax/squirrel.vim @ 36258:4e190eb5f0ad draft

runtime(vim): Update base-syntax file, improve class, enum and interface highlighting Commit: https://github.com/vim/vim/commit/818c641b6fac73b574a2b760213f515cee9a3c8e Author: Doug Kearns <dougkearns@gmail.com> Date: Sun Oct 6 17:00:48 2024 +0200 runtime(vim): Update base-syntax file, improve class, enum and interface highlighting - Enable folding of class, enum and interface declarations. - Highlight constructor names with the Function highlight group, like other special methods. - Mark function definitions using special method names as errors. - Highlight :type arguments. fixes: #14393#issuecomment-2042796198. closes: #13810 Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sun, 06 Oct 2024 17:15:04 +0200
parents c62bca3b8d82
children
line wrap: on
line source

" Vim syntax file
" Language: squirrel
" Current Maintainer: Matt Dunford (zenmatic@gmail.com)
" URL: https://github.com/zenmatic/vim-syntax-squirrel
" Last Change:	2023 Dec 08

" http://squirrel-lang.org/

" quit when a syntax file was already loaded
if exists("b:current_syntax")
  finish
endif

" inform C syntax that the file was included from cpp.vim
let b:filetype_in_cpp_family = 1

" Read the C syntax to start with
runtime! syntax/c.vim
unlet b:current_syntax
unlet b:filetype_in_cpp_family

" squirrel extensions
syn keyword squirrelStatement	delete this in yield resume base clone
syn keyword squirrelAccess	local
syn keyword cConstant           null
syn keyword squirrelModifier	static
syn keyword squirrelType	bool instanceof typeof
syn keyword squirrelExceptions	throw try catch
syn keyword squirrelStructure	class function extends constructor
syn keyword squirrelBoolean	true false
syn keyword squirrelRepeat	foreach

syn region squirrelMultiString start='@"' end='"$' end='";$'me=e-1

syn match squirrelShComment "^\s*#.*$"

" Default highlighting
hi def link squirrelAccess		squirrelStatement
hi def link squirrelExceptions		Exception
hi def link squirrelStatement		Statement
hi def link squirrelModifier		Type
hi def link squirrelType		Type
hi def link squirrelStructure		Structure
hi def link squirrelBoolean		Boolean
hi def link squirrelMultiString		String
hi def link squirrelRepeat		cRepeat
hi def link squirrelShComment		Comment

let b:current_syntax = "squirrel"

" vim: ts=8