Mercurial > hg
annotate contrib/vim/hgtest.vim @ 30832:da5fa0f13a41
ui: introduce an experimental dict of exportable environment variables
Care needs to be taken to prevent leaking potentially sensitive environment
variables through hgweb, if template support for environment variables is to be
introduced. There are a few ideas about the API for preventing accidental
leaking [1]. Option 3 seems best from the POV of not needing to configure
anything in the normal case. I couldn't figure out how to do that, so guard it
with an experimental option for now.
[1] https://www.mercurial-scm.org/pipermail/mercurial-devel/2017-January/092383.html
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Tue, 17 Jan 2017 23:05:12 -0500 |
parents | 6db1642288c0 |
children |
rev | line source |
---|---|
12509
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
1 " Vim syntax file |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
2 " Language: Mercurial unified tests |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
3 " Author: Steve Losh (steve@stevelosh.com) |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
4 " |
18052
6db1642288c0
contrib: state explicitly how hgtest.vim can be installed
Mads Kiilerich <madski@unity3d.com>
parents:
12509
diff
changeset
|
5 " Place this file in ~/.vim/syntax/ and add the following line to your |
6db1642288c0
contrib: state explicitly how hgtest.vim can be installed
Mads Kiilerich <madski@unity3d.com>
parents:
12509
diff
changeset
|
6 " ~/.vimrc to enable: |
12509
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
7 " au BufNewFile,BufRead *.t set filetype=hgtest |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
8 " |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
9 " If you want folding you'll need the following line as well: |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
10 " let hgtest_fold=1 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
11 " |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
12 " You might also want to set the starting foldlevel for hgtest files: |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
13 " autocmd Syntax hgtest setlocal foldlevel=1 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
14 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
15 if exists("b:current_syntax") |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
16 finish |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
17 endif |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
18 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
19 syn include @Shell syntax/sh.vim |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
20 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
21 syn match hgtestComment /^[^ ].*$/ |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
22 syn region hgtestOutput start=/^ [^$>]/ start=/^ $/ end=/\v.(\n\n*[^ ])\@=/me=s end=/^ [$>]/me=e-3 end=/^$/ fold containedin=hgtestBlock |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
23 syn match hgtestCommandStart /^ \$ / containedin=hgtestCommand |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
24 syn region hgtestCommand start=/^ \$ /hs=s+4,rs=s+4 end=/^ [^>]/me=e-3 end=/^ $/me=e-2 containedin=hgtestBlock contains=@Shell keepend |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
25 syn region hgtestBlock start=/^ /ms=e-2 end=/\v.(\n\n*[^ ])\@=/me=s end=/^$/me=e-1 fold keepend |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
26 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
27 hi link hgtestCommandStart Keyword |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
28 hi link hgtestComment Normal |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
29 hi link hgtestOutput Comment |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
30 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
31 if exists("hgtest_fold") |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
32 setlocal foldmethod=syntax |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
33 endif |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
34 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
35 syn sync match hgtestSync grouphere NONE "^$" |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
36 syn sync maxlines=200 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
37 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
38 " It's okay to set tab settings here, because an indent of two spaces is specified |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
39 " by the file format. |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
40 setlocal tabstop=2 softtabstop=2 shiftwidth=2 expandtab |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
41 |
4746a2e4b239
contrib/vim: add a syntax file for unified tests
Steve Losh <steve@stevelosh.com>
parents:
diff
changeset
|
42 let b:current_syntax = "hgtest" |