mirror of
https://github.com/neovim/neovim.git
synced 2025-09-06 03:18:16 +00:00
vim-patch:8.2.3839: using \z() with \z1 not tested for syntax highlighting
Problem: Using \z() with \z1 not tested for syntax highlighting.
Solution: Add a test. (Dominique Pellé, closes vim/vim#9365)
354b23a9f8
Co-authored-by: Dominique Pelle <dominique.pelle@gmail.com>
This commit is contained in:
@@ -666,6 +666,24 @@ func Test_syntax_c()
|
|||||||
call delete('Xtest.c')
|
call delete('Xtest.c')
|
||||||
endfun
|
endfun
|
||||||
|
|
||||||
|
" Test \z(...) along with \z1
|
||||||
|
func Test_syn_zsub()
|
||||||
|
new
|
||||||
|
syntax on
|
||||||
|
call setline(1, 'xxx start foo xxx not end foo xxx end foo xxx')
|
||||||
|
let l:expected = ' ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ '
|
||||||
|
|
||||||
|
for l:re in [0, 1, 2]
|
||||||
|
" Example taken from :help :syn-ext-match
|
||||||
|
syntax region Z start="start \z(\I\i*\)" skip="not end \z1" end="end \z1"
|
||||||
|
eval AssertHighlightGroups(1, 1, l:expected, 1, 'regexp=' .. l:re)
|
||||||
|
syntax clear Z
|
||||||
|
endfor
|
||||||
|
|
||||||
|
set re&
|
||||||
|
bw!
|
||||||
|
endfunc
|
||||||
|
|
||||||
" Using \z() in a region with NFA failing should not crash.
|
" Using \z() in a region with NFA failing should not crash.
|
||||||
func Test_syn_wrong_z_one()
|
func Test_syn_wrong_z_one()
|
||||||
new
|
new
|
||||||
|
Reference in New Issue
Block a user