1864207deSBram Moolenaar" Vim syntax file 2864207deSBram Moolenaar" Language: git config file 35c73622aSBram Moolenaar" Maintainer: Tim Pope <[email protected]> 4864207deSBram Moolenaar" Filenames: gitconfig, .gitconfig, *.git/config 5*5be4ceecSBram Moolenaar" Last Change: 2019 Sep 27 6864207deSBram Moolenaar 7864207deSBram Moolenaarif exists("b:current_syntax") 8864207deSBram Moolenaar finish 9864207deSBram Moolenaarendif 10864207deSBram Moolenaar 11864207deSBram Moolenaarsetlocal iskeyword+=- 12864207deSBram Moolenaarsetlocal iskeyword-=_ 13864207deSBram Moolenaarsyn case ignore 14864207deSBram Moolenaarsyn sync minlines=10 15864207deSBram Moolenaar 16*5be4ceecSBram Moolenaarsyn match gitconfigComment "[#;].*" contains=@Spell 17864207deSBram Moolenaarsyn match gitconfigSection "\%(^\s*\)\@<=\[[a-z0-9.-]\+\]" 18864207deSBram Moolenaarsyn match gitconfigSection '\%(^\s*\)\@<=\[[a-z0-9.-]\+ \+\"\%([^\\"]\|\\.\)*"\]' 19864207deSBram Moolenaarsyn match gitconfigVariable "\%(^\s*\)\@<=\a\k*\%(\s*\%([=#;]\|$\)\)\@=" nextgroup=gitconfigAssignment skipwhite 20864207deSBram Moolenaarsyn region gitconfigAssignment matchgroup=gitconfigNone start=+=\s*+ skip=+\\+ end=+\s*$+ contained contains=gitconfigBoolean,gitconfigNumber,gitConfigString,gitConfigEscape,gitConfigError,gitconfigComment keepend 21864207deSBram Moolenaarsyn keyword gitconfigBoolean true false yes no contained 22864207deSBram Moolenaarsyn match gitconfigNumber "\d\+" contained 23864207deSBram Moolenaarsyn region gitconfigString matchgroup=gitconfigDelim start=+"+ skip=+\\+ end=+"+ matchgroup=gitconfigError end=+[^\\"]\%#\@!$+ contained contains=gitconfigEscape,gitconfigEscapeError 24864207deSBram Moolenaarsyn match gitconfigError +\\.+ contained 25864207deSBram Moolenaarsyn match gitconfigEscape +\\[\\"ntb]+ contained 26864207deSBram Moolenaarsyn match gitconfigEscape +\\$+ contained 27864207deSBram Moolenaar 28864207deSBram Moolenaarhi def link gitconfigComment Comment 29864207deSBram Moolenaarhi def link gitconfigSection Keyword 30864207deSBram Moolenaarhi def link gitconfigVariable Identifier 31864207deSBram Moolenaarhi def link gitconfigBoolean Boolean 32864207deSBram Moolenaarhi def link gitconfigNumber Number 33864207deSBram Moolenaarhi def link gitconfigString String 34864207deSBram Moolenaarhi def link gitconfigDelim Delimiter 35864207deSBram Moolenaarhi def link gitconfigEscape Delimiter 36864207deSBram Moolenaarhi def link gitconfigError Error 37864207deSBram Moolenaar 38864207deSBram Moolenaarlet b:current_syntax = "gitconfig" 39