runtime(idris2): include filetype,indent+syntax plugins for (L)Idris2 + ipkg
closes: #15993 Co-authored-by: Christian Clason <ch.clason+github@icloud.com> Signed-off-by: Serhii Khoma <srghma@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
f18987caa5
commit
5ca8f223f0
66
runtime/syntax/ipkg.vim
Normal file
66
runtime/syntax/ipkg.vim
Normal file
@ -0,0 +1,66 @@
|
||||
" Vim syntax file
|
||||
" Language: Ipkg
|
||||
" Maintainer: Idris Hackers (https://github.com/edwinb/idris2-vim), Serhii Khoma <srghma@gmail.com>
|
||||
" Last Change: 2020 May 19
|
||||
" Version: 0.1
|
||||
" Author: ShinKage
|
||||
" License: Vim (see :h license)
|
||||
" Repository: https://github.com/ShinKage/idris2-nvim
|
||||
"
|
||||
" Syntax highlight for Idris 2 Package Descriptors (idris-lang.org)
|
||||
"
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
" we want to use line continuations (\) BEGINNING
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn keyword ipkgKey
|
||||
\ package
|
||||
\ authors
|
||||
\ maintainers
|
||||
\ license
|
||||
\ brief
|
||||
\ readme
|
||||
\ homepage
|
||||
\ sourceloc
|
||||
\ bugtracker
|
||||
\ options
|
||||
\ opts
|
||||
\ sourcedir
|
||||
\ builddir
|
||||
\ outputdir
|
||||
\ prebuild
|
||||
\ postbuild
|
||||
\ preinstall
|
||||
\ postinstall
|
||||
\ preclean
|
||||
\ postclean
|
||||
\ version
|
||||
\ langversion
|
||||
\ modules
|
||||
\ main
|
||||
\ executable
|
||||
\ depends
|
||||
|
||||
" we want to use line continuations (\) END
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
syn region ipkgString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell
|
||||
syn match ipkgVersion "[0-9]*\([.][0-9]*\)*"
|
||||
syn match ipkgName "[a-zA-Z][a-zA-z0-9_']*\([.][a-zA-Z][a-zA-z0-9_']*\)*" contained
|
||||
syn match ipkgOperator "\(,\|&&\|<\|<=\|==\|>=\|>\)"
|
||||
syn match ipkgComment "---*\([^-!#$%&\*\+./<=>\?@\\^|~].*\)\?$" contains=@Spell
|
||||
|
||||
highlight def link ipkgKey Statement
|
||||
highlight def link ipkgString String
|
||||
highlight def link ipkgVersion Number
|
||||
highlight def link ipkgName Identifier
|
||||
highlight def link ipkgOperator Operator
|
||||
highlight def link ipkgComment Comment
|
||||
|
||||
let b:current_syntax = "ipkg"
|
||||
Reference in New Issue
Block a user