1" Test for benchmarking the RE engine 2 3source check.vim 4CheckFeature reltime 5 6func Measure(file, pattern, arg) 7 for re in range(3) 8 let sstart = reltime() 9 let before = ['set re=' .. re] 10 let after = ['call search("' .. escape(a:pattern, '\\') .. '", "", "", 10000)'] 11 let after += ['quit!'] 12 let args = empty(a:arg) ? '' : a:arg .. ' ' .. a:file 13 call RunVim(before, after, args) 14 let s = 'file: ' .. a:file .. ', re: ' .. re .. 15 \ ', time: ' .. reltimestr(reltime(sstart)) 16 call writefile([s], 'benchmark.out', "a") 17 endfor 18endfunc 19 20func Test_Regex_Benchmark() 21 call Measure('samples/re.freeze.txt', '\s\+\%#\@<!$', '+5') 22endfunc 23 24" vim: shiftwidth=2 sts=2 expandtab 25