Mercurial > hg
view contrib/vim/hgtest.vim @ 42101:f4b1f5537d4c
overlayworkingctx: fix file/dir audit to be repo-relative
Before this patch, test-rebase-inmemory.t would stop erroring out
about the conflict if you added a "cd a" before line 252. That was
because a glob matcher (which are relative) was unintentionally
used. That happened because the matcher was given "include" patterns
(not regular patterns), and "include" patterns are always glob by
default (i.e. unless you write them including the kind prefix). IOW,
the "default='path'" argument passed to ctx.match() was ignored.
Differential Revision: https://phab.mercurial-scm.org/D6223
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Wed, 10 Apr 2019 17:31:32 -0700 |
parents | 6db1642288c0 |
children |
line wrap: on
line source
" Vim syntax file " Language: Mercurial unified tests " Author: Steve Losh (steve@stevelosh.com) " " Place this file in ~/.vim/syntax/ and add the following line to your " ~/.vimrc to enable: " au BufNewFile,BufRead *.t set filetype=hgtest " " If you want folding you'll need the following line as well: " let hgtest_fold=1 " " You might also want to set the starting foldlevel for hgtest files: " autocmd Syntax hgtest setlocal foldlevel=1 if exists("b:current_syntax") finish endif syn include @Shell syntax/sh.vim syn match hgtestComment /^[^ ].*$/ syn region hgtestOutput start=/^ [^$>]/ start=/^ $/ end=/\v.(\n\n*[^ ])\@=/me=s end=/^ [$>]/me=e-3 end=/^$/ fold containedin=hgtestBlock syn match hgtestCommandStart /^ \$ / containedin=hgtestCommand syn region hgtestCommand start=/^ \$ /hs=s+4,rs=s+4 end=/^ [^>]/me=e-3 end=/^ $/me=e-2 containedin=hgtestBlock contains=@Shell keepend syn region hgtestBlock start=/^ /ms=e-2 end=/\v.(\n\n*[^ ])\@=/me=s end=/^$/me=e-1 fold keepend hi link hgtestCommandStart Keyword hi link hgtestComment Normal hi link hgtestOutput Comment if exists("hgtest_fold") setlocal foldmethod=syntax endif syn sync match hgtestSync grouphere NONE "^$" syn sync maxlines=200 " It's okay to set tab settings here, because an indent of two spaces is specified " by the file format. setlocal tabstop=2 softtabstop=2 shiftwidth=2 expandtab let b:current_syntax = "hgtest"