Mercurial > vim
view runtime/syntax/apachestyle.vim @ 34511:5397ce113043 v9.1.0161
patch 9.1.0161: expand() removes slash after env variable that ends with colon
Commit: https://github.com/vim/vim/commit/13a014452a7a020a119ac555a690c65b41f3126d
Author: zeertzjq <zeertzjq@outlook.com>
Date: Sat Mar 9 17:44:46 2024 +0100
patch 9.1.0161: expand() removes slash after env variable that ends with colon
Problem: expand() removes a slash after an environment variable that
ends with a colon on Windows.
Solution: Check the correct char for a colon (zeertzjq)
closes: #14161
Note: Vim still removes the path-separator at the end, if another path separator
follows directly after it, e.g. on:
```
echo $FOO='/usr/'
echo expand('$FOO/bar') == '/usr/bar'
```
see:
,----[ misc1.c:1630 ]
| // if var[] ends in a path separator and tail[] starts
| // with it, skip a character
| if (after_pathsep(dst, dst + c)
| #if defined(BACKSLASH_IN_FILENAME) || defined(AMIGA)
| && (dst == save_dst || dst[-1] != ':')
| #endif
| && vim_ispathsep(*tail))
| ++tail;
`----
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 09 Mar 2024 18:15:02 +0100 |
parents | a6d3e2081544 |
children |
line wrap: on
line source
" Vim syntax file " Language: Apache-Style configuration files (proftpd.conf/apache.conf/..) " Maintainer: Ben RUBSON <ben.rubson@gmail.com> " Former Maintainer: Christian Hammers <ch@westend.com> " ChangeLog: " 2017-12-17,ch " correctly detect comments " 2001-05-04,ch " adopted Vim 6.0 syntax style " 1999-10-28,ch " initial release " The following formats are recognised: " Apache-style .conf " # Comment " Option value " Option value1 value2 " Option = value1 value2 #not apache but also allowed " <Section Name?> " Option value " <SubSection Name?> " </SubSection> " </Section> " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif syn case ignore syn match apOption /^\s*[^ \t#<=]*/ syn match apComment /^\s*#.*$/ "syn match apLastValue /[^ \t<=#]*$/ contains=apComment ugly " tags syn region apTag start=/</ end=/>/ contains=apTagOption,apTagError " the following should originally be " [^<>]+" but this didn't work :( syn match apTagOption contained / [-\/_\.:*a-zA-Z0-9]\+/ms=s+1 syn match apTagError contained /[^>]</ms=s+1 " Define the default highlighting. " Only when an item doesn't have highlighting yet hi def link apComment Comment hi def link apOption Keyword "hi def link apLastValue Identifier ugly? hi def link apTag Special hi def link apTagOption Identifier hi def link apTagError Error let b:current_syntax = "apachestyle" " vim: ts=8