view runtime/syntax/gitconfig.vim @ 30601:6194c0ba3526

Added tag v9.0.0635 for changeset 33a3f63785db811c404370a6eeb08adb0cc5450e
author Bram Moolenaar <Bram@vim.org>
date Sat, 01 Oct 2022 21:30:06 +0200
parents 5c40013d45ee
children
line wrap: on
line source

" Vim syntax file
" Language:	git config file
" Maintainer:	Tim Pope <vimNOSPAM@tpope.org>
" Filenames:	gitconfig, .gitconfig, *.git/config
" Last Change:	2019 Dec 05

if exists("b:current_syntax")
  finish
endif

syn case ignore
syn sync minlines=10

syn match   gitconfigComment	"[#;].*" contains=@Spell
syn match   gitconfigSection	"\%(^\s*\)\@<=\[[a-z0-9.-]\+\]"
syn match   gitconfigSection	'\%(^\s*\)\@<=\[[a-z0-9.-]\+ \+\"\%([^\\"]\|\\.\)*"\]'
syn match   gitconfigVariable	"\%(^\s*\)\@<=\a[a-z0-9-]*\%(\s*\%([=#;]\|$\)\)\@=" nextgroup=gitconfigAssignment skipwhite
syn region  gitconfigAssignment  matchgroup=gitconfigNone start=+=\s*+ skip=+\\+ end=+\s*$+ contained contains=gitconfigBoolean,gitconfigNumber,gitConfigString,gitConfigEscape,gitConfigError,gitconfigComment keepend
syn keyword gitconfigBoolean true false yes no contained
syn match   gitconfigNumber  "\<\d\+\>" contained
syn region  gitconfigString  matchgroup=gitconfigDelim start=+"+ skip=+\\+ end=+"+ matchgroup=gitconfigError end=+[^\\"]\%#\@!$+ contained contains=gitconfigEscape,gitconfigEscapeError
syn match   gitconfigError  +\\.+	 contained
syn match   gitconfigEscape +\\[\\"ntb]+ contained
syn match   gitconfigEscape +\\$+	 contained

hi def link gitconfigComment		Comment
hi def link gitconfigSection		Keyword
hi def link gitconfigVariable		Identifier
hi def link gitconfigBoolean		Boolean
hi def link gitconfigNumber		Number
hi def link gitconfigString		String
hi def link gitconfigDelim		Delimiter
hi def link gitconfigEscape		Special
hi def link gitconfigError		Error

let b:current_syntax = "gitconfig"