From ba47b51ff88d91c9bb5aa522183e23a656865697 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 24 Jan 2017 21:18:19 +0100 Subject: [PATCH] patch 8.0.0237: when 'wildoptions' is "tagfile" completion may not work Problem: When setting wildoptions=tagfile the completion context is not set correctly. (desjardins) Solution: Check for EXPAND_TAGS_LISTFILES. (Christian Brabandt, closes #1399) --- src/ex_getln.c | 4 +++- src/testdir/test_cmdline.vim | 11 +++++++++++ src/version.c | 2 ++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/ex_getln.c b/src/ex_getln.c index 7de7246b55..4365100a2b 100644 --- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -4366,7 +4366,9 @@ addstar( || context == EXPAND_OWNSYNTAX || context == EXPAND_FILETYPE || context == EXPAND_PACKADD - || (context == EXPAND_TAGS && fname[0] == '/')) + || ((context == EXPAND_TAGS_LISTFILES + || context == EXPAND_TAGS) + && fname[0] == '/')) retval = vim_strnsave(fname, len); else { diff --git a/src/testdir/test_cmdline.vim b/src/testdir/test_cmdline.vim index 279a1681c4..fcfce7354d 100644 --- a/src/testdir/test_cmdline.vim +++ b/src/testdir/test_cmdline.vim @@ -295,3 +295,14 @@ func Test_illegal_address() 2;') quit endfunc + +func Test_cmdline_complete_wildoptions() + help + call feedkeys(":tag /\\\"\", 'tx') + let a = join(sort(split(@:)),' ') + set wildoptions=tagfile + call feedkeys(":tag /\\\"\", 'tx') + let b = join(sort(split(@:)),' ') + call assert_equal(a, b) + bw! +endfunc diff --git a/src/version.c b/src/version.c index 684a244cd9..68ea529097 100644 --- a/src/version.c +++ b/src/version.c @@ -764,6 +764,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 237, /**/ 236, /**/