1
0
forked from aniani/vim

patch 8.1.2401: :cexpr does not handle | in expression

Problem:    :cexpr does not handle | in expression.
Solution:   Remove EX_TRLBAR and set nextcmd pointer.
This commit is contained in:
Bram Moolenaar
2019-12-06 21:11:39 +01:00
parent 1f3e7d3bf0
commit 88a3e2b2ac
4 changed files with 15 additions and 13 deletions

View File

@@ -100,7 +100,7 @@ func XlistTests(cchar)
" Populate the list and then try
Xgetexpr ['non-error 1', 'Xtestfile1:1:3:Line1',
\ 'non-error 2', 'Xtestfile2:2:2:Line2',
\ 'non-error 3', 'Xtestfile3:3:1:Line3']
\ 'non-error| 3', 'Xtestfile3:3:1:Line3']
" List only valid entries
let l = split(execute('Xlist', ''), "\n")
@@ -112,7 +112,7 @@ func XlistTests(cchar)
let l = split(execute('Xlist!', ''), "\n")
call assert_equal([' 1: non-error 1', ' 2 Xtestfile1:1 col 3: Line1',
\ ' 3: non-error 2', ' 4 Xtestfile2:2 col 2: Line2',
\ ' 5: non-error 3', ' 6 Xtestfile3:3 col 1: Line3'], l)
\ ' 5: non-error| 3', ' 6 Xtestfile3:3 col 1: Line3'], l)
" List a range of errors
let l = split(execute('Xlist 3,6', ''), "\n")
@@ -556,7 +556,7 @@ func Xtest_browse(cchar)
Xexpr ""
call assert_equal(0, g:Xgetlist({'idx' : 0}).idx)
call assert_equal(0, g:Xgetlist({'size' : 0}).size)
Xaddexpr ['foo', 'bar', 'baz', 'quux', 'shmoo']
Xaddexpr ['foo', 'bar', 'baz', 'quux', 'sh|moo']
call assert_equal(5, g:Xgetlist({'size' : 0}).size)
Xlast
call assert_equal(5, g:Xgetlist({'idx' : 0}).idx)
@@ -4650,13 +4650,13 @@ func Test_search_in_dirstack()
\ "Xfile3:1:X3_L1\n" .
\ "Entering dir c\n" .
\ "Xfile4:2:X4_L2\n" .
\ "Leaving dir c\n" .
\ "Leaving dir Xtestdir\n"
\ "Leaving dir c\n"
set efm=%DEntering\ dir\ %f,%XLeaving\ dir\ %f,%f:%l:%m
cexpr lines
cexpr lines .. "Leaving dir Xtestdir|\n" | let next = 1
call assert_equal(11, getqflist({'size' : 0}).size)
call assert_equal(4, getqflist({'idx' : 0}).idx)
call assert_equal('X2_L2', getline('.'))
call assert_equal(1, next)
cnext
call assert_equal(6, getqflist({'idx' : 0}).idx)
call assert_equal('X1_L2', getline('.'))