mirror of
https://github.com/neovim/neovim.git
synced 2024-12-24 21:25:04 -07:00
87 lines
3.5 KiB
VimL
87 lines
3.5 KiB
VimL
|
" Vim syntax file
|
||
|
" Language: gitolite configuration
|
||
|
" URL: https://github.com/tmatilai/gitolite.vim
|
||
|
" Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi>
|
||
|
" Last Change: 2011-12-25
|
||
|
|
||
|
if exists("b:current_syntax")
|
||
|
finish
|
||
|
endif
|
||
|
|
||
|
let s:cpo_save = &cpo
|
||
|
set cpo&vim
|
||
|
|
||
|
" Comment
|
||
|
syn match gitoliteComment "\(^\|\s\)#.*" contains=gitoliteTodo
|
||
|
syn keyword gitoliteTodo TODO FIXME XXX NOT contained
|
||
|
|
||
|
" Groups, users and repos
|
||
|
syn match gitoliteGroupDef "\(^\s*\)\@<=@[^=]\{-1,}\(\s*=\)\@=" contains=gitoliteSpaceError,gitoliteUserError nextgroup=gitoliteGroupDefSep
|
||
|
syn match gitoliteGroupDefSep "\s*=" contained nextgroup=gitoliteRepoLine
|
||
|
syn match gitoliteRepoDef "^\s*repo\s" nextgroup=gitoliteRepoLine
|
||
|
|
||
|
syn match gitoliteRepoLine ".*" contained transparent contains=gitoliteGroup,gitoliteWildRepo,gitoliteCreator,gitoliteExtCmdHelper,gitoliteRepoError,gitoliteComment
|
||
|
syn match gitoliteUserLine ".*" contained transparent contains=gitoliteGroup,gitolitePreProc,gitoliteUserError,gitoliteComment
|
||
|
|
||
|
syn match gitoliteWildRepo "[ \t=]\@<=[^ \t]*[\\^$|()[\]*?{},][^ \t]*" contained contains=gitoliteCreator,gitoliteRepoError
|
||
|
syn match gitoliteGroup "[ \t=]\@<=@[^ \t]\+" contained contains=gitoliteUserError
|
||
|
|
||
|
syn keyword gitoliteCreator CREATER CREATOR contained
|
||
|
syn keyword gitolitePreProc CREATER CREATOR READERS WRITERS contained
|
||
|
|
||
|
syn match gitoliteExtCmdHelper "[ \t=]\@<=EXTCMD/" contained nextgroup=gitoliteExtCmd
|
||
|
syn match gitoliteExtCmd "rsync\(\s\|$\)" contained
|
||
|
|
||
|
" Illegal characters
|
||
|
syn match gitoliteRepoError "[^ \t0-9a-zA-Z._@+/\\^$|()[\]*?{},-]\+" contained
|
||
|
syn match gitoliteUserError "[^ \t0-9a-zA-Z._@+-]\+" contained
|
||
|
syn match gitoliteSpaceError "\s\+" contained
|
||
|
|
||
|
" Permission
|
||
|
syn match gitoliteKeyword "^\s*\(C\|R\|RW\|RW+\|RWC\|RW+C\|RWD\|RW+D\|RWCD\|RW+CD\)[ \t=]\@=" nextgroup=gitoliteRefex
|
||
|
syn match gitoliteKeyword "^\s*-[ \t=]\@=" nextgroup=gitoliteDenyRefex
|
||
|
syn match gitoliteRefex "[^=]*="he=e-1 contained contains=gitoliteSpecialRefex,gitoliteGroup nextgroup=gitoliteUserLine
|
||
|
syn match gitoliteDenyRefex "[^=]*="he=e-1 contained contains=gitoliteSpecialRefex,gitoliteGroup nextgroup=gitoliteDenyUsers
|
||
|
syn match gitoliteSpecialRefex "\sNAME/"he=e-1 contained
|
||
|
syn match gitoliteSpecialRefex "/USER/"hs=s+1,he=e-1 contained
|
||
|
syn match gitoliteDenyUsers ".*" contained contains=gitoliteUserError,gitoliteComment
|
||
|
|
||
|
" Configuration
|
||
|
syn match gitoliteKeyword "^\s*config\s\+" nextgroup=gitoliteConfVariable
|
||
|
syn match gitoliteConfVariable "[^=]*" contained
|
||
|
|
||
|
" Include
|
||
|
syn match gitoliteInclude "^\s*\(include\|subconf\)\s"
|
||
|
|
||
|
" String
|
||
|
syn region gitoliteString start=+"+ end=+"+ oneline
|
||
|
|
||
|
" Define the default highlighting
|
||
|
hi def link gitoliteComment Comment
|
||
|
hi def link gitoliteTodo Todo
|
||
|
hi def link gitoliteGroupDef gitoliteGroup
|
||
|
hi def link gitoliteGroup Identifier
|
||
|
hi def link gitoliteWildRepo Special
|
||
|
hi def link gitoliteRepoError gitoliteError
|
||
|
hi def link gitoliteUserError gitoliteError
|
||
|
hi def link gitoliteSpaceError gitoliteError
|
||
|
hi def link gitoliteError Error
|
||
|
hi def link gitoliteCreator gitolitePreProc
|
||
|
hi def link gitolitePreProc PreProc
|
||
|
hi def link gitoliteExtCmdHelper PreProc
|
||
|
hi def link gitoliteExtCmd Special
|
||
|
hi def link gitoliteRepoDef Type
|
||
|
hi def link gitoliteKeyword Keyword
|
||
|
hi def link gitoliteRefex String
|
||
|
hi def link gitoliteDenyRefex gitoliteRefex
|
||
|
hi def link gitoliteSpecialRefex PreProc
|
||
|
hi def link gitoliteDenyUsers WarningMsg
|
||
|
hi def link gitoliteConfVariable Identifier
|
||
|
hi def link gitoliteInclude Include
|
||
|
hi def link gitoliteString String
|
||
|
|
||
|
let b:current_syntax = "gitolite"
|
||
|
|
||
|
let &cpo = s:cpo_save
|
||
|
unlet s:cpo_save
|