Mercurial > vim
comparison runtime/syntax/gitolite.vim @ 12756:3b26420fc639
Long overdue runtime update.
commit https://github.com/vim/vim/commit/01164a6546b4c635daf96a1f17d1cb2d07f32a66
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Nov 2 22:58:42 2017 +0100
Long overdue runtime update.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 02 Nov 2017 23:00:08 +0100 |
parents | 91e53bcb7946 |
children |
comparison
equal
deleted
inserted
replaced
12755:3529eea08ad9 | 12756:3b26420fc639 |
---|---|
1 " Vim syntax file | 1 " Vim syntax file |
2 " Language: gitolite configuration | 2 " Language: gitolite configuration |
3 " URL: https://github.com/tmatilai/gitolite.vim | 3 " URL: https://github.com/sitaramc/gitolite/blob/master/contrib/vim/syntax/gitolite.vim |
4 " Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi> | 4 " (https://raw.githubusercontent.com/sitaramc/gitolite/master/contrib/vim/syntax/gitolite.vim) |
5 " Last Change: 2011-12-25 | 5 " Maintainer: Sitaram Chamarty <sitaramc@gmail.com> |
6 " (former Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi>) | |
7 " Last Change: 2017 Oct 05 | |
6 | 8 |
7 if exists("b:current_syntax") | 9 if exists("b:current_syntax") |
8 finish | 10 finish |
9 endif | 11 endif |
10 | 12 |
11 let s:cpo_save = &cpo | 13 let s:cpo_save = &cpo |
12 set cpo&vim | 14 set cpo&vim |
13 | 15 |
14 " Comment | 16 " this seems to be the best way, for now. |
15 syn match gitoliteComment "\(^\|\s\)#.*" contains=gitoliteTodo | 17 syntax sync fromstart |
16 syn keyword gitoliteTodo TODO FIXME XXX NOT contained | |
17 | 18 |
18 " Groups, users and repos | 19 " ---- common stuff |
19 syn match gitoliteGroupDef "\(^\s*\)\@<=@[^=]\{-1,}\(\s*=\)\@=" contains=gitoliteSpaceError,gitoliteUserError nextgroup=gitoliteGroupDefSep | |
20 syn match gitoliteGroupDefSep "\s*=" contained nextgroup=gitoliteRepoLine | |
21 syn match gitoliteRepoDef "^\s*repo\s" nextgroup=gitoliteRepoLine | |
22 | 20 |
23 syn match gitoliteRepoLine ".*" contained transparent contains=gitoliteGroup,gitoliteWildRepo,gitoliteCreator,gitoliteExtCmdHelper,gitoliteRepoError,gitoliteComment | 21 syn match gitoliteGroup '@\S\+' |
24 syn match gitoliteUserLine ".*" contained transparent contains=gitoliteGroup,gitolitePreProc,gitoliteUserError,gitoliteComment | |
25 | 22 |
26 syn match gitoliteWildRepo "[ \t=]\@<=[^ \t]*[\\^$|()[\]*?{},][^ \t]*" contained contains=gitoliteCreator,gitoliteRepoError | 23 syn match gitoliteComment '#.*' contains=gitoliteTodo |
27 syn match gitoliteGroup "[ \t=]\@<=@[^ \t]\+" contained contains=gitoliteUserError | 24 syn keyword gitoliteTodo TODO FIXME XXX NOT contained |
28 | 25 |
29 syn keyword gitoliteCreator CREATER CREATOR contained | 26 " ---- main section |
30 syn keyword gitolitePreProc CREATER CREATOR READERS WRITERS contained | |
31 | 27 |
32 syn match gitoliteExtCmdHelper "[ \t=]\@<=EXTCMD/" contained nextgroup=gitoliteExtCmd | 28 " catch template-data syntax appearing outside template-data section |
33 syn match gitoliteExtCmd "rsync\(\s\|$\)" contained | 29 syn match gitoliteRepoError '^\s*repo.*=' |
30 syn match gitoliteRepoError '^\s*\S\+\s*=' " this gets overridden later when first word is a perm, don't worry | |
34 | 31 |
35 " Illegal characters | 32 " normal gitolite group and repo lines |
36 syn match gitoliteRepoError "[^ \t0-9a-zA-Z._@+/\\^$|()[\]*?{},-]\+" contained | 33 syn match gitoliteGroupLine '^\s*@\S\+\s*=\s*\S.*$' contains=gitoliteGroup,gitoliteComment |
37 syn match gitoliteUserError "[^ \t0-9a-zA-Z._@+-]\+" contained | 34 syn match gitoliteRepoLine '^\s*repo\s\+[^=]*$' contains=gitoliteRepo,gitoliteGroup,gitoliteComment |
38 syn match gitoliteSpaceError "\s\+" contained | 35 syn keyword gitoliteRepo repo contained |
39 | 36 |
40 " Permission | 37 syn keyword gitoliteSpecialRepo CREATOR |
41 syn match gitoliteKeyword "^\s*\(C\|R\|RW\|RW+\|RWC\|RW+C\|RWD\|RW+D\|RWCD\|RW+CD\)[ \t=]\@=" nextgroup=gitoliteRefex | |
42 syn match gitoliteKeyword "^\s*-[ \t=]\@=" nextgroup=gitoliteDenyRefex | |
43 syn match gitoliteRefex "[^=]*="he=e-1 contained contains=gitoliteSpecialRefex,gitoliteGroup nextgroup=gitoliteUserLine | |
44 syn match gitoliteDenyRefex "[^=]*="he=e-1 contained contains=gitoliteSpecialRefex,gitoliteGroup nextgroup=gitoliteDenyUsers | |
45 syn match gitoliteSpecialRefex "\sNAME/"he=e-1 contained | |
46 syn match gitoliteSpecialRefex "/USER/"hs=s+1,he=e-1 contained | |
47 syn match gitoliteDenyUsers ".*" contained contains=gitoliteUserError,gitoliteComment | |
48 | 38 |
49 " Configuration | 39 " normal gitolite rule lines |
50 syn match gitoliteKeyword "^\s*config\s\+" nextgroup=gitoliteConfVariable | 40 syn match gitoliteRuleLine '^\s*\(-\|C\|R\|RW+\?C\?D\?\)\s[^#]*' contains=gitoliteRule,gitoliteCreateRule,gitoliteDenyRule,gitoliteRefex,gitoliteUsers,gitoliteGroup |
51 syn match gitoliteConfVariable "[^=]*" contained | 41 syn match gitoliteRule '\(^\s*\)\@<=\(-\|C\|R\|RW+\?C\?D\?\)\s\@=' contained |
42 syn match gitoliteRefex '\(^\s*\(-\|R\|RW+\?C\?D\?\)\s\+\)\@<=\S.\{-}\(\s*=\)\@=' contains=gitoliteSpecialRefex | |
43 syn match gitoliteSpecialRefex 'NAME/' | |
44 syn match gitoliteSpecialRefex '/USER/' | |
45 syn match gitoliteCreateRule '\(^\s*C\s.*=\s*\)\@<=\S[^#]*[^# ]' contained contains=gitoliteGroup | |
46 syn match gitoliteDenyRule '\(^\s*-\s.*=\s*\)\@<=\S[^#]*[^# ]' contained | |
52 | 47 |
53 " Include | 48 " normal gitolite config (and similar) lines |
54 syn match gitoliteInclude "^\s*\(include\|subconf\)\s" | 49 syn match gitoliteConfigLine '^\s*\(config\|option\|include\|subconf\)\s[^#]*' contains=gitoliteConfigKW,gitoliteConfigKey,gitoliteConfigVal,gitoliteComment |
50 syn keyword gitoliteConfigKW config option include subconf contained | |
51 syn match gitoliteConfigKey '\(\(config\|option\)\s\+\)\@<=[^ =]*' contained | |
52 syn match gitoliteConfigVal '\(=\s*\)\@<=\S.*' contained | |
55 | 53 |
56 " String | 54 " ---- template-data section |
57 syn region gitoliteString start=+"+ end=+"+ oneline | |
58 | 55 |
59 " Define the default highlighting | 56 syn region gitoliteTemplateLine matchgroup=PreProc start='^=begin template-data$' end='^=end$' contains=gitoliteTplRepoLine,gitoliteTplRoleLine,gitoliteGroup,gitoliteComment,gitoliteTplError |
60 hi def link gitoliteComment Comment | 57 |
61 hi def link gitoliteTodo Todo | 58 syn match gitoliteTplRepoLine '^\s*repo\s\+\S.*=.*' contained contains=gitoliteTplRepo,gitoliteTplTemplates,gitoliteGroup |
62 hi def link gitoliteGroupDef gitoliteGroup | 59 syn keyword gitoliteTplRepo repo contained |
63 hi def link gitoliteGroup Identifier | 60 syn match gitoliteTplTemplates '\(=\s*\)\@<=\S.*' contained contains=gitoliteGroup,gitoliteComment |
64 hi def link gitoliteWildRepo Special | 61 |
65 hi def link gitoliteRepoError gitoliteError | 62 syn match gitoliteTplRoleLine '^\s*\S\+\s*=\s*.*' contained contains=gitoliteTplRole,gitoliteGroup,gitoliteComment |
66 hi def link gitoliteUserError gitoliteError | 63 syn match gitoliteTplRole '\S\+\s*='he=e-1 contained |
67 hi def link gitoliteSpaceError gitoliteError | 64 |
68 hi def link gitoliteError Error | 65 " catch normal gitolite rules appearing in template-data section |
69 hi def link gitoliteCreator gitolitePreProc | 66 syn match gitoliteTplError '^\s*repo[^=]*$' contained |
70 hi def link gitolitePreProc PreProc | 67 syn match gitoliteTplError '^\s*\(-\|R\|RW+\?C\?D\?\)\s'he=e-1 contained |
71 hi def link gitoliteExtCmdHelper PreProc | 68 syn match gitoliteTplError '^\s*\(config\|option\|include\|subconf\)\s'he=e-1 contained |
72 hi def link gitoliteExtCmd Special | 69 syn match gitoliteTplError '^\s*@\S\+\s*=' contained contains=NONE |
73 hi def link gitoliteRepoDef Type | 70 |
74 hi def link gitoliteKeyword Keyword | 71 hi def link gitoliteGroup Identifier |
75 hi def link gitoliteRefex String | 72 hi def link gitoliteComment Comment |
76 hi def link gitoliteDenyRefex gitoliteRefex | 73 hi def link gitoliteTodo ToDo |
77 hi def link gitoliteSpecialRefex PreProc | 74 hi def link gitoliteRepoError Error |
78 hi def link gitoliteDenyUsers WarningMsg | 75 hi def link gitoliteGroupLine PreProc |
79 hi def link gitoliteConfVariable Identifier | 76 hi def link gitoliteRepo Keyword |
80 hi def link gitoliteInclude Include | 77 hi def link gitoliteSpecialRepo PreProc |
81 hi def link gitoliteString String | 78 hi def link gitoliteRule Keyword |
79 hi def link gitoliteCreateRule PreProc | |
80 hi def link gitoliteDenyRule WarningMsg | |
81 hi def link gitoliteRefex Constant | |
82 hi def link gitoliteSpecialRefex PreProc | |
83 hi def link gitoliteConfigKW Keyword | |
84 hi def link gitoliteConfigKey Identifier | |
85 hi def link gitoliteConfigVal String | |
86 hi def link gitoliteTplRepo Keyword | |
87 hi def link gitoliteTplTemplates Constant | |
88 hi def link gitoliteTplRole Constant | |
89 hi def link gitoliteTplError Error | |
82 | 90 |
83 let b:current_syntax = "gitolite" | 91 let b:current_syntax = "gitolite" |
84 | 92 |
85 let &cpo = s:cpo_save | 93 let &cpo = s:cpo_save |
86 unlet s:cpo_save | 94 unlet s:cpo_save |