diff --git a/runtime/syntax/zserio.vim b/runtime/syntax/zserio.vim
new file mode 100644
index 0000000..5459915
--- /dev/null
+++ b/runtime/syntax/zserio.vim
@@ -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
