mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	vim-patch:acb91d3905cf
runtime(zserio): add zserio syntax (vim/vim#13005)
acb91d3905
Co-authored-by: Dominique Pellé <dominique.pelle@gmail.com>
			
			
This commit is contained in:
		| @@ -676,6 +676,7 @@ SynMenu WXYZ.XFree86\ Config:xf86conf | ||||
| SynMenu WXYZ.YAML:yaml | ||||
| SynMenu WXYZ.Yacc:yacc | ||||
| SynMenu WXYZ.Zimbu:zimbu | ||||
| SynMenu WXYZ.Zserio:zserio | ||||
|  | ||||
| call append(s:lnum, "") | ||||
|  | ||||
|   | ||||
| @@ -650,6 +650,7 @@ an 50.170.390 &Syntax.WXYZ.XFree86\ Config :cal SetSyn("xf86conf")<CR> | ||||
| an 50.170.410 &Syntax.WXYZ.YAML :cal SetSyn("yaml")<CR> | ||||
| an 50.170.420 &Syntax.WXYZ.Yacc :cal SetSyn("yacc")<CR> | ||||
| an 50.170.440 &Syntax.WXYZ.Zimbu :cal SetSyn("zimbu")<CR> | ||||
| an 50.170.440 &Syntax.WXYZ.Zserio:cal SetSyn("zserio")<CR> | ||||
|  | ||||
| " The End Of The Syntax Menu | ||||
|  | ||||
|   | ||||
							
								
								
									
										112
									
								
								runtime/syntax/zserio.vim
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										112
									
								
								runtime/syntax/zserio.vim
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,112 @@ | ||||
| " Vim syntax file | ||||
| " Language:	Zserio | ||||
| " Maintainer:	Dominique Pellé <dominique.pelle@gmail.com> | ||||
| " Last Change:	2023 Jun 18 | ||||
| " | ||||
| " Zserio is a serialization schema language for modeling binary | ||||
| " data types, bitstreams or file formats. Based on the zserio | ||||
| " language it is possible to automatically generate encoders and | ||||
| " decoders for a given schema in various target languages | ||||
| " (e.g. Java, C++, Python). | ||||
| " | ||||
| " Zserio is an evolution of the DataScript language. | ||||
| " | ||||
| " For more information, see: | ||||
| " - http://zserio.org/ | ||||
| " - https://github.com/ndsev/zserio | ||||
|  | ||||
| " quit when a syntax file was already loaded | ||||
| if exists("b:current_syntax") | ||||
|   finish | ||||
| endif | ||||
|  | ||||
| let s:keepcpo= &cpo | ||||
| set cpo&vim | ||||
|  | ||||
| syn case match | ||||
|  | ||||
| syn keyword zserioPackage      import package zserio_compatibility_version | ||||
| syn keyword zserioType         bit bool string | ||||
| syn keyword zserioType         int int8 int16 int32 int64 | ||||
| syn keyword zserioType         uint8 uint16 uint32 uint64 | ||||
| syn keyword zserioType         float16 float32 float64 | ||||
| syn keyword zserioType         varint varint16 varint32 varint64 | ||||
| syn keyword zserioType         varuint varsize varuint16 varuint32 varuint64 | ||||
| syn keyword zserioAlign        align | ||||
| syn keyword zserioLabel        case default | ||||
| syn keyword zserioConditional  if condition | ||||
| syn keyword zserioBoolean      true false | ||||
| syn keyword zserioCompound     struct union choice on enum bitmask subtype | ||||
| syn keyword zserioKeyword      function return | ||||
| syn keyword zserioOperator     lengthof valueof instanceof numbits isset | ||||
| syn keyword zserioRpc          service pubsub topic publish subscribe | ||||
| syn keyword zserioRule         rule_group rule | ||||
| syn keyword zserioStorageClass const implicit packed instantiate | ||||
| syn keyword zserioTodo         contained TODO FIXME XXX | ||||
| syn keyword zserioSql          sql sql_table sql_database sql_virtual sql_without_rowid | ||||
| syn keyword zserioSql          explicit using | ||||
|  | ||||
| " zserioCommentGroup allows adding matches for special things in comments. | ||||
| syn cluster zserioCommentGroup  contains=zserioTodo | ||||
|  | ||||
| syn match   zserioOffset        display "^\s*[a-zA-Z_:\.][a-zA-Z0-9_:\.]*\s*:" | ||||
|  | ||||
| syn match   zserioNumber        display "\<\d\+\>" | ||||
| syn match   zserioNumberHex     display "\<0[xX]\x\+\>" | ||||
| syn match   zserioNumberBin     display "\<[01]\+[bB]\>" contains=zserioBinaryB | ||||
| syn match   zserioBinaryB       display contained "[bB]\>" | ||||
| syn match   zserioOctal         display "\<0\o\+\>" contains=zserioOctalZero | ||||
| syn match   zserioOctalZero     display contained "\<0" | ||||
|  | ||||
| syn match   zserioOctalError    display "\<0\o*[89]\d*\>" | ||||
|  | ||||
| syn match   zserioCommentError      display "\*/" | ||||
| syn match   zserioCommentStartError display "/\*"me=e-1 contained | ||||
|  | ||||
| syn region   zserioCommentL | ||||
|   \ start="//" skip="\\$" end="$" keepend | ||||
|   \ contains=@zserioCommentGroup,@Spell | ||||
| syn region   zserioComment | ||||
|   \ matchgroup=zserioCommentStart start="/\*" end="\*/" | ||||
|   \ contains=@zserioCommentGroup,zserioCommentStartError,@Spell extend | ||||
|  | ||||
| syn region  zserioString | ||||
|   \ start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell | ||||
|  | ||||
| syn sync ccomment zserioComment | ||||
|  | ||||
| " Define the default highlighting. | ||||
| hi def link zserioType              Type | ||||
| hi def link zserioEndian            StorageClass | ||||
| hi def link zserioStorageClass      StorageClass | ||||
| hi def link zserioAlign             Label | ||||
| hi def link zserioLabel             Label | ||||
| hi def link zserioOffset            Label | ||||
| hi def link zserioSql               PreProc | ||||
| hi def link zserioCompound          Structure | ||||
| hi def link zserioConditional       Conditional | ||||
| hi def link zserioBoolean           Boolean | ||||
| hi def link zserioKeyword           Statement | ||||
| hi def link zserioRpc               Keyword | ||||
| hi def link zserioRule              Keyword | ||||
| hi def link zserioString            String | ||||
| hi def link zserioNumber            Number | ||||
| hi def link zserioNumberBin         Number | ||||
| hi def link zserioBinaryB           Special | ||||
| hi def link zserioOctal             Number | ||||
| hi def link zserioOctalZero         Special | ||||
| hi def link zserioOctalError        Error | ||||
| hi def link zserioNumberHex         Number | ||||
| hi def link zserioTodo              Todo | ||||
| hi def link zserioOperator          Operator | ||||
| hi def link zserioPackage           Include | ||||
| hi def link zserioCommentError      Error | ||||
| hi def link zserioCommentStartError Error | ||||
| hi def link zserioCommentStart      zserioComment | ||||
| hi def link zserioCommentL          zserioComment | ||||
| hi def link zserioComment           Comment | ||||
|  | ||||
| let b:current_syntax = "zserio" | ||||
|  | ||||
| let &cpo = s:keepcpo | ||||
| unlet s:keepcpo | ||||
		Reference in New Issue
	
	Block a user
	 Christian Clason
					Christian Clason