diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/regexp.c | 2 | ||||
-rw-r--r-- | src/nvim/testdir/test_regexp_latin.vim | 16 |
2 files changed, 18 insertions, 0 deletions
diff --git a/src/nvim/regexp.c b/src/nvim/regexp.c index 3b3ca29dad..c043d4a173 100644 --- a/src/nvim/regexp.c +++ b/src/nvim/regexp.c @@ -7116,6 +7116,8 @@ regprog_T *vim_regcomp(char_u *expr_arg, int re_flags) } bt_regengine.expr = expr; nfa_regengine.expr = expr; + // reg_iswordc() uses rex.reg_buf + rex.reg_buf = curbuf; // // First try the NFA engine, unless backtracking was requested. diff --git a/src/nvim/testdir/test_regexp_latin.vim b/src/nvim/testdir/test_regexp_latin.vim index eb8f69ef15..8f9b1eb7ca 100644 --- a/src/nvim/testdir/test_regexp_latin.vim +++ b/src/nvim/testdir/test_regexp_latin.vim @@ -47,3 +47,19 @@ func Test_get_equi_class() s/.*/[[. call assert_equal(1, search(getline(1))) endfunc + +func Test_rex_init() + set noincsearch + set re=1 + new + setlocal iskeyword=a-z + call setline(1, ['abc', 'ABC']) + call assert_equal(1, search('[[:keyword:]]')) + new + setlocal iskeyword=A-Z + call setline(1, ['abc', 'ABC']) + call assert_equal(2, search('[[:keyword:]]')) + bwipe! + bwipe! + set re=0 +endfunc |