neovim/runtime/syntax/opam.vim
Christian Clason 79130c0fd3 vim-patch:9.1.0586: ocaml runtime files are outdated
Problem:  ocaml runtime files are outdated
Solution: sync those files with the upstream repo,
          detect a few more ocaml files
          (Yinzuo Jiang)

closes: vim/vim#15260

700cf8cfa1

Co-authored-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
2024-07-14 23:55:57 +02:00

75 lines
2.3 KiB
VimL

" Vim syntax file
" Language: opam - OCaml package manager
" Maintainer: Markus Mottl <markus.mottl@gmail.com>
" URL: https://github.com/ocaml/vim-ocaml
" Last Change:
" 2020 Dec 31 - Added header (Markus Mottl)
if exists("b:current_syntax")
finish
endif
" need %{vars}%
" env: [[CAML_LD_LIBRARY_PATH = "%{lib}%/stublibs"]]
syn iskeyword a-z,A-Z,-
syn keyword opamKeyword1 author
syn keyword opamKeyword1 authors
syn keyword opamKeyword1 available
syn keyword opamKeyword1 bug-reports
syn keyword opamKeyword1 build
syn keyword opamKeyword1 build-env
syn keyword opamKeyword1 conflict-class
syn keyword opamKeyword1 conflicts
syn keyword opamKeyword1 depends
syn keyword opamKeyword1 depexts
syn keyword opamKeyword1 depopts
syn keyword opamKeyword1 description
syn keyword opamKeyword1 dev-repo
syn keyword opamKeyword1 doc
syn keyword opamKeyword1 extra-files
syn keyword opamKeyword1 features
syn keyword opamKeyword1 flags
syn keyword opamKeyword1 homepage
syn keyword opamKeyword1 install
syn keyword opamKeyword1 libraries
syn keyword opamKeyword1 license
syn keyword opamKeyword1 maintainer
syn keyword opamKeyword1 messages
syn keyword opamKeyword1 name
syn keyword opamKeyword1 opam-version
syn keyword opamKeyword1 patches
syn keyword opamKeyword1 pin-depends
syn keyword opamKeyword1 post-messages
syn keyword opamKeyword1 remove
syn keyword opamKeyword1 run-test
syn keyword opamKeyword1 setenv
syn keyword opamKeyword1 substs
syn keyword opamKeyword1 synopsis
syn keyword opamKeyword1 syntax
syn keyword opamKeyword1 tags
syn keyword opamKeyword1 version
syn keyword opamTodo FIXME NOTE NOTES TODO XXX contained
syn match opamComment "#.*$" contains=opamTodo,@Spell
syn match opamOperator ">\|<\|=\|<=\|>="
syn match opamUnclosedInterpolate "%{[^ "]*" contained
syn match opamInterpolate "%{[^ "]\+}%" contained
syn region opamString start=/"/ end=/"/ contains=opamInterpolate,OpamUnclosedInterpolate
syn region opamSeq start=/\[/ end=/\]/ contains=ALLBUT,opamKeyword1
syn region opamExp start=/{/ end=/}/ contains=ALLBUT,opamKeyword1
hi link opamKeyword1 Keyword
hi link opamString String
hi link opamExp Function
hi link opamSeq Statement
hi link opamOperator Operator
hi link opamComment Comment
hi link opamInterpolate Identifier
hi link opamUnclosedInterpolate Error
let b:current_syntax = "opam"
" vim: ts=2 sw=2