view runtime/syntax/gitconfig.vim @ 18755:a0be066d0b48 v8.1.2367

patch 8.1.2367: registers are not sufficiently tested Commit: https://github.com/vim/vim/commit/71136db1bfbc67c2e55f8070cdf0a241c643e45b Author: Bram Moolenaar <Bram@vim.org> Date: Sat Nov 30 19:48:46 2019 +0100 patch 8.1.2367: registers are not sufficiently tested Problem: Registers are not sufficiently tested. Solution: Add a few more test cases. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/5288)
author Bram Moolenaar <Bram@vim.org>
date Sat, 30 Nov 2019 20:00:03 +0100
parents 03b854983b14
children 5c40013d45ee
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 Sep 27

if exists("b:current_syntax")
  finish
endif

setlocal iskeyword+=-
setlocal iskeyword-=_
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\k*\%(\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		Delimiter
hi def link gitconfigError		Error

let b:current_syntax = "gitconfig"